pub enum IsolationClass {
VmKvm,
Namespace,
Container,
Platform,
}Expand description
The isolation a backend provides (distinct from the workload’s
IsolationRequirement, which is what it needs).
Variants§
VmKvm
A microVM with its own guest kernel under KVM (strongest).
Namespace
OS-level namespaces + cgroups, sharing the host kernel.
Container
A container on a (possibly remote) container runtime.
Platform
A managed platform (e.g. Cloudflare Containers).
Implementations§
Source§impl IsolationClass
impl IsolationClass
Sourcepub fn is_strong(self) -> bool
pub fn is_strong(self) -> bool
Whether this class is strong enough for untrusted multi-tenant code (a microVM or a managed platform — never a shared-kernel container).
Sourcepub fn satisfies(self, req: IsolationRequirement) -> bool
pub fn satisfies(self, req: IsolationRequirement) -> bool
Whether this class satisfies a workload’s isolation requirement.
Trait Implementations§
Source§impl Clone for IsolationClass
impl Clone for IsolationClass
Source§fn clone(&self) -> IsolationClass
fn clone(&self) -> IsolationClass
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 moreimpl Copy for IsolationClass
Source§impl Debug for IsolationClass
impl Debug for IsolationClass
Source§impl<'de> Deserialize<'de> for IsolationClass
impl<'de> Deserialize<'de> for IsolationClass
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 IsolationClass
Source§impl PartialEq for IsolationClass
impl PartialEq for IsolationClass
Source§impl Serialize for IsolationClass
impl Serialize for IsolationClass
impl StructuralPartialEq for IsolationClass
Auto Trait Implementations§
impl Freeze for IsolationClass
impl RefUnwindSafe for IsolationClass
impl Send for IsolationClass
impl Sync for IsolationClass
impl Unpin for IsolationClass
impl UnsafeUnpin for IsolationClass
impl UnwindSafe for IsolationClass
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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.