pub struct PluginCapabilities {
pub abi_version: AbiVersion,
pub supported_schemas: Vec<SchemaVersionRange>,
pub capabilities: Vec<PluginCapability>,
pub min_host_version: Option<AbiVersion>,
pub max_fuel: Option<u64>,
pub max_memory_bytes: Option<u64>,
}Expand description
Full capability declaration returned by a plugin during negotiation.
The host calls capabilities() before dispatching any work to verify
that the plugin supports the required schema version and features.
Fields§
§abi_version: AbiVersionThe ABI version this plugin was compiled against.
supported_schemas: Vec<SchemaVersionRange>The sector schemas this plugin can handle.
capabilities: Vec<PluginCapability>Feature capabilities this plugin provides.
min_host_version: Option<AbiVersion>Minimum host ABI version required by this plugin. If the host’s ABI is below this, the plugin refuses to load.
max_fuel: Option<u64>Plugin-declared fuel budget per invocation (host caps at DEFAULT_FUEL). Plugins needing less computation can set this lower for tighter sandboxing.
max_memory_bytes: Option<u64>Plugin-declared memory cap in bytes per invocation (host caps at DEFAULT_MEMORY_CAP_BYTES).
Trait Implementations§
Source§impl Clone for PluginCapabilities
impl Clone for PluginCapabilities
Source§fn clone(&self) -> PluginCapabilities
fn clone(&self) -> PluginCapabilities
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PluginCapabilities
impl Debug for PluginCapabilities
Source§impl<'de> Deserialize<'de> for PluginCapabilities
impl<'de> Deserialize<'de> for PluginCapabilities
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for PluginCapabilities
impl RefUnwindSafe for PluginCapabilities
impl Send for PluginCapabilities
impl Sync for PluginCapabilities
impl Unpin for PluginCapabilities
impl UnsafeUnpin for PluginCapabilities
impl UnwindSafe for PluginCapabilities
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more