pub enum SimplifiedExpr {
Var(String),
App(Box<SimplifiedExpr>, Box<SimplifiedExpr>),
Lambda(String, Box<SimplifiedExpr>),
Pi(String, Box<SimplifiedExpr>, Box<SimplifiedExpr>),
}Expand description
Simplified Expr representation for hashing (mirrors actual Expr).
Used for caching purposes with a streamlined structure suitable for hashing.
Variants§
Var(String)
A variable reference with the given name.
App(Box<SimplifiedExpr>, Box<SimplifiedExpr>)
Function application: function and argument.
Lambda(String, Box<SimplifiedExpr>)
Lambda abstraction: parameter name and body.
Pi(String, Box<SimplifiedExpr>, Box<SimplifiedExpr>)
Pi type: parameter name, parameter type, and body type.
Implementations§
Trait Implementations§
Source§impl Clone for SimplifiedExpr
impl Clone for SimplifiedExpr
Source§fn clone(&self) -> SimplifiedExpr
fn clone(&self) -> SimplifiedExpr
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SimplifiedExpr
impl Debug for SimplifiedExpr
Source§impl PartialEq for SimplifiedExpr
impl PartialEq for SimplifiedExpr
impl Eq for SimplifiedExpr
impl StructuralPartialEq for SimplifiedExpr
Auto Trait Implementations§
impl Freeze for SimplifiedExpr
impl RefUnwindSafe for SimplifiedExpr
impl Send for SimplifiedExpr
impl Sync for SimplifiedExpr
impl Unpin for SimplifiedExpr
impl UnsafeUnpin for SimplifiedExpr
impl UnwindSafe for SimplifiedExpr
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more