pub struct PluginManifest {
pub name: String,
pub version: String,
pub description: Option<String>,
pub author: Option<String>,
pub license: Option<String>,
pub capabilities: Vec<PluginCapability>,
pub exports: Vec<PluginExport>,
pub min_runtime_version: Option<String>,
pub config_schema: Option<Value>,
pub metadata: HashMap<String, String>,
}Expand description
Plugin manifest describing the plugin
Fields§
§name: StringPlugin name
version: StringPlugin version
description: Option<String>Plugin description
Plugin author
license: Option<String>Plugin license
capabilities: Vec<PluginCapability>Required capabilities
exports: Vec<PluginExport>Exported functions
min_runtime_version: Option<String>Minimum runtime version
config_schema: Option<Value>Plugin-specific configuration schema
metadata: HashMap<String, String>Plugin metadata
Implementations§
Source§impl PluginManifest
impl PluginManifest
pub fn new(name: &str, version: &str) -> Self
pub fn with_description(self, description: &str) -> Self
pub fn with_capability(self, capability: PluginCapability) -> Self
pub fn with_export(self, export: PluginExport) -> Self
pub fn has_capability(&self, capability: &PluginCapability) -> bool
Trait Implementations§
Source§impl Clone for PluginManifest
impl Clone for PluginManifest
Source§fn clone(&self) -> PluginManifest
fn clone(&self) -> PluginManifest
Returns a duplicate of the value. Read more
1.0.0 · 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 PluginManifest
impl Debug for PluginManifest
Source§impl Default for PluginManifest
impl Default for PluginManifest
Source§impl<'de> Deserialize<'de> for PluginManifest
impl<'de> Deserialize<'de> for PluginManifest
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 PluginManifest
impl RefUnwindSafe for PluginManifest
impl Send for PluginManifest
impl Sync for PluginManifest
impl Unpin for PluginManifest
impl UnsafeUnpin for PluginManifest
impl UnwindSafe for PluginManifest
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more