pub enum Val {
Neu {
kind: Kind,
head: HeadId,
spine: Sp,
},
Lam {
dom: ExprId,
env: EnvId,
body: ExprId,
},
Pi {
dom: V,
env: EnvId,
body: ExprId,
},
PiLam {
dom: V,
env: EnvId,
ctx: CtxId,
body: ExprId,
},
Sort(LevelId),
Nat(NatId),
Str(StrId),
}Variants§
Neu
Lam
fun (x : dom) => body closed over env; the domain is evaluated on demand.
Pi
PiLam
The type of a lambda: Π (x : dom), T where T is the type inferred for body in env
and ctx extended by x — inferred only when something asks for the codomain.
Sort(LevelId)
Nat(NatId)
Str(StrId)
Trait Implementations§
impl Copy for Val
impl Eq for Val
impl StructuralPartialEq for Val
Auto Trait Implementations§
impl Freeze for Val
impl RefUnwindSafe for Val
impl Send for Val
impl Sync for Val
impl Unpin for Val
impl UnsafeUnpin for Val
impl UnwindSafe for Val
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