vk · Structs · P31
16 public declarations with native signatures and source-owned contracts.
Stvk::PipelineBinaryInfoKHR
Contract
Native structure VkPipelineBinaryInfoKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
binary_count
binary_count: u32Native field binaryCount.
p_pipeline_binaries
p_pipeline_binaries: *const PipelineBinaryKHRNative field pPipelineBinaries.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_binary_count
Set native count binaryCount 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_pipeline_binaries
Borrow pPipelineBinaries and set checked native count binaryCount.
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
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.
default
Stvk::PipelineBinaryKeyKHR
Contract
Native structure VkPipelineBinaryKeyKHR.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *mut c_voidNative field pNext.
key_size
key_size: u32Native field keySize.
key
key: [u8; 32]Native field key.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_key_size
Set native count keySize 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_key
Set native field key without native effects.
push_next
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.
default
Stvk::PipelineBinaryKeysAndDataKHR
Contract
Native structure VkPipelineBinaryKeysAndDataKHR.
Fields
binary_count
binary_count: u32Native field binaryCount.
p_pipeline_binary_keys
p_pipeline_binary_keys: *const PipelineBinaryKeyKHR<'a>Native field pPipelineBinaryKeys.
p_pipeline_binary_data
p_pipeline_binary_data: *const PipelineBinaryDataKHR<'a>Native field pPipelineBinaryData.
Methods and associated items
new
Construct the record with its default native state.
set_binary_count
Set native count binaryCount 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_pipeline_binary_keys
Borrow parallel arrays sharing native binaryCount. 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.
clone
default
Stvk::PipelineBinaryKHR
Contract
Raw Vulkan handle VkPipelineBinaryKHR.
Khronos reference: VkPipelineBinaryKHR
Calls using this identity must satisfy Vulkan lifetime and synchronization rules.
Fields
0
0: u64Methods and associated items
NULL
is_null
from_raw
as_raw
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::PipelineBindPoint
Contract
Open integer representation of VkPipelineBindPoint.
Fields
0
0: i32Methods and associated items
GRAPHICS
Native value VK_PIPELINE_BIND_POINT_GRAPHICS.
COMPUTE
Native value VK_PIPELINE_BIND_POINT_COMPUTE.
EXECUTION_GRAPH_AMDX
Native value VK_PIPELINE_BIND_POINT_EXECUTION_GRAPH_AMDX.
Khronos reference: VK_PIPELINE_BIND_POINT_EXECUTION_GRAPH_AMDX
RAY_TRACING_KHR
Native value VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR.
RAY_TRACING_NV
Native value VK_PIPELINE_BIND_POINT_RAY_TRACING_NV.
SUBPASS_SHADING_HUAWEI
Native value VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI.
Khronos reference: VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI
DATA_GRAPH_ARM
Native value VK_PIPELINE_BIND_POINT_DATA_GRAPH_ARM.
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::PipelineCache
Contract
Raw Vulkan handle VkPipelineCache.
Khronos reference: VkPipelineCache
Calls using this identity must satisfy Vulkan lifetime and synchronization rules.
Fields
0
0: u64Methods and associated items
NULL
is_null
from_raw
as_raw
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::PipelineCacheCreateFlagBits
Contract
Open integer representation of VkPipelineCacheCreateFlagBits.
Fields
0
0: u32Methods and associated items
EXTERNALLY_SYNCHRONIZED_BIT
Native value VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT.
Khronos reference: VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT
EXTERNALLY_SYNCHRONIZED_BIT_EXT
Native value VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT.
Khronos reference: VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT
INTERNALLY_SYNCHRONIZED_MERGE_BIT_KHR
Native value VK_PIPELINE_CACHE_CREATE_INTERNALLY_SYNCHRONIZED_MERGE_BIT_KHR.
Khronos reference: VK_PIPELINE_CACHE_CREATE_INTERNALLY_SYNCHRONIZED_MERGE_BIT_KHR
from_raw
as_raw
empty
Output
& operator.bitand
& operation. Read moreOutput-1
| operator.bitor
| operation. Read moreOutput-2
^ operator.bitxor
^ operation. Read moreclone
fmt
default
hash
Output-3
! operator.not
! operation. Read moreeq
self and other values to be equal, and is used by ==.Stvk::PipelineCacheCreateInfo
Contract
Native structure VkPipelineCacheCreateInfo.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: PipelineCacheCreateFlagsNative field flags.
initial_data_size
initial_data_size: usizeNative field initialDataSize.
p_initial_data
p_initial_data: *const c_voidNative field pInitialData.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_initial_data_size
Set native count initialDataSize 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_data
Borrow pInitialData and set checked native byte size initialDataSize.
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
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.
default
Stvk::PipelineCacheHeaderVersion
Contract
Open integer representation of VkPipelineCacheHeaderVersion.
Fields
0
0: i32Methods and associated items
ONE
Native value VK_PIPELINE_CACHE_HEADER_VERSION_ONE.
DATA_GRAPH_QCOM
Native value VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM.
Khronos reference: VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM
from_raw
as_raw
empty
clone
fmt
default
hash
eq
self and other values to be equal, and is used by ==.Stvk::PipelineCacheHeaderVersionDataGraphQCOM
Contract
Native structure VkPipelineCacheHeaderVersionDataGraphQCOM.
Khronos reference: VkPipelineCacheHeaderVersionDataGraphQCOM
Fields
header_size
header_size: u32Native field headerSize.
header_version
header_version: PipelineCacheHeaderVersionNative field headerVersion.
cache_type
cache_type: DataGraphModelCacheTypeQCOMNative field cacheType.
cache_version
cache_version: u32Native field cacheVersion.
toolchain_version
toolchain_version: [u32; 3]Native field toolchainVersion.
Methods and associated items
new
Construct the record with its default native state.
set_header_size
Set native field headerSize without native effects.
set_header_version
Set native field headerVersion without native effects.
set_cache_type
Set native field cacheType without native effects.
set_cache_version
Set native field cacheVersion without native effects.
set_toolchain_version
Set native field toolchainVersion without native effects.
clone
default
Stvk::PipelineCacheHeaderVersionOne
Contract
Native structure VkPipelineCacheHeaderVersionOne.
Fields
header_size
header_size: u32Native field headerSize.
header_version
header_version: PipelineCacheHeaderVersionNative field headerVersion.
vendor_id
vendor_id: u32Native field vendorID.
device_id
device_id: u32Native field deviceID.
pipeline_cache_uuid
pipeline_cache_uuid: [u8; 16]Native field pipelineCacheUUID.
Methods and associated items
new
Construct the record with its default native state.
set_header_size
Set native field headerSize without native effects.
set_header_version
Set native field headerVersion without native effects.
set_vendor_id
Set native field vendorID without native effects.
set_device_id
Set native field deviceID without native effects.
set_pipeline_cache_uuid
Set native field pipelineCacheUUID without native effects.
clone
default
Stvk::PipelineColorBlendAdvancedStateCreateInfoEXT
Contract
Native structure VkPipelineColorBlendAdvancedStateCreateInfoEXT.
Khronos reference: VkPipelineColorBlendAdvancedStateCreateInfoEXT
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
src_premultiplied
src_premultiplied: Bool32Native field srcPremultiplied.
dst_premultiplied
dst_premultiplied: Bool32Native field dstPremultiplied.
blend_overlap
blend_overlap: BlendOverlapEXTNative field blendOverlap.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_src_premultiplied
Set native field srcPremultiplied without native effects.
set_dst_premultiplied
Set native field dstPremultiplied without native effects.
set_blend_overlap
Set native field blendOverlap without native effects.
push_next
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.
default
Stvk::PipelineColorBlendAttachmentState
#[repr(C)]pub struct PipelineColorBlendAttachmentState {
pub blend_enable: Bool32,
pub src_color_blend_factor: BlendFactor,
pub dst_color_blend_factor: BlendFactor,
pub color_blend_op: BlendOp,
pub src_alpha_blend_factor: BlendFactor,
pub dst_alpha_blend_factor: BlendFactor,
pub alpha_blend_op: BlendOp,
pub color_write_mask: ColorComponentFlags,
}Contract
Native structure VkPipelineColorBlendAttachmentState.
Fields
blend_enable
blend_enable: Bool32Native field blendEnable.
src_color_blend_factor
src_color_blend_factor: BlendFactorNative field srcColorBlendFactor.
dst_color_blend_factor
dst_color_blend_factor: BlendFactorNative field dstColorBlendFactor.
color_blend_op
color_blend_op: BlendOpNative field colorBlendOp.
src_alpha_blend_factor
src_alpha_blend_factor: BlendFactorNative field srcAlphaBlendFactor.
dst_alpha_blend_factor
dst_alpha_blend_factor: BlendFactorNative field dstAlphaBlendFactor.
alpha_blend_op
alpha_blend_op: BlendOpNative field alphaBlendOp.
color_write_mask
color_write_mask: ColorComponentFlagsNative field colorWriteMask.
Methods and associated items
new
Construct the record with its default native state.
set_blend_enable
Set native field blendEnable without native effects.
set_src_color_blend_factor
Set native field srcColorBlendFactor without native effects.
set_dst_color_blend_factor
Set native field dstColorBlendFactor without native effects.
set_color_blend_op
Set native field colorBlendOp without native effects.
set_src_alpha_blend_factor
Set native field srcAlphaBlendFactor without native effects.
set_dst_alpha_blend_factor
Set native field dstAlphaBlendFactor without native effects.
set_alpha_blend_op
Set native field alphaBlendOp without native effects.
set_color_write_mask
Set native field colorWriteMask without native effects.
clone
default
Stvk::PipelineColorBlendStateCreateFlagBits
Contract
Open integer representation of VkPipelineColorBlendStateCreateFlagBits.
Fields
0
0: u32Methods and associated items
RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM
Native value VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM.
RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT
Native value VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT.
from_raw
as_raw
empty
Output
& operator.bitand
& operation. Read moreOutput-1
| operator.bitor
| operation. Read moreOutput-2
^ operator.bitxor
^ operation. Read moreclone
fmt
default
hash
Output-3
! operator.not
! operation. Read moreeq
self and other values to be equal, and is used by ==.Stvk::PipelineColorBlendStateCreateInfo
pub struct PipelineColorBlendStateCreateInfo<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub flags: PipelineColorBlendStateCreateFlags,
pub logic_op_enable: Bool32,
pub logic_op: LogicOp,
pub attachment_count: u32,
pub p_attachments: *const PipelineColorBlendAttachmentState,
pub blend_constants: [f32; 4],
/* private fields */
}Contract
Native structure VkPipelineColorBlendStateCreateInfo.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
flags
flags: PipelineColorBlendStateCreateFlagsNative field flags.
logic_op_enable
logic_op_enable: Bool32Native field logicOpEnable.
logic_op
logic_op: LogicOpNative field logicOp.
attachment_count
attachment_count: u32Native field attachmentCount.
p_attachments
p_attachments: *const PipelineColorBlendAttachmentStateNative field pAttachments.
blend_constants
blend_constants: [f32; 4]Native field blendConstants.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_flags
Set native field flags without native effects.
set_logic_op_enable
Set native field logicOpEnable without native effects.
set_logic_op
Set native field logicOp without native effects.
set_attachment_count
Set native count attachmentCount 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_attachments
Borrow pAttachments and set checked native count attachmentCount.
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_blend_constants
Set native field blendConstants without native effects.
push_next
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.
default
Stvk::PipelineColorWriteCreateInfoEXT
Contract
Native structure VkPipelineColorWriteCreateInfoEXT.
Fields
s_type
s_type: StructureTypeNative field sType.
p_next
p_next: *const c_voidNative field pNext.
attachment_count
attachment_count: u32Native field attachmentCount.
p_color_write_enables
p_color_write_enables: *const Bool32Native field pColorWriteEnables.
Methods and associated items
new
Construct the record with its canonical sType tag and default native state.
set_attachment_count
Set native count attachmentCount 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_color_write_enables
Borrow pColorWriteEnables and set checked native count attachmentCount.
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
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.