19 lines
525 B
Rust
19 lines
525 B
Rust
|
|
use cfgrammar::yacc::YaccKind;
|
||
|
|
use lrlex::LexerBuilder;
|
||
|
|
use lrpar::{CTParserBuilder};
|
||
|
|
use rerun_except::rerun_except;
|
||
|
|
|
||
|
|
fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||
|
|
let lex_rule_ids_map = CTParserBuilder::new()
|
||
|
|
.yacckind(YaccKind::Grmtools)
|
||
|
|
.process_file_in_src("obj/syn/parser.y")?;
|
||
|
|
LexerBuilder::new()
|
||
|
|
.rule_ids_map(lex_rule_ids_map)
|
||
|
|
.process_file_in_src("obj/syn/lexer.l")?;
|
||
|
|
rerun_except(&[
|
||
|
|
"examples/*.asm",
|
||
|
|
"tests/*.asm",
|
||
|
|
]).unwrap();
|
||
|
|
Ok(())
|
||
|
|
}
|