pub struct PipelineFeatureFlags(pub u32);Expand description
Capability bits that participate in pipeline-cache identity.
Two otherwise-identical pipelines compiled with different
PipelineFeatureFlags produce different cache keys - a pipeline
that assumed subgroup-op support cannot be reused on an adapter
that does not expose subgroup ops even if the shader bytes match.
Encoded as a bitfield so the wire form is compact and trivially
hashable. Bits 0x01..0x80 are allocated here; higher bits are
reserved for additive backend capability flags.
Tuple Fields§
§0: u32Implementations§
Source§impl PipelineFeatureFlags
impl PipelineFeatureFlags
Sourcepub const SUBGROUP_OPS: Self
pub const SUBGROUP_OPS: Self
Pipeline was compiled against a lowering that emits subgroup / wave intrinsics.
Sourcepub const TENSOR_CORES: Self
pub const TENSOR_CORES: Self
Pipeline was compiled with tensor-core / matrix-engine intrinsics enabled.
Sourcepub const ASYNC_COMPUTE: Self
pub const ASYNC_COMPUTE: Self
Pipeline expects an async-compute queue at dispatch time.
Sourcepub const PUSH_CONSTANTS: Self
pub const PUSH_CONSTANTS: Self
Pipeline expects push-constant support at dispatch time.
Sourcepub const INDIRECT_DISPATCH: Self
pub const INDIRECT_DISPATCH: Self
Pipeline emits indirect-dispatch commands.
Sourcepub const SPECULATIVE: Self
pub const SPECULATIVE: Self
Pipeline was compiled for speculative (fused prefilter+confirmer) dispatch.
Sourcepub const PERSISTENT_THREAD: Self
pub const PERSISTENT_THREAD: Self
Pipeline was compiled for persistent-thread (device-side work queue) dispatch.
Trait Implementations§
Source§impl Clone for PipelineFeatureFlags
impl Clone for PipelineFeatureFlags
Source§fn clone(&self) -> PipelineFeatureFlags
fn clone(&self) -> PipelineFeatureFlags
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for PipelineFeatureFlags
Source§impl Debug for PipelineFeatureFlags
impl Debug for PipelineFeatureFlags
Source§impl Default for PipelineFeatureFlags
impl Default for PipelineFeatureFlags
Source§fn default() -> PipelineFeatureFlags
fn default() -> PipelineFeatureFlags
Source§impl<'de> Deserialize<'de> for PipelineFeatureFlags
impl<'de> Deserialize<'de> for PipelineFeatureFlags
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>,
impl Eq for PipelineFeatureFlags
Source§impl Hash for PipelineFeatureFlags
impl Hash for PipelineFeatureFlags
Source§impl PartialEq for PipelineFeatureFlags
impl PartialEq for PipelineFeatureFlags
Source§fn eq(&self, other: &PipelineFeatureFlags) -> bool
fn eq(&self, other: &PipelineFeatureFlags) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for PipelineFeatureFlags
impl Serialize for PipelineFeatureFlags
impl StructuralPartialEq for PipelineFeatureFlags
Auto Trait Implementations§
impl Freeze for PipelineFeatureFlags
impl RefUnwindSafe for PipelineFeatureFlags
impl Send for PipelineFeatureFlags
impl Sync for PipelineFeatureFlags
impl Unpin for PipelineFeatureFlags
impl UnsafeUnpin for PipelineFeatureFlags
impl UnwindSafe for PipelineFeatureFlags
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
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§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.