pub struct IsolationRequirement {
pub minimum_class: IsolationClass,
pub trust: IsolationTrustRequirement,
pub preferred_adapters: Vec<IsolationRuntimeRef>,
pub fallback: IsolationFallback,
pub required_capabilities: IsolationCapabilitySet,
}Expand description
Describes the isolation requirement portion of a runtime package snapshot. Use it when package authors or tests need explicit package configuration; validation and activation happen in package/runtime coordinators.
Fields§
§minimum_class: IsolationClassClassification value for minimum class. Policy and projection paths use it for finite routing decisions.
trust: IsolationTrustRequirementTrust class used when deciding whether context or capabilities may be admitted.
preferred_adapters: Vec<IsolationRuntimeRef>Collection of preferred adapters values. Ordering and membership should be treated as part of the serialized contract when relevant.
fallback: IsolationFallbackFallback used by this record or request.
required_capabilities: IsolationCapabilitySetRequired capabilities used by this record or request.
Implementations§
Source§impl IsolationRequirement
impl IsolationRequirement
Sourcepub fn at_least(minimum_class: IsolationClass) -> Self
pub fn at_least(minimum_class: IsolationClass) -> Self
Returns an updated package::isolation value with at least applied. This is data construction only and does not execute the configured behavior.
Sourcepub fn prefer(self, adapter_ref: impl Into<IsolationRuntimeRef>) -> Self
pub fn prefer(self, adapter_ref: impl Into<IsolationRuntimeRef>) -> Self
Returns an updated package::isolation value with prefer applied. This is data construction only and does not execute the configured behavior.
Sourcepub fn require_capabilities(
self,
capabilities: impl IntoIterator<Item = IsolationCapability>,
) -> Self
pub fn require_capabilities( self, capabilities: impl IntoIterator<Item = IsolationCapability>, ) -> Self
Returns an updated value with require capabilities configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn require_locality(self) -> Self
pub fn require_locality(self) -> Self
Returns an updated value with require locality configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn require_secret_isolation(self) -> Self
pub fn require_secret_isolation(self) -> Self
Returns an updated value with require secret isolation configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn allow_downgrade(
self,
accepted_classes: impl IntoIterator<Item = IsolationClass>,
accepted_capability_downgrades: impl IntoIterator<Item = IsolationCapability>,
accepted_trust_downgrades: impl IntoIterator<Item = IsolationTrustField>,
required_policy_refs: impl IntoIterator<Item = PolicyRef>,
) -> Self
pub fn allow_downgrade( self, accepted_classes: impl IntoIterator<Item = IsolationClass>, accepted_capability_downgrades: impl IntoIterator<Item = IsolationCapability>, accepted_trust_downgrades: impl IntoIterator<Item = IsolationTrustField>, required_policy_refs: impl IntoIterator<Item = PolicyRef>, ) -> Self
Returns an updated package::isolation value with allow downgrade applied. This is data construction only and does not execute the configured behavior.
Sourcepub fn fallback_test_only_host_process(self) -> Self
pub fn fallback_test_only_host_process(self) -> Self
Returns an updated value with fallback test only host process configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Trait Implementations§
Source§impl Clone for IsolationRequirement
impl Clone for IsolationRequirement
Source§fn clone(&self) -> IsolationRequirement
fn clone(&self) -> IsolationRequirement
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for IsolationRequirement
impl Debug for IsolationRequirement
Source§impl<'de> Deserialize<'de> for IsolationRequirement
impl<'de> Deserialize<'de> for IsolationRequirement
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>,
Source§impl PartialEq for IsolationRequirement
impl PartialEq for IsolationRequirement
Source§fn eq(&self, other: &IsolationRequirement) -> bool
fn eq(&self, other: &IsolationRequirement) -> bool
self and other values to be equal, and is used by ==.