2026-06-13 01:20:34 +03:00
|
|
|
use std::io;
|
|
|
|
|
use std::io::Write;
|
|
|
|
|
|
2026-06-13 02:26:01 +03:00
|
|
|
mod tokenizer;
|
|
|
|
|
use tokenizer::tokenizer;
|
|
|
|
|
|
|
|
|
|
mod rpn;
|
|
|
|
|
use rpn::to_rpn;
|
|
|
|
|
|
|
|
|
|
|
2026-06-13 01:20:34 +03:00
|
|
|
fn main() {
|
|
|
|
|
let stdin = io::stdin();
|
|
|
|
|
let mut buffer = String::new();
|
|
|
|
|
|
|
|
|
|
loop {
|
|
|
|
|
print!("> ");
|
|
|
|
|
io::stdout().flush().unwrap();
|
|
|
|
|
|
|
|
|
|
stdin.read_line(&mut buffer).unwrap();
|
|
|
|
|
|
2026-06-13 02:26:01 +03:00
|
|
|
let tokens = tokenizer(&buffer);
|
2026-06-13 02:03:55 +03:00
|
|
|
let rpn = to_rpn(tokens);
|
2026-06-13 01:20:34 +03:00
|
|
|
|
|
|
|
|
buffer.clear();
|
|
|
|
|
}
|
|
|
|
|
}
|