Enum fungi_lang::bitype::ExpRule
[−]
[src]
pub enum ExpRule { UseAll(UseAllModuleDer, ExpDer), Decls(Vec<ItemRule>, ExpDer), AnnoC(ExpDer, CType), AnnoE(ExpDer, CEffect), Force(ValDer), Thunk(ValDer, ExpDer), Unroll(ValDer, Var, ExpDer), Unpack(Var, Var, ValDer, ExpDer), Fix(Var, ExpDer), Ret(ValDer), DefType(Var, Type, ExpDer), Let(Var, ExpDer, ExpDer), Lam(Var, ExpDer), HostFn(HostEvalFn), App(ExpDer, ValDer), IdxApp(ExpDer, IdxTmDer), Split(ValDer, Var, Var, ExpDer), Case(ValDer, Var, ExpDer, Var, ExpDer), IfThenElse(ValDer, ExpDer, ExpDer), Ref(ValDer, ValDer), Get(ValDer), WriteScope(ValDer, ExpDer), NameFnApp(ValDer, ValDer), PrimApp(PrimAppRule), Unimp, DebugLabel(Option<Name>, Option<String>, ExpDer), NoParse(String), }
Expression typing rule
Variants
UseAll(UseAllModuleDer, ExpDer)
Decls(Vec<ItemRule>, ExpDer)
AnnoC(ExpDer, CType)
AnnoE(ExpDer, CEffect)
Force(ValDer)
Thunk(ValDer, ExpDer)
Unroll(ValDer, Var, ExpDer)
Unpack(Var, Var, ValDer, ExpDer)
Fix(Var, ExpDer)
Ret(ValDer)
DefType(Var, Type, ExpDer)
Let(Var, ExpDer, ExpDer)
Lam(Var, ExpDer)
HostFn(HostEvalFn)
App(ExpDer, ValDer)
IdxApp(ExpDer, IdxTmDer)
Split(ValDer, Var, Var, ExpDer)
Case(ValDer, Var, ExpDer, Var, ExpDer)
IfThenElse(ValDer, ExpDer, ExpDer)
Ref(ValDer, ValDer)
Get(ValDer)
WriteScope(ValDer, ExpDer)
NameFnApp(ValDer, ValDer)
PrimApp(PrimAppRule)
Unimp
DebugLabel(Option<Name>, Option<String>, ExpDer)
NoParse(String)
Trait Implementations
impl DerRule for ExpRule
[src]
fn term_desc() -> &'static str
[src]
short term family description
fn short(&self) -> &str
[src]
short name for rule
impl Clone for ExpRule
[src]
fn clone(&self) -> ExpRule
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for ExpRule
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl Eq for ExpRule
[src]
impl PartialEq for ExpRule
[src]
fn eq(&self, __arg_0: &ExpRule) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &ExpRule) -> bool
[src]
This method tests for !=
.
impl Hash for ExpRule
[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
[src]
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more