#[cfg(test)] mod test_grammar_display { use crate::test_grammar_helper::new_grammar; #[test] fn test_display() -> Result<(), Box> { new_grammar().map(|g| println!("{g}")) } } #[cfg(test)] mod test_grammar_firsts { use crate::test_grammar_helper::new_grammar; use std::io::Write; #[test] fn test_firsts() -> Result<(), Box> { let mut grammar = new_grammar()?; grammar.compute_firsts()?; let mut lock = std::io::stdout().lock(); writeln!(lock, "grammar firsts: {:?}", grammar.firsts)?; writeln!(lock, "grammar first nodes: {:?}", grammar.first_nodes).map_err(Into::into) } } #[cfg(test)] mod test_grammar_left_closure;