Enum fungi_lang::bitype::ExpRule [−][src]
pub enum ExpRule { Doc(String, ExpDer), 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), RefAnon(ValDer), 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
Doc(String, ExpDer)
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)
RefAnon(ValDer)
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]
impl DerRule for ExpRule
fn term_desc() -> &'static str
[src]
fn term_desc() -> &'static str
short term family description
fn short(&self) -> &str
[src]
fn short(&self) -> &str
short name for rule
impl Clone for ExpRule
[src]
impl Clone for ExpRule
fn clone(&self) -> ExpRule
[src]
fn clone(&self) -> ExpRule
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl Debug for ExpRule
[src]
impl Debug for ExpRule
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Eq for ExpRule
[src]
impl Eq for ExpRule
impl PartialEq for ExpRule
[src]
impl PartialEq for ExpRule
fn eq(&self, other: &ExpRule) -> bool
[src]
fn eq(&self, other: &ExpRule) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &ExpRule) -> bool
[src]
fn ne(&self, other: &ExpRule) -> bool
This method tests for !=
.
impl Hash for ExpRule
[src]
impl Hash for ExpRule
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
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]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0
[src]Feeds a slice of this type into the given [Hasher
]. Read more
impl HasClas for ExpRule
[src]
impl HasClas for ExpRule