Realm

vk · Structs · I7

16 public declarations with native signatures and source-owned contracts.

StRustExperimental

Stvk::IndirectCommandsLayoutTokenNV

pub struct IndirectCommandsLayoutTokenNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub token_type: IndirectCommandsTokenTypeNV, pub stream: u32, pub offset: u32, pub vertex_binding_unit: u32, pub vertex_dynamic_stride: Bool32, pub pushconstant_pipeline_layout: PipelineLayout, pub pushconstant_shader_stage_flags: ShaderStageFlags, pub pushconstant_offset: u32, pub pushconstant_size: u32, pub indirect_state_flags: IndirectStateFlagsNV, pub index_type_count: u32, pub p_index_types: *const IndexType, pub p_index_type_values: *const u32, /* private fields */ }
Native structure VkIndirectCommandsLayoutTokenNV.

Contract

Native structure VkIndirectCommandsLayoutTokenNV.

Khronos reference: VkIndirectCommandsLayoutTokenNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

token_type

Field
token_type: IndirectCommandsTokenTypeNV

Native field tokenType.

stream

Field
stream: u32

Native field stream.

offset

Field
offset: u32

Native field offset.

vertex_binding_unit

Field
vertex_binding_unit: u32

Native field vertexBindingUnit.

vertex_dynamic_stride

Field
vertex_dynamic_stride: Bool32

Native field vertexDynamicStride.

pushconstant_pipeline_layout

Field
pushconstant_pipeline_layout: PipelineLayout

Native field pushconstantPipelineLayout.

pushconstant_shader_stage_flags

Field
pushconstant_shader_stage_flags: ShaderStageFlags

Native field pushconstantShaderStageFlags.

pushconstant_offset

Field
pushconstant_offset: u32

Native field pushconstantOffset.

pushconstant_size

Field
pushconstant_size: u32

Native field pushconstantSize.

indirect_state_flags

Field
indirect_state_flags: IndirectStateFlagsNV

Native field indirectStateFlags.

index_type_count

Field
index_type_count: u32

Native field indexTypeCount.

p_index_types

Field
p_index_types: *const IndexType

Native field pIndexTypes.

p_index_type_values

Field
p_index_type_values: *const u32

Native field pIndexTypeValues.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_token_type

Method
pub fn set_token_type(self, value: IndirectCommandsTokenTypeNV) -> Self

Set native field tokenType without native effects.

set_stream

Method
pub fn set_stream(self, value: u32) -> Self

Set native field stream without native effects.

set_offset

Method
pub fn set_offset(self, value: u32) -> Self

Set native field offset without native effects.

set_vertex_binding_unit

Method
pub fn set_vertex_binding_unit(self, value: u32) -> Self

Set native field vertexBindingUnit without native effects.

set_vertex_dynamic_stride

Method
pub fn set_vertex_dynamic_stride(self, value: Bool32) -> Self

Set native field vertexDynamicStride without native effects.

set_pushconstant_pipeline_layout

Method
pub fn set_pushconstant_pipeline_layout(self, value: PipelineLayout) -> Self

Set native field pushconstantPipelineLayout without native effects.

set_pushconstant_shader_stage_flags

Method
pub fn set_pushconstant_shader_stage_flags( self, value: ShaderStageFlags, ) -> Self

Set native field pushconstantShaderStageFlags without native effects.

set_pushconstant_offset

Method
pub fn set_pushconstant_offset(self, value: u32) -> Self

Set native field pushconstantOffset without native effects.

set_pushconstant_size

Method
pub fn set_pushconstant_size(self, value: u32) -> Self

Set native field pushconstantSize without native effects.

set_indirect_state_flags

Method
pub fn set_indirect_state_flags(self, value: IndirectStateFlagsNV) -> Self

Set native field indirectStateFlags without native effects.

set_index_type_count

Method
pub fn set_index_type_count(self, value: u32) -> Self

Set native count indexTypeCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_index_types

Method
pub fn set_index_types( self, index_types: &'a [IndexType], index_type_values: &'a [u32], ) -> Result<Self, ConstructionError>

Borrow parallel arrays sharing native indexTypeCount. Optional arrays may be null. Mutable arrays retain exclusive borrows of initialized output storage. This checks lengths only; native valid usage and later raw edits remain caller obligations.

Errors

Returns a construction error for unequal lengths or native count overflow.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::IndirectCommandsLayoutUsageFlagBitsEXT

Contract

Open integer representation of VkIndirectCommandsLayoutUsageFlagBitsEXT.

Khronos reference: VkIndirectCommandsLayoutUsageFlagBitsEXT

Fields

0

Field
0: u32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: u32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> u32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

