pub struct PluginContract { /* private fields */ }Expand description
Runtime-independent contract shared by every implementation of one Plugin Release.
Implementations§
Source§impl PluginContract
impl PluginContract
pub fn new( plugin_id: impl Into<String>, release_version: impl Into<String>, root_slot: impl Into<String>, ) -> Self
pub fn with_configuration_schema(self, schema: Value) -> Self
pub fn with_configuration_defaults(self, defaults: Value) -> Self
pub fn with_capability(self, capability: CapabilityEndpointPlan) -> Self
pub fn with_requirement(self, requirement: CapabilityRequirementPlan) -> Self
pub const fn with_restart_policy(self, restart_policy: RestartPolicy) -> Self
pub const fn with_criticality(self, criticality: PluginCriticality) -> Self
pub fn plugin_id(&self) -> &str
pub fn release_version(&self) -> &str
pub fn root_slot(&self) -> &str
pub const fn configuration_schema(&self) -> Option<&Value>
pub const fn configuration_defaults(&self) -> &Value
pub fn provided_capabilities(&self) -> &[CapabilityEndpointPlan]
pub fn required_capabilities(&self) -> &[CapabilityRequirementPlan]
pub const fn restart_policy(&self) -> RestartPolicy
pub const fn criticality(&self) -> PluginCriticality
Sourcepub fn resolve(&self, implementation: &PluginImplementation) -> PluginDescriptor
pub fn resolve(&self, implementation: &PluginImplementation) -> PluginDescriptor
Resolves this stable contract against one exact executable implementation.
Trait Implementations§
Source§impl Clone for PluginContract
impl Clone for PluginContract
Source§fn clone(&self) -> PluginContract
fn clone(&self) -> PluginContract
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 PluginContract
impl Debug for PluginContract
Source§impl<'de> Deserialize<'de> for PluginContract
impl<'de> Deserialize<'de> for PluginContract
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
impl Eq for PluginContract
Source§impl PartialEq for PluginContract
impl PartialEq for PluginContract
Source§impl Serialize for PluginContract
impl Serialize for PluginContract
impl StructuralPartialEq for PluginContract
Auto Trait Implementations§
impl Freeze for PluginContract
impl RefUnwindSafe for PluginContract
impl Send for PluginContract
impl Sync for PluginContract
impl Unpin for PluginContract
impl UnsafeUnpin for PluginContract
impl UnwindSafe for PluginContract
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