From 19bd49865f13911cffdc4861f49e1d70be8b5617 Mon Sep 17 00:00:00 2001 From: Ethiraric Date: Tue, 26 Dec 2023 18:08:21 +0100 Subject: [PATCH] Add debugging helpers. --- parser/examples/dump_events.rs | 4 +++- parser/src/scanner.rs | 6 ++++++ parser/tests/spec_test.rs | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/parser/examples/dump_events.rs b/parser/examples/dump_events.rs index 876902c..49c564c 100644 --- a/parser/examples/dump_events.rs +++ b/parser/examples/dump_events.rs @@ -16,6 +16,7 @@ struct EventSink { impl MarkedEventReceiver for EventSink { fn on_event(&mut self, ev: Event, mark: Marker) { + eprintln!(" \x1B[;34m\u{21B3} {:?}\x1B[;m", &ev); self.events.push((ev, mark)); } } @@ -34,5 +35,6 @@ fn main() { let mut s = String::new(); f.read_to_string(&mut s).unwrap(); - dbg!(str_to_events(&s)); + // dbg!(str_to_events(&s)); + str_to_events(&s); } diff --git a/parser/src/scanner.rs b/parser/src/scanner.rs index c6c1015..9de8771 100644 --- a/parser/src/scanner.rs +++ b/parser/src/scanner.rs @@ -244,6 +244,12 @@ impl> Iterator for Scanner { return None; } match self.next_token() { + Ok(Some(tok)) => { + if std::env::var("YAMLRUST_DEBUG").is_ok() { + eprintln!("\x1B[;32m{:?} \x1B[;36m{:?}\x1B[;m", tok.1, tok.0); + } + Some(tok) + } Ok(tok) => tok, Err(e) => { self.error = Some(e); diff --git a/parser/tests/spec_test.rs b/parser/tests/spec_test.rs index 5e6dfa3..f78aa58 100644 --- a/parser/tests/spec_test.rs +++ b/parser/tests/spec_test.rs @@ -59,7 +59,7 @@ macro_rules! assert_next { match $v.next().unwrap() { $p => {} e => { - panic!("unexpected event: {:?}", e); + panic!("unexpected event: {:?} (expected {:?})", e, stringify!($p)); } } };