mirror of
https://codeberg.org/demostf/parser.git
synced 2026-06-03 18:24:05 +02:00
box the 2 biggest message variants
This commit is contained in:
parent
55e76401ce
commit
11140b149b
2 changed files with 6 additions and 4 deletions
|
|
@ -26,7 +26,7 @@ fn read_event_value(stream: &mut Stream, definition: &GameEventEntry) -> Result<
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct GameEventMessage {
|
pub struct GameEventMessage {
|
||||||
pub event: GameEvent,
|
pub event: Box<GameEvent>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Parse for GameEventMessage {
|
impl Parse for GameEventMessage {
|
||||||
|
|
@ -49,7 +49,9 @@ impl Parse for GameEventMessage {
|
||||||
None => return Err(ParseError::MalformedGameEvent(GameEventError::UnknownType)),
|
None => return Err(ParseError::MalformedGameEvent(GameEventError::UnknownType)),
|
||||||
};
|
};
|
||||||
let event = GameEvent::from_raw_event(raw_event)?;
|
let event = GameEvent::from_raw_event(raw_event)?;
|
||||||
Ok(GameEventMessage { event })
|
Ok(GameEventMessage {
|
||||||
|
event: Box::new(event),
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@ pub enum Message {
|
||||||
SetConVar(SetConVarMessage),
|
SetConVar(SetConVarMessage),
|
||||||
SigOnState(SigOnStateMessage),
|
SigOnState(SigOnStateMessage),
|
||||||
Print(PrintMessage),
|
Print(PrintMessage),
|
||||||
ServerInfo(ServerInfoMessage),
|
ServerInfo(Box<ServerInfoMessage>),
|
||||||
ClassInfo(ClassInfoMessage),
|
ClassInfo(ClassInfoMessage),
|
||||||
SetPause(SetPauseMessage),
|
SetPause(SetPauseMessage),
|
||||||
CreateStringTable(CreateStringTableMessage),
|
CreateStringTable(CreateStringTableMessage),
|
||||||
|
|
@ -158,7 +158,7 @@ impl Message {
|
||||||
}
|
}
|
||||||
MessageType::Print => Message::Print(PrintMessage::parse(stream, state)?),
|
MessageType::Print => Message::Print(PrintMessage::parse(stream, state)?),
|
||||||
MessageType::ServerInfo => {
|
MessageType::ServerInfo => {
|
||||||
Message::ServerInfo(ServerInfoMessage::parse(stream, state)?)
|
Message::ServerInfo(Box::new(ServerInfoMessage::parse(stream, state)?))
|
||||||
}
|
}
|
||||||
MessageType::ClassInfo => Message::ClassInfo(ClassInfoMessage::parse(stream, state)?),
|
MessageType::ClassInfo => Message::ClassInfo(ClassInfoMessage::parse(stream, state)?),
|
||||||
MessageType::SetPause => Message::SetPause(SetPauseMessage::parse(stream, state)?),
|
MessageType::SetPause => Message::SetPause(SetPauseMessage::parse(stream, state)?),
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue