[][src]Module wlambda::compiler

Structs

EvalContext

This context holds all the data to compile and execute a piece of WLambda code. The context is not shareable between threads. For inter thread communication I suggest to look at wlambda::threads::MsgHandle.

GlobalEnv

Holds global environment variables.

LocalFileModuleResolver

This structure implements the ModuleResolver trait and is responsible for loading modules on !@import for WLambda.

SymbolTable

Stores symbols and values for a WLambda module that can be added to a GlobalEnv with set_module.

Enums

ArityParam
EvalError
ModuleLoadError

Traits

ModuleResolver

This trait is responsible for loading modules and returning a collection of name->value mappings for a module name.

Functions

bench_eval_ast

Evaluates a parsed AST a number of times and prints out some benchmarking information.

eval

Evaluates a piece of WLambda code in a default global environment.

s_eval

Evaluates a string of WLambda code, executes it and returns a string representation of the VVal.

s_eval_no_panic

Evaluates a string of WLambda code, executes it and returns a string representation of the VVal. Any critical error (parse error for instance) is not panic!'ed, but returned as informal string.

Type Definitions

GlobalEnvRef

Reference type of GlobalEnv.