Output

Method
type Output = IndirectCommandsLayoutUsageFlagBitsEXT
The resulting type after applying the & operator.

Output-1

Method
type Output = IndirectCommandsLayoutUsageFlagBitsEXT
The resulting type after applying the | operator.

Output-2

Method
type Output = IndirectCommandsLayoutUsageFlagBitsEXT
The resulting type after applying the ^ operator.

clone

Method
fn clone(&self) -> IndirectCommandsLayoutUsageFlagBitsEXT
Returns a duplicate of the value. Read more

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> IndirectCommandsLayoutUsageFlagBitsEXT
Returns the “default value” for a type. Read more

Output-3

Method
type Output = IndirectCommandsLayoutUsageFlagBitsEXT
The resulting type after applying the ! operator.

eq

Method
fn eq(&self, other: &IndirectCommandsLayoutUsageFlagBitsEXT) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectCommandsLayoutUsageFlagBitsNV

Contract

Open integer representation of VkIndirectCommandsLayoutUsageFlagBitsNV.

Khronos reference: VkIndirectCommandsLayoutUsageFlagBitsNV

Fields

0

Field
0: u32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: u32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> u32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

Output

Method
type Output = IndirectCommandsLayoutUsageFlagBitsNV
The resulting type after applying the & operator.

Output-1

Method
type Output = IndirectCommandsLayoutUsageFlagBitsNV
The resulting type after applying the | operator.

Output-2

Method
type Output = IndirectCommandsLayoutUsageFlagBitsNV
The resulting type after applying the ^ operator.

clone

Method
fn clone(&self) -> IndirectCommandsLayoutUsageFlagBitsNV
Returns a duplicate of the value. Read more

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> IndirectCommandsLayoutUsageFlagBitsNV
Returns the “default value” for a type. Read more

Output-3

Method
type Output = IndirectCommandsLayoutUsageFlagBitsNV
The resulting type after applying the ! operator.

eq

Method
fn eq(&self, other: &IndirectCommandsLayoutUsageFlagBitsNV) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectCommandsPushConstantTokenEXT

Contract

Native structure VkIndirectCommandsPushConstantTokenEXT.

Khronos reference: VkIndirectCommandsPushConstantTokenEXT

Fields

update_range

Field
update_range: PushConstantRange

Native field updateRange.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_update_range

Method
pub fn set_update_range(self, value: PushConstantRange) -> Self

Set native field updateRange without native effects.

clone

Method
fn clone(&self) -> IndirectCommandsPushConstantTokenEXT
Returns a duplicate of the value. Read more

Stvk::IndirectCommandsStreamNV

Contract

Native structure VkIndirectCommandsStreamNV.

Khronos reference: VkIndirectCommandsStreamNV

Fields

buffer

Field
buffer: Buffer

Native field buffer.

offset

Field
offset: DeviceSize

Native field offset.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_buffer

Method
pub fn set_buffer(self, value: Buffer) -> Self

Set native field buffer without native effects.

set_offset

Method
pub fn set_offset(self, value: DeviceSize) -> Self

Set native field offset without native effects.

clone

Method
fn clone(&self) -> IndirectCommandsStreamNV
Returns a duplicate of the value. Read more

Stvk::IndirectCommandsTokenTypeEXT

Contract

Open integer representation of VkIndirectCommandsTokenTypeEXT.

Khronos reference: VkIndirectCommandsTokenTypeEXT

Fields

0

Field
0: i32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: i32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> i32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

clone

Method
fn clone(&self) -> IndirectCommandsTokenTypeEXT
Returns a duplicate of the value. Read more

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> IndirectCommandsTokenTypeEXT
Returns the “default value” for a type. Read more

eq

Method
fn eq(&self, other: &IndirectCommandsTokenTypeEXT) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectCommandsTokenTypeNV

Contract

Open integer representation of VkIndirectCommandsTokenTypeNV.

Khronos reference: VkIndirectCommandsTokenTypeNV

Fields

0

Field
0: i32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: i32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> i32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

clone

Method
fn clone(&self) -> IndirectCommandsTokenTypeNV
Returns a duplicate of the value. Read more

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> IndirectCommandsTokenTypeNV
Returns the “default value” for a type. Read more

eq

Method
fn eq(&self, other: &IndirectCommandsTokenTypeNV) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectCommandsVertexBufferTokenEXT

Contract

Native structure VkIndirectCommandsVertexBufferTokenEXT.

Khronos reference: VkIndirectCommandsVertexBufferTokenEXT

Fields

vertex_binding_unit

Field
vertex_binding_unit: u32

Native field vertexBindingUnit.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_vertex_binding_unit

