#[repr(u8)]
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum OpCode {
Dispatch = 0,
Heartbeat = 1,
Identify = 2,
PresenceUpdate = 3,
VoiceStateUpdate = 4,
Resume = 6,
Reconnect = 7,
RequestGuildMembers = 8,
InvalidSession = 9,
Hello = 10,
HeartbeatAck = 11,
}
impl OpCode {
pub fn from_u8(value: u8) -> Option<Self> {
match value {
0 => Some(OpCode::Dispatch),
1 => Some(OpCode::Heartbeat),
2 => Some(OpCode::Identify),
3 => Some(OpCode::PresenceUpdate),
4 => Some(OpCode::VoiceStateUpdate),
6 => Some(OpCode::Resume),
7 => Some(OpCode::Reconnect),
8 => Some(OpCode::RequestGuildMembers),
9 => Some(OpCode::InvalidSession),
10 => Some(OpCode::Hello),
11 => Some(OpCode::HeartbeatAck),
_ => None,
}
}
}