mirror of
https://codeberg.org/icewind/tf-log-parser.git
synced 2026-06-03 10:14:10 +02:00
handlers
This commit is contained in:
parent
dfc702f43d
commit
ca61f4ea6a
8 changed files with 531 additions and 11 deletions
24
examples/lobby_chat.rs
Normal file
24
examples/lobby_chat.rs
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
use main_error::MainError;
|
||||
use std::env::args;
|
||||
use std::fs;
|
||||
use tf_log_parser::module::{ChatHandler, HandlerStack, LobbySettingsHandler, OptionalHandler};
|
||||
use tf_log_parser::parse_with_handler;
|
||||
|
||||
type Handler = HandlerStack<ChatHandler, OptionalHandler<LobbySettingsHandler>>;
|
||||
|
||||
fn main() -> Result<(), MainError> {
|
||||
let path = args().skip(1).next().expect("No path provided");
|
||||
let content = fs::read_to_string(path)?;
|
||||
|
||||
let (chat, lobby_settings) = parse_with_handler::<Handler>(&content)?;
|
||||
|
||||
if let Ok(Some(settings)) = lobby_settings {
|
||||
println!("Lobby settings: {:#?}", settings);
|
||||
println!();
|
||||
}
|
||||
|
||||
for message in chat {
|
||||
println!("{}: {}", message.time, message.message);
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue