lucet-runtime is the runtime for WebAssembly modules compiled through
It is a Rust crate that provides the functionality to load modules from shared object files,
instantiate them, and call exported WebAssembly functions.
lucet-runtime manages the resources
used by each WebAssembly instance (linear memory & globals), and the exception mechanisms that
detect and recover from illegal operations.
The public API of the library is defined
lucet-runtime, but the bulk of the implementation is in
the child crate
lucet-runtime-internals. Proc macros are defined in
test suites are defined in the child crate
lucet-runtime-tests. Many of these tests invoke
lucetc and the
lucet-runtime is usable as a Rust crate or as a C library. The C language interface is found at