Crate relic

Source

Modules§

compile
The compiler module.
env
The environment module.
error
lexer
The lexer module.
logger
The logger module.
node
The data structure of node and other compiled-time objects.
package
Functions related to loading packages and JIT compilation
parser
The parser module.
preprocess
The preprocessor module.
runtime
The runtime module.
symbol
Symbols and special forms.
util 🔒
Utility functions.

Macros§

nil
The shorthand for Node::Symbol(Symbol::Nil).
vec_to_list
Generate a list node from a vector of nodes.

Statics§

RT
The runtime that is pointed by all C bindings.

Functions§

rt_add_root
Calls Runtime::add_root.
rt_apply
Calls Runtime::apply.
rt_breakpoint
Calls Runtime::breakpoint.
rt_current_env
Calls Runtime::current_env.
rt_define
Calls Env::define.
rt_display_node_idx
Calls Runtime::display_node_idx.
rt_evaluated
Calls Runtime::evaluated.
rt_get
Calls Env::get.
rt_get_bool
Get the boolean value Returns 1 if the symbol is not nil, 0 if it is nil.
rt_get_c_func
Calls Runtime::get_c_func.
rt_get_float
Get the float value
rt_get_integer
Get the integer value
rt_get_root
Calls Runtime::get_root.
rt_get_symbol
Get the symbol value
rt_import
Import a package.
rt_is_symbol
Checks if a node is a symbol.
rt_list_to_stack
Calls Runtime::list_to_stack.
rt_move_to_env
Calls Runtime::move_to_env.
rt_new_closure
Calls Closure::new and pushes the result to the stack.
rt_new_constant
Parse an expression from a string and push the result to the stack
rt_new_float
Create a new float and push the result to the stack
rt_new_integer
Create a new number and push the result to the stack
rt_new_symbol
Create a new symbol and push the result to the stack
rt_pop
Calls Runtime::pop.
rt_prepare_args
Calls Runtime::prepare_args.
rt_push
Calls Runtime::push.
rt_read
The (read) special form.
rt_remove_root
Calls Runtime::remove_root.
rt_set
Calls Env::set.
rt_set_car
Calls Runtime::set_car.
rt_set_cdr
Calls Runtime::set_cdr.
rt_set_root
Calls Runtime::set_root.
rt_start
Calls Runtime::top_env.
rt_swap
Calls Runtime::swap.
rt_top
Calls Runtime::top.
run_node