pub enum Operand {
Show 45 variants
ImageOperands(ImageOperands),
FPFastMathMode(FPFastMathMode),
SelectionControl(SelectionControl),
LoopControl(LoopControl),
FunctionControl(FunctionControl),
MemorySemantics(MemorySemantics),
MemoryAccess(MemoryAccess),
KernelProfilingInfo(KernelProfilingInfo),
RayFlags(RayFlags),
FragmentShadingRate(FragmentShadingRate),
SourceLanguage(SourceLanguage),
ExecutionModel(ExecutionModel),
AddressingModel(AddressingModel),
MemoryModel(MemoryModel),
ExecutionMode(ExecutionMode),
StorageClass(StorageClass),
Dim(Dim),
SamplerAddressingMode(SamplerAddressingMode),
SamplerFilterMode(SamplerFilterMode),
ImageFormat(ImageFormat),
ImageChannelOrder(ImageChannelOrder),
ImageChannelDataType(ImageChannelDataType),
FPRoundingMode(FPRoundingMode),
LinkageType(LinkageType),
AccessQualifier(AccessQualifier),
FunctionParameterAttribute(FunctionParameterAttribute),
Decoration(Decoration),
BuiltIn(BuiltIn),
Scope(Scope),
GroupOperation(GroupOperation),
KernelEnqueueFlags(KernelEnqueueFlags),
Capability(Capability),
RayQueryIntersection(RayQueryIntersection),
RayQueryCommittedIntersectionType(RayQueryCommittedIntersectionType),
RayQueryCandidateIntersectionType(RayQueryCandidateIntersectionType),
IdMemorySemantics(Word),
IdScope(Word),
IdRef(Word),
LiteralInt32(u32),
LiteralInt64(u64),
LiteralFloat32(f32),
LiteralFloat64(f64),
LiteralExtInstInteger(u32),
LiteralSpecConstantOpInteger(Op),
LiteralString(String),
}
Expand description
Data representation of a SPIR-V operand.
Variants§
ImageOperands(ImageOperands)
FPFastMathMode(FPFastMathMode)
SelectionControl(SelectionControl)
LoopControl(LoopControl)
FunctionControl(FunctionControl)
MemorySemantics(MemorySemantics)
MemoryAccess(MemoryAccess)
KernelProfilingInfo(KernelProfilingInfo)
RayFlags(RayFlags)
FragmentShadingRate(FragmentShadingRate)
SourceLanguage(SourceLanguage)
ExecutionModel(ExecutionModel)
AddressingModel(AddressingModel)
MemoryModel(MemoryModel)
ExecutionMode(ExecutionMode)
StorageClass(StorageClass)
Dim(Dim)
SamplerAddressingMode(SamplerAddressingMode)
SamplerFilterMode(SamplerFilterMode)
ImageFormat(ImageFormat)
ImageChannelOrder(ImageChannelOrder)
ImageChannelDataType(ImageChannelDataType)
FPRoundingMode(FPRoundingMode)
LinkageType(LinkageType)
AccessQualifier(AccessQualifier)
FunctionParameterAttribute(FunctionParameterAttribute)
Decoration(Decoration)
BuiltIn(BuiltIn)
Scope(Scope)
GroupOperation(GroupOperation)
KernelEnqueueFlags(KernelEnqueueFlags)
Capability(Capability)
RayQueryIntersection(RayQueryIntersection)
RayQueryCommittedIntersectionType(RayQueryCommittedIntersectionType)
RayQueryCandidateIntersectionType(RayQueryCandidateIntersectionType)
IdMemorySemantics(Word)
IdScope(Word)
IdRef(Word)
LiteralInt32(u32)
LiteralInt64(u64)
LiteralFloat32(f32)
LiteralFloat64(f64)
LiteralExtInstInteger(u32)
LiteralSpecConstantOpInteger(Op)
LiteralString(String)
Implementations§
source§impl Operand
impl Operand
pub fn unwrap_image_operands(&self) -> ImageOperands
pub fn unwrap_fp_fast_math_mode(&self) -> FPFastMathMode
pub fn unwrap_selection_control(&self) -> SelectionControl
pub fn unwrap_loop_control(&self) -> LoopControl
pub fn unwrap_function_control(&self) -> FunctionControl
pub fn unwrap_memory_semantics(&self) -> MemorySemantics
pub fn unwrap_memory_access(&self) -> MemoryAccess
pub fn unwrap_kernel_profiling_info(&self) -> KernelProfilingInfo
pub fn unwrap_ray_flags(&self) -> RayFlags
pub fn unwrap_fragment_shading_rate(&self) -> FragmentShadingRate
pub fn unwrap_source_language(&self) -> SourceLanguage
pub fn unwrap_execution_model(&self) -> ExecutionModel
pub fn unwrap_addressing_model(&self) -> AddressingModel
pub fn unwrap_memory_model(&self) -> MemoryModel
pub fn unwrap_execution_mode(&self) -> ExecutionMode
pub fn unwrap_storage_class(&self) -> StorageClass
pub fn unwrap_dim(&self) -> Dim
pub fn unwrap_sampler_addressing_mode(&self) -> SamplerAddressingMode
pub fn unwrap_sampler_filter_mode(&self) -> SamplerFilterMode
pub fn unwrap_image_format(&self) -> ImageFormat
pub fn unwrap_image_channel_order(&self) -> ImageChannelOrder
pub fn unwrap_image_channel_data_type(&self) -> ImageChannelDataType
pub fn unwrap_fp_rounding_mode(&self) -> FPRoundingMode
pub fn unwrap_linkage_type(&self) -> LinkageType
pub fn unwrap_access_qualifier(&self) -> AccessQualifier
pub fn unwrap_function_parameter_attribute(&self) -> FunctionParameterAttribute
pub fn unwrap_decoration(&self) -> Decoration
pub fn unwrap_built_in(&self) -> BuiltIn
pub fn unwrap_scope(&self) -> Scope
pub fn unwrap_group_operation(&self) -> GroupOperation
pub fn unwrap_kernel_enqueue_flags(&self) -> KernelEnqueueFlags
pub fn unwrap_capability(&self) -> Capability
pub fn unwrap_ray_query_intersection(&self) -> RayQueryIntersection
pub fn unwrap_ray_query_committed_intersection_type( &self ) -> RayQueryCommittedIntersectionType
pub fn unwrap_ray_query_candidate_intersection_type( &self ) -> RayQueryCandidateIntersectionType
pub fn unwrap_id_memory_semantics(&self) -> Word
pub fn unwrap_id_scope(&self) -> Word
pub fn unwrap_id_ref(&self) -> Word
pub fn unwrap_literal_int32(&self) -> u32
pub fn unwrap_literal_int64(&self) -> u64
pub fn unwrap_literal_float32(&self) -> f32
pub fn unwrap_literal_float64(&self) -> f64
pub fn unwrap_literal_ext_inst_integer(&self) -> u32
pub fn unwrap_literal_spec_constant_op_integer(&self) -> Op
pub fn unwrap_literal_string(&self) -> &str
pub fn id_ref_any(&self) -> Option<Word>
pub fn id_ref_any_mut(&mut self) -> Option<&mut Word>
pub fn required_capabilities(&self) -> Vec<Capability>
pub fn required_extensions(&self) -> Vec<&'static str>
pub fn additional_operands(&self) -> Vec<LogicalOperand>
Trait Implementations§
source§impl Assemble for Operand
impl Assemble for Operand
source§fn assemble_into(&self, result: &mut Vec<u32>)
fn assemble_into(&self, result: &mut Vec<u32>)
Assembles the current object into the
result
vector, reducing the need for lots of allocationssource§impl Disassemble for Operand
impl Disassemble for Operand
source§fn disassemble(&self) -> String
fn disassemble(&self) -> String
Disassembles the current object and returns the assembly code.
source§impl From<AccessQualifier> for Operand
impl From<AccessQualifier> for Operand
source§fn from(o: AccessQualifier) -> Self
fn from(o: AccessQualifier) -> Self
Converts to this type from the input type.
source§impl From<AddressingModel> for Operand
impl From<AddressingModel> for Operand
source§fn from(o: AddressingModel) -> Self
fn from(o: AddressingModel) -> Self
Converts to this type from the input type.
source§impl From<Capability> for Operand
impl From<Capability> for Operand
source§fn from(o: Capability) -> Self
fn from(o: Capability) -> Self
Converts to this type from the input type.
source§impl From<Decoration> for Operand
impl From<Decoration> for Operand
source§fn from(o: Decoration) -> Self
fn from(o: Decoration) -> Self
Converts to this type from the input type.
source§impl From<ExecutionMode> for Operand
impl From<ExecutionMode> for Operand
source§fn from(o: ExecutionMode) -> Self
fn from(o: ExecutionMode) -> Self
Converts to this type from the input type.
source§impl From<ExecutionModel> for Operand
impl From<ExecutionModel> for Operand
source§fn from(o: ExecutionModel) -> Self
fn from(o: ExecutionModel) -> Self
Converts to this type from the input type.
source§impl From<FPFastMathMode> for Operand
impl From<FPFastMathMode> for Operand
source§fn from(o: FPFastMathMode) -> Self
fn from(o: FPFastMathMode) -> Self
Converts to this type from the input type.
source§impl From<FPRoundingMode> for Operand
impl From<FPRoundingMode> for Operand
source§fn from(o: FPRoundingMode) -> Self
fn from(o: FPRoundingMode) -> Self
Converts to this type from the input type.
source§impl From<FragmentShadingRate> for Operand
impl From<FragmentShadingRate> for Operand
source§fn from(o: FragmentShadingRate) -> Self
fn from(o: FragmentShadingRate) -> Self
Converts to this type from the input type.
source§impl From<FunctionControl> for Operand
impl From<FunctionControl> for Operand
source§fn from(o: FunctionControl) -> Self
fn from(o: FunctionControl) -> Self
Converts to this type from the input type.
source§impl From<FunctionParameterAttribute> for Operand
impl From<FunctionParameterAttribute> for Operand
source§fn from(o: FunctionParameterAttribute) -> Self
fn from(o: FunctionParameterAttribute) -> Self
Converts to this type from the input type.
source§impl From<GroupOperation> for Operand
impl From<GroupOperation> for Operand
source§fn from(o: GroupOperation) -> Self
fn from(o: GroupOperation) -> Self
Converts to this type from the input type.
source§impl From<ImageChannelDataType> for Operand
impl From<ImageChannelDataType> for Operand
source§fn from(o: ImageChannelDataType) -> Self
fn from(o: ImageChannelDataType) -> Self
Converts to this type from the input type.
source§impl From<ImageChannelOrder> for Operand
impl From<ImageChannelOrder> for Operand
source§fn from(o: ImageChannelOrder) -> Self
fn from(o: ImageChannelOrder) -> Self
Converts to this type from the input type.
source§impl From<ImageFormat> for Operand
impl From<ImageFormat> for Operand
source§fn from(o: ImageFormat) -> Self
fn from(o: ImageFormat) -> Self
Converts to this type from the input type.
source§impl From<ImageOperands> for Operand
impl From<ImageOperands> for Operand
source§fn from(o: ImageOperands) -> Self
fn from(o: ImageOperands) -> Self
Converts to this type from the input type.
source§impl From<KernelEnqueueFlags> for Operand
impl From<KernelEnqueueFlags> for Operand
source§fn from(o: KernelEnqueueFlags) -> Self
fn from(o: KernelEnqueueFlags) -> Self
Converts to this type from the input type.
source§impl From<KernelProfilingInfo> for Operand
impl From<KernelProfilingInfo> for Operand
source§fn from(o: KernelProfilingInfo) -> Self
fn from(o: KernelProfilingInfo) -> Self
Converts to this type from the input type.
source§impl From<LinkageType> for Operand
impl From<LinkageType> for Operand
source§fn from(o: LinkageType) -> Self
fn from(o: LinkageType) -> Self
Converts to this type from the input type.
source§impl From<LoopControl> for Operand
impl From<LoopControl> for Operand
source§fn from(o: LoopControl) -> Self
fn from(o: LoopControl) -> Self
Converts to this type from the input type.
source§impl From<MemoryAccess> for Operand
impl From<MemoryAccess> for Operand
source§fn from(o: MemoryAccess) -> Self
fn from(o: MemoryAccess) -> Self
Converts to this type from the input type.
source§impl From<MemoryModel> for Operand
impl From<MemoryModel> for Operand
source§fn from(o: MemoryModel) -> Self
fn from(o: MemoryModel) -> Self
Converts to this type from the input type.
source§impl From<MemorySemantics> for Operand
impl From<MemorySemantics> for Operand
source§fn from(o: MemorySemantics) -> Self
fn from(o: MemorySemantics) -> Self
Converts to this type from the input type.
source§impl From<RayQueryCandidateIntersectionType> for Operand
impl From<RayQueryCandidateIntersectionType> for Operand
source§fn from(o: RayQueryCandidateIntersectionType) -> Self
fn from(o: RayQueryCandidateIntersectionType) -> Self
Converts to this type from the input type.
source§impl From<RayQueryCommittedIntersectionType> for Operand
impl From<RayQueryCommittedIntersectionType> for Operand
source§fn from(o: RayQueryCommittedIntersectionType) -> Self
fn from(o: RayQueryCommittedIntersectionType) -> Self
Converts to this type from the input type.
source§impl From<RayQueryIntersection> for Operand
impl From<RayQueryIntersection> for Operand
source§fn from(o: RayQueryIntersection) -> Self
fn from(o: RayQueryIntersection) -> Self
Converts to this type from the input type.
source§impl From<SamplerAddressingMode> for Operand
impl From<SamplerAddressingMode> for Operand
source§fn from(o: SamplerAddressingMode) -> Self
fn from(o: SamplerAddressingMode) -> Self
Converts to this type from the input type.
source§impl From<SamplerFilterMode> for Operand
impl From<SamplerFilterMode> for Operand
source§fn from(o: SamplerFilterMode) -> Self
fn from(o: SamplerFilterMode) -> Self
Converts to this type from the input type.
source§impl From<SelectionControl> for Operand
impl From<SelectionControl> for Operand
source§fn from(o: SelectionControl) -> Self
fn from(o: SelectionControl) -> Self
Converts to this type from the input type.
source§impl From<SourceLanguage> for Operand
impl From<SourceLanguage> for Operand
source§fn from(o: SourceLanguage) -> Self
fn from(o: SourceLanguage) -> Self
Converts to this type from the input type.
source§impl From<StorageClass> for Operand
impl From<StorageClass> for Operand
source§fn from(o: StorageClass) -> Self
fn from(o: StorageClass) -> Self
Converts to this type from the input type.
source§impl PartialEq<Operand> for Operand
impl PartialEq<Operand> for Operand
impl StructuralPartialEq for Operand
Auto Trait Implementations§
impl RefUnwindSafe for Operand
impl Send for Operand
impl Sync for Operand
impl Unpin for Operand
impl UnwindSafe for Operand
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