mirror of
https://codeberg.org/demostf/tf-demos-viewer.git
synced 2026-06-03 18:14:11 +02:00
use new ticker
This commit is contained in:
parent
ccbf5edad0
commit
dd26cc9bce
4 changed files with 72 additions and 58 deletions
19
src/lib.rs
19
src/lib.rs
|
|
@ -1,14 +1,26 @@
|
|||
use tf_demo_parser::demo::parser::gamestateanalyser::GameStateAnalyser;
|
||||
use tf_demo_parser::{Demo, DemoParser, ParseError};
|
||||
use wasm_bindgen::__rt::std::time::Instant;
|
||||
use wasm_bindgen::prelude::*;
|
||||
use web_sys::console;
|
||||
use tf_demo_parser::{DemoParser, Demo};
|
||||
|
||||
#[wasm_bindgen]
|
||||
pub fn parse_demo(buffer: &[u8]) {
|
||||
pub fn parse_demo(buffer: &[u8]) -> Result<(), JsValue> {
|
||||
let buffer = buffer.to_vec();
|
||||
parse_demo_inner(buffer).map_err(|e| e.to_string().into())
|
||||
}
|
||||
|
||||
pub fn parse_demo_inner(buffer: Vec<u8>) -> Result<(), ParseError> {
|
||||
console::log_1(&JsValue::from_str(&format!("len: {}", buffer.len())));
|
||||
let demo = Demo::new(buffer);
|
||||
let (header, _) = DemoParser::parse_all(demo.get_stream()).unwrap();
|
||||
let parser = DemoParser::new_with_analyser(demo.get_stream(), GameStateAnalyser::default());
|
||||
let (header, mut ticker) = parser.ticker()?;
|
||||
while ticker.tick()? {
|
||||
// noop
|
||||
}
|
||||
|
||||
console::log_1(&JsValue::from_str(&format!("{:?}", header)));
|
||||
Ok(())
|
||||
}
|
||||
|
||||
// This is like the `main` function, except for JavaScript.
|
||||
|
|
@ -19,7 +31,6 @@ pub fn main_js() -> Result<(), JsValue> {
|
|||
#[cfg(debug_assertions)]
|
||||
console_error_panic_hook::set_once();
|
||||
|
||||
|
||||
// Your code goes here!
|
||||
console::log_1(&JsValue::from_str("Hello world!"));
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue