pub struct ExtensionManifest {
pub name: String,
pub version: String,
pub description: String,
pub author: String,
pub permissions: Vec<ExtensionPermission>,
pub config_schema: Option<Value>,
}Expand description
Metadata describing an extension’s identity, permissions, and configuration.
Fields§
§name: StringExtension name.
version: StringSemantic version string.
description: StringHuman-readable description.
Author or maintainers.
permissions: Vec<ExtensionPermission>Requested permissions.
config_schema: Option<Value>Optional JSON Schema for extension configuration.
Implementations§
Source§impl ExtensionManifest
impl ExtensionManifest
Sourcepub fn new(name: impl Into<String>, version: impl Into<String>) -> Self
pub fn new(name: impl Into<String>, version: impl Into<String>) -> Self
Create a new manifest with the given name and version.
Sourcepub fn with_description(self, desc: impl Into<String>) -> Self
pub fn with_description(self, desc: impl Into<String>) -> Self
Set the description.
Set the author.
Sourcepub fn with_permission(self, perm: ExtensionPermission) -> Self
pub fn with_permission(self, perm: ExtensionPermission) -> Self
Add a permission.
Sourcepub fn with_config_schema(self, schema: Value) -> Self
pub fn with_config_schema(self, schema: Value) -> Self
Set the configuration JSON Schema.
Sourcepub fn has_permission(&self, perm: ExtensionPermission) -> bool
pub fn has_permission(&self, perm: ExtensionPermission) -> bool
Check whether the manifest includes a specific permission.
Trait Implementations§
Source§impl Clone for ExtensionManifest
impl Clone for ExtensionManifest
Source§fn clone(&self) -> ExtensionManifest
fn clone(&self) -> ExtensionManifest
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 ExtensionManifest
impl Debug for ExtensionManifest
Source§impl<'de> Deserialize<'de> for ExtensionManifest
impl<'de> Deserialize<'de> for ExtensionManifest
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 ExtensionManifest
impl RefUnwindSafe for ExtensionManifest
impl Send for ExtensionManifest
impl Sync for ExtensionManifest
impl Unpin for ExtensionManifest
impl UnsafeUnpin for ExtensionManifest
impl UnwindSafe for ExtensionManifest
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> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§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