pub struct PluginManifestV2 {
pub name: String,
pub version: String,
pub schema_version: String,
pub manifest_version: String,
pub compatibility: CompatibilityRange,
pub namespace: Namespace,
pub kind: PluginKind,
pub aliases: Vec<String>,
pub entrypoint: String,
pub capabilities: Vec<PluginCapability>,
}Expand description
Current plugin manifest contract.
Fields§
§name: StringPlugin name.
version: StringPlugin version.
schema_version: StringPlugin schema version.
manifest_version: StringManifest contract version.
compatibility: CompatibilityRangeCompatibility range for host CLI.
namespace: NamespaceDeclared top-level namespace.
kind: PluginKindPlugin execution kind.
aliases: Vec<String>Declared command aliases.
entrypoint: StringPlugin entrypoint (binary path or module symbol).
capabilities: Vec<PluginCapability>Declared capabilities.
Implementations§
Source§impl PluginManifestV2
impl PluginManifestV2
Sourcepub fn new(
name: &str,
version: &str,
schema_version: &str,
manifest_version: &str,
compatibility: CompatibilityRange,
namespace: Namespace,
kind: PluginKind,
aliases: Vec<String>,
entrypoint: &str,
capabilities: Vec<PluginCapability>,
) -> Result<Self, String>
pub fn new( name: &str, version: &str, schema_version: &str, manifest_version: &str, compatibility: CompatibilityRange, namespace: Namespace, kind: PluginKind, aliases: Vec<String>, entrypoint: &str, capabilities: Vec<PluginCapability>, ) -> Result<Self, String>
Build a validated v2 plugin manifest.
Trait Implementations§
Source§impl Clone for PluginManifestV2
impl Clone for PluginManifestV2
Source§fn clone(&self) -> PluginManifestV2
fn clone(&self) -> PluginManifestV2
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 PluginManifestV2
impl Debug for PluginManifestV2
Source§impl<'de> Deserialize<'de> for PluginManifestV2
impl<'de> Deserialize<'de> for PluginManifestV2
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
Source§impl JsonSchema for PluginManifestV2
impl JsonSchema for PluginManifestV2
Source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for PluginManifestV2
impl PartialEq for PluginManifestV2
Source§impl Serialize for PluginManifestV2
impl Serialize for PluginManifestV2
impl Eq for PluginManifestV2
impl StructuralPartialEq for PluginManifestV2
Auto Trait Implementations§
impl Freeze for PluginManifestV2
impl RefUnwindSafe for PluginManifestV2
impl Send for PluginManifestV2
impl Sync for PluginManifestV2
impl Unpin for PluginManifestV2
impl UnsafeUnpin for PluginManifestV2
impl UnwindSafe for PluginManifestV2
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.