Crate gluon

Source
Expand description

This crate contains contains the implementation for the gluon programming language.

Gluon is a programming language suitable for embedding in an existing application to extend its behaviour. For information about how to use this library the best resource currently is the tutorial which contains examples on how to write gluon programs as well as how to run them using this library.

Re-exports§

pub extern crate gluon_base as base;
pub extern crate gluon_check as check;
pub extern crate either;
pub extern crate gluon_parser as parser;
pub extern crate gluon_vm as vm;
pub use salsa;

Modules§

compiler_pipeline
Advanced compiler pipeline which ensures that the compilation phases are run in order even if not the entire compilation procedure is needed.
import
Implementation of the import! macro.
lift_io
std_lib

Macros§

field_decl
Declares fields useable by the record macros
primitive
Creates a GluonFunction from a function implementing VMFunction
record
Macro that creates a record that can be passed to gluon
record_p
Creates a pattern which matches on marshalled gluon records
record_type
Creates a Rust type compatible with the type of record_no_decl!

Structs§

IoError
ModuleCompiler
RootedThread
An instance of Thread which is rooted. See the Thread type for documentation on interacting with the type.
Settings
Thread
Representation of the virtual machine
VmBuilder

Enums§

Error
Error type wrapping all possible errors that can be generated from gluon

Constants§

PRELUDE

Traits§

ThreadExt
Extension trait which provides methods to load and execute gluon code

Functions§

new_vm
Creates a new virtual machine with support for importing other modules and with all primitives loaded.
new_vm_async

Type Aliases§

Result
Type alias for results returned by gluon