pub struct MessagingPluginManifest {
pub name: String,
pub version: String,
pub plugin_type: String,
pub command: String,
pub args: Vec<String>,
pub capabilities: Vec<String>,
pub description: Option<String>,
pub timeout_secs: u64,
pub protocol_version: u32,
}Expand description
Parsed plugin.toml manifest for a messaging adapter plugin.
Fields§
§name: StringProvider name (e.g., “gmail”, “outlook”, “imap”).
version: StringPlugin version (semver).
plugin_type: StringPlugin type — must be "messaging".
command: StringExecutable command to spawn.
args: Vec<String>Additional arguments passed on every invocation.
capabilities: Vec<String>Capabilities this plugin exposes.
Standard values: "fetch", "create_draft", "draft_status", "health".
description: Option<String>Human-readable description.
timeout_secs: u64Per-call timeout in seconds.
protocol_version: u32Protocol version this plugin implements.
Implementations§
Source§impl MessagingPluginManifest
impl MessagingPluginManifest
Sourcepub fn load(path: &Path) -> Result<Self, MessagingPluginError>
pub fn load(path: &Path) -> Result<Self, MessagingPluginError>
Load a manifest from a plugin.toml file.
Trait Implementations§
Source§impl Clone for MessagingPluginManifest
impl Clone for MessagingPluginManifest
Source§fn clone(&self) -> MessagingPluginManifest
fn clone(&self) -> MessagingPluginManifest
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 MessagingPluginManifest
impl Debug for MessagingPluginManifest
Source§impl<'de> Deserialize<'de> for MessagingPluginManifest
impl<'de> Deserialize<'de> for MessagingPluginManifest
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 MessagingPluginManifest
impl RefUnwindSafe for MessagingPluginManifest
impl Send for MessagingPluginManifest
impl Sync for MessagingPluginManifest
impl Unpin for MessagingPluginManifest
impl UnsafeUnpin for MessagingPluginManifest
impl UnwindSafe for MessagingPluginManifest
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