diff options
| author | Thomas Voss <mail@thomasvoss.com> | 2026-02-27 11:41:08 +0100 |
|---|---|---|
| committer | Thomas Voss <mail@thomasvoss.com> | 2026-02-27 11:41:08 +0100 |
| commit | efa996c5e7970a4b3e9a9deab1c26298aca6ea3e (patch) | |
| tree | b2d96c16a24cd1771fe21671a876f7bf56364954 | |
| parent | e5d3c3f3d0dfcc399ef1f7623ddeab619db4b4ea (diff) | |
Print lexer tokens in debug mode
| -rw-r--r-- | oryxc/src/compiler.rs | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/oryxc/src/compiler.rs b/oryxc/src/compiler.rs index bdb4475..f3de028 100644 --- a/oryxc/src/compiler.rs +++ b/oryxc/src/compiler.rs @@ -1,4 +1,8 @@ use std::ffi::OsString; +use std::io::{ + self, + Write, +}; use std::iter::IntoIterator; use std::mem::MaybeUninit; use std::sync::Arc; @@ -9,7 +13,6 @@ use std::sync::atomic::{ use std::vec::Vec; use std::{ fs, - io, panic, thread, }; @@ -141,6 +144,14 @@ fn worker_loop( Ok(xs) => xs, Err(errs) => todo!(), }; + + if state.flags.debug_lexer { + let mut handle = io::stderr().lock(); + for t in tokens.iter() { + let _ = write!(handle, "{t:?}\n"); + } + } + let (ast, _extra_data) = parser::parse(name, &tokens); let mut fdata = state.files.get_mut(&file).unwrap(); fdata.tokens = Arc::from(MaybeUninit::new(tokens)); |