Realm

vk · Structs · I6

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

StRustExperimental

Stvk::ImportMetalTextureInfoEXT

pub struct ImportMetalTextureInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub plane: ImageAspectFlagBits, pub mtl_texture: MTLTexture_id, /* private fields */ }
Native structure VkImportMetalTextureInfoEXT.

Contract

Native structure VkImportMetalTextureInfoEXT.

Khronos reference: VkImportMetalTextureInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

plane

Field
plane: ImageAspectFlagBits

Native field plane.

mtl_texture

Field
mtl_texture: MTLTexture_id

Native field mtlTexture.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_plane

Method
pub fn set_plane(self, value: ImageAspectFlagBits) -> Self

Set native field plane without native effects.

set_mtl_texture

Method
pub fn set_mtl_texture(self, value: MTLTexture_id) -> Self

Set native field mtlTexture 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::ImportNativeBufferInfoOHOS

pub struct ImportNativeBufferInfoOHOS<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub buffer: *mut OH_NativeBuffer, /* private fields */ }
Native structure VkImportNativeBufferInfoOHOS.

Contract

Native structure VkImportNativeBufferInfoOHOS.

Khronos reference: VkImportNativeBufferInfoOHOS

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

buffer

Field
buffer: *mut OH_NativeBuffer

Native field buffer.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_buffer

Method
pub unsafe fn set_buffer(self, value: *mut OH_NativeBuffer) -> Self

Set native pointer buffer 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.

Stvk::ImportScreenBufferInfoQNX

pub struct ImportScreenBufferInfoQNX<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub buffer: *mut _screen_buffer, /* private fields */ }
Native structure VkImportScreenBufferInfoQNX.

Contract

Native structure VkImportScreenBufferInfoQNX.

Khronos reference: VkImportScreenBufferInfoQNX

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

buffer

Field
buffer: *mut _screen_buffer

Native field buffer.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_buffer

Method
pub unsafe fn set_buffer(self, value: *mut _screen_buffer) -> Self

Set native pointer buffer 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.

Stvk::ImportSemaphoreFdInfoKHR

pub struct ImportSemaphoreFdInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub semaphore: Semaphore, pub flags: SemaphoreImportFlags, pub handle_type: ExternalSemaphoreHandleTypeFlagBits, pub fd: i32, /* private fields */ }
Native structure VkImportSemaphoreFdInfoKHR.

Contract

Native structure VkImportSemaphoreFdInfoKHR.

Khronos reference: VkImportSemaphoreFdInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

semaphore

Field
semaphore: Semaphore

Native field semaphore.

flags

Field
flags: SemaphoreImportFlags

Native field flags.

handle_type

Field
handle_type: ExternalSemaphoreHandleTypeFlagBits

Native field handleType.

fd

Field
fd: i32

Native field fd.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_semaphore

Method
pub fn set_semaphore(self, value: Semaphore) -> Self

Set native field semaphore without native effects.

set_flags

Method
pub fn set_flags(self, value: SemaphoreImportFlags) -> Self

Set native field flags without native effects.

set_handle_type

Method
pub fn set_handle_type(self, value: ExternalSemaphoreHandleTypeFlagBits) -> Self

Set native field handleType without native effects.

set_fd

Method
pub fn set_fd(self, value: i32) -> Self

Set native field fd 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::ImportSemaphoreWin32HandleInfoKHR

pub struct ImportSemaphoreWin32HandleInfoKHR<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub semaphore: Semaphore, pub flags: SemaphoreImportFlags, pub handle_type: ExternalSemaphoreHandleTypeFlagBits, pub handle: HANDLE, pub name: LPCWSTR, /* private fields */ }
Native structure VkImportSemaphoreWin32HandleInfoKHR.

Contract

Native structure VkImportSemaphoreWin32HandleInfoKHR.

Khronos reference: VkImportSemaphoreWin32HandleInfoKHR

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

semaphore

Field
semaphore: Semaphore

Native field semaphore.

flags

Field
flags: SemaphoreImportFlags

Native field flags.

handle_type

Field
handle_type: ExternalSemaphoreHandleTypeFlagBits

Native field handleType.

handle

Field
handle: HANDLE

Native field handle.

name

Field
name: LPCWSTR

Native field name.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_semaphore

Method
pub fn set_semaphore(self, value: Semaphore) -> Self

Set native field semaphore without native effects.

set_flags

Method
pub fn set_flags(self, value: SemaphoreImportFlags) -> Self

Set native field flags without native effects.

set_handle_type

Method
pub fn set_handle_type(self, value: ExternalSemaphoreHandleTypeFlagBits) -> Self

Set native field handleType without native effects.

set_handle

Method
pub fn set_handle(self, value: HANDLE) -> Self

Set native field handle without native effects.

set_name

Method
pub fn set_name(self, value: LPCWSTR) -> Self

