Trait gluon::compiler_pipeline::Typecheckable
[−]
[src]
pub trait Typecheckable: Sized { type Expr: BorrowMut<SpannedExpr<Symbol>>; fn typecheck_expected(self,
compiler: &mut Compiler,
thread: &Thread,
file: &str,
expr_str: &str,
expected_type: Option<&ArcType>)
-> Result<TypecheckValue<Self::Expr>>; fn typecheck(self,
compiler: &mut Compiler,
thread: &Thread,
file: &str,
expr_str: &str)
-> Result<TypecheckValue<Self::Expr>> { ... } }
Associated Types
Required Methods
fn typecheck_expected(self,
compiler: &mut Compiler,
thread: &Thread,
file: &str,
expr_str: &str,
expected_type: Option<&ArcType>)
-> Result<TypecheckValue<Self::Expr>>
compiler: &mut Compiler,
thread: &Thread,
file: &str,
expr_str: &str,
expected_type: Option<&ArcType>)
-> Result<TypecheckValue<Self::Expr>>
Provided Methods
fn typecheck(self,
compiler: &mut Compiler,
thread: &Thread,
file: &str,
expr_str: &str)
-> Result<TypecheckValue<Self::Expr>>
compiler: &mut Compiler,
thread: &Thread,
file: &str,
expr_str: &str)
-> Result<TypecheckValue<Self::Expr>>
Implementors
impl<T> Typecheckable for T where T: MacroExpandable
impl<E> Typecheckable for MacroValue<E> where E: BorrowMut<SpannedExpr<Symbol>>