27 lines
535 B
Rust
27 lines
535 B
Rust
use std::{env, fs};
|
|
use errors::RunError;
|
|
use execute::execute;
|
|
use parse::parse;
|
|
use stack::Stack;
|
|
|
|
mod stack;
|
|
mod parse;
|
|
mod execute;
|
|
mod instructions;
|
|
mod errors;
|
|
|
|
fn main() {
|
|
let args: Vec<String> = env::args().collect();
|
|
|
|
if args.len() < 2 {
|
|
eprintln!("Usage: {0} [FILE]", args[0]);
|
|
return;
|
|
}
|
|
|
|
let mut stack = Stack::new();
|
|
let lines = fs::read_to_string(&args[1]).expect(&format!("{}", RunError::FailToReadFile));
|
|
|
|
parse(&mut stack, &lines);
|
|
|
|
execute(&mut stack, None, &args[1]);
|
|
} |