chore: cargo fmt

This commit is contained in:
2025-05-20 18:30:24 +08:00
parent b4249ccd11
commit 736402dc53
7 changed files with 35 additions and 23 deletions

View File

@@ -26,22 +26,29 @@ enum Env<'jit, 'vm> {
pub enum Type {
Arg,
Let,
With
With,
}
impl<'jit, 'vm> LetEnv<'jit, 'vm> {
pub fn new(map: Rc<AttrSet<'jit, 'vm>>) -> Self {
Self { map: Env::Let(map), last: None }
Self {
map: Env::Let(map),
last: None,
}
}
pub fn lookup(&self, symbol: usize) -> Option<Value<'jit, 'vm>> {
use Env::*;
match &self.map {
Let(map) | MultiArg(map) => if let Some(val) = map.select(symbol) {
return Some(val)
Let(map) | MultiArg(map) => {
if let Some(val) = map.select(symbol) {
return Some(val);
}
}
SingleArg(sym, val) => if *sym == symbol {
return Some(val.clone())
SingleArg(sym, val) => {
if *sym == symbol {
return Some(val.clone());
}
}
}
self.last.as_ref().map(|env| env.lookup(symbol)).flatten()