pub trait MessageHandler {
type Output;
// Required methods
fn does_handle(message_type: MessageType) -> bool;
fn into_output(self, state: &ParserState) -> Self::Output;
// Provided methods
fn handle_header(&mut self, _header: &Header) { ... }
fn handle_message(
&mut self,
_message: &Message<'_>,
_tick: DemoTick,
_parser_state: &ParserState,
) { ... }
fn handle_string_entry(
&mut self,
_table: &str,
_index: usize,
_entries: &StringTableEntry<'_>,
_parser_state: &ParserState,
) { ... }
fn handle_data_tables(
&mut self,
_tables: &[ParseSendTable],
_server_classes: &[ServerClass],
_parser_state: &ParserState,
) { ... }
fn handle_packet_meta(
&mut self,
_tick: DemoTick,
_meta: &MessagePacketMeta,
_parser_state: &ParserState,
) { ... }
}
Required Associated Types§
Required Methods§
fn does_handle(message_type: MessageType) -> bool
fn into_output(self, state: &ParserState) -> Self::Output
Provided Methods§
fn handle_header(&mut self, _header: &Header)
fn handle_message( &mut self, _message: &Message<'_>, _tick: DemoTick, _parser_state: &ParserState, )
fn handle_string_entry( &mut self, _table: &str, _index: usize, _entries: &StringTableEntry<'_>, _parser_state: &ParserState, )
fn handle_data_tables( &mut self, _tables: &[ParseSendTable], _server_classes: &[ServerClass], _parser_state: &ParserState, )
fn handle_packet_meta( &mut self, _tick: DemoTick, _meta: &MessagePacketMeta, _parser_state: &ParserState, )
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.