From d41aa0fef2fb19b2efad81aa65853cd73743ad34 Mon Sep 17 00:00:00 2001 From: imxyy_soope_ Date: Wed, 7 May 2025 08:51:18 +0800 Subject: [PATCH] chore: cargo fmt --- src/builtins/mod.rs | 13 +++++++++---- src/compile/mod.rs | 4 +++- src/ty/common.rs | 3 ++- src/ty/internal/mod.rs | 13 ++++++++----- src/ty/public/mod.rs | 2 +- src/vm/env.rs | 9 +++++++-- src/vm/mod.rs | 2 +- src/vm/vm.rs | 5 ++++- 8 files changed, 35 insertions(+), 16 deletions(-) diff --git a/src/builtins/mod.rs b/src/builtins/mod.rs index 826df36..e3ec9cf 100644 --- a/src/builtins/mod.rs +++ b/src/builtins/mod.rs @@ -2,7 +2,7 @@ use std::cell::RefCell; use std::sync::Arc; use crate::ty::common::Symbol; -use crate::ty::internal::{Const, PrimOp, RecAttrSet, Thunk, Value, _Thunk}; +use crate::ty::internal::{_Thunk, Const, PrimOp, RecAttrSet, Thunk, Value}; use crate::vm::Env; pub fn env() -> Arc { @@ -50,12 +50,17 @@ pub fn env() -> Arc { Symbol::from(format!("__{}", primop.name)), Value::PrimOp(primop.clone()), ); - map.borrow_mut().insert_mut(Symbol::from(primop.name), Value::PrimOp(primop)); + map.borrow_mut() + .insert_mut(Symbol::from(primop.name), Value::PrimOp(primop)); } let builtins = Value::RecAttrSet(RecAttrSet::from_inner(map.clone())); - let thunk= Thunk { thunk: RefCell::new(_Thunk::Value(Box::new(builtins.clone()))), env: RefCell::default() }; + let thunk = Thunk { + thunk: RefCell::new(_Thunk::Value(Box::new(builtins.clone()))), + env: RefCell::default(), + }; thunk.capture(Arc::new(builtins_env)); - map.borrow_mut().insert_mut(Symbol::from("builtins"), Value::Thunk(thunk)); + map.borrow_mut() + .insert_mut(Symbol::from("builtins"), Value::Thunk(thunk)); env.insert(Symbol::from("builtins"), builtins); env diff --git a/src/compile/mod.rs b/src/compile/mod.rs index 029b75d..b53f3f8 100644 --- a/src/compile/mod.rs +++ b/src/compile/mod.rs @@ -6,7 +6,9 @@ mod ir; pub fn compile(expr: &str) -> anyhow::Result { let root = rnix::Root::parse(expr); if !root.errors().is_empty() { - return Err(anyhow::anyhow!(root.errors().iter().map(|err| err.to_string()).join(";"))) + return Err(anyhow::anyhow!( + root.errors().iter().map(|err| err.to_string()).join(";") + )); } assert!(root.errors().is_empty()); let expr = root.tree().expr().unwrap(); diff --git a/src/ty/common.rs b/src/ty/common.rs index 34002db..4230dfe 100644 --- a/src/ty/common.rs +++ b/src/ty/common.rs @@ -41,7 +41,8 @@ impl Display for Symbol { } } -static REGEX: LazyLock = LazyLock::new(|| Regex::new(r#"^[a-zA-Z\_][a-zA-Z0-9\_\'\-]*$"#).unwrap()); +static REGEX: LazyLock = + LazyLock::new(|| Regex::new(r#"^[a-zA-Z\_][a-zA-Z0-9\_\'\-]*$"#).unwrap()); impl Symbol { fn normal(&self) -> bool { !REGEX.is_match(self) diff --git a/src/ty/internal/mod.rs b/src/ty/internal/mod.rs index 9df5f29..4dc6875 100644 --- a/src/ty/internal/mod.rs +++ b/src/ty/internal/mod.rs @@ -1,17 +1,17 @@ use std::cell::RefCell; use std::sync::Arc; -use anyhow::{anyhow, Result}; +use anyhow::{Result, anyhow}; use derive_more::{IsVariant, Unwrap}; -use super::common::Catchable; use super::common as c; +use super::common::Catchable; use super::public as p; use c::Symbol; -use crate::vm::{VM, Env}; use crate::bytecode::OpCodes; +use crate::vm::{Env, VM}; mod attrset; mod cnst; @@ -187,7 +187,7 @@ impl Value { Catchable(_) => todo!(), PrimOp(_) => "lambda", PartialPrimOp(_) => "lambda", - Func(_) => "lambda" + Func(_) => "lambda", } } @@ -380,7 +380,10 @@ impl Value { ))))); *self = val; } else { - *self = Value::Catchable(Catchable::new(Some(format!("cannot select from {:?}", self.typename())))) + *self = Value::Catchable(Catchable::new(Some(format!( + "cannot select from {:?}", + self.typename() + )))) } self } diff --git a/src/ty/public/mod.rs b/src/ty/public/mod.rs index e298f50..052d71b 100644 --- a/src/ty/public/mod.rs +++ b/src/ty/public/mod.rs @@ -22,7 +22,7 @@ impl Debug for AttrSet { match v { List(_) => write!(f, "{k:?} = [ ... ]; ")?, AttrSet(_) => write!(f, "{k:?} = {{ ... }}; ")?, - v => write!(f, "{k:?} = {v:?}; ")? + v => write!(f, "{k:?} = {v:?}; ")?, } } write!(f, "}}") diff --git a/src/vm/env.rs b/src/vm/env.rs index e515fc8..f0fd9e7 100644 --- a/src/vm/env.rs +++ b/src/vm/env.rs @@ -15,8 +15,13 @@ pub struct Env { impl Clone for Env { fn clone(&self) -> Self { Env { - last: RefCell::new(self.last.borrow().clone().map(|e| Arc::new(e.as_ref().clone()))), - map: Arc::new(RefCell::new(self.map.borrow().clone())) + last: RefCell::new( + self.last + .borrow() + .clone() + .map(|e| Arc::new(e.as_ref().clone())), + ), + map: Arc::new(RefCell::new(self.map.borrow().clone())), } } } diff --git a/src/vm/mod.rs b/src/vm/mod.rs index 9d423a7..7b7f143 100644 --- a/src/vm/mod.rs +++ b/src/vm/mod.rs @@ -5,6 +5,6 @@ mod vm; #[cfg(test)] mod test; -pub use env::{Env, CapturedEnv}; +pub use env::{CapturedEnv, Env}; pub use vm::VM; pub use vm::run; diff --git a/src/vm/vm.rs b/src/vm/vm.rs index b71e334..527dbdd 100644 --- a/src/vm/vm.rs +++ b/src/vm/vm.rs @@ -202,7 +202,10 @@ impl VM { val.force(self)?; val.coerce_to_string(); let sym = val.unwrap_const().unwrap_string().into(); - stack.tos_mut()?.force(self)?.select_with_default(sym, default); + stack + .tos_mut()? + .force(self)? + .select_with_default(sym, default); } OpCode::HasAttr { sym } => { stack.tos_mut()?.force(self)?.has_attr(Symbol::new(sym));