chore: cleanup

This commit is contained in:
2025-06-08 00:59:31 +08:00
parent 0fd846e844
commit 3797544fc2
25 changed files with 1028 additions and 1481 deletions

29
src/engine/mod.rs Normal file
View File

@@ -0,0 +1,29 @@
use hashbrown::HashSet;
use crate::eval::Evaluate;
use crate::ir::{Downgraded, Ir};
use crate::ty::public::Value;
use crate::error::Result;
#[cfg(test)]
mod test;
pub struct Engine {
}
pub fn eval(downgraded: Downgraded) -> Result<Value> {
let mut engine = Engine::new();
engine.eval(downgraded.top_level)
}
impl Engine {
pub fn new() -> Self {
Self {}
}
pub fn eval(&mut self, expr: Ir) -> Result<Value> {
expr.eval(self).map(|val| val.to_public(self, &mut HashSet::new()))
}
}