1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
pub(crate) use {cx_builder_from_ready::*, ext::*};
mod cx_builder_from_ready;
mod ext;
use async_trait::async_trait;
use crate::{
entities::{events::*, *},
error::Error,
Context,
};
#[async_trait]
pub trait EventHandler: Send + Sync + 'static {
async fn error(&self, _error: Error) {}
async fn ready(&self, _cx: Context, _data: ReadyEvent) {}
async fn message(&self, _cx: Context, _data: Message) {}
async fn message_update(&self, _cx: Context, _data: MessageUpdateEvent) {}
async fn message_delete(&self, _cx: Context, _data: MessageDeleteEvent) {}
async fn channel_create(&self, _cx: Context, _data: Channel) {}
async fn channel_update(&self, _cx: Context, _data: ChannelUpdateEvent) {}
async fn channel_delete(&self, _cx: Context, _data: ChannelDeleteEvent) {}
async fn channel_group_join(&self, _cx: Context, _data: ChannelGroupJoinEvent) {}
async fn channel_group_leave(&self, _cx: Context, _data: ChannelGroupLeaveEvent) {}
async fn channel_start_typing(&self, _cx: Context, _data: ChannelStartTypingEvent) {}
async fn channel_stop_typing(&self, _cx: Context, _data: ChannelStopTypingEvent) {}
async fn channel_ack(&self, _cx: Context, _data: ChannelAckEvent) {}
async fn server_update(&self, _cx: Context, _data: ServerUpdateEvent) {}
async fn server_delete(&self, _cx: Context, _data: ServerDeleteEvent) {}
async fn server_member_update(&self, _cx: Context, _data: ServerMemberUpdateEvent) {}
async fn server_member_join(&self, _cx: Context, _data: ServerMemberJoinEvent) {}
async fn server_member_leave(&self, _cx: Context, _data: ServerMemberLeaveEvent) {}
async fn server_role_update(&self, _cx: Context, _data: ServerRoleUpdateEvent) {}
async fn server_role_delete(&self, _cx: Context, _data: ServerRoleDeleteEvent) {}
async fn user_update(&self, _cx: Context, _data: UserUpdateEvent) {}
}