Set native field name 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::ImportSemaphoreZirconHandleInfoFUCHSIA

pub struct ImportSemaphoreZirconHandleInfoFUCHSIA<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub semaphore: Semaphore, pub flags: SemaphoreImportFlags, pub handle_type: ExternalSemaphoreHandleTypeFlagBits, pub zircon_handle: zx_handle_t, /* private fields */ }
Native structure VkImportSemaphoreZirconHandleInfoFUCHSIA.

Contract

Native structure VkImportSemaphoreZirconHandleInfoFUCHSIA.

Khronos reference: VkImportSemaphoreZirconHandleInfoFUCHSIA

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

semaphore

Field
semaphore: Semaphore

Native field semaphore.

flags

Field
flags: SemaphoreImportFlags

Native field flags.

handle_type

Field
handle_type: ExternalSemaphoreHandleTypeFlagBits

Native field handleType.

zircon_handle

Field
zircon_handle: zx_handle_t

Native field zirconHandle.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_semaphore

Method
pub fn set_semaphore(self, value: Semaphore) -> Self

Set native field semaphore without native effects.

set_flags

Method
pub fn set_flags(self, value: SemaphoreImportFlags) -> Self

Set native field flags without native effects.

set_handle_type

Method
pub fn set_handle_type(self, value: ExternalSemaphoreHandleTypeFlagBits) -> Self

Set native field handleType without native effects.

set_zircon_handle

Method
pub fn set_zircon_handle(self, value: zx_handle_t) -> Self

Set native field zirconHandle 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::IndexType

Contract

Open integer representation of VkIndexType.

Khronos reference: VkIndexType

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.

fmt

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

eq

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

Stvk::IndirectCommandsExecutionSetTokenEXT

#[repr(C)]pub struct IndirectCommandsExecutionSetTokenEXT { pub type: IndirectExecutionSetInfoTypeEXT, pub shader_stages: ShaderStageFlags, }
Native structure VkIndirectCommandsExecutionSetTokenEXT.

Contract

Native structure VkIndirectCommandsExecutionSetTokenEXT.

Khronos reference: VkIndirectCommandsExecutionSetTokenEXT

Fields

type

Field
type: IndirectExecutionSetInfoTypeEXT

Native field type.

shader_stages

Field
shader_stages: ShaderStageFlags

Native field shaderStages.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_type

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

Set native field type without native effects.

set_shader_stages

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

Set native field shaderStages without native effects.

clone

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

Stvk::IndirectCommandsIndexBufferTokenEXT

Contract

Native structure VkIndirectCommandsIndexBufferTokenEXT.

Khronos reference: VkIndirectCommandsIndexBufferTokenEXT

Fields

mode

Field
mode: IndirectCommandsInputModeFlagBitsEXT

Native field mode.

Methods and associated items

new

Method
pub fn new() -> Self

Construct the record with its default native state.

set_mode

Method
pub fn set_mode(self, value: IndirectCommandsInputModeFlagBitsEXT) -> Self

Set native field mode without native effects.

clone

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

Stvk::IndirectCommandsInputModeFlagBitsEXT

Contract

Open integer representation of VkIndirectCommandsInputModeFlagBitsEXT.

Khronos reference: VkIndirectCommandsInputModeFlagBitsEXT

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 = IndirectCommandsInputModeFlagBitsEXT
The resulting type after applying the & operator.

Output-1

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

Output-2

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

clone

Method
fn clone(&self) -> IndirectCommandsInputModeFlagBitsEXT
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() -> IndirectCommandsInputModeFlagBitsEXT
Returns the “default value” for a type. Read more

Output-3

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

eq

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

Stvk::IndirectCommandsLayoutCreateInfoEXT

pub struct IndirectCommandsLayoutCreateInfoEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub flags: IndirectCommandsLayoutUsageFlagsEXT, pub shader_stages: ShaderStageFlags, pub indirect_stride: u32, pub pipeline_layout: PipelineLayout, pub token_count: u32, pub p_tokens: *const IndirectCommandsLayoutTokenEXT<'a>, /* private fields */ }
Native structure VkIndirectCommandsLayoutCreateInfoEXT.

Contract

Native structure VkIndirectCommandsLayoutCreateInfoEXT.

Khronos reference: VkIndirectCommandsLayoutCreateInfoEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: IndirectCommandsLayoutUsageFlagsEXT

Native field flags.

shader_stages

Field
shader_stages: ShaderStageFlags

Native field shaderStages.

indirect_stride

Field
indirect_stride: u32

Native field indirectStride.

pipeline_layout

Field
pipeline_layout: PipelineLayout

Native field pipelineLayout.

token_count

Field
token_count: u32

Native field tokenCount.

p_tokens

Field
p_tokens: *const IndirectCommandsLayoutTokenEXT<'a>

Native field pTokens.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_flags

