Skip to main content

Handler

Struct Handler 

Source
pub struct Handler { /* private fields */ }

Implementations§

Source§

impl Handler

Source

pub fn new(config: Config) -> Handler

Trait Implementations§

Source§

impl EventHandler for Handler

Source§

fn message<'life0, 'async_trait>( &'life0 self, ctx: Context, msg: Message, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Dispatched when a message is created. Read more
Source§

fn ready<'life0, 'async_trait>( &'life0 self, __arg1: Context, ready: Ready, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Dispatched upon startup. Read more
Source§

fn channel_create<'life0, 'life1, 'async_trait>( &'life0 self, _ctx: Context, _channel: &'life1 GuildChannel, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait,

Dispatched when a channel is created. Read more
Source§

fn category_create<'life0, 'life1, 'async_trait>( &'life0 self, _ctx: Context, _category: &'life1 ChannelCategory, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait,

Dispatched when a category is created. Read more
Source§

fn category_delete<'life0, 'life1, 'async_trait>( &'life0 self, _ctx: Context, _category: &'life1 ChannelCategory, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait,

Dispatched when a category is deleted. Read more
Source§

fn private_channel_create<'life0, 'life1, 'async_trait>( &'life0 self, _ctx: Context, _channel: &'life1 PrivateChannel, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait,

Dispatched when a private channel is created. Read more
Source§

fn channel_delete<'life0, 'life1, 'async_trait>( &'life0 self, _ctx: Context, _channel: &'life1 GuildChannel, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, 'life1: 'async_trait, Self: 'async_trait,

Dispatched when a channel is deleted. Read more
Source§

fn channel_pins_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _pin: ChannelPinsUpdateEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a pin is added, deleted. Read more
Source§

fn channel_recipient_addition<'life0, 'async_trait>( &'life0 self, _ctx: Context, _group_id: ChannelId, _user: User, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user is added to a Group. Read more
Source§

fn channel_recipient_removal<'life0, 'async_trait>( &'life0 self, _ctx: Context, _group_id: ChannelId, _user: User, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user is removed to a Group. Read more
Source§

fn channel_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _new_data: Channel, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a channel is updated. Read more
Source§

fn guild_ban_addition<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _banned_user: User, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user is banned from a guild. Read more
Source§

fn guild_ban_removal<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _unbanned_user: User, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user’s ban is lifted from a guild. Read more
Source§

fn guild_create<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild: Guild, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a guild is created; or an existing guild’s data is sent to us. Read more
Source§

fn guild_delete<'life0, 'async_trait>( &'life0 self, _ctx: Context, _incomplete: GuildUnavailable, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a guild is deleted. Read more
Source§

fn guild_emojis_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _current_state: HashMap<EmojiId, Emoji>, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when the emojis are updated. Read more
Source§

fn guild_integrations_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a guild’s integration is added, updated or removed. Read more
Source§

fn guild_member_addition<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _new_member: Member, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user joins a guild. Read more
Source§

fn guild_member_removal<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _kicked: User, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user’s membership ends by leaving, getting kicked, or being banned. Read more
Source§

fn guild_member_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _new: GuildMemberUpdateEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a member is updated (e.g their nickname is updated). Read more
Source§

fn guild_members_chunk<'life0, 'async_trait>( &'life0 self, _ctx: Context, _chunk: GuildMembersChunkEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when the data for offline members was requested. Read more
Source§

fn guild_role_create<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _new: Role, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a role is created. Read more
Source§

fn guild_role_delete<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _removed_role_id: RoleId, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a role is deleted. Read more
Source§

fn guild_role_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _new_data: Role, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a role is updated. Read more
Source§

fn guild_unavailable<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a guild became unavailable. Read more
Source§

fn guild_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _new_but_incomplete_data: PartialGuild, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when the guild is updated. Read more
Source§

fn invite_create<'life0, 'async_trait>( &'life0 self, _ctx: Context, _data: InviteCreateEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a invite is created. Read more
Source§

fn invite_delete<'life0, 'async_trait>( &'life0 self, _ctx: Context, _data: InviteDeleteEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a invite is deleted. Read more
Source§

fn message_delete<'life0, 'async_trait>( &'life0 self, _ctx: Context, _channel_id: ChannelId, _deleted_message_id: MessageId, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a message is deleted. Read more
Source§

fn message_delete_bulk<'life0, 'async_trait>( &'life0 self, _ctx: Context, _channel_id: ChannelId, _multiple_deleted_messages_ids: Vec<MessageId>, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when multiple messages were deleted at once. Read more
Source§

fn message_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _new_data: MessageUpdateEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a message is updated. Read more
Source§

fn reaction_add<'life0, 'async_trait>( &'life0 self, _ctx: Context, _add_reaction: Reaction, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a new reaction is attached to a message. Read more
Source§

fn reaction_remove<'life0, 'async_trait>( &'life0 self, _ctx: Context, _removed_reaction: Reaction, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a reaction is detached from a message. Read more
Source§

fn reaction_remove_all<'life0, 'async_trait>( &'life0 self, _ctx: Context, _channel_id: ChannelId, _removed_from_message_id: MessageId, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when all reactions of a message are detached from a message. Read more
Source§

fn presence_replace<'life0, 'async_trait>( &'life0 self, _ctx: Context, __arg2: Vec<Presence>, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

This event is legacy, and likely no longer sent by discord.
Source§

fn presence_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _new_data: PresenceUpdateEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user’s presence is updated (e.g off -> on). Read more
Source§

fn resume<'life0, 'async_trait>( &'life0 self, _ctx: Context, __arg2: ResumedEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched upon reconnection.
Source§

fn shard_stage_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, __arg2: ShardStageUpdateEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a shard’s connection stage is updated Read more
Source§

fn typing_start<'life0, 'async_trait>( &'life0 self, _ctx: Context, __arg2: TypingStartEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user starts typing.
Source§

fn unknown<'life0, 'async_trait>( &'life0 self, _ctx: Context, _name: String, _raw: Value, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when an unknown event was sent from discord. Read more
Source§

fn user_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _new_data: CurrentUser, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when the bot’s data is updated. Read more
Source§

fn voice_server_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, __arg2: VoiceServerUpdateEvent, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a guild’s voice server was updated (or changed to another one). Read more
Source§

fn voice_state_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, __arg2: Option<GuildId>, __arg3: VoiceState, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a user joins, leaves or moves to a voice channel. Read more
Source§

fn webhook_update<'life0, 'async_trait>( &'life0 self, _ctx: Context, _guild_id: GuildId, _belongs_to_channel_id: ChannelId, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Dispatched when a guild’s webhook is updated. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more