aboutsummaryrefslogtreecommitdiff
path: root/lib/event.ml
blob: 8b5b125a867aa05cd20775b75bba1c6b1df4993a (plain) (blame)
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
type t =
| HELLO
| READY
| RESUMED
| INVALID_SESSION
| CHANNEL_CREATE
| CHANNEL_UPDATE
| CHANNEL_DELETE
| CHANNEL_PINS_UPDATE
| GUILD_CREATE
| GUILD_UPDATE
| GUILD_DELETE
| GUILD_BAN_ADD
| GUILD_BAN_REMOVE
| GUILD_EMOJIS_UPDATE
| GUILD_INTEGRATIONS_UPDATE
| GUILD_MEMBER_ADD
| GUILD_MEMBER_REMOVE
| GUILD_MEMBER_UPDATE
| GUILD_MEMBERS_CHUNK
| GUILD_ROLE_CREATE
| GUILD_ROLE_UPDATE
| GUILD_ROLE_DELETE
| MESSAGE_CREATE
| MESSAGE_UPDATE
| MESSAGE_DELETE
| MESSAGE_BULK_DELETE
| MESSAGE_REACTION_ADD
| MESSAGE_REACTION_REMOVE
| MESSAGE_REACTION_REMOVE_ALL
| PRESENCE_UPDATE
| TYPING_START
| USER_UPDATE
| VOICE_STATE_UPDATE
| VOICE_SERVER_UPDATE
| WEBHOOKS_UPDATE

exception Invalid_Event of string

let from_string = function
    | "HELLO" -> HELLO
    | "READY" -> READY
    | "RESUMED" -> RESUMED
    | "INVALID_SESSION" -> INVALID_SESSION
    | "CHANNEL_CREATE" -> CHANNEL_CREATE
    | "CHANNEL_UPDATE" -> CHANNEL_UPDATE
    | "CHANNEL_DELETE" -> CHANNEL_DELETE
    | "CHANNEL_PINS_UPDATE" -> CHANNEL_PINS_UPDATE
    | "GUILD_CREATE" -> GUILD_CREATE
    | "GUILD_UPDATE" -> GUILD_UPDATE
    | "GUILD_DELETE" -> GUILD_DELETE
    | "GUILD_BAN_ADD" -> GUILD_BAN_ADD
    | "GUILD_BAN_REMOVE" -> GUILD_BAN_REMOVE
    | "GUILD_EMOJIS_UPDATE" -> GUILD_EMOJIS_UPDATE
    | "GUILD_INTEGRATIONS_UPDATE" -> GUILD_INTEGRATIONS_UPDATE
    | "GUILD_MEMBER_ADD" -> GUILD_MEMBER_ADD
    | "GUILD_MEMBER_REMOVE" -> GUILD_MEMBER_REMOVE
    | "GUILD_MEMBER_UPDATE" -> GUILD_MEMBER_UPDATE
    | "GUILD_MEMBERS_CHUNK" -> GUILD_MEMBERS_CHUNK
    | "GUILD_ROLE_CREATE" -> GUILD_ROLE_CREATE
    | "GUILD_ROLE_UPDATE" -> GUILD_ROLE_UPDATE
    | "GUILD_ROLE_DELETE" -> GUILD_ROLE_DELETE
    | "MESSAGE_CREATE" -> MESSAGE_CREATE
    | "MESSAGE_UPDATE" -> MESSAGE_UPDATE
    | "MESSAGE_DELETE" -> MESSAGE_DELETE
    | "MESSAGE_BULK_DELETE" -> MESSAGE_BULK_DELETE
    | "MESSAGE_REACTION_ADD" -> MESSAGE_REACTION_ADD
    | "MESSAGE_REACTION_REMOVE" -> MESSAGE_REACTION_REMOVE
    | "MESSAGE_REACTION_REMOVE_ALL" -> MESSAGE_REACTION_REMOVE_ALL
    | "PRESENCE_UPDATE" -> PRESENCE_UPDATE
    | "TYPING_START" -> TYPING_START
    | "USER_UPDATE" -> USER_UPDATE
    | "VOICE_STATE_UPDATE" -> VOICE_STATE_UPDATE
    | "VOICE_SERVER_UPDATE" -> VOICE_SERVER_UPDATE
    | "WEBHOOKS_UPDATE" -> WEBHOOKS_UPDATE
    | ev -> raise (Invalid_Event ev)

let to_string = function
    | HELLO -> "HELLO"
    | READY -> "READY"
    | RESUMED -> "RESUMED"
    | INVALID_SESSION -> "INVALID_SESSION"
    | CHANNEL_CREATE -> "CHANNEL_CREATE"
    | CHANNEL_UPDATE -> "CHANNEL_UPDATE"
    | CHANNEL_DELETE -> "CHANNEL_DELETE"
    | CHANNEL_PINS_UPDATE -> "CHANNEL_PINS_UPDATE"
    | GUILD_CREATE -> "GUILD_CREATE"
    | GUILD_UPDATE -> "GUILD_UPDATE"
    | GUILD_DELETE -> "GUILD_DELETE"
    | GUILD_BAN_ADD -> "GUILD_BAN_ADD"
    | GUILD_BAN_REMOVE -> "GUILD_BAN_REMOVE"
    | GUILD_EMOJIS_UPDATE -> "GUILD_EMOJIS_UPDATE"
    | GUILD_INTEGRATIONS_UPDATE -> "GUILD_INTEGRATIONS_UPDATE"
    | GUILD_MEMBER_ADD -> "GUILD_MEMBER_ADD"
    | GUILD_MEMBER_REMOVE -> "GUILD_MEMBER_REMOVE"
    | GUILD_MEMBER_UPDATE -> "GUILD_MEMBER_UPDATE"
    | GUILD_MEMBERS_CHUNK -> "GUILD_MEMBERS_CHUNK"
    | GUILD_ROLE_CREATE -> "GUILD_ROLE_CREATE"
    | GUILD_ROLE_UPDATE -> "GUILD_ROLE_UPDATE"
    | GUILD_ROLE_DELETE -> "GUILD_ROLE_DELETE"
    | MESSAGE_CREATE -> "MESSAGE_CREATE"
    | MESSAGE_UPDATE -> "MESSAGE_UPDATE"
    | MESSAGE_DELETE -> "MESSAGE_DELETE"
    | MESSAGE_BULK_DELETE -> "MESSAGE_BULK_DELETE"
    | MESSAGE_REACTION_ADD -> "MESSAGE_REACTION_ADD"
    | MESSAGE_REACTION_REMOVE -> "MESSAGE_REACTION_REMOVE"
    | MESSAGE_REACTION_REMOVE_ALL -> "MESSAGE_REACTION_REMOVE_ALL"
    | PRESENCE_UPDATE -> "PRESENCE_UPDATE"
    | TYPING_START -> "TYPING_START"
    | USER_UPDATE -> "USER_UPDATE"
    | VOICE_STATE_UPDATE -> "VOICE_STATE_UPDATE"
    | VOICE_SERVER_UPDATE -> "VOICE_SERVER_UPDATE"
    | WEBHOOKS_UPDATE -> "WEBHOOKS_UPDATE"