-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}.