Method
pub fn set_vertex_binding_unit(self, value: u32) -> Self

Set native field vertexBindingUnit without native effects.

clone

Method
fn clone(&self) -> IndirectCommandsVertexBufferTokenEXT
Returns a duplicate of the value. Read more

Stvk::IndirectExecutionSetCreateInfoEXT

pub struct IndirectExecutionSetCreateInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub type: IndirectExecutionSetInfoTypeEXT, pub info: IndirectExecutionSetInfoEXT<'a>, /* private fields */ }
Native structure VkIndirectExecutionSetCreateInfoEXT.

Contract

Native structure VkIndirectExecutionSetCreateInfoEXT.

Khronos reference: VkIndirectExecutionSetCreateInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

type

Field
type: IndirectExecutionSetInfoTypeEXT

Native field type.

info

Field
info: IndirectExecutionSetInfoEXT<'a>

Native field info.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_type

Method
pub fn set_type(self, value: IndirectExecutionSetInfoTypeEXT) -> Self

Set native field type without native effects.

set_info

Method
pub fn set_info(self, value: IndirectExecutionSetInfoEXT<'a>) -> Self

Set native field info without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::IndirectExecutionSetEXT

Contract

Raw Vulkan handle VkIndirectExecutionSetEXT.

Khronos reference: VkIndirectExecutionSetEXT Calls using this identity must satisfy Vulkan lifetime and synchronization rules.

Fields

0

Field
0: u64
No public source comment is attached to this declaration.

Methods and associated items

NULL

Method
pub const NULL: Self
No public source comment is attached to this declaration.

is_null

Method
pub fn is_null(self) -> bool
No public source comment is attached to this declaration.

from_raw

Method
pub fn from_raw(value: u64) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub fn as_raw(self) -> u64
No public source comment is attached to this declaration.

clone

Method
fn clone(&self) -> IndirectExecutionSetEXT
Returns a duplicate of the value. Read more

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

eq

Method
fn eq(&self, other: &IndirectExecutionSetEXT) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectExecutionSetInfoTypeEXT

Contract

Open integer representation of VkIndirectExecutionSetInfoTypeEXT.

Khronos reference: VkIndirectExecutionSetInfoTypeEXT

Fields

0

Field
0: i32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: i32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> i32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

clone

Method
fn clone(&self) -> IndirectExecutionSetInfoTypeEXT
Returns a duplicate of the value. Read more

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> IndirectExecutionSetInfoTypeEXT
Returns the “default value” for a type. Read more

eq

Method
fn eq(&self, other: &IndirectExecutionSetInfoTypeEXT) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectExecutionSetPipelineInfoEXT

pub struct IndirectExecutionSetPipelineInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub initial_pipeline: Pipeline, pub max_pipeline_count: u32, /* private fields */ }
Native structure VkIndirectExecutionSetPipelineInfoEXT.

Contract

Native structure VkIndirectExecutionSetPipelineInfoEXT.

Khronos reference: VkIndirectExecutionSetPipelineInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

initial_pipeline

Field
initial_pipeline: Pipeline

Native field initialPipeline.

max_pipeline_count

Field
max_pipeline_count: u32

Native field maxPipelineCount.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_initial_pipeline

Method
pub fn set_initial_pipeline(self, value: Pipeline) -> Self

Set native field initialPipeline without native effects.

set_max_pipeline_count

Method
pub fn set_max_pipeline_count(self, value: u32) -> Self

Set native field maxPipelineCount without native effects.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::IndirectExecutionSetShaderInfoEXT

pub struct IndirectExecutionSetShaderInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub shader_count: u32, pub p_initial_shaders: *const ShaderEXT, pub p_set_layout_infos: *const IndirectExecutionSetShaderLayoutInfoEXT<'a>, pub max_shader_count: u32, pub push_constant_range_count: u32, pub p_push_constant_ranges: *const PushConstantRange, /* private fields */ }
Native structure VkIndirectExecutionSetShaderInfoEXT.

Contract

Native structure VkIndirectExecutionSetShaderInfoEXT.

Khronos reference: VkIndirectExecutionSetShaderInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

shader_count

Field
shader_count: u32

Native field shaderCount.

p_initial_shaders

Field
p_initial_shaders: *const ShaderEXT

Native field pInitialShaders.

p_set_layout_infos

Field
p_set_layout_infos: *const IndirectExecutionSetShaderLayoutInfoEXT<'a>

Native field pSetLayoutInfos.

max_shader_count

Field
max_shader_count: u32

Native field maxShaderCount.

push_constant_range_count

Field
push_constant_range_count: u32

