Crate, that is used while building a plugin system as a common dependency by both plugin and plugin user to define the plugin behavior and safely import and use the plugin
To quickly learn how to create a plugin and export functions from it see
export_freight! macro documentation
To quickly learn how to import and use plugins see
A macro, which must be used for exporting a struct.
A macro, which can be used to make exporting of a struct easier
A macro, that makes plugin importing a little bit easier
A macro, which can be used to create a registry function easier
A structure, exported by plugin, containing some package details and register function
A structure, that contains a Freight object and is used to import and use it safely
Structure representing main characteristics of a function needed for the program using a plugin, which implements it
Structure representing main characteristics of an object type needed for the program, using the plugin, that either imports or defines this type in case this type is not present in the user program itself
Enum, that represents an interplugin request and either contains
Enum that represents a system limitation, that a plugin either needs to know to work correctly, or should be notified of in case main program wants to limit some settings
Enum, that represents a message passed to the program using the plugin when the function fails
Api version parameter, passed from the build script.
Rust compiler version parameter, passed from the compiler.
Trait, that defines the plugin behavior
Trait to be implemented on structs, which are used to register or store the imported plugins