Module lovm2::module [−][src]
Generic protocol for module like objects
A Module
can be created from a CodeObject
or by loading a lovm2 compatible shared object
library. It maintains an internal map of callable objects, meaning that everything
implementing the CallProtocol
can be added and executed from inside the VM. On load, all
entries from Slots
will then be added to the context making them runnable from bytecode.
Structs
Module | Main runtime representation for loadable modules. |
SharedObjectSlot | Contains a function name, imported by |
Slots | Own type for maintaining callable functions inside a module |
Constants
ENTRY_POINT | Name of the CodeObject entry that is used as a programs starting point inside Vm::run. |
EXTERN_LOVM2_INITIALIZER | Name of the unmangled function name to call when initializing module slots. |