Current section

Files

Jump to
discord_gleam src discord_gleam@discord@intents.erl
Raw

src/discord_gleam@discord@intents.erl

-module(discord_gleam@discord@intents).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([intents_to_bitfield/1, default/0, default_with_message_intents/0, all/0, none/0]).
-export_type([intents/0]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
-type intents() :: {intents,
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean(),
boolean()}.
-file("src/discord_gleam/discord/intents.gleam", 30).
?DOC(" Calculate a bitfield from a set of intents.\n").
-spec intents_to_bitfield(intents()) -> integer().
intents_to_bitfield(Intents) ->
Bitfield = 0,
Bitfield@1 = case erlang:element(2, Intents) of
true ->
Bitfield + 1;
false ->
Bitfield
end,
Bitfield@2 = case erlang:element(3, Intents) of
true ->
Bitfield@1 + 2;
false ->
Bitfield@1
end,
Bitfield@3 = case erlang:element(4, Intents) of
true ->
Bitfield@2 + 4;
false ->
Bitfield@2
end,
Bitfield@4 = case erlang:element(5, Intents) of
true ->
Bitfield@3 + 8;
false ->
Bitfield@3
end,
Bitfield@5 = case erlang:element(6, Intents) of
true ->
Bitfield@4 + 16;
false ->
Bitfield@4
end,
Bitfield@6 = case erlang:element(7, Intents) of
true ->
Bitfield@5 + 32;
false ->
Bitfield@5
end,
Bitfield@7 = case erlang:element(8, Intents) of
true ->
Bitfield@6 + 64;
false ->
Bitfield@6
end,
Bitfield@8 = case erlang:element(9, Intents) of
true ->
Bitfield@7 + 128;
false ->
Bitfield@7
end,
Bitfield@9 = case erlang:element(10, Intents) of
true ->
Bitfield@8 + 256;
false ->
Bitfield@8
end,
Bitfield@10 = case erlang:element(11, Intents) of
true ->
Bitfield@9 + 512;
false ->
Bitfield@9
end,
Bitfield@11 = case erlang:element(12, Intents) of
true ->
Bitfield@10 + 1024;
false ->
Bitfield@10
end,
Bitfield@12 = case erlang:element(13, Intents) of
true ->
Bitfield@11 + 2048;
false ->
Bitfield@11
end,
Bitfield@13 = case erlang:element(14, Intents) of
true ->
Bitfield@12 + 4096;
false ->
Bitfield@12
end,
Bitfield@14 = case erlang:element(15, Intents) of
true ->
Bitfield@13 + 8192;
false ->
Bitfield@13
end,
Bitfield@15 = case erlang:element(16, Intents) of
true ->
Bitfield@14 + 16384;
false ->
Bitfield@14
end,
Bitfield@16 = case erlang:element(17, Intents) of
true ->
Bitfield@15 + 32768;
false ->
Bitfield@15
end,
Bitfield@17 = case erlang:element(18, Intents) of
true ->
Bitfield@16 + 65536;
false ->
Bitfield@16
end,
Bitfield@18 = case erlang:element(19, Intents) of
true ->
Bitfield@17 + 1048576;
false ->
Bitfield@17
end,
Bitfield@19 = case erlang:element(20, Intents) of
true ->
Bitfield@18 + 2097152;
false ->
Bitfield@18
end,
Bitfield@20 = case erlang:element(21, Intents) of
true ->
Bitfield@19 + 16777216;
false ->
Bitfield@19
end,
Bitfield@21 = case erlang:element(22, Intents) of
true ->
Bitfield@20 + 33554432;
false ->
Bitfield@20
end,
Bitfield@21.
-file("src/discord_gleam/discord/intents.gleam", 164).
?DOC(
" Enable a set of default intents, which are usually used by most bots. \\\n"
" Does not include `message_content` intent, as its a privileged intent\n"
).
-spec default() -> intents().
default() ->
{intents,
true,
false,
false,
false,
false,
false,
false,
false,
false,
true,
true,
false,
true,
true,
false,
true,
false,
false,
false,
false,
false}.
-file("src/discord_gleam/discord/intents.gleam", 192).
?DOC(
" Enable a set of default intents, which are usually used by most bots. \\\n"
" But also includes all intents relevant to messages\n"
).
-spec default_with_message_intents() -> intents().
default_with_message_intents() ->
{intents,
true,
false,
false,
false,
false,
false,
false,
false,
false,
true,
true,
true,
true,
true,
true,
true,
false,
false,
false,
true,
true}.
-file("src/discord_gleam/discord/intents.gleam", 219).
?DOC(" Enable all the intents, use this if you want to receive all supported events.\n").
-spec all() -> intents().
all() ->
{intents,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true,
true}.
-file("src/discord_gleam/discord/intents.gleam", 247).
?DOC(
" Disable all the intents, use this if you want to receive no events other than `interaction_create or ready. \\ \n"
" Useful if you have a bot with slash commands only, that dosen't need to listen to events.\n"
).
-spec none() -> intents().
none() ->
{intents,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false}.