[][src]Trait gluon::compiler_pipeline::Typecheckable

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

Loading content...

Required methods

fn typecheck_expected(
    self,
    compiler: &mut Compiler,
    thread: &Thread,
    file: &str,
    expr_str: &str,
    expected_type: Option<&ArcType>
) -> Result<TypecheckValue<Self::Expr>>

Loading content...

Provided methods

fn typecheck(
    self,
    compiler: &mut Compiler,
    thread: &Thread,
    file: &str,
    expr_str: &str
) -> Result<TypecheckValue<Self::Expr>>

Loading content...

Implementors

impl<E> Typecheckable for InfixReparsed<E> where
    E: BorrowMut<SpannedExpr<Symbol>>, 
[src]

type Expr = E

fn typecheck(
    self,
    compiler: &mut Compiler,
    thread: &Thread,
    file: &str,
    expr_str: &str
) -> Result<TypecheckValue<Self::Expr>>
[src]

impl<T> Typecheckable for T where
    T: InfixReparseable
[src]

type Expr = T::Expr

fn typecheck(
    self,
    compiler: &mut Compiler,
    thread: &Thread,
    file: &str,
    expr_str: &str
) -> Result<TypecheckValue<Self::Expr>>
[src]

Loading content...