1
0
Fork 0
This repository has been archived on 2025-03-30. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
compiler-course/src/compiler.rs

28 lines
474 B
Rust
Raw Normal View History

use std::io;
use interpreter::interpret;
use parser::parse;
use tokenizer::tokenize;
2025-01-24 14:41:23 +02:00
mod ast;
mod interpreter;
2025-01-24 14:41:23 +02:00
mod parser;
2025-01-18 18:58:14 +02:00
mod token;
mod tokenizer;
mod value;
2025-01-18 18:58:14 +02:00
pub fn compile(code: &str) {
2025-01-24 14:41:23 +02:00
let tokens = tokenizer::tokenize(code);
parser::parse(&tokens);
2025-01-18 18:58:14 +02:00
}
pub fn start_interpreter() {
let lines = io::stdin().lines();
for line in lines {
if let Ok(code) = line {
println!("{}", interpret(&parse(&tokenize(&code))));
}
}
}