Native field pushConstantRangeCount.

p_push_constant_ranges

Field
p_push_constant_ranges: *const PushConstantRange

Native field pPushConstantRanges.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_shader_count

Method
pub fn set_shader_count(self, value: u32) -> Self

Set native count shaderCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_initial_shaders

Method
pub fn set_initial_shaders( self, initial_shaders: &'a [ShaderEXT], set_layout_infos: Option<&'a [IndirectExecutionSetShaderLayoutInfoEXT<'a>]>, ) -> Result<Self, ConstructionError>

Borrow parallel arrays sharing native shaderCount. Optional arrays may be null. Mutable arrays retain exclusive borrows of initialized output storage. This checks lengths only; native valid usage and later raw edits remain caller obligations.

Errors

Returns a construction error for unequal lengths or native count overflow.

set_max_shader_count

Method
pub fn set_max_shader_count(self, value: u32) -> Self

Set native field maxShaderCount without native effects.

set_push_constant_range_count

Method
pub fn set_push_constant_range_count(self, value: u32) -> Self

Set native count pushConstantRangeCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_push_constant_ranges

Method
pub fn set_push_constant_ranges( self, value: &'a [PushConstantRange], ) -> Result<Self, ConstructionError>

Borrow pPushConstantRanges and set checked native count pushConstantRangeCount. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

Errors

Returns a construction error if the length exceeds the native count width.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::IndirectExecutionSetShaderLayoutInfoEXT

pub struct IndirectExecutionSetShaderLayoutInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub set_layout_count: u32, pub p_set_layouts: *const DescriptorSetLayout, /* private fields */ }
Native structure VkIndirectExecutionSetShaderLayoutInfoEXT.

Contract

Native structure VkIndirectExecutionSetShaderLayoutInfoEXT.

Khronos reference: VkIndirectExecutionSetShaderLayoutInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

set_layout_count

Field
set_layout_count: u32

Native field setLayoutCount.

p_set_layouts

Field
p_set_layouts: *const DescriptorSetLayout

Native field pSetLayouts.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_set_layout_count

Method
pub fn set_set_layout_count(self, value: u32) -> Self

Set native count setLayoutCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

set_set_layouts

Method
pub fn set_set_layouts( self, value: &'a [DescriptorSetLayout], ) -> Result<Self, ConstructionError>

Borrow pSetLayouts and set checked native count setLayoutCount. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

Errors

Returns a construction error if the length exceeds the native count width.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.

Stvk::IndirectStateFlagBitsNV

Contract

Open integer representation of VkIndirectStateFlagBitsNV.

Khronos reference: VkIndirectStateFlagBitsNV

Fields

0

Field
0: u32
No public source comment is attached to this declaration.

Methods and associated items

from_raw

Method
pub const fn from_raw(value: u32) -> Self
No public source comment is attached to this declaration.

as_raw

Method
pub const fn as_raw(self) -> u32
No public source comment is attached to this declaration.

empty

Method
pub const fn empty() -> Self
No public source comment is attached to this declaration.

Output

Method
type Output = IndirectStateFlagBitsNV
The resulting type after applying the & operator.

Output-1

Method
type Output = IndirectStateFlagBitsNV
The resulting type after applying the | operator.

Output-2

Method
type Output = IndirectStateFlagBitsNV
The resulting type after applying the ^ operator.

clone

Method
fn clone(&self) -> IndirectStateFlagBitsNV
Returns a duplicate of the value. Read more

fmt

Method
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more

default

Method
fn default() -> IndirectStateFlagBitsNV
Returns the “default value” for a type. Read more

Output-3

Method
type Output = IndirectStateFlagBitsNV
The resulting type after applying the ! operator.

eq

Method
fn eq(&self, other: &IndirectStateFlagBitsNV) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::InitializePerformanceApiInfoINTEL

pub struct InitializePerformanceApiInfoINTEL<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub p_user_data: *mut c_void, /* private fields */ }
Native structure VkInitializePerformanceApiInfoINTEL.

Contract

Native structure VkInitializePerformanceApiInfoINTEL.

Khronos reference: VkInitializePerformanceApiInfoINTEL

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

p_user_data

Field
p_user_data: *mut c_void

Native field pUserData.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

set_user_data

Method
pub unsafe fn set_user_data(self, value: *mut c_void) -> Self

Set native pointer pUserData explicitly. No borrow or extent is inferred.

Safety

The caller must establish pointee validity, extent, alignment, aliasing and the full native retention lifetime before using this record in a native call. Callback, external-object and nested-pointer contracts remain caller obligations.

push_next

Method
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

Errors

Returns a construction error for a changed structure tag or already-linked node.