crux_structs v0.2.3 Crux.Structs.User View Source
Represents a Discord User Object
Link to this section Summary
Functions
Creates a t:Crux.Structs.User.t/0 struct from raw data.
Resolves the id of a t:Crux.Structs.Guild.t/0.
Converts a t:Crux.Structs.User.t/0 into its discord mention format.
Link to this section Types
Specs
id_resolvable() :: Crux.Structs.User.t() | Crux.Structs.Member.t() | Crux.Structs.Message.t() | Crux.Structs.Presence.t() | Crux.Structs.VoiceState.t() | Crux.Structs.Snowflake.t() | String.t()
All available types that can be resolved into a user id.
Specs
t() :: %Crux.Structs.User{
avatar: String.t() | nil,
bot: boolean(),
discriminator: String.t(),
id: Crux.Structs.Snowflake.t(),
public_flags: Crux.Structs.User.Flags.raw(),
username: String.t()
}
Link to this section Functions
Specs
Creates a t:Crux.Structs.User.t/0 struct from raw data.
Automatically invoked by
Crux.Structs.create/2.
Specs
resolve_id(id_resolvable()) :: Crux.Structs.Snowflake.t() | nil
Resolves the id of a t:Crux.Structs.Guild.t/0.
Automatically invoked by
Crux.Structs.resolve_id/2.
iex> %Crux.Structs.User{id: 218348062828003328}
...> |> Crux.Structs.User.resolve_id()
218348062828003328
iex> %Crux.Structs.Member{user: 218348062828003328}
...> |> Crux.Structs.User.resolve_id()
218348062828003328
iex> %Crux.Structs.Message{author: %Crux.Structs.User{id: 218348062828003328}}
...> |> Crux.Structs.User.resolve_id()
218348062828003328
iex> %Crux.Structs.Presence{user: 218348062828003328}
...> |> Crux.Structs.User.resolve_id()
218348062828003328
iex> %Crux.Structs.VoiceState{user_id: 218348062828003328}
...> |> Crux.Structs.User.resolve_id()
218348062828003328
iex> 218348062828003328
...> |> Crux.Structs.User.resolve_id()
218348062828003328
iex> "218348062828003328"
...> |> Crux.Structs.User.resolve_id()
218348062828003328
Specs
to_mention(user :: Crux.Structs.User.t()) :: String.t()
Converts a t:Crux.Structs.User.t/0 into its discord mention format.
iex> %Crux.Structs.User{id: 218348062828003328}
...> |> Crux.Structs.User.to_mention()
"<@218348062828003328>"