2024-01-21 03:22:46 +01:00
|
|
|
use std::fs;
|
|
|
|
|
2024-01-15 09:03:55 +01:00
|
|
|
use config::Config;
|
2024-01-12 09:31:48 +01:00
|
|
|
use welcome_msg::print_startup_msg;
|
|
|
|
|
2024-01-12 09:36:30 +01:00
|
|
|
mod config;
|
2024-01-15 10:43:35 +01:00
|
|
|
|
|
|
|
#[allow(unused)]
|
2024-01-12 09:36:30 +01:00
|
|
|
mod error_reporting;
|
|
|
|
mod welcome_msg;
|
2024-01-11 10:44:12 +01:00
|
|
|
|
|
|
|
fn main() {
|
2024-01-15 10:43:35 +01:00
|
|
|
// TODO: proper error handling
|
2024-01-19 08:54:36 +01:00
|
|
|
let cfg = Config::read();
|
2024-01-12 09:31:48 +01:00
|
|
|
|
2024-01-15 09:03:55 +01:00
|
|
|
if cfg.startup_msg {
|
2024-01-12 09:31:48 +01:00
|
|
|
print_startup_msg();
|
|
|
|
}
|
2024-01-21 03:22:46 +01:00
|
|
|
|
|
|
|
let source =
|
|
|
|
fs::read_to_string(cfg.source).expect("can't find source file lol handle me better please");
|
|
|
|
|
|
|
|
let ir =
|
|
|
|
ir::from_ron(&source).expect("aww failed to parse source to graph ir handle me better");
|
|
|
|
|
|
|
|
let mut machine = cfg.evaluator.pick();
|
|
|
|
machine.feed(ir);
|
|
|
|
machine.eval_full();
|
2024-01-11 10:44:12 +01:00
|
|
|
}
|