Struct gluon_vm::compiler::Compiler
[−]
[src]
pub struct Compiler<'a> { /* fields omitted */ }
Methods
impl<'a> Compiler<'a>
[src]
fn new(globals: &'a CompilerEnv + 'a,
vm: &'a GlobalVmState,
symbols: SymbolModule<'a>,
source: &'a Source<'a>,
source_name: String,
emit_debug_info: bool)
-> Compiler<'a>
vm: &'a GlobalVmState,
symbols: SymbolModule<'a>,
source: &'a Source<'a>,
source_name: String,
emit_debug_info: bool)
-> Compiler<'a>
fn compile_expr(&mut self, expr: &CExpr) -> Result<CompiledFunction>
Compiles an expression to a zero argument function which can be directly fed to the interpreter
Trait Implementations
impl<'a> KindEnv for Compiler<'a>
[src]
fn find_kind(&self, _type_name: &SymbolRef) -> Option<ArcKind>
Returns the kind of the type type_name
impl<'a> TypeEnv for Compiler<'a>
[src]
fn find_type(&self, _id: &SymbolRef) -> Option<&ArcType>
Returns the type of the value bound at id
fn find_type_info(&self, id: &SymbolRef) -> Option<&Alias<Symbol, ArcType>>
Returns information about the type id
fn find_record(&self, _fields: &[Symbol]) -> Option<(ArcType, ArcType)>
Returns a record which contains all fields
. The first element is the record type and the second is the alias type. Read more