2024-04-24 09:07:38 +00:00
|
|
|
use clap::Parser;
|
2024-04-02 22:08:00 +00:00
|
|
|
use std::{fs, path::PathBuf};
|
|
|
|
|
2024-06-05 16:00:14 +00:00
|
|
|
use lang::{
|
|
|
|
ast::World,
|
|
|
|
lst_parser::{self, grammar, input, output::Output, syntax_kind},
|
|
|
|
};
|
2024-04-02 22:08:00 +00:00
|
|
|
|
|
|
|
#[derive(Parser)]
|
|
|
|
struct Args {
|
|
|
|
file: PathBuf,
|
|
|
|
}
|
|
|
|
|
2024-04-03 15:00:20 +00:00
|
|
|
#[allow(clippy::unwrap_used)]
|
2024-04-02 22:08:00 +00:00
|
|
|
fn main() {
|
|
|
|
let args = Args::parse();
|
2024-04-03 15:00:20 +00:00
|
|
|
let n = args.file.clone();
|
2024-06-05 16:00:14 +00:00
|
|
|
// let f = fs::read_to_string(n.clone()).expect("failed to read file");
|
2024-04-24 09:07:38 +00:00
|
|
|
|
2024-06-05 16:00:14 +00:00
|
|
|
// let toks = dbg!(syntax_kind::lex(&f));
|
|
|
|
// let input = input::Input::new(&toks);
|
|
|
|
// let mut parser = lst_parser::Parser::new(input);
|
2024-04-24 09:07:38 +00:00
|
|
|
|
2024-06-05 16:00:14 +00:00
|
|
|
// grammar::source_file(&mut parser);
|
2024-04-24 09:07:38 +00:00
|
|
|
|
2024-06-05 16:00:14 +00:00
|
|
|
// let p_out = dbg!(parser.finish());
|
|
|
|
// let o = Output::from_parser_output(toks, p_out);
|
2024-04-24 09:07:38 +00:00
|
|
|
|
2024-06-05 16:00:14 +00:00
|
|
|
// println!("{}", o.debug_colored());
|
2024-04-12 13:43:34 +00:00
|
|
|
|
2024-06-05 16:00:14 +00:00
|
|
|
World::new(n);
|
2024-04-02 22:08:00 +00:00
|
|
|
}
|