Expand description
Vanguard Plugin System
This crate provides the core plugin interface and validation system for Vanguard. It is completely decoupled from the CLI and provides a standardized way to create and validate plugins.
Re-exports§
pub use exports::CreatePluginFn;pub use exports::CREATE_PLUGIN_SYMBOL;
Modules§
- exports
- Module containing plugin export helpers and macros for implementing plugins
Macros§
- export_
plugin - Helper macro to export the plugin creation function with the correct ABI
- export_
plugin_ with - Helper macro to export the plugin creation function with a custom constructor
Structs§
- Config
Manager - Manages plugin configuration storage and validation
- Loader
Config - Configuration for the plugin loader
- Platform
- Represents a platform that a plugin supports
- Plugin
Dependency - A dependency on another plugin
- Plugin
Info - Plugin information used for storing in the registry
- Plugin
Library - A loaded dynamic library containing a plugin
- Plugin
Loader - A plugin loader that manages plugin discovery, loading, and lifecycle
- Plugin
Metadata - Metadata for a Vanguard plugin
- Plugin
Registry - Registry for managing multiple versions of plugins
- Plugin
Validator - Plugin validator for security and compatibility checks
Enums§
- Config
Error - Errors that can occur during plugin configuration operations
- Dylib
Error - Errors that can occur during dynamic library operations
- Loader
Error - Errors that can occur during plugin loading
- Plugin
Error - Errors that can occur during plugin operations
- Plugin
State - Represents the current state of a plugin version
- Registry
Error - Errors that can occur during plugin registry operations
- Validation
Error - Errors that can occur during plugin validation
- Validation
Result - Result of plugin validation
Traits§
- Vanguard
Plugin - Trait that must be implemented by all Vanguard plugins
Functions§
- get_
dylib_ name - Helper to get the dynamic library name for the current platform
- get_
dylib_ path - Helper to get the dynamic library path for a plugin
Type Aliases§
- Config
Result - Result type for configuration operations