Method
pub fn set_flags(self, value: IndirectCommandsLayoutUsageFlagsEXT) -> Self

Set native field flags without native effects.

set_shader_stages

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

Set native field shaderStages without native effects.

set_indirect_stride

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

Set native field indirectStride without native effects.

set_pipeline_layout

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

Set native field pipelineLayout without native effects.

set_token_count

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

Set native count tokenCount 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_tokens

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

Borrow pTokens and set checked native count tokenCount. 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::IndirectCommandsLayoutCreateInfoNV

pub struct IndirectCommandsLayoutCreateInfoNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub flags: IndirectCommandsLayoutUsageFlagsNV, pub pipeline_bind_point: PipelineBindPoint, pub token_count: u32, pub p_tokens: *const IndirectCommandsLayoutTokenNV<'a>, pub stream_count: u32, pub p_stream_strides: *const u32, /* private fields */ }
Native structure VkIndirectCommandsLayoutCreateInfoNV.

Contract

Native structure VkIndirectCommandsLayoutCreateInfoNV.

Khronos reference: VkIndirectCommandsLayoutCreateInfoNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

flags

Field
flags: IndirectCommandsLayoutUsageFlagsNV

Native field flags.

pipeline_bind_point

Field
pipeline_bind_point: PipelineBindPoint

Native field pipelineBindPoint.

token_count

Field
token_count: u32

Native field tokenCount.

p_tokens

Field
p_tokens: *const IndirectCommandsLayoutTokenNV<'a>

Native field pTokens.

stream_count

Field
stream_count: u32

Native field streamCount.

p_stream_strides

Field
p_stream_strides: *const u32

Native field pStreamStrides.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_flags

Method
pub fn set_flags(self, value: IndirectCommandsLayoutUsageFlagsNV) -> Self

Set native field flags without native effects.

set_pipeline_bind_point

Method
pub fn set_pipeline_bind_point(self, value: PipelineBindPoint) -> Self

Set native field pipelineBindPoint without native effects.

set_token_count

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

Set native count tokenCount 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_tokens

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

Borrow pTokens and set checked native count tokenCount. 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.

set_stream_count

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

Set native count streamCount 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_stream_strides

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

Borrow pStreamStrides and set checked native count streamCount. 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::IndirectCommandsLayoutEXT

Contract

Raw Vulkan handle VkIndirectCommandsLayoutEXT.

Khronos reference: VkIndirectCommandsLayoutEXT 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) -> IndirectCommandsLayoutEXT
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: &IndirectCommandsLayoutEXT) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectCommandsLayoutNV

Contract

Raw Vulkan handle VkIndirectCommandsLayoutNV.

Khronos reference: VkIndirectCommandsLayoutNV 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) -> IndirectCommandsLayoutNV
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: &IndirectCommandsLayoutNV) -> bool
Tests for self and other values to be equal, and is used by ==.

Stvk::IndirectCommandsLayoutPushDataTokenNV

pub struct IndirectCommandsLayoutPushDataTokenNV<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub push_data_offset: u32, pub push_data_size: u32, /* private fields */ }
Native structure VkIndirectCommandsLayoutPushDataTokenNV.

Contract

Native structure VkIndirectCommandsLayoutPushDataTokenNV.

Khronos reference: VkIndirectCommandsLayoutPushDataTokenNV

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

push_data_offset

Field
push_data_offset: u32

Native field pushDataOffset.

push_data_size

Field
push_data_size: u32

Native field pushDataSize.

Methods and associated items

new

Method
pub fn new() -> Self

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

set_push_data_offset

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

Set native field pushDataOffset without native effects.

set_push_data_size

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

Set native field pushDataSize 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::IndirectCommandsLayoutTokenEXT

pub struct IndirectCommandsLayoutTokenEXT<'a> { pub s_type: StructureType, pub p_next: *const c_void, pub type: IndirectCommandsTokenTypeEXT, pub data: IndirectCommandsTokenDataEXT<'a>, pub offset: u32, /* private fields */ }
Native structure VkIndirectCommandsLayoutTokenEXT.

Contract

Native structure VkIndirectCommandsLayoutTokenEXT.

Khronos reference: VkIndirectCommandsLayoutTokenEXT

Fields

s_type

Field
s_type: StructureType

Native field sType.

p_next

Field
p_next: *const c_void

Native field pNext.

type

Field
type: IndirectCommandsTokenTypeEXT

Native field type.

data

Field
data: IndirectCommandsTokenDataEXT<'a>

Native field data.

offset

Field
offset: u32

Native field offset.

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: IndirectCommandsTokenTypeEXT) -> Self

Set native field type without native effects.

set_data

Method
pub fn set_data(self, value: IndirectCommandsTokenDataEXT<'a>) -> Self

Set native field data without native effects.

set_offset

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

Set native field offset 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.