pub struct PlatformCapabilities { /* private fields */ }Expand description
The set of ToolCapabilitys the current platform provides.
Detection is compile-time: current resolves to the
capability set for the build target. Desktop targets provide everything; a
future mobile or wasm host would provide a reduced set (no
ProcessSpawn). This mirrors the
leviath-sys crate’s approach of centralizing platform #[cfg] branching
in one place rather than scattering it across call sites.
Implementations§
Source§impl PlatformCapabilities
impl PlatformCapabilities
Sourcepub fn desktop() -> Self
pub fn desktop() -> Self
Capabilities for a desktop host: process spawning, filesystem, network.
Sourcepub fn mobile() -> Self
pub fn mobile() -> Self
Capabilities for a mobile host: filesystem and network, but no process
spawning (so the shell tool doesn’t register).
Sourcepub fn from_capabilities(caps: impl IntoIterator<Item = ToolCapability>) -> Self
pub fn from_capabilities(caps: impl IntoIterator<Item = ToolCapability>) -> Self
Build a capability set from an explicit collection (tests, future hosts).
Sourcepub fn supports(&self, cap: ToolCapability) -> bool
pub fn supports(&self, cap: ToolCapability) -> bool
Whether the platform provides cap.
Sourcepub fn satisfies(&self, required: &[ToolCapability]) -> bool
pub fn satisfies(&self, required: &[ToolCapability]) -> bool
Whether the platform provides every capability in required. An empty
requirement slice is always satisfied.
Trait Implementations§
Source§impl Clone for PlatformCapabilities
impl Clone for PlatformCapabilities
Source§fn clone(&self) -> PlatformCapabilities
fn clone(&self) -> PlatformCapabilities
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 PlatformCapabilities
impl Debug for PlatformCapabilities
Source§impl Default for PlatformCapabilities
impl Default for PlatformCapabilities
impl Eq for PlatformCapabilities
Source§impl PartialEq for PlatformCapabilities
impl PartialEq for PlatformCapabilities
impl StructuralPartialEq for PlatformCapabilities
Auto Trait Implementations§
impl Freeze for PlatformCapabilities
impl RefUnwindSafe for PlatformCapabilities
impl Send for PlatformCapabilities
impl Sync for PlatformCapabilities
impl Unpin for PlatformCapabilities
impl UnsafeUnpin for PlatformCapabilities
impl UnwindSafe for PlatformCapabilities
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key and return true if they are equal.