#[repr(u32)]pub enum Capability {
Show 158 variants
Matrix,
Shader,
Geometry,
Tessellation,
Addresses,
Linkage,
Kernel,
Vector16,
Float16Buffer,
Float16,
Float64,
Int64,
Int64Atomics,
ImageBasic,
ImageReadWrite,
ImageMipmap,
Pipes,
Groups,
DeviceEnqueue,
LiteralSampler,
AtomicStorage,
Int16,
TessellationPointSize,
GeometryPointSize,
ImageGatherExtended,
StorageImageMultisample,
UniformBufferArrayDynamicIndexing,
SampledImageArrayDynamicIndexing,
StorageBufferArrayDynamicIndexing,
StorageImageArrayDynamicIndexing,
ClipDistance,
CullDistance,
ImageCubeArray,
SampleRateShading,
ImageRect,
SampledRect,
GenericPointer,
Int8,
InputAttachment,
SparseResidency,
MinLod,
Sampled1D,
Image1D,
SampledCubeArray,
SampledBuffer,
ImageBuffer,
ImageMSArray,
StorageImageExtendedFormats,
ImageQuery,
DerivativeControl,
InterpolationFunction,
TransformFeedback,
GeometryStreams,
StorageImageReadWithoutFormat,
StorageImageWriteWithoutFormat,
MultiViewport,
SubgroupDispatch,
NamedBarrier,
PipeStorage,
GroupNonUniform,
GroupNonUniformVote,
GroupNonUniformArithmetic,
GroupNonUniformBallot,
GroupNonUniformShuffle,
GroupNonUniformShuffleRelative,
GroupNonUniformClustered,
GroupNonUniformQuad,
ShaderLayer,
ShaderViewportIndex,
FragmentShadingRateKHR,
SubgroupBallotKHR,
DrawParameters,
SubgroupVoteKHR,
StorageBuffer16BitAccess,
UniformAndStorageBuffer16BitAccess,
StoragePushConstant16,
StorageInputOutput16,
DeviceGroup,
MultiView,
VariablePointersStorageBuffer,
VariablePointers,
AtomicStorageOps,
SampleMaskPostDepthCoverage,
StorageBuffer8BitAccess,
UniformAndStorageBuffer8BitAccess,
StoragePushConstant8,
DenormPreserve,
DenormFlushToZero,
SignedZeroInfNanPreserve,
RoundingModeRTE,
RoundingModeRTZ,
RayQueryProvisionalKHR,
RayQueryKHR,
RayTraversalPrimitiveCullingKHR,
RayTracingKHR,
Float16ImageAMD,
ImageGatherBiasLodAMD,
FragmentMaskAMD,
StencilExportEXT,
ImageReadWriteLodAMD,
Int64ImageEXT,
ShaderClockKHR,
SampleMaskOverrideCoverageNV,
GeometryShaderPassthroughNV,
ShaderViewportIndexLayerEXT,
ShaderViewportMaskNV,
ShaderStereoViewNV,
PerViewAttributesNV,
FragmentFullyCoveredEXT,
MeshShadingNV,
ImageFootprintNV,
FragmentBarycentricNV,
ComputeDerivativeGroupQuadsNV,
FragmentDensityEXT,
GroupNonUniformPartitionedNV,
ShaderNonUniform,
RuntimeDescriptorArray,
InputAttachmentArrayDynamicIndexing,
UniformTexelBufferArrayDynamicIndexing,
StorageTexelBufferArrayDynamicIndexing,
UniformBufferArrayNonUniformIndexing,
SampledImageArrayNonUniformIndexing,
StorageBufferArrayNonUniformIndexing,
StorageImageArrayNonUniformIndexing,
InputAttachmentArrayNonUniformIndexing,
UniformTexelBufferArrayNonUniformIndexing,
StorageTexelBufferArrayNonUniformIndexing,
RayTracingNV,
VulkanMemoryModel,
VulkanMemoryModelDeviceScope,
PhysicalStorageBufferAddresses,
ComputeDerivativeGroupLinearNV,
RayTracingProvisionalKHR,
CooperativeMatrixNV,
FragmentShaderSampleInterlockEXT,
FragmentShaderShadingRateInterlockEXT,
ShaderSMBuiltinsNV,
FragmentShaderPixelInterlockEXT,
DemoteToHelperInvocationEXT,
SubgroupShuffleINTEL,
SubgroupBufferBlockIOINTEL,
SubgroupImageBlockIOINTEL,
SubgroupImageMediaBlockIOINTEL,
IntegerFunctions2INTEL,
FunctionPointersINTEL,
IndirectReferencesINTEL,
SubgroupAvcMotionEstimationINTEL,
SubgroupAvcMotionEstimationIntraINTEL,
SubgroupAvcMotionEstimationChromaINTEL,
FPGAMemoryAttributesINTEL,
UnstructuredLoopControlsINTEL,
FPGALoopControlsINTEL,
KernelAttributesINTEL,
FPGAKernelAttributesINTEL,
BlockingPipesINTEL,
FPGARegINTEL,
AtomicFloat32AddEXT,
AtomicFloat64AddEXT,
}
Expand description
/// SPIR-V operand kind: Capability
Variants§
Matrix
Shader
Geometry
Tessellation
Addresses
Linkage
Kernel
Vector16
Float16Buffer
Float16
Float64
Int64
Int64Atomics
ImageBasic
ImageReadWrite
ImageMipmap
Pipes
Groups
DeviceEnqueue
LiteralSampler
AtomicStorage
Int16
TessellationPointSize
GeometryPointSize
ImageGatherExtended
StorageImageMultisample
UniformBufferArrayDynamicIndexing
SampledImageArrayDynamicIndexing
StorageBufferArrayDynamicIndexing
StorageImageArrayDynamicIndexing
ClipDistance
CullDistance
ImageCubeArray
SampleRateShading
ImageRect
SampledRect
GenericPointer
Int8
InputAttachment
SparseResidency
MinLod
Sampled1D
Image1D
SampledCubeArray
SampledBuffer
ImageBuffer
ImageMSArray
StorageImageExtendedFormats
ImageQuery
DerivativeControl
InterpolationFunction
TransformFeedback
GeometryStreams
StorageImageReadWithoutFormat
StorageImageWriteWithoutFormat
MultiViewport
SubgroupDispatch
NamedBarrier
PipeStorage
GroupNonUniform
GroupNonUniformVote
GroupNonUniformArithmetic
GroupNonUniformBallot
GroupNonUniformShuffle
GroupNonUniformShuffleRelative
GroupNonUniformClustered
GroupNonUniformQuad
ShaderLayer
ShaderViewportIndex
FragmentShadingRateKHR
SubgroupBallotKHR
DrawParameters
SubgroupVoteKHR
StorageBuffer16BitAccess
UniformAndStorageBuffer16BitAccess
StoragePushConstant16
StorageInputOutput16
DeviceGroup
MultiView
VariablePointersStorageBuffer
VariablePointers
AtomicStorageOps
SampleMaskPostDepthCoverage
StorageBuffer8BitAccess
UniformAndStorageBuffer8BitAccess
StoragePushConstant8
DenormPreserve
DenormFlushToZero
SignedZeroInfNanPreserve
RoundingModeRTE
RoundingModeRTZ
RayQueryProvisionalKHR
RayQueryKHR
RayTraversalPrimitiveCullingKHR
RayTracingKHR
Float16ImageAMD
ImageGatherBiasLodAMD
FragmentMaskAMD
StencilExportEXT
ImageReadWriteLodAMD
Int64ImageEXT
ShaderClockKHR
SampleMaskOverrideCoverageNV
GeometryShaderPassthroughNV
ShaderViewportIndexLayerEXT
ShaderViewportMaskNV
ShaderStereoViewNV
PerViewAttributesNV
FragmentFullyCoveredEXT
MeshShadingNV
ImageFootprintNV
FragmentBarycentricNV
ComputeDerivativeGroupQuadsNV
FragmentDensityEXT
GroupNonUniformPartitionedNV
ShaderNonUniform
RuntimeDescriptorArray
InputAttachmentArrayDynamicIndexing
UniformTexelBufferArrayDynamicIndexing
StorageTexelBufferArrayDynamicIndexing
UniformBufferArrayNonUniformIndexing
SampledImageArrayNonUniformIndexing
StorageBufferArrayNonUniformIndexing
StorageImageArrayNonUniformIndexing
InputAttachmentArrayNonUniformIndexing
UniformTexelBufferArrayNonUniformIndexing
StorageTexelBufferArrayNonUniformIndexing
RayTracingNV
VulkanMemoryModel
VulkanMemoryModelDeviceScope
PhysicalStorageBufferAddresses
ComputeDerivativeGroupLinearNV
RayTracingProvisionalKHR
CooperativeMatrixNV
FragmentShaderSampleInterlockEXT
FragmentShaderShadingRateInterlockEXT
ShaderSMBuiltinsNV
FragmentShaderPixelInterlockEXT
DemoteToHelperInvocationEXT
SubgroupShuffleINTEL
SubgroupBufferBlockIOINTEL
SubgroupImageBlockIOINTEL
SubgroupImageMediaBlockIOINTEL
IntegerFunctions2INTEL
FunctionPointersINTEL
IndirectReferencesINTEL
SubgroupAvcMotionEstimationINTEL
SubgroupAvcMotionEstimationIntraINTEL
SubgroupAvcMotionEstimationChromaINTEL
FPGAMemoryAttributesINTEL
UnstructuredLoopControlsINTEL
FPGALoopControlsINTEL
KernelAttributesINTEL
FPGAKernelAttributesINTEL
BlockingPipesINTEL
FPGARegINTEL
AtomicFloat32AddEXT
AtomicFloat64AddEXT
Implementations§
source§impl Capability
impl Capability
pub const StorageUniformBufferBlock16: Capability = Self::StorageBuffer16BitAccess
pub const StorageUniform16: Capability = Self::UniformAndStorageBuffer16BitAccess
pub const ShaderViewportIndexLayerNV: Capability = Self::ShaderViewportIndexLayerEXT
pub const ShadingRateNV: Capability = Self::FragmentDensityEXT
pub const ShaderNonUniformEXT: Capability = Self::ShaderNonUniform
pub const RuntimeDescriptorArrayEXT: Capability = Self::RuntimeDescriptorArray
pub const InputAttachmentArrayDynamicIndexingEXT: Capability = Self::InputAttachmentArrayDynamicIndexing
pub const UniformTexelBufferArrayDynamicIndexingEXT: Capability = Self::UniformTexelBufferArrayDynamicIndexing
pub const StorageTexelBufferArrayDynamicIndexingEXT: Capability = Self::StorageTexelBufferArrayDynamicIndexing
pub const UniformBufferArrayNonUniformIndexingEXT: Capability = Self::UniformBufferArrayNonUniformIndexing
pub const SampledImageArrayNonUniformIndexingEXT: Capability = Self::SampledImageArrayNonUniformIndexing
pub const StorageBufferArrayNonUniformIndexingEXT: Capability = Self::StorageBufferArrayNonUniformIndexing
pub const StorageImageArrayNonUniformIndexingEXT: Capability = Self::StorageImageArrayNonUniformIndexing
pub const InputAttachmentArrayNonUniformIndexingEXT: Capability = Self::InputAttachmentArrayNonUniformIndexing
pub const UniformTexelBufferArrayNonUniformIndexingEXT: Capability = Self::UniformTexelBufferArrayNonUniformIndexing
pub const StorageTexelBufferArrayNonUniformIndexingEXT: Capability = Self::StorageTexelBufferArrayNonUniformIndexing
pub const VulkanMemoryModelKHR: Capability = Self::VulkanMemoryModel
pub const VulkanMemoryModelDeviceScopeKHR: Capability = Self::VulkanMemoryModelDeviceScope
pub const PhysicalStorageBufferAddressesEXT: Capability = Self::PhysicalStorageBufferAddresses
Trait Implementations§
source§impl Clone for Capability
impl Clone for Capability
source§fn clone(&self) -> Capability
fn clone(&self) -> Capability
Returns a copy of the value. Read more
1.0.0 · 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 Capability
impl Debug for Capability
source§impl FromPrimitive for Capability
impl FromPrimitive for Capability
source§fn from_i64(n: i64) -> Option<Capability>
fn from_i64(n: i64) -> Option<Capability>
Converts an
i64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u64(n: u64) -> Option<Capability>
fn from_u64(n: u64) -> Option<Capability>
Converts an
u64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_isize(n: isize) -> Option<Self>
fn from_isize(n: isize) -> Option<Self>
Converts an
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i8(n: i8) -> Option<Self>
fn from_i8(n: i8) -> Option<Self>
Converts an
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i16(n: i16) -> Option<Self>
fn from_i16(n: i16) -> Option<Self>
Converts an
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i32(n: i32) -> Option<Self>
fn from_i32(n: i32) -> Option<Self>
Converts an
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i128(n: i128) -> Option<Self>
fn from_i128(n: i128) -> Option<Self>
Converts an
i128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§fn from_usize(n: usize) -> Option<Self>
fn from_usize(n: usize) -> Option<Self>
Converts a
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u8(n: u8) -> Option<Self>
fn from_u8(n: u8) -> Option<Self>
Converts an
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u16(n: u16) -> Option<Self>
fn from_u16(n: u16) -> Option<Self>
Converts an
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u32(n: u32) -> Option<Self>
fn from_u32(n: u32) -> Option<Self>
Converts an
u32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u128(n: u128) -> Option<Self>
fn from_u128(n: u128) -> Option<Self>
Converts an
u128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§impl FromStr for Capability
impl FromStr for Capability
source§impl Hash for Capability
impl Hash for Capability
source§impl Ord for Capability
impl Ord for Capability
source§fn cmp(&self, other: &Capability) -> Ordering
fn cmp(&self, other: &Capability) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq<Capability> for Capability
impl PartialEq<Capability> for Capability
source§fn eq(&self, other: &Capability) -> bool
fn eq(&self, other: &Capability) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<Capability> for Capability
impl PartialOrd<Capability> for Capability
source§fn partial_cmp(&self, other: &Capability) -> Option<Ordering>
fn partial_cmp(&self, other: &Capability) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Copy for Capability
impl Eq for Capability
impl StructuralEq for Capability
impl StructuralPartialEq for Capability
Auto Trait Implementations§
impl RefUnwindSafe for Capability
impl Send for Capability
impl Sync for Capability
impl Unpin for Capability
impl UnwindSafe for Capability
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