Reid/src/main.rs

30 lines
724 B
Rust
Raw Normal View History

2020-06-22 20:49:21 +02:00
mod compiler;
2020-06-21 00:21:24 +02:00
mod errors;
mod file_io;
mod parser;
2020-06-22 20:49:21 +02:00
use compiler::Compiler;
2020-06-21 00:21:24 +02:00
use file_io::open_file;
2020-06-21 00:40:00 +02:00
use parser::Parser;
2020-06-21 00:21:24 +02:00
use std::path::Path;
2020-06-18 17:06:57 +02:00
fn main() {
2020-06-21 00:21:24 +02:00
let path = Path::new("reid_src/test.reid");
2020-06-22 20:49:21 +02:00
let parsed = Parser::from(open_file(&path).ok().unwrap()).parse();
match parsed {
Err(error) => {
eprintln!("Syntax error: {}", error);
std::process::exit(1);
}
Ok(parsed) => {
dbg!(&parsed);
let compiled = Compiler::from(parsed).compile();
if let Err(error) = compiled {
eprintln!("Compilation error: {}", error);
2020-06-22 20:49:21 +02:00
std::process::exit(1);
}
dbg!(compiled);
}
2020-06-21 00:37:56 +02:00
}
2020-06-18 17:06:57 +02:00
}