open_protocol_codec/
message.rs1use crate::decode::Decode;
2use crate::encode::Encode;
3
4#[derive(Debug, Clone, Eq, PartialEq)]
5pub enum MessageType {
6 Data,
7 RequestExtraData,
8 SubscribeExtraData,
9 UnsubscribeExtraData,
10}
11
12pub trait Message: Encode + Decode {
13 fn mid() -> u16;
14 fn to_mid(&self) -> u16;
15
16 fn revision() -> u16 { 1 }
17 fn to_revision(&self) -> u16 { 1 }
18
19 fn message_type() -> MessageType { MessageType::Data }
20 fn to_message_type(&self) -> MessageType { MessageType::Data }
21}