Dynamite is a language-agnostic scripting system for the Rust programming language. Dynamite makes it easy to integrate scripting languages into your Rust program and is special in the way that it orchestrates communication not only between the host program and the scripting languages, but also allows each scripting language to interact with data in the other scripting languages as well.
Dynamite is not currently usable, but is being developed as a component for the Arsenal game engine.
A type memory layout
A type used to represent an untyped pointer
A ref-counted pointer that can be sent over FFI
the definition for a script type's method
The C API implemented by language adapters
The information necessary to define a component including the component ID and the memory layout.
VTable used to keep track of script type bindings
The type of component
A primitive type
A script-loaded type
A registry of scripted types mapping their unique module path to the type definition.
The path to a scripted type, i.e. the "module" path such as "mygame::physics::RigidBody".