From 7d245e58e7fcb16583d323d61caebf0bf7aabf21 Mon Sep 17 00:00:00 2001 From: Marijn Suijten Date: Mon, 4 Dec 2023 21:09:02 +0100 Subject: [PATCH] generator: Apply `must_use` attributes to all struct setter functions All structs are marked as `Copy`, and builders move `self` for a convenient builder pattern directly on `default()` (using `&mut` requires first storing the builder on the heap). This however leads to builder functions accidentally moving a copy of `self`, mutating it, and dropping the result directly when the caller did not consume the returned value in ad-hoc field updates, in turn leaving the author confused why their code compiles without warnings while the struct was not updated. Annotating all builder functions with `#[must_use]` should at least give them an idea why. --- ash/src/vk/definitions.rs | 3408 ++++++++++++++++++++++++++++++++++++- generator/src/lib.rs | 25 +- 2 files changed, 3424 insertions(+), 9 deletions(-) diff --git a/ash/src/vk/definitions.rs b/ash/src/vk/definitions.rs index c422f9bfb..8ba351d3a 100644 --- a/ash/src/vk/definitions.rs +++ b/ash/src/vk/definitions.rs @@ -590,11 +590,13 @@ pub struct Offset2D { } impl Offset2D { #[inline] + #[must_use] pub fn x(mut self, x: i32) -> Self { self.x = x; self } #[inline] + #[must_use] pub fn y(mut self, y: i32) -> Self { self.y = y; self @@ -611,16 +613,19 @@ pub struct Offset3D { } impl Offset3D { #[inline] + #[must_use] pub fn x(mut self, x: i32) -> Self { self.x = x; self } #[inline] + #[must_use] pub fn y(mut self, y: i32) -> Self { self.y = y; self } #[inline] + #[must_use] pub fn z(mut self, z: i32) -> Self { self.z = z; self @@ -636,11 +641,13 @@ pub struct Extent2D { } impl Extent2D { #[inline] + #[must_use] pub fn width(mut self, width: u32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: u32) -> Self { self.height = height; self @@ -657,16 +664,19 @@ pub struct Extent3D { } impl Extent3D { #[inline] + #[must_use] pub fn width(mut self, width: u32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: u32) -> Self { self.height = height; self } #[inline] + #[must_use] pub fn depth(mut self, depth: u32) -> Self { self.depth = depth; self @@ -686,31 +696,37 @@ pub struct Viewport { } impl Viewport { #[inline] + #[must_use] pub fn x(mut self, x: f32) -> Self { self.x = x; self } #[inline] + #[must_use] pub fn y(mut self, y: f32) -> Self { self.y = y; self } #[inline] + #[must_use] pub fn width(mut self, width: f32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: f32) -> Self { self.height = height; self } #[inline] + #[must_use] pub fn min_depth(mut self, min_depth: f32) -> Self { self.min_depth = min_depth; self } #[inline] + #[must_use] pub fn max_depth(mut self, max_depth: f32) -> Self { self.max_depth = max_depth; self @@ -726,11 +742,13 @@ pub struct Rect2D { } impl Rect2D { #[inline] + #[must_use] pub fn offset(mut self, offset: Offset2D) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent2D) -> Self { self.extent = extent; self @@ -747,16 +765,19 @@ pub struct ClearRect { } impl ClearRect { #[inline] + #[must_use] pub fn rect(mut self, rect: Rect2D) -> Self { self.rect = rect; self } #[inline] + #[must_use] pub fn base_array_layer(mut self, base_array_layer: u32) -> Self { self.base_array_layer = base_array_layer; self } #[inline] + #[must_use] pub fn layer_count(mut self, layer_count: u32) -> Self { self.layer_count = layer_count; self @@ -774,21 +795,25 @@ pub struct ComponentMapping { } impl ComponentMapping { #[inline] + #[must_use] pub fn r(mut self, r: ComponentSwizzle) -> Self { self.r = r; self } #[inline] + #[must_use] pub fn g(mut self, g: ComponentSwizzle) -> Self { self.g = g; self } #[inline] + #[must_use] pub fn b(mut self, b: ComponentSwizzle) -> Self { self.b = b; self } #[inline] + #[must_use] pub fn a(mut self, a: ComponentSwizzle) -> Self { self.a = a; self @@ -842,26 +867,31 @@ impl ::std::default::Default for PhysicalDeviceProperties { } impl PhysicalDeviceProperties { #[inline] + #[must_use] pub fn api_version(mut self, api_version: u32) -> Self { self.api_version = api_version; self } #[inline] + #[must_use] pub fn driver_version(mut self, driver_version: u32) -> Self { self.driver_version = driver_version; self } #[inline] + #[must_use] pub fn vendor_id(mut self, vendor_id: u32) -> Self { self.vendor_id = vendor_id; self } #[inline] + #[must_use] pub fn device_id(mut self, device_id: u32) -> Self { self.device_id = device_id; self } #[inline] + #[must_use] pub fn device_type(mut self, device_type: PhysicalDeviceType) -> Self { self.device_type = device_type; self @@ -880,16 +910,19 @@ impl PhysicalDeviceProperties { wrap_c_str_slice_until_nul(&self.device_name) } #[inline] + #[must_use] pub fn pipeline_cache_uuid(mut self, pipeline_cache_uuid: [u8; UUID_SIZE]) -> Self { self.pipeline_cache_uuid = pipeline_cache_uuid; self } #[inline] + #[must_use] pub fn limits(mut self, limits: PhysicalDeviceLimits) -> Self { self.limits = limits; self } #[inline] + #[must_use] pub fn sparse_properties(mut self, sparse_properties: PhysicalDeviceSparseProperties) -> Self { self.sparse_properties = sparse_properties; self @@ -935,6 +968,7 @@ impl ExtensionProperties { wrap_c_str_slice_until_nul(&self.extension_name) } #[inline] + #[must_use] pub fn spec_version(mut self, spec_version: u32) -> Self { self.spec_version = spec_version; self @@ -986,11 +1020,13 @@ impl LayerProperties { wrap_c_str_slice_until_nul(&self.layer_name) } #[inline] + #[must_use] pub fn spec_version(mut self, spec_version: u32) -> Self { self.spec_version = spec_version; self } #[inline] + #[must_use] pub fn implementation_version(mut self, implementation_version: u32) -> Self { self.implementation_version = implementation_version; self @@ -1043,34 +1079,41 @@ unsafe impl<'a> TaggedStructure for ApplicationInfo<'a> { } impl<'a> ApplicationInfo<'a> { #[inline] + #[must_use] pub fn application_name(mut self, application_name: &'a core::ffi::CStr) -> Self { self.p_application_name = application_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn application_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_application_name) } #[inline] + #[must_use] pub fn application_version(mut self, application_version: u32) -> Self { self.application_version = application_version; self } #[inline] + #[must_use] pub fn engine_name(mut self, engine_name: &'a core::ffi::CStr) -> Self { self.p_engine_name = engine_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn engine_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_engine_name) } #[inline] + #[must_use] pub fn engine_version(mut self, engine_version: u32) -> Self { self.engine_version = engine_version; self } #[inline] + #[must_use] pub fn api_version(mut self, api_version: u32) -> Self { self.api_version = api_version; self @@ -1129,26 +1172,31 @@ impl ::std::default::Default for AllocationCallbacks<'_> { } impl<'a> AllocationCallbacks<'a> { #[inline] + #[must_use] pub fn user_data(mut self, user_data: *mut c_void) -> Self { self.p_user_data = user_data; self } #[inline] + #[must_use] pub fn pfn_allocation(mut self, pfn_allocation: PFN_vkAllocationFunction) -> Self { self.pfn_allocation = pfn_allocation; self } #[inline] + #[must_use] pub fn pfn_reallocation(mut self, pfn_reallocation: PFN_vkReallocationFunction) -> Self { self.pfn_reallocation = pfn_reallocation; self } #[inline] + #[must_use] pub fn pfn_free(mut self, pfn_free: PFN_vkFreeFunction) -> Self { self.pfn_free = pfn_free; self } #[inline] + #[must_use] pub fn pfn_internal_allocation( mut self, pfn_internal_allocation: PFN_vkInternalAllocationNotification, @@ -1157,6 +1205,7 @@ impl<'a> AllocationCallbacks<'a> { self } #[inline] + #[must_use] pub fn pfn_internal_free(mut self, pfn_internal_free: PFN_vkInternalFreeNotification) -> Self { self.pfn_internal_free = pfn_internal_free; self @@ -1195,21 +1244,25 @@ unsafe impl<'a> TaggedStructure for DeviceQueueCreateInfo<'a> { pub unsafe trait ExtendsDeviceQueueCreateInfo {} impl<'a> DeviceQueueCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DeviceQueueCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn queue_family_index(mut self, queue_family_index: u32) -> Self { self.queue_family_index = queue_family_index; self } #[inline] + #[must_use] pub fn queue_priorities(mut self, queue_priorities: &'a [f32]) -> Self { self.queue_count = queue_priorities.len() as _; self.p_queue_priorities = queue_priorities.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -1269,11 +1322,13 @@ unsafe impl<'a> TaggedStructure for DeviceCreateInfo<'a> { pub unsafe trait ExtendsDeviceCreateInfo {} impl<'a> DeviceCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DeviceCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn queue_create_infos( mut self, queue_create_infos: &'a [DeviceQueueCreateInfo<'a>], @@ -1282,25 +1337,29 @@ impl<'a> DeviceCreateInfo<'a> { self.p_queue_create_infos = queue_create_infos.as_ptr(); self } - #[inline] #[deprecated = "functionality described by this member no longer operates"] #[allow(deprecated)] + #[inline] + #[must_use] pub fn enabled_layer_names(mut self, enabled_layer_names: &'a [*const c_char]) -> Self { self.enabled_layer_count = enabled_layer_names.len() as _; self.pp_enabled_layer_names = enabled_layer_names.as_ptr(); self } #[inline] + #[must_use] pub fn enabled_extension_names(mut self, enabled_extension_names: &'a [*const c_char]) -> Self { self.enabled_extension_count = enabled_extension_names.len() as _; self.pp_enabled_extension_names = enabled_extension_names.as_ptr(); self } #[inline] + #[must_use] pub fn enabled_features(mut self, enabled_features: &'a PhysicalDeviceFeatures) -> Self { self.p_enabled_features = enabled_features; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -1353,27 +1412,32 @@ unsafe impl<'a> TaggedStructure for InstanceCreateInfo<'a> { pub unsafe trait ExtendsInstanceCreateInfo {} impl<'a> InstanceCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: InstanceCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn application_info(mut self, application_info: &'a ApplicationInfo<'a>) -> Self { self.p_application_info = application_info; self } #[inline] + #[must_use] pub fn enabled_layer_names(mut self, enabled_layer_names: &'a [*const c_char]) -> Self { self.enabled_layer_count = enabled_layer_names.len() as _; self.pp_enabled_layer_names = enabled_layer_names.as_ptr(); self } #[inline] + #[must_use] pub fn enabled_extension_names(mut self, enabled_extension_names: &'a [*const c_char]) -> Self { self.enabled_extension_count = enabled_extension_names.len() as _; self.pp_enabled_extension_names = enabled_extension_names.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -1401,21 +1465,25 @@ pub struct QueueFamilyProperties { } impl QueueFamilyProperties { #[inline] + #[must_use] pub fn queue_flags(mut self, queue_flags: QueueFlags) -> Self { self.queue_flags = queue_flags; self } #[inline] + #[must_use] pub fn queue_count(mut self, queue_count: u32) -> Self { self.queue_count = queue_count; self } #[inline] + #[must_use] pub fn timestamp_valid_bits(mut self, timestamp_valid_bits: u32) -> Self { self.timestamp_valid_bits = timestamp_valid_bits; self } #[inline] + #[must_use] pub fn min_image_transfer_granularity( mut self, min_image_transfer_granularity: Extent3D, @@ -1447,21 +1515,25 @@ impl ::std::default::Default for PhysicalDeviceMemoryProperties { } impl PhysicalDeviceMemoryProperties { #[inline] + #[must_use] pub fn memory_type_count(mut self, memory_type_count: u32) -> Self { self.memory_type_count = memory_type_count; self } #[inline] + #[must_use] pub fn memory_types(mut self, memory_types: [MemoryType; MAX_MEMORY_TYPES]) -> Self { self.memory_types = memory_types; self } #[inline] + #[must_use] pub fn memory_heap_count(mut self, memory_heap_count: u32) -> Self { self.memory_heap_count = memory_heap_count; self } #[inline] + #[must_use] pub fn memory_heaps(mut self, memory_heaps: [MemoryHeap; MAX_MEMORY_HEAPS]) -> Self { self.memory_heaps = memory_heaps; self @@ -1496,15 +1568,18 @@ unsafe impl<'a> TaggedStructure for MemoryAllocateInfo<'a> { pub unsafe trait ExtendsMemoryAllocateInfo {} impl<'a> MemoryAllocateInfo<'a> { #[inline] + #[must_use] pub fn allocation_size(mut self, allocation_size: DeviceSize) -> Self { self.allocation_size = allocation_size; self } #[inline] + #[must_use] pub fn memory_type_index(mut self, memory_type_index: u32) -> Self { self.memory_type_index = memory_type_index; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -1531,16 +1606,19 @@ pub struct MemoryRequirements { } impl MemoryRequirements { #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn alignment(mut self, alignment: DeviceSize) -> Self { self.alignment = alignment; self } #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self @@ -1557,16 +1635,19 @@ pub struct SparseImageFormatProperties { } impl SparseImageFormatProperties { #[inline] + #[must_use] pub fn aspect_mask(mut self, aspect_mask: ImageAspectFlags) -> Self { self.aspect_mask = aspect_mask; self } #[inline] + #[must_use] pub fn image_granularity(mut self, image_granularity: Extent3D) -> Self { self.image_granularity = image_granularity; self } #[inline] + #[must_use] pub fn flags(mut self, flags: SparseImageFormatFlags) -> Self { self.flags = flags; self @@ -1585,26 +1666,31 @@ pub struct SparseImageMemoryRequirements { } impl SparseImageMemoryRequirements { #[inline] + #[must_use] pub fn format_properties(mut self, format_properties: SparseImageFormatProperties) -> Self { self.format_properties = format_properties; self } #[inline] + #[must_use] pub fn image_mip_tail_first_lod(mut self, image_mip_tail_first_lod: u32) -> Self { self.image_mip_tail_first_lod = image_mip_tail_first_lod; self } #[inline] + #[must_use] pub fn image_mip_tail_size(mut self, image_mip_tail_size: DeviceSize) -> Self { self.image_mip_tail_size = image_mip_tail_size; self } #[inline] + #[must_use] pub fn image_mip_tail_offset(mut self, image_mip_tail_offset: DeviceSize) -> Self { self.image_mip_tail_offset = image_mip_tail_offset; self } #[inline] + #[must_use] pub fn image_mip_tail_stride(mut self, image_mip_tail_stride: DeviceSize) -> Self { self.image_mip_tail_stride = image_mip_tail_stride; self @@ -1620,11 +1706,13 @@ pub struct MemoryType { } impl MemoryType { #[inline] + #[must_use] pub fn property_flags(mut self, property_flags: MemoryPropertyFlags) -> Self { self.property_flags = property_flags; self } #[inline] + #[must_use] pub fn heap_index(mut self, heap_index: u32) -> Self { self.heap_index = heap_index; self @@ -1640,11 +1728,13 @@ pub struct MemoryHeap { } impl MemoryHeap { #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn flags(mut self, flags: MemoryHeapFlags) -> Self { self.flags = flags; self @@ -1680,16 +1770,19 @@ unsafe impl<'a> TaggedStructure for MappedMemoryRange<'a> { } impl<'a> MappedMemoryRange<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -1706,16 +1799,19 @@ pub struct FormatProperties { } impl FormatProperties { #[inline] + #[must_use] pub fn linear_tiling_features(mut self, linear_tiling_features: FormatFeatureFlags) -> Self { self.linear_tiling_features = linear_tiling_features; self } #[inline] + #[must_use] pub fn optimal_tiling_features(mut self, optimal_tiling_features: FormatFeatureFlags) -> Self { self.optimal_tiling_features = optimal_tiling_features; self } #[inline] + #[must_use] pub fn buffer_features(mut self, buffer_features: FormatFeatureFlags) -> Self { self.buffer_features = buffer_features; self @@ -1734,26 +1830,31 @@ pub struct ImageFormatProperties { } impl ImageFormatProperties { #[inline] + #[must_use] pub fn max_extent(mut self, max_extent: Extent3D) -> Self { self.max_extent = max_extent; self } #[inline] + #[must_use] pub fn max_mip_levels(mut self, max_mip_levels: u32) -> Self { self.max_mip_levels = max_mip_levels; self } #[inline] + #[must_use] pub fn max_array_layers(mut self, max_array_layers: u32) -> Self { self.max_array_layers = max_array_layers; self } #[inline] + #[must_use] pub fn sample_counts(mut self, sample_counts: SampleCountFlags) -> Self { self.sample_counts = sample_counts; self } #[inline] + #[must_use] pub fn max_resource_size(mut self, max_resource_size: DeviceSize) -> Self { self.max_resource_size = max_resource_size; self @@ -1770,16 +1871,19 @@ pub struct DescriptorBufferInfo { } impl DescriptorBufferInfo { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn range(mut self, range: DeviceSize) -> Self { self.range = range; self @@ -1796,16 +1900,19 @@ pub struct DescriptorImageInfo { } impl DescriptorImageInfo { #[inline] + #[must_use] pub fn sampler(mut self, sampler: Sampler) -> Self { self.sampler = sampler; self } #[inline] + #[must_use] pub fn image_view(mut self, image_view: ImageView) -> Self { self.image_view = image_view; self } #[inline] + #[must_use] pub fn image_layout(mut self, image_layout: ImageLayout) -> Self { self.image_layout = image_layout; self @@ -1852,48 +1959,57 @@ unsafe impl<'a> TaggedStructure for WriteDescriptorSet<'a> { pub unsafe trait ExtendsWriteDescriptorSet {} impl<'a> WriteDescriptorSet<'a> { #[inline] + #[must_use] pub fn dst_set(mut self, dst_set: DescriptorSet) -> Self { self.dst_set = dst_set; self } #[inline] + #[must_use] pub fn dst_binding(mut self, dst_binding: u32) -> Self { self.dst_binding = dst_binding; self } #[inline] + #[must_use] pub fn dst_array_element(mut self, dst_array_element: u32) -> Self { self.dst_array_element = dst_array_element; self } #[inline] + #[must_use] pub fn descriptor_count(mut self, descriptor_count: u32) -> Self { self.descriptor_count = descriptor_count; self } #[inline] + #[must_use] pub fn descriptor_type(mut self, descriptor_type: DescriptorType) -> Self { self.descriptor_type = descriptor_type; self } #[inline] + #[must_use] pub fn image_info(mut self, image_info: &'a [DescriptorImageInfo]) -> Self { self.descriptor_count = image_info.len() as _; self.p_image_info = image_info.as_ptr(); self } #[inline] + #[must_use] pub fn buffer_info(mut self, buffer_info: &'a [DescriptorBufferInfo]) -> Self { self.descriptor_count = buffer_info.len() as _; self.p_buffer_info = buffer_info.as_ptr(); self } #[inline] + #[must_use] pub fn texel_buffer_view(mut self, texel_buffer_view: &'a [BufferView]) -> Self { self.descriptor_count = texel_buffer_view.len() as _; self.p_texel_buffer_view = texel_buffer_view.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -1947,36 +2063,43 @@ unsafe impl<'a> TaggedStructure for CopyDescriptorSet<'a> { } impl<'a> CopyDescriptorSet<'a> { #[inline] + #[must_use] pub fn src_set(mut self, src_set: DescriptorSet) -> Self { self.src_set = src_set; self } #[inline] + #[must_use] pub fn src_binding(mut self, src_binding: u32) -> Self { self.src_binding = src_binding; self } #[inline] + #[must_use] pub fn src_array_element(mut self, src_array_element: u32) -> Self { self.src_array_element = src_array_element; self } #[inline] + #[must_use] pub fn dst_set(mut self, dst_set: DescriptorSet) -> Self { self.dst_set = dst_set; self } #[inline] + #[must_use] pub fn dst_binding(mut self, dst_binding: u32) -> Self { self.dst_binding = dst_binding; self } #[inline] + #[must_use] pub fn dst_array_element(mut self, dst_array_element: u32) -> Self { self.dst_array_element = dst_array_element; self } #[inline] + #[must_use] pub fn descriptor_count(mut self, descriptor_count: u32) -> Self { self.descriptor_count = descriptor_count; self @@ -2012,6 +2135,7 @@ unsafe impl ExtendsPhysicalDeviceExternalBufferInfo for BufferUsageFlags2CreateI unsafe impl ExtendsDescriptorBufferBindingInfoEXT for BufferUsageFlags2CreateInfoKHR<'_> {} impl<'a> BufferUsageFlags2CreateInfoKHR<'a> { #[inline] + #[must_use] pub fn usage(mut self, usage: BufferUsageFlags2KHR) -> Self { self.usage = usage; self @@ -2054,31 +2178,37 @@ unsafe impl<'a> TaggedStructure for BufferCreateInfo<'a> { pub unsafe trait ExtendsBufferCreateInfo {} impl<'a> BufferCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: BufferCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn usage(mut self, usage: BufferUsageFlags) -> Self { self.usage = usage; self } #[inline] + #[must_use] pub fn sharing_mode(mut self, sharing_mode: SharingMode) -> Self { self.sharing_mode = sharing_mode; self } #[inline] + #[must_use] pub fn queue_family_indices(mut self, queue_family_indices: &'a [u32]) -> Self { self.queue_family_index_count = queue_family_indices.len() as _; self.p_queue_family_indices = queue_family_indices.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -2129,30 +2259,36 @@ unsafe impl<'a> TaggedStructure for BufferViewCreateInfo<'a> { pub unsafe trait ExtendsBufferViewCreateInfo {} impl<'a> BufferViewCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: BufferViewCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn range(mut self, range: DeviceSize) -> Self { self.range = range; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -2179,16 +2315,19 @@ pub struct ImageSubresource { } impl ImageSubresource { #[inline] + #[must_use] pub fn aspect_mask(mut self, aspect_mask: ImageAspectFlags) -> Self { self.aspect_mask = aspect_mask; self } #[inline] + #[must_use] pub fn mip_level(mut self, mip_level: u32) -> Self { self.mip_level = mip_level; self } #[inline] + #[must_use] pub fn array_layer(mut self, array_layer: u32) -> Self { self.array_layer = array_layer; self @@ -2206,21 +2345,25 @@ pub struct ImageSubresourceLayers { } impl ImageSubresourceLayers { #[inline] + #[must_use] pub fn aspect_mask(mut self, aspect_mask: ImageAspectFlags) -> Self { self.aspect_mask = aspect_mask; self } #[inline] + #[must_use] pub fn mip_level(mut self, mip_level: u32) -> Self { self.mip_level = mip_level; self } #[inline] + #[must_use] pub fn base_array_layer(mut self, base_array_layer: u32) -> Self { self.base_array_layer = base_array_layer; self } #[inline] + #[must_use] pub fn layer_count(mut self, layer_count: u32) -> Self { self.layer_count = layer_count; self @@ -2239,26 +2382,31 @@ pub struct ImageSubresourceRange { } impl ImageSubresourceRange { #[inline] + #[must_use] pub fn aspect_mask(mut self, aspect_mask: ImageAspectFlags) -> Self { self.aspect_mask = aspect_mask; self } #[inline] + #[must_use] pub fn base_mip_level(mut self, base_mip_level: u32) -> Self { self.base_mip_level = base_mip_level; self } #[inline] + #[must_use] pub fn level_count(mut self, level_count: u32) -> Self { self.level_count = level_count; self } #[inline] + #[must_use] pub fn base_array_layer(mut self, base_array_layer: u32) -> Self { self.base_array_layer = base_array_layer; self } #[inline] + #[must_use] pub fn layer_count(mut self, layer_count: u32) -> Self { self.layer_count = layer_count; self @@ -2292,11 +2440,13 @@ unsafe impl<'a> TaggedStructure for MemoryBarrier<'a> { } impl<'a> MemoryBarrier<'a> { #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags) -> Self { self.dst_access_mask = dst_access_mask; self @@ -2341,40 +2491,48 @@ unsafe impl<'a> TaggedStructure for BufferMemoryBarrier<'a> { pub unsafe trait ExtendsBufferMemoryBarrier {} impl<'a> BufferMemoryBarrier<'a> { #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags) -> Self { self.dst_access_mask = dst_access_mask; self } #[inline] + #[must_use] pub fn src_queue_family_index(mut self, src_queue_family_index: u32) -> Self { self.src_queue_family_index = src_queue_family_index; self } #[inline] + #[must_use] pub fn dst_queue_family_index(mut self, dst_queue_family_index: u32) -> Self { self.dst_queue_family_index = dst_queue_family_index; self } #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -2431,45 +2589,54 @@ unsafe impl<'a> TaggedStructure for ImageMemoryBarrier<'a> { pub unsafe trait ExtendsImageMemoryBarrier {} impl<'a> ImageMemoryBarrier<'a> { #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags) -> Self { self.dst_access_mask = dst_access_mask; self } #[inline] + #[must_use] pub fn old_layout(mut self, old_layout: ImageLayout) -> Self { self.old_layout = old_layout; self } #[inline] + #[must_use] pub fn new_layout(mut self, new_layout: ImageLayout) -> Self { self.new_layout = new_layout; self } #[inline] + #[must_use] pub fn src_queue_family_index(mut self, src_queue_family_index: u32) -> Self { self.src_queue_family_index = src_queue_family_index; self } #[inline] + #[must_use] pub fn dst_queue_family_index(mut self, dst_queue_family_index: u32) -> Self { self.dst_queue_family_index = dst_queue_family_index; self } #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn subresource_range(mut self, subresource_range: ImageSubresourceRange) -> Self { self.subresource_range = subresource_range; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -2536,66 +2703,79 @@ unsafe impl<'a> TaggedStructure for ImageCreateInfo<'a> { pub unsafe trait ExtendsImageCreateInfo {} impl<'a> ImageCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ImageCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn image_type(mut self, image_type: ImageType) -> Self { self.image_type = image_type; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent3D) -> Self { self.extent = extent; self } #[inline] + #[must_use] pub fn mip_levels(mut self, mip_levels: u32) -> Self { self.mip_levels = mip_levels; self } #[inline] + #[must_use] pub fn array_layers(mut self, array_layers: u32) -> Self { self.array_layers = array_layers; self } #[inline] + #[must_use] pub fn samples(mut self, samples: SampleCountFlags) -> Self { self.samples = samples; self } #[inline] + #[must_use] pub fn tiling(mut self, tiling: ImageTiling) -> Self { self.tiling = tiling; self } #[inline] + #[must_use] pub fn usage(mut self, usage: ImageUsageFlags) -> Self { self.usage = usage; self } #[inline] + #[must_use] pub fn sharing_mode(mut self, sharing_mode: SharingMode) -> Self { self.sharing_mode = sharing_mode; self } #[inline] + #[must_use] pub fn queue_family_indices(mut self, queue_family_indices: &'a [u32]) -> Self { self.queue_family_index_count = queue_family_indices.len() as _; self.p_queue_family_indices = queue_family_indices.as_ptr(); self } #[inline] + #[must_use] pub fn initial_layout(mut self, initial_layout: ImageLayout) -> Self { self.initial_layout = initial_layout; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -2624,26 +2804,31 @@ pub struct SubresourceLayout { } impl SubresourceLayout { #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn row_pitch(mut self, row_pitch: DeviceSize) -> Self { self.row_pitch = row_pitch; self } #[inline] + #[must_use] pub fn array_pitch(mut self, array_pitch: DeviceSize) -> Self { self.array_pitch = array_pitch; self } #[inline] + #[must_use] pub fn depth_pitch(mut self, depth_pitch: DeviceSize) -> Self { self.depth_pitch = depth_pitch; self @@ -2686,35 +2871,42 @@ unsafe impl<'a> TaggedStructure for ImageViewCreateInfo<'a> { pub unsafe trait ExtendsImageViewCreateInfo {} impl<'a> ImageViewCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ImageViewCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn view_type(mut self, view_type: ImageViewType) -> Self { self.view_type = view_type; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn components(mut self, components: ComponentMapping) -> Self { self.components = components; self } #[inline] + #[must_use] pub fn subresource_range(mut self, subresource_range: ImageSubresourceRange) -> Self { self.subresource_range = subresource_range; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -2741,16 +2933,19 @@ pub struct BufferCopy { } impl BufferCopy { #[inline] + #[must_use] pub fn src_offset(mut self, src_offset: DeviceSize) -> Self { self.src_offset = src_offset; self } #[inline] + #[must_use] pub fn dst_offset(mut self, dst_offset: DeviceSize) -> Self { self.dst_offset = dst_offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -2769,26 +2964,31 @@ pub struct SparseMemoryBind { } impl SparseMemoryBind { #[inline] + #[must_use] pub fn resource_offset(mut self, resource_offset: DeviceSize) -> Self { self.resource_offset = resource_offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn memory_offset(mut self, memory_offset: DeviceSize) -> Self { self.memory_offset = memory_offset; self } #[inline] + #[must_use] pub fn flags(mut self, flags: SparseMemoryBindFlags) -> Self { self.flags = flags; self @@ -2808,31 +3008,37 @@ pub struct SparseImageMemoryBind { } impl SparseImageMemoryBind { #[inline] + #[must_use] pub fn subresource(mut self, subresource: ImageSubresource) -> Self { self.subresource = subresource; self } #[inline] + #[must_use] pub fn offset(mut self, offset: Offset3D) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent3D) -> Self { self.extent = extent; self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn memory_offset(mut self, memory_offset: DeviceSize) -> Self { self.memory_offset = memory_offset; self } #[inline] + #[must_use] pub fn flags(mut self, flags: SparseMemoryBindFlags) -> Self { self.flags = flags; self @@ -2861,11 +3067,13 @@ impl ::std::default::Default for SparseBufferMemoryBindInfo<'_> { } impl<'a> SparseBufferMemoryBindInfo<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn binds(mut self, binds: &'a [SparseMemoryBind]) -> Self { self.bind_count = binds.len() as _; self.p_binds = binds.as_ptr(); @@ -2895,11 +3103,13 @@ impl ::std::default::Default for SparseImageOpaqueMemoryBindInfo<'_> { } impl<'a> SparseImageOpaqueMemoryBindInfo<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn binds(mut self, binds: &'a [SparseMemoryBind]) -> Self { self.bind_count = binds.len() as _; self.p_binds = binds.as_ptr(); @@ -2929,11 +3139,13 @@ impl ::std::default::Default for SparseImageMemoryBindInfo<'_> { } impl<'a> SparseImageMemoryBindInfo<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn binds(mut self, binds: &'a [SparseImageMemoryBind]) -> Self { self.bind_count = binds.len() as _; self.p_binds = binds.as_ptr(); @@ -2985,18 +3197,21 @@ unsafe impl<'a> TaggedStructure for BindSparseInfo<'a> { pub unsafe trait ExtendsBindSparseInfo {} impl<'a> BindSparseInfo<'a> { #[inline] + #[must_use] pub fn wait_semaphores(mut self, wait_semaphores: &'a [Semaphore]) -> Self { self.wait_semaphore_count = wait_semaphores.len() as _; self.p_wait_semaphores = wait_semaphores.as_ptr(); self } #[inline] + #[must_use] pub fn buffer_binds(mut self, buffer_binds: &'a [SparseBufferMemoryBindInfo<'a>]) -> Self { self.buffer_bind_count = buffer_binds.len() as _; self.p_buffer_binds = buffer_binds.as_ptr(); self } #[inline] + #[must_use] pub fn image_opaque_binds( mut self, image_opaque_binds: &'a [SparseImageOpaqueMemoryBindInfo<'a>], @@ -3006,17 +3221,20 @@ impl<'a> BindSparseInfo<'a> { self } #[inline] + #[must_use] pub fn image_binds(mut self, image_binds: &'a [SparseImageMemoryBindInfo<'a>]) -> Self { self.image_bind_count = image_binds.len() as _; self.p_image_binds = image_binds.as_ptr(); self } #[inline] + #[must_use] pub fn signal_semaphores(mut self, signal_semaphores: &'a [Semaphore]) -> Self { self.signal_semaphore_count = signal_semaphores.len() as _; self.p_signal_semaphores = signal_semaphores.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -3045,26 +3263,31 @@ pub struct ImageCopy { } impl ImageCopy { #[inline] + #[must_use] pub fn src_subresource(mut self, src_subresource: ImageSubresourceLayers) -> Self { self.src_subresource = src_subresource; self } #[inline] + #[must_use] pub fn src_offset(mut self, src_offset: Offset3D) -> Self { self.src_offset = src_offset; self } #[inline] + #[must_use] pub fn dst_subresource(mut self, dst_subresource: ImageSubresourceLayers) -> Self { self.dst_subresource = dst_subresource; self } #[inline] + #[must_use] pub fn dst_offset(mut self, dst_offset: Offset3D) -> Self { self.dst_offset = dst_offset; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent3D) -> Self { self.extent = extent; self @@ -3093,21 +3316,25 @@ impl ::std::default::Default for ImageBlit { } impl ImageBlit { #[inline] + #[must_use] pub fn src_subresource(mut self, src_subresource: ImageSubresourceLayers) -> Self { self.src_subresource = src_subresource; self } #[inline] + #[must_use] pub fn src_offsets(mut self, src_offsets: [Offset3D; 2]) -> Self { self.src_offsets = src_offsets; self } #[inline] + #[must_use] pub fn dst_subresource(mut self, dst_subresource: ImageSubresourceLayers) -> Self { self.dst_subresource = dst_subresource; self } #[inline] + #[must_use] pub fn dst_offsets(mut self, dst_offsets: [Offset3D; 2]) -> Self { self.dst_offsets = dst_offsets; self @@ -3127,31 +3354,37 @@ pub struct BufferImageCopy { } impl BufferImageCopy { #[inline] + #[must_use] pub fn buffer_offset(mut self, buffer_offset: DeviceSize) -> Self { self.buffer_offset = buffer_offset; self } #[inline] + #[must_use] pub fn buffer_row_length(mut self, buffer_row_length: u32) -> Self { self.buffer_row_length = buffer_row_length; self } #[inline] + #[must_use] pub fn buffer_image_height(mut self, buffer_image_height: u32) -> Self { self.buffer_image_height = buffer_image_height; self } #[inline] + #[must_use] pub fn image_subresource(mut self, image_subresource: ImageSubresourceLayers) -> Self { self.image_subresource = image_subresource; self } #[inline] + #[must_use] pub fn image_offset(mut self, image_offset: Offset3D) -> Self { self.image_offset = image_offset; self } #[inline] + #[must_use] pub fn image_extent(mut self, image_extent: Extent3D) -> Self { self.image_extent = image_extent; self @@ -3168,16 +3401,19 @@ pub struct CopyMemoryIndirectCommandNV { } impl CopyMemoryIndirectCommandNV { #[inline] + #[must_use] pub fn src_address(mut self, src_address: DeviceAddress) -> Self { self.src_address = src_address; self } #[inline] + #[must_use] pub fn dst_address(mut self, dst_address: DeviceAddress) -> Self { self.dst_address = dst_address; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -3197,31 +3433,37 @@ pub struct CopyMemoryToImageIndirectCommandNV { } impl CopyMemoryToImageIndirectCommandNV { #[inline] + #[must_use] pub fn src_address(mut self, src_address: DeviceAddress) -> Self { self.src_address = src_address; self } #[inline] + #[must_use] pub fn buffer_row_length(mut self, buffer_row_length: u32) -> Self { self.buffer_row_length = buffer_row_length; self } #[inline] + #[must_use] pub fn buffer_image_height(mut self, buffer_image_height: u32) -> Self { self.buffer_image_height = buffer_image_height; self } #[inline] + #[must_use] pub fn image_subresource(mut self, image_subresource: ImageSubresourceLayers) -> Self { self.image_subresource = image_subresource; self } #[inline] + #[must_use] pub fn image_offset(mut self, image_offset: Offset3D) -> Self { self.image_offset = image_offset; self } #[inline] + #[must_use] pub fn image_extent(mut self, image_extent: Extent3D) -> Self { self.image_extent = image_extent; self @@ -3240,26 +3482,31 @@ pub struct ImageResolve { } impl ImageResolve { #[inline] + #[must_use] pub fn src_subresource(mut self, src_subresource: ImageSubresourceLayers) -> Self { self.src_subresource = src_subresource; self } #[inline] + #[must_use] pub fn src_offset(mut self, src_offset: Offset3D) -> Self { self.src_offset = src_offset; self } #[inline] + #[must_use] pub fn dst_subresource(mut self, dst_subresource: ImageSubresourceLayers) -> Self { self.dst_subresource = dst_subresource; self } #[inline] + #[must_use] pub fn dst_offset(mut self, dst_offset: Offset3D) -> Self { self.dst_offset = dst_offset; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent3D) -> Self { self.extent = extent; self @@ -3297,16 +3544,19 @@ unsafe impl ExtendsPipelineShaderStageCreateInfo for ShaderModuleCreateInfo<'_> pub unsafe trait ExtendsShaderModuleCreateInfo {} impl<'a> ShaderModuleCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ShaderModuleCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn code(mut self, code: &'a [u32]) -> Self { self.code_size = code.len() * 4; self.p_code = code.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -3349,26 +3599,31 @@ impl ::std::default::Default for DescriptorSetLayoutBinding<'_> { } impl<'a> DescriptorSetLayoutBinding<'a> { #[inline] + #[must_use] pub fn binding(mut self, binding: u32) -> Self { self.binding = binding; self } #[inline] + #[must_use] pub fn descriptor_type(mut self, descriptor_type: DescriptorType) -> Self { self.descriptor_type = descriptor_type; self } #[inline] + #[must_use] pub fn descriptor_count(mut self, descriptor_count: u32) -> Self { self.descriptor_count = descriptor_count; self } #[inline] + #[must_use] pub fn stage_flags(mut self, stage_flags: ShaderStageFlags) -> Self { self.stage_flags = stage_flags; self } #[inline] + #[must_use] pub fn immutable_samplers(mut self, immutable_samplers: &'a [Sampler]) -> Self { self.descriptor_count = immutable_samplers.len() as _; self.p_immutable_samplers = immutable_samplers.as_ptr(); @@ -3406,16 +3661,19 @@ unsafe impl<'a> TaggedStructure for DescriptorSetLayoutCreateInfo<'a> { pub unsafe trait ExtendsDescriptorSetLayoutCreateInfo {} impl<'a> DescriptorSetLayoutCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DescriptorSetLayoutCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn bindings(mut self, bindings: &'a [DescriptorSetLayoutBinding<'a>]) -> Self { self.binding_count = bindings.len() as _; self.p_bindings = bindings.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -3441,11 +3699,13 @@ pub struct DescriptorPoolSize { } impl DescriptorPoolSize { #[inline] + #[must_use] pub fn ty(mut self, ty: DescriptorType) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn descriptor_count(mut self, descriptor_count: u32) -> Self { self.descriptor_count = descriptor_count; self @@ -3484,21 +3744,25 @@ unsafe impl<'a> TaggedStructure for DescriptorPoolCreateInfo<'a> { pub unsafe trait ExtendsDescriptorPoolCreateInfo {} impl<'a> DescriptorPoolCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DescriptorPoolCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn max_sets(mut self, max_sets: u32) -> Self { self.max_sets = max_sets; self } #[inline] + #[must_use] pub fn pool_sizes(mut self, pool_sizes: &'a [DescriptorPoolSize]) -> Self { self.pool_size_count = pool_sizes.len() as _; self.p_pool_sizes = pool_sizes.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -3545,16 +3809,19 @@ unsafe impl<'a> TaggedStructure for DescriptorSetAllocateInfo<'a> { pub unsafe trait ExtendsDescriptorSetAllocateInfo {} impl<'a> DescriptorSetAllocateInfo<'a> { #[inline] + #[must_use] pub fn descriptor_pool(mut self, descriptor_pool: DescriptorPool) -> Self { self.descriptor_pool = descriptor_pool; self } #[inline] + #[must_use] pub fn set_layouts(mut self, set_layouts: &'a [DescriptorSetLayout]) -> Self { self.descriptor_set_count = set_layouts.len() as _; self.p_set_layouts = set_layouts.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -3581,16 +3848,19 @@ pub struct SpecializationMapEntry { } impl SpecializationMapEntry { #[inline] + #[must_use] pub fn constant_id(mut self, constant_id: u32) -> Self { self.constant_id = constant_id; self } #[inline] + #[must_use] pub fn offset(mut self, offset: u32) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: usize) -> Self { self.size = size; self @@ -3621,12 +3891,14 @@ impl ::std::default::Default for SpecializationInfo<'_> { } impl<'a> SpecializationInfo<'a> { #[inline] + #[must_use] pub fn map_entries(mut self, map_entries: &'a [SpecializationMapEntry]) -> Self { self.map_entry_count = map_entries.len() as _; self.p_map_entries = map_entries.as_ptr(); self } #[inline] + #[must_use] pub fn data(mut self, data: &'a [u8]) -> Self { self.data_size = data.len(); self.p_data = data.as_ptr().cast(); @@ -3668,34 +3940,41 @@ unsafe impl<'a> TaggedStructure for PipelineShaderStageCreateInfo<'a> { pub unsafe trait ExtendsPipelineShaderStageCreateInfo {} impl<'a> PipelineShaderStageCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineShaderStageCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stage(mut self, stage: ShaderStageFlags) -> Self { self.stage = stage; self } #[inline] + #[must_use] pub fn module(mut self, module: ShaderModule) -> Self { self.module = module; self } #[inline] + #[must_use] pub fn name(mut self, name: &'a core::ffi::CStr) -> Self { self.p_name = name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_name) } #[inline] + #[must_use] pub fn specialization_info(mut self, specialization_info: &'a SpecializationInfo<'a>) -> Self { self.p_specialization_info = specialization_info; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -3746,30 +4025,36 @@ unsafe impl<'a> TaggedStructure for ComputePipelineCreateInfo<'a> { pub unsafe trait ExtendsComputePipelineCreateInfo {} impl<'a> ComputePipelineCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stage(mut self, stage: PipelineShaderStageCreateInfo<'a>) -> Self { self.stage = stage; self } #[inline] + #[must_use] pub fn layout(mut self, layout: PipelineLayout) -> Self { self.layout = layout; self } #[inline] + #[must_use] pub fn base_pipeline_handle(mut self, base_pipeline_handle: Pipeline) -> Self { self.base_pipeline_handle = base_pipeline_handle; self } #[inline] + #[must_use] pub fn base_pipeline_index(mut self, base_pipeline_index: i32) -> Self { self.base_pipeline_index = base_pipeline_index; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -3815,16 +4100,19 @@ unsafe impl<'a> TaggedStructure for ComputePipelineIndirectBufferInfoNV<'a> { } impl<'a> ComputePipelineIndirectBufferInfoNV<'a> { #[inline] + #[must_use] pub fn device_address(mut self, device_address: DeviceAddress) -> Self { self.device_address = device_address; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn pipeline_device_address_capture_replay( mut self, pipeline_device_address_capture_replay: DeviceAddress, @@ -3863,6 +4151,7 @@ unsafe impl ExtendsRayTracingPipelineCreateInfoNV for PipelineCreateFlags2Create unsafe impl ExtendsRayTracingPipelineCreateInfoKHR for PipelineCreateFlags2CreateInfoKHR<'_> {} impl<'a> PipelineCreateFlags2CreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCreateFlags2KHR) -> Self { self.flags = flags; self @@ -3879,16 +4168,19 @@ pub struct VertexInputBindingDescription { } impl VertexInputBindingDescription { #[inline] + #[must_use] pub fn binding(mut self, binding: u32) -> Self { self.binding = binding; self } #[inline] + #[must_use] pub fn stride(mut self, stride: u32) -> Self { self.stride = stride; self } #[inline] + #[must_use] pub fn input_rate(mut self, input_rate: VertexInputRate) -> Self { self.input_rate = input_rate; self @@ -3906,21 +4198,25 @@ pub struct VertexInputAttributeDescription { } impl VertexInputAttributeDescription { #[inline] + #[must_use] pub fn location(mut self, location: u32) -> Self { self.location = location; self } #[inline] + #[must_use] pub fn binding(mut self, binding: u32) -> Self { self.binding = binding; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn offset(mut self, offset: u32) -> Self { self.offset = offset; self @@ -3961,11 +4257,13 @@ unsafe impl<'a> TaggedStructure for PipelineVertexInputStateCreateInfo<'a> { pub unsafe trait ExtendsPipelineVertexInputStateCreateInfo {} impl<'a> PipelineVertexInputStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineVertexInputStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn vertex_binding_descriptions( mut self, vertex_binding_descriptions: &'a [VertexInputBindingDescription], @@ -3975,6 +4273,7 @@ impl<'a> PipelineVertexInputStateCreateInfo<'a> { self } #[inline] + #[must_use] pub fn vertex_attribute_descriptions( mut self, vertex_attribute_descriptions: &'a [VertexInputAttributeDescription], @@ -3983,6 +4282,7 @@ impl<'a> PipelineVertexInputStateCreateInfo<'a> { self.p_vertex_attribute_descriptions = vertex_attribute_descriptions.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -4031,16 +4331,19 @@ unsafe impl<'a> TaggedStructure for PipelineInputAssemblyStateCreateInfo<'a> { } impl<'a> PipelineInputAssemblyStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineInputAssemblyStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn topology(mut self, topology: PrimitiveTopology) -> Self { self.topology = topology; self } #[inline] + #[must_use] pub fn primitive_restart_enable(mut self, primitive_restart_enable: bool) -> Self { self.primitive_restart_enable = primitive_restart_enable.into(); self @@ -4075,15 +4378,18 @@ unsafe impl<'a> TaggedStructure for PipelineTessellationStateCreateInfo<'a> { pub unsafe trait ExtendsPipelineTessellationStateCreateInfo {} impl<'a> PipelineTessellationStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineTessellationStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn patch_control_points(mut self, patch_control_points: u32) -> Self { self.patch_control_points = patch_control_points; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -4137,32 +4443,38 @@ unsafe impl<'a> TaggedStructure for PipelineViewportStateCreateInfo<'a> { pub unsafe trait ExtendsPipelineViewportStateCreateInfo {} impl<'a> PipelineViewportStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineViewportStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn viewport_count(mut self, viewport_count: u32) -> Self { self.viewport_count = viewport_count; self } #[inline] + #[must_use] pub fn viewports(mut self, viewports: &'a [Viewport]) -> Self { self.viewport_count = viewports.len() as _; self.p_viewports = viewports.as_ptr(); self } #[inline] + #[must_use] pub fn scissor_count(mut self, scissor_count: u32) -> Self { self.scissor_count = scissor_count; self } #[inline] + #[must_use] pub fn scissors(mut self, scissors: &'a [Rect2D]) -> Self { self.scissor_count = scissors.len() as _; self.p_scissors = scissors.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -4225,60 +4537,72 @@ unsafe impl<'a> TaggedStructure for PipelineRasterizationStateCreateInfo<'a> { pub unsafe trait ExtendsPipelineRasterizationStateCreateInfo {} impl<'a> PipelineRasterizationStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineRasterizationStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn depth_clamp_enable(mut self, depth_clamp_enable: bool) -> Self { self.depth_clamp_enable = depth_clamp_enable.into(); self } #[inline] + #[must_use] pub fn rasterizer_discard_enable(mut self, rasterizer_discard_enable: bool) -> Self { self.rasterizer_discard_enable = rasterizer_discard_enable.into(); self } #[inline] + #[must_use] pub fn polygon_mode(mut self, polygon_mode: PolygonMode) -> Self { self.polygon_mode = polygon_mode; self } #[inline] + #[must_use] pub fn cull_mode(mut self, cull_mode: CullModeFlags) -> Self { self.cull_mode = cull_mode; self } #[inline] + #[must_use] pub fn front_face(mut self, front_face: FrontFace) -> Self { self.front_face = front_face; self } #[inline] + #[must_use] pub fn depth_bias_enable(mut self, depth_bias_enable: bool) -> Self { self.depth_bias_enable = depth_bias_enable.into(); self } #[inline] + #[must_use] pub fn depth_bias_constant_factor(mut self, depth_bias_constant_factor: f32) -> Self { self.depth_bias_constant_factor = depth_bias_constant_factor; self } #[inline] + #[must_use] pub fn depth_bias_clamp(mut self, depth_bias_clamp: f32) -> Self { self.depth_bias_clamp = depth_bias_clamp; self } #[inline] + #[must_use] pub fn depth_bias_slope_factor(mut self, depth_bias_slope_factor: f32) -> Self { self.depth_bias_slope_factor = depth_bias_slope_factor; self } #[inline] + #[must_use] pub fn line_width(mut self, line_width: f32) -> Self { self.line_width = line_width; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -4336,21 +4660,25 @@ unsafe impl<'a> TaggedStructure for PipelineMultisampleStateCreateInfo<'a> { pub unsafe trait ExtendsPipelineMultisampleStateCreateInfo {} impl<'a> PipelineMultisampleStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineMultisampleStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn rasterization_samples(mut self, rasterization_samples: SampleCountFlags) -> Self { self.rasterization_samples = rasterization_samples; self } #[inline] + #[must_use] pub fn sample_shading_enable(mut self, sample_shading_enable: bool) -> Self { self.sample_shading_enable = sample_shading_enable.into(); self } #[inline] + #[must_use] pub fn min_sample_shading(mut self, min_sample_shading: f32) -> Self { self.min_sample_shading = min_sample_shading; self @@ -4361,6 +4689,7 @@ impl<'a> PipelineMultisampleStateCreateInfo<'a> { #[doc = r" See "] #[doc = r" for more details."] #[inline] + #[must_use] pub fn sample_mask(mut self, sample_mask: &'a [SampleMask]) -> Self { self.p_sample_mask = if sample_mask.is_empty() { std::ptr::null() @@ -4370,15 +4699,18 @@ impl<'a> PipelineMultisampleStateCreateInfo<'a> { self } #[inline] + #[must_use] pub fn alpha_to_coverage_enable(mut self, alpha_to_coverage_enable: bool) -> Self { self.alpha_to_coverage_enable = alpha_to_coverage_enable.into(); self } #[inline] + #[must_use] pub fn alpha_to_one_enable(mut self, alpha_to_one_enable: bool) -> Self { self.alpha_to_one_enable = alpha_to_one_enable.into(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -4413,41 +4745,49 @@ pub struct PipelineColorBlendAttachmentState { } impl PipelineColorBlendAttachmentState { #[inline] + #[must_use] pub fn blend_enable(mut self, blend_enable: bool) -> Self { self.blend_enable = blend_enable.into(); self } #[inline] + #[must_use] pub fn src_color_blend_factor(mut self, src_color_blend_factor: BlendFactor) -> Self { self.src_color_blend_factor = src_color_blend_factor; self } #[inline] + #[must_use] pub fn dst_color_blend_factor(mut self, dst_color_blend_factor: BlendFactor) -> Self { self.dst_color_blend_factor = dst_color_blend_factor; self } #[inline] + #[must_use] pub fn color_blend_op(mut self, color_blend_op: BlendOp) -> Self { self.color_blend_op = color_blend_op; self } #[inline] + #[must_use] pub fn src_alpha_blend_factor(mut self, src_alpha_blend_factor: BlendFactor) -> Self { self.src_alpha_blend_factor = src_alpha_blend_factor; self } #[inline] + #[must_use] pub fn dst_alpha_blend_factor(mut self, dst_alpha_blend_factor: BlendFactor) -> Self { self.dst_alpha_blend_factor = dst_alpha_blend_factor; self } #[inline] + #[must_use] pub fn alpha_blend_op(mut self, alpha_blend_op: BlendOp) -> Self { self.alpha_blend_op = alpha_blend_op; self } #[inline] + #[must_use] pub fn color_write_mask(mut self, color_write_mask: ColorComponentFlags) -> Self { self.color_write_mask = color_write_mask; self @@ -4490,31 +4830,37 @@ unsafe impl<'a> TaggedStructure for PipelineColorBlendStateCreateInfo<'a> { pub unsafe trait ExtendsPipelineColorBlendStateCreateInfo {} impl<'a> PipelineColorBlendStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineColorBlendStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn logic_op_enable(mut self, logic_op_enable: bool) -> Self { self.logic_op_enable = logic_op_enable.into(); self } #[inline] + #[must_use] pub fn logic_op(mut self, logic_op: LogicOp) -> Self { self.logic_op = logic_op; self } #[inline] + #[must_use] pub fn attachments(mut self, attachments: &'a [PipelineColorBlendAttachmentState]) -> Self { self.attachment_count = attachments.len() as _; self.p_attachments = attachments.as_ptr(); self } #[inline] + #[must_use] pub fn blend_constants(mut self, blend_constants: [f32; 4]) -> Self { self.blend_constants = blend_constants; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -4563,11 +4909,13 @@ unsafe impl<'a> TaggedStructure for PipelineDynamicStateCreateInfo<'a> { } impl<'a> PipelineDynamicStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineDynamicStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn dynamic_states(mut self, dynamic_states: &'a [DynamicState]) -> Self { self.dynamic_state_count = dynamic_states.len() as _; self.p_dynamic_states = dynamic_states.as_ptr(); @@ -4589,36 +4937,43 @@ pub struct StencilOpState { } impl StencilOpState { #[inline] + #[must_use] pub fn fail_op(mut self, fail_op: StencilOp) -> Self { self.fail_op = fail_op; self } #[inline] + #[must_use] pub fn pass_op(mut self, pass_op: StencilOp) -> Self { self.pass_op = pass_op; self } #[inline] + #[must_use] pub fn depth_fail_op(mut self, depth_fail_op: StencilOp) -> Self { self.depth_fail_op = depth_fail_op; self } #[inline] + #[must_use] pub fn compare_op(mut self, compare_op: CompareOp) -> Self { self.compare_op = compare_op; self } #[inline] + #[must_use] pub fn compare_mask(mut self, compare_mask: u32) -> Self { self.compare_mask = compare_mask; self } #[inline] + #[must_use] pub fn write_mask(mut self, write_mask: u32) -> Self { self.write_mask = write_mask; self } #[inline] + #[must_use] pub fn reference(mut self, reference: u32) -> Self { self.reference = reference; self @@ -4668,51 +5023,61 @@ unsafe impl<'a> TaggedStructure for PipelineDepthStencilStateCreateInfo<'a> { } impl<'a> PipelineDepthStencilStateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineDepthStencilStateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn depth_test_enable(mut self, depth_test_enable: bool) -> Self { self.depth_test_enable = depth_test_enable.into(); self } #[inline] + #[must_use] pub fn depth_write_enable(mut self, depth_write_enable: bool) -> Self { self.depth_write_enable = depth_write_enable.into(); self } #[inline] + #[must_use] pub fn depth_compare_op(mut self, depth_compare_op: CompareOp) -> Self { self.depth_compare_op = depth_compare_op; self } #[inline] + #[must_use] pub fn depth_bounds_test_enable(mut self, depth_bounds_test_enable: bool) -> Self { self.depth_bounds_test_enable = depth_bounds_test_enable.into(); self } #[inline] + #[must_use] pub fn stencil_test_enable(mut self, stencil_test_enable: bool) -> Self { self.stencil_test_enable = stencil_test_enable.into(); self } #[inline] + #[must_use] pub fn front(mut self, front: StencilOpState) -> Self { self.front = front; self } #[inline] + #[must_use] pub fn back(mut self, back: StencilOpState) -> Self { self.back = back; self } #[inline] + #[must_use] pub fn min_depth_bounds(mut self, min_depth_bounds: f32) -> Self { self.min_depth_bounds = min_depth_bounds; self } #[inline] + #[must_use] pub fn max_depth_bounds(mut self, max_depth_bounds: f32) -> Self { self.max_depth_bounds = max_depth_bounds; self @@ -4777,17 +5142,20 @@ unsafe impl<'a> TaggedStructure for GraphicsPipelineCreateInfo<'a> { pub unsafe trait ExtendsGraphicsPipelineCreateInfo {} impl<'a> GraphicsPipelineCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stages(mut self, stages: &'a [PipelineShaderStageCreateInfo<'a>]) -> Self { self.stage_count = stages.len() as _; self.p_stages = stages.as_ptr(); self } #[inline] + #[must_use] pub fn vertex_input_state( mut self, vertex_input_state: &'a PipelineVertexInputStateCreateInfo<'a>, @@ -4796,6 +5164,7 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn input_assembly_state( mut self, input_assembly_state: &'a PipelineInputAssemblyStateCreateInfo<'a>, @@ -4804,6 +5173,7 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn tessellation_state( mut self, tessellation_state: &'a PipelineTessellationStateCreateInfo<'a>, @@ -4812,6 +5182,7 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn viewport_state( mut self, viewport_state: &'a PipelineViewportStateCreateInfo<'a>, @@ -4820,6 +5191,7 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn rasterization_state( mut self, rasterization_state: &'a PipelineRasterizationStateCreateInfo<'a>, @@ -4828,6 +5200,7 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn multisample_state( mut self, multisample_state: &'a PipelineMultisampleStateCreateInfo<'a>, @@ -4836,6 +5209,7 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn depth_stencil_state( mut self, depth_stencil_state: &'a PipelineDepthStencilStateCreateInfo<'a>, @@ -4844,6 +5218,7 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn color_blend_state( mut self, color_blend_state: &'a PipelineColorBlendStateCreateInfo<'a>, @@ -4852,35 +5227,42 @@ impl<'a> GraphicsPipelineCreateInfo<'a> { self } #[inline] + #[must_use] pub fn dynamic_state(mut self, dynamic_state: &'a PipelineDynamicStateCreateInfo<'a>) -> Self { self.p_dynamic_state = dynamic_state; self } #[inline] + #[must_use] pub fn layout(mut self, layout: PipelineLayout) -> Self { self.layout = layout; self } #[inline] + #[must_use] pub fn render_pass(mut self, render_pass: RenderPass) -> Self { self.render_pass = render_pass; self } #[inline] + #[must_use] pub fn subpass(mut self, subpass: u32) -> Self { self.subpass = subpass; self } #[inline] + #[must_use] pub fn base_pipeline_handle(mut self, base_pipeline_handle: Pipeline) -> Self { self.base_pipeline_handle = base_pipeline_handle; self } #[inline] + #[must_use] pub fn base_pipeline_index(mut self, base_pipeline_index: i32) -> Self { self.base_pipeline_index = base_pipeline_index; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -4926,11 +5308,13 @@ unsafe impl<'a> TaggedStructure for PipelineCacheCreateInfo<'a> { } impl<'a> PipelineCacheCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCacheCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn initial_data(mut self, initial_data: &'a [u8]) -> Self { self.initial_data_size = initial_data.len(); self.p_initial_data = initial_data.as_ptr().cast(); @@ -4962,26 +5346,31 @@ impl ::std::default::Default for PipelineCacheHeaderVersionOne { } impl PipelineCacheHeaderVersionOne { #[inline] + #[must_use] pub fn header_size(mut self, header_size: u32) -> Self { self.header_size = header_size; self } #[inline] + #[must_use] pub fn header_version(mut self, header_version: PipelineCacheHeaderVersion) -> Self { self.header_version = header_version; self } #[inline] + #[must_use] pub fn vendor_id(mut self, vendor_id: u32) -> Self { self.vendor_id = vendor_id; self } #[inline] + #[must_use] pub fn device_id(mut self, device_id: u32) -> Self { self.device_id = device_id; self } #[inline] + #[must_use] pub fn pipeline_cache_uuid(mut self, pipeline_cache_uuid: [u8; UUID_SIZE]) -> Self { self.pipeline_cache_uuid = pipeline_cache_uuid; self @@ -4998,16 +5387,19 @@ pub struct PushConstantRange { } impl PushConstantRange { #[inline] + #[must_use] pub fn stage_flags(mut self, stage_flags: ShaderStageFlags) -> Self { self.stage_flags = stage_flags; self } #[inline] + #[must_use] pub fn offset(mut self, offset: u32) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: u32) -> Self { self.size = size; self @@ -5047,17 +5439,20 @@ unsafe impl<'a> TaggedStructure for PipelineLayoutCreateInfo<'a> { } impl<'a> PipelineLayoutCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineLayoutCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn set_layouts(mut self, set_layouts: &'a [DescriptorSetLayout]) -> Self { self.set_layout_count = set_layouts.len() as _; self.p_set_layouts = set_layouts.as_ptr(); self } #[inline] + #[must_use] pub fn push_constant_ranges(mut self, push_constant_ranges: &'a [PushConstantRange]) -> Self { self.push_constant_range_count = push_constant_ranges.len() as _; self.p_push_constant_ranges = push_constant_ranges.as_ptr(); @@ -5121,85 +5516,102 @@ unsafe impl<'a> TaggedStructure for SamplerCreateInfo<'a> { pub unsafe trait ExtendsSamplerCreateInfo {} impl<'a> SamplerCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: SamplerCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn mag_filter(mut self, mag_filter: Filter) -> Self { self.mag_filter = mag_filter; self } #[inline] + #[must_use] pub fn min_filter(mut self, min_filter: Filter) -> Self { self.min_filter = min_filter; self } #[inline] + #[must_use] pub fn mipmap_mode(mut self, mipmap_mode: SamplerMipmapMode) -> Self { self.mipmap_mode = mipmap_mode; self } #[inline] + #[must_use] pub fn address_mode_u(mut self, address_mode_u: SamplerAddressMode) -> Self { self.address_mode_u = address_mode_u; self } #[inline] + #[must_use] pub fn address_mode_v(mut self, address_mode_v: SamplerAddressMode) -> Self { self.address_mode_v = address_mode_v; self } #[inline] + #[must_use] pub fn address_mode_w(mut self, address_mode_w: SamplerAddressMode) -> Self { self.address_mode_w = address_mode_w; self } #[inline] + #[must_use] pub fn mip_lod_bias(mut self, mip_lod_bias: f32) -> Self { self.mip_lod_bias = mip_lod_bias; self } #[inline] + #[must_use] pub fn anisotropy_enable(mut self, anisotropy_enable: bool) -> Self { self.anisotropy_enable = anisotropy_enable.into(); self } #[inline] + #[must_use] pub fn max_anisotropy(mut self, max_anisotropy: f32) -> Self { self.max_anisotropy = max_anisotropy; self } #[inline] + #[must_use] pub fn compare_enable(mut self, compare_enable: bool) -> Self { self.compare_enable = compare_enable.into(); self } #[inline] + #[must_use] pub fn compare_op(mut self, compare_op: CompareOp) -> Self { self.compare_op = compare_op; self } #[inline] + #[must_use] pub fn min_lod(mut self, min_lod: f32) -> Self { self.min_lod = min_lod; self } #[inline] + #[must_use] pub fn max_lod(mut self, max_lod: f32) -> Self { self.max_lod = max_lod; self } #[inline] + #[must_use] pub fn border_color(mut self, border_color: BorderColor) -> Self { self.border_color = border_color; self } #[inline] + #[must_use] pub fn unnormalized_coordinates(mut self, unnormalized_coordinates: bool) -> Self { self.unnormalized_coordinates = unnormalized_coordinates.into(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -5243,11 +5655,13 @@ unsafe impl<'a> TaggedStructure for CommandPoolCreateInfo<'a> { } impl<'a> CommandPoolCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: CommandPoolCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn queue_family_index(mut self, queue_family_index: u32) -> Self { self.queue_family_index = queue_family_index; self @@ -5283,16 +5697,19 @@ unsafe impl<'a> TaggedStructure for CommandBufferAllocateInfo<'a> { } impl<'a> CommandBufferAllocateInfo<'a> { #[inline] + #[must_use] pub fn command_pool(mut self, command_pool: CommandPool) -> Self { self.command_pool = command_pool; self } #[inline] + #[must_use] pub fn level(mut self, level: CommandBufferLevel) -> Self { self.level = level; self } #[inline] + #[must_use] pub fn command_buffer_count(mut self, command_buffer_count: u32) -> Self { self.command_buffer_count = command_buffer_count; self @@ -5335,35 +5752,42 @@ unsafe impl<'a> TaggedStructure for CommandBufferInheritanceInfo<'a> { pub unsafe trait ExtendsCommandBufferInheritanceInfo {} impl<'a> CommandBufferInheritanceInfo<'a> { #[inline] + #[must_use] pub fn render_pass(mut self, render_pass: RenderPass) -> Self { self.render_pass = render_pass; self } #[inline] + #[must_use] pub fn subpass(mut self, subpass: u32) -> Self { self.subpass = subpass; self } #[inline] + #[must_use] pub fn framebuffer(mut self, framebuffer: Framebuffer) -> Self { self.framebuffer = framebuffer; self } #[inline] + #[must_use] pub fn occlusion_query_enable(mut self, occlusion_query_enable: bool) -> Self { self.occlusion_query_enable = occlusion_query_enable.into(); self } #[inline] + #[must_use] pub fn query_flags(mut self, query_flags: QueryControlFlags) -> Self { self.query_flags = query_flags; self } #[inline] + #[must_use] pub fn pipeline_statistics(mut self, pipeline_statistics: QueryPipelineStatisticFlags) -> Self { self.pipeline_statistics = pipeline_statistics; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -5408,11 +5832,13 @@ unsafe impl<'a> TaggedStructure for CommandBufferBeginInfo<'a> { pub unsafe trait ExtendsCommandBufferBeginInfo {} impl<'a> CommandBufferBeginInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: CommandBufferUsageFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn inheritance_info( mut self, inheritance_info: &'a CommandBufferInheritanceInfo<'a>, @@ -5420,6 +5846,7 @@ impl<'a> CommandBufferBeginInfo<'a> { self.p_inheritance_info = inheritance_info; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -5483,26 +5910,31 @@ unsafe impl<'a> TaggedStructure for RenderPassBeginInfo<'a> { pub unsafe trait ExtendsRenderPassBeginInfo {} impl<'a> RenderPassBeginInfo<'a> { #[inline] + #[must_use] pub fn render_pass(mut self, render_pass: RenderPass) -> Self { self.render_pass = render_pass; self } #[inline] + #[must_use] pub fn framebuffer(mut self, framebuffer: Framebuffer) -> Self { self.framebuffer = framebuffer; self } #[inline] + #[must_use] pub fn render_area(mut self, render_area: Rect2D) -> Self { self.render_area = render_area; self } #[inline] + #[must_use] pub fn clear_values(mut self, clear_values: &'a [ClearValue]) -> Self { self.clear_value_count = clear_values.len() as _; self.p_clear_values = clear_values.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -5542,11 +5974,13 @@ pub struct ClearDepthStencilValue { } impl ClearDepthStencilValue { #[inline] + #[must_use] pub fn depth(mut self, depth: f32) -> Self { self.depth = depth; self } #[inline] + #[must_use] pub fn stencil(mut self, stencil: u32) -> Self { self.stencil = stencil; self @@ -5585,16 +6019,19 @@ impl fmt::Debug for ClearAttachment { } impl ClearAttachment { #[inline] + #[must_use] pub fn aspect_mask(mut self, aspect_mask: ImageAspectFlags) -> Self { self.aspect_mask = aspect_mask; self } #[inline] + #[must_use] pub fn color_attachment(mut self, color_attachment: u32) -> Self { self.color_attachment = color_attachment; self } #[inline] + #[must_use] pub fn clear_value(mut self, clear_value: ClearValue) -> Self { self.clear_value = clear_value; self @@ -5617,46 +6054,55 @@ pub struct AttachmentDescription { } impl AttachmentDescription { #[inline] + #[must_use] pub fn flags(mut self, flags: AttachmentDescriptionFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn samples(mut self, samples: SampleCountFlags) -> Self { self.samples = samples; self } #[inline] + #[must_use] pub fn load_op(mut self, load_op: AttachmentLoadOp) -> Self { self.load_op = load_op; self } #[inline] + #[must_use] pub fn store_op(mut self, store_op: AttachmentStoreOp) -> Self { self.store_op = store_op; self } #[inline] + #[must_use] pub fn stencil_load_op(mut self, stencil_load_op: AttachmentLoadOp) -> Self { self.stencil_load_op = stencil_load_op; self } #[inline] + #[must_use] pub fn stencil_store_op(mut self, stencil_store_op: AttachmentStoreOp) -> Self { self.stencil_store_op = stencil_store_op; self } #[inline] + #[must_use] pub fn initial_layout(mut self, initial_layout: ImageLayout) -> Self { self.initial_layout = initial_layout; self } #[inline] + #[must_use] pub fn final_layout(mut self, final_layout: ImageLayout) -> Self { self.final_layout = final_layout; self @@ -5672,11 +6118,13 @@ pub struct AttachmentReference { } impl AttachmentReference { #[inline] + #[must_use] pub fn attachment(mut self, attachment: u32) -> Self { self.attachment = attachment; self } #[inline] + #[must_use] pub fn layout(mut self, layout: ImageLayout) -> Self { self.layout = layout; self @@ -5719,34 +6167,40 @@ impl ::std::default::Default for SubpassDescription<'_> { } impl<'a> SubpassDescription<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: SubpassDescriptionFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn pipeline_bind_point(mut self, pipeline_bind_point: PipelineBindPoint) -> Self { self.pipeline_bind_point = pipeline_bind_point; self } #[inline] + #[must_use] pub fn input_attachments(mut self, input_attachments: &'a [AttachmentReference]) -> Self { self.input_attachment_count = input_attachments.len() as _; self.p_input_attachments = input_attachments.as_ptr(); self } #[inline] + #[must_use] pub fn color_attachments(mut self, color_attachments: &'a [AttachmentReference]) -> Self { self.color_attachment_count = color_attachments.len() as _; self.p_color_attachments = color_attachments.as_ptr(); self } #[inline] + #[must_use] pub fn resolve_attachments(mut self, resolve_attachments: &'a [AttachmentReference]) -> Self { self.color_attachment_count = resolve_attachments.len() as _; self.p_resolve_attachments = resolve_attachments.as_ptr(); self } #[inline] + #[must_use] pub fn depth_stencil_attachment( mut self, depth_stencil_attachment: &'a AttachmentReference, @@ -5755,6 +6209,7 @@ impl<'a> SubpassDescription<'a> { self } #[inline] + #[must_use] pub fn preserve_attachments(mut self, preserve_attachments: &'a [u32]) -> Self { self.preserve_attachment_count = preserve_attachments.len() as _; self.p_preserve_attachments = preserve_attachments.as_ptr(); @@ -5776,36 +6231,43 @@ pub struct SubpassDependency { } impl SubpassDependency { #[inline] + #[must_use] pub fn src_subpass(mut self, src_subpass: u32) -> Self { self.src_subpass = src_subpass; self } #[inline] + #[must_use] pub fn dst_subpass(mut self, dst_subpass: u32) -> Self { self.dst_subpass = dst_subpass; self } #[inline] + #[must_use] pub fn src_stage_mask(mut self, src_stage_mask: PipelineStageFlags) -> Self { self.src_stage_mask = src_stage_mask; self } #[inline] + #[must_use] pub fn dst_stage_mask(mut self, dst_stage_mask: PipelineStageFlags) -> Self { self.dst_stage_mask = dst_stage_mask; self } #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags) -> Self { self.dst_access_mask = dst_access_mask; self } #[inline] + #[must_use] pub fn dependency_flags(mut self, dependency_flags: DependencyFlags) -> Self { self.dependency_flags = dependency_flags; self @@ -5850,28 +6312,33 @@ unsafe impl<'a> TaggedStructure for RenderPassCreateInfo<'a> { pub unsafe trait ExtendsRenderPassCreateInfo {} impl<'a> RenderPassCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: RenderPassCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn attachments(mut self, attachments: &'a [AttachmentDescription]) -> Self { self.attachment_count = attachments.len() as _; self.p_attachments = attachments.as_ptr(); self } #[inline] + #[must_use] pub fn subpasses(mut self, subpasses: &'a [SubpassDescription<'a>]) -> Self { self.subpass_count = subpasses.len() as _; self.p_subpasses = subpasses.as_ptr(); self } #[inline] + #[must_use] pub fn dependencies(mut self, dependencies: &'a [SubpassDependency]) -> Self { self.dependency_count = dependencies.len() as _; self.p_dependencies = dependencies.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -5914,10 +6381,12 @@ unsafe impl<'a> TaggedStructure for EventCreateInfo<'a> { pub unsafe trait ExtendsEventCreateInfo {} impl<'a> EventCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: EventCreateFlags) -> Self { self.flags = flags; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -5960,10 +6429,12 @@ unsafe impl<'a> TaggedStructure for FenceCreateInfo<'a> { pub unsafe trait ExtendsFenceCreateInfo {} impl<'a> FenceCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: FenceCreateFlags) -> Self { self.flags = flags; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -6042,131 +6513,157 @@ pub struct PhysicalDeviceFeatures { } impl PhysicalDeviceFeatures { #[inline] + #[must_use] pub fn robust_buffer_access(mut self, robust_buffer_access: bool) -> Self { self.robust_buffer_access = robust_buffer_access.into(); self } #[inline] + #[must_use] pub fn full_draw_index_uint32(mut self, full_draw_index_uint32: bool) -> Self { self.full_draw_index_uint32 = full_draw_index_uint32.into(); self } #[inline] + #[must_use] pub fn image_cube_array(mut self, image_cube_array: bool) -> Self { self.image_cube_array = image_cube_array.into(); self } #[inline] + #[must_use] pub fn independent_blend(mut self, independent_blend: bool) -> Self { self.independent_blend = independent_blend.into(); self } #[inline] + #[must_use] pub fn geometry_shader(mut self, geometry_shader: bool) -> Self { self.geometry_shader = geometry_shader.into(); self } #[inline] + #[must_use] pub fn tessellation_shader(mut self, tessellation_shader: bool) -> Self { self.tessellation_shader = tessellation_shader.into(); self } #[inline] + #[must_use] pub fn sample_rate_shading(mut self, sample_rate_shading: bool) -> Self { self.sample_rate_shading = sample_rate_shading.into(); self } #[inline] + #[must_use] pub fn dual_src_blend(mut self, dual_src_blend: bool) -> Self { self.dual_src_blend = dual_src_blend.into(); self } #[inline] + #[must_use] pub fn logic_op(mut self, logic_op: bool) -> Self { self.logic_op = logic_op.into(); self } #[inline] + #[must_use] pub fn multi_draw_indirect(mut self, multi_draw_indirect: bool) -> Self { self.multi_draw_indirect = multi_draw_indirect.into(); self } #[inline] + #[must_use] pub fn draw_indirect_first_instance(mut self, draw_indirect_first_instance: bool) -> Self { self.draw_indirect_first_instance = draw_indirect_first_instance.into(); self } #[inline] + #[must_use] pub fn depth_clamp(mut self, depth_clamp: bool) -> Self { self.depth_clamp = depth_clamp.into(); self } #[inline] + #[must_use] pub fn depth_bias_clamp(mut self, depth_bias_clamp: bool) -> Self { self.depth_bias_clamp = depth_bias_clamp.into(); self } #[inline] + #[must_use] pub fn fill_mode_non_solid(mut self, fill_mode_non_solid: bool) -> Self { self.fill_mode_non_solid = fill_mode_non_solid.into(); self } #[inline] + #[must_use] pub fn depth_bounds(mut self, depth_bounds: bool) -> Self { self.depth_bounds = depth_bounds.into(); self } #[inline] + #[must_use] pub fn wide_lines(mut self, wide_lines: bool) -> Self { self.wide_lines = wide_lines.into(); self } #[inline] + #[must_use] pub fn large_points(mut self, large_points: bool) -> Self { self.large_points = large_points.into(); self } #[inline] + #[must_use] pub fn alpha_to_one(mut self, alpha_to_one: bool) -> Self { self.alpha_to_one = alpha_to_one.into(); self } #[inline] + #[must_use] pub fn multi_viewport(mut self, multi_viewport: bool) -> Self { self.multi_viewport = multi_viewport.into(); self } #[inline] + #[must_use] pub fn sampler_anisotropy(mut self, sampler_anisotropy: bool) -> Self { self.sampler_anisotropy = sampler_anisotropy.into(); self } #[inline] + #[must_use] pub fn texture_compression_etc2(mut self, texture_compression_etc2: bool) -> Self { self.texture_compression_etc2 = texture_compression_etc2.into(); self } #[inline] + #[must_use] pub fn texture_compression_astc_ldr(mut self, texture_compression_astc_ldr: bool) -> Self { self.texture_compression_astc_ldr = texture_compression_astc_ldr.into(); self } #[inline] + #[must_use] pub fn texture_compression_bc(mut self, texture_compression_bc: bool) -> Self { self.texture_compression_bc = texture_compression_bc.into(); self } #[inline] + #[must_use] pub fn occlusion_query_precise(mut self, occlusion_query_precise: bool) -> Self { self.occlusion_query_precise = occlusion_query_precise.into(); self } #[inline] + #[must_use] pub fn pipeline_statistics_query(mut self, pipeline_statistics_query: bool) -> Self { self.pipeline_statistics_query = pipeline_statistics_query.into(); self } #[inline] + #[must_use] pub fn vertex_pipeline_stores_and_atomics( mut self, vertex_pipeline_stores_and_atomics: bool, @@ -6175,11 +6672,13 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn fragment_stores_and_atomics(mut self, fragment_stores_and_atomics: bool) -> Self { self.fragment_stores_and_atomics = fragment_stores_and_atomics.into(); self } #[inline] + #[must_use] pub fn shader_tessellation_and_geometry_point_size( mut self, shader_tessellation_and_geometry_point_size: bool, @@ -6189,11 +6688,13 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_image_gather_extended(mut self, shader_image_gather_extended: bool) -> Self { self.shader_image_gather_extended = shader_image_gather_extended.into(); self } #[inline] + #[must_use] pub fn shader_storage_image_extended_formats( mut self, shader_storage_image_extended_formats: bool, @@ -6202,6 +6703,7 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_storage_image_multisample( mut self, shader_storage_image_multisample: bool, @@ -6210,6 +6712,7 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_storage_image_read_without_format( mut self, shader_storage_image_read_without_format: bool, @@ -6219,6 +6722,7 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_storage_image_write_without_format( mut self, shader_storage_image_write_without_format: bool, @@ -6228,6 +6732,7 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_uniform_buffer_array_dynamic_indexing( mut self, shader_uniform_buffer_array_dynamic_indexing: bool, @@ -6237,6 +6742,7 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_sampled_image_array_dynamic_indexing( mut self, shader_sampled_image_array_dynamic_indexing: bool, @@ -6246,6 +6752,7 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_storage_buffer_array_dynamic_indexing( mut self, shader_storage_buffer_array_dynamic_indexing: bool, @@ -6255,6 +6762,7 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_storage_image_array_dynamic_indexing( mut self, shader_storage_image_array_dynamic_indexing: bool, @@ -6264,91 +6772,109 @@ impl PhysicalDeviceFeatures { self } #[inline] + #[must_use] pub fn shader_clip_distance(mut self, shader_clip_distance: bool) -> Self { self.shader_clip_distance = shader_clip_distance.into(); self } #[inline] + #[must_use] pub fn shader_cull_distance(mut self, shader_cull_distance: bool) -> Self { self.shader_cull_distance = shader_cull_distance.into(); self } #[inline] + #[must_use] pub fn shader_float64(mut self, shader_float64: bool) -> Self { self.shader_float64 = shader_float64.into(); self } #[inline] + #[must_use] pub fn shader_int64(mut self, shader_int64: bool) -> Self { self.shader_int64 = shader_int64.into(); self } #[inline] + #[must_use] pub fn shader_int16(mut self, shader_int16: bool) -> Self { self.shader_int16 = shader_int16.into(); self } #[inline] + #[must_use] pub fn shader_resource_residency(mut self, shader_resource_residency: bool) -> Self { self.shader_resource_residency = shader_resource_residency.into(); self } #[inline] + #[must_use] pub fn shader_resource_min_lod(mut self, shader_resource_min_lod: bool) -> Self { self.shader_resource_min_lod = shader_resource_min_lod.into(); self } #[inline] + #[must_use] pub fn sparse_binding(mut self, sparse_binding: bool) -> Self { self.sparse_binding = sparse_binding.into(); self } #[inline] + #[must_use] pub fn sparse_residency_buffer(mut self, sparse_residency_buffer: bool) -> Self { self.sparse_residency_buffer = sparse_residency_buffer.into(); self } #[inline] + #[must_use] pub fn sparse_residency_image2_d(mut self, sparse_residency_image2_d: bool) -> Self { self.sparse_residency_image2_d = sparse_residency_image2_d.into(); self } #[inline] + #[must_use] pub fn sparse_residency_image3_d(mut self, sparse_residency_image3_d: bool) -> Self { self.sparse_residency_image3_d = sparse_residency_image3_d.into(); self } #[inline] + #[must_use] pub fn sparse_residency2_samples(mut self, sparse_residency2_samples: bool) -> Self { self.sparse_residency2_samples = sparse_residency2_samples.into(); self } #[inline] + #[must_use] pub fn sparse_residency4_samples(mut self, sparse_residency4_samples: bool) -> Self { self.sparse_residency4_samples = sparse_residency4_samples.into(); self } #[inline] + #[must_use] pub fn sparse_residency8_samples(mut self, sparse_residency8_samples: bool) -> Self { self.sparse_residency8_samples = sparse_residency8_samples.into(); self } #[inline] + #[must_use] pub fn sparse_residency16_samples(mut self, sparse_residency16_samples: bool) -> Self { self.sparse_residency16_samples = sparse_residency16_samples.into(); self } #[inline] + #[must_use] pub fn sparse_residency_aliased(mut self, sparse_residency_aliased: bool) -> Self { self.sparse_residency_aliased = sparse_residency_aliased.into(); self } #[inline] + #[must_use] pub fn variable_multisample_rate(mut self, variable_multisample_rate: bool) -> Self { self.variable_multisample_rate = variable_multisample_rate.into(); self } #[inline] + #[must_use] pub fn inherited_queries(mut self, inherited_queries: bool) -> Self { self.inherited_queries = inherited_queries.into(); self @@ -6367,6 +6893,7 @@ pub struct PhysicalDeviceSparseProperties { } impl PhysicalDeviceSparseProperties { #[inline] + #[must_use] pub fn residency_standard2_d_block_shape( mut self, residency_standard2_d_block_shape: bool, @@ -6375,6 +6902,7 @@ impl PhysicalDeviceSparseProperties { self } #[inline] + #[must_use] pub fn residency_standard2_d_multisample_block_shape( mut self, residency_standard2_d_multisample_block_shape: bool, @@ -6384,6 +6912,7 @@ impl PhysicalDeviceSparseProperties { self } #[inline] + #[must_use] pub fn residency_standard3_d_block_shape( mut self, residency_standard3_d_block_shape: bool, @@ -6392,11 +6921,13 @@ impl PhysicalDeviceSparseProperties { self } #[inline] + #[must_use] pub fn residency_aligned_mip_size(mut self, residency_aligned_mip_size: bool) -> Self { self.residency_aligned_mip_size = residency_aligned_mip_size.into(); self } #[inline] + #[must_use] pub fn residency_non_resident_strict(mut self, residency_non_resident_strict: bool) -> Self { self.residency_non_resident_strict = residency_non_resident_strict.into(); self @@ -6629,76 +7160,91 @@ impl ::std::default::Default for PhysicalDeviceLimits { } impl PhysicalDeviceLimits { #[inline] + #[must_use] pub fn max_image_dimension1_d(mut self, max_image_dimension1_d: u32) -> Self { self.max_image_dimension1_d = max_image_dimension1_d; self } #[inline] + #[must_use] pub fn max_image_dimension2_d(mut self, max_image_dimension2_d: u32) -> Self { self.max_image_dimension2_d = max_image_dimension2_d; self } #[inline] + #[must_use] pub fn max_image_dimension3_d(mut self, max_image_dimension3_d: u32) -> Self { self.max_image_dimension3_d = max_image_dimension3_d; self } #[inline] + #[must_use] pub fn max_image_dimension_cube(mut self, max_image_dimension_cube: u32) -> Self { self.max_image_dimension_cube = max_image_dimension_cube; self } #[inline] + #[must_use] pub fn max_image_array_layers(mut self, max_image_array_layers: u32) -> Self { self.max_image_array_layers = max_image_array_layers; self } #[inline] + #[must_use] pub fn max_texel_buffer_elements(mut self, max_texel_buffer_elements: u32) -> Self { self.max_texel_buffer_elements = max_texel_buffer_elements; self } #[inline] + #[must_use] pub fn max_uniform_buffer_range(mut self, max_uniform_buffer_range: u32) -> Self { self.max_uniform_buffer_range = max_uniform_buffer_range; self } #[inline] + #[must_use] pub fn max_storage_buffer_range(mut self, max_storage_buffer_range: u32) -> Self { self.max_storage_buffer_range = max_storage_buffer_range; self } #[inline] + #[must_use] pub fn max_push_constants_size(mut self, max_push_constants_size: u32) -> Self { self.max_push_constants_size = max_push_constants_size; self } #[inline] + #[must_use] pub fn max_memory_allocation_count(mut self, max_memory_allocation_count: u32) -> Self { self.max_memory_allocation_count = max_memory_allocation_count; self } #[inline] + #[must_use] pub fn max_sampler_allocation_count(mut self, max_sampler_allocation_count: u32) -> Self { self.max_sampler_allocation_count = max_sampler_allocation_count; self } #[inline] + #[must_use] pub fn buffer_image_granularity(mut self, buffer_image_granularity: DeviceSize) -> Self { self.buffer_image_granularity = buffer_image_granularity; self } #[inline] + #[must_use] pub fn sparse_address_space_size(mut self, sparse_address_space_size: DeviceSize) -> Self { self.sparse_address_space_size = sparse_address_space_size; self } #[inline] + #[must_use] pub fn max_bound_descriptor_sets(mut self, max_bound_descriptor_sets: u32) -> Self { self.max_bound_descriptor_sets = max_bound_descriptor_sets; self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_samplers( mut self, max_per_stage_descriptor_samplers: u32, @@ -6707,6 +7253,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_uniform_buffers( mut self, max_per_stage_descriptor_uniform_buffers: u32, @@ -6715,6 +7262,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_storage_buffers( mut self, max_per_stage_descriptor_storage_buffers: u32, @@ -6723,6 +7271,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_sampled_images( mut self, max_per_stage_descriptor_sampled_images: u32, @@ -6731,6 +7280,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_storage_images( mut self, max_per_stage_descriptor_storage_images: u32, @@ -6739,6 +7289,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_input_attachments( mut self, max_per_stage_descriptor_input_attachments: u32, @@ -6748,16 +7299,19 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_per_stage_resources(mut self, max_per_stage_resources: u32) -> Self { self.max_per_stage_resources = max_per_stage_resources; self } #[inline] + #[must_use] pub fn max_descriptor_set_samplers(mut self, max_descriptor_set_samplers: u32) -> Self { self.max_descriptor_set_samplers = max_descriptor_set_samplers; self } #[inline] + #[must_use] pub fn max_descriptor_set_uniform_buffers( mut self, max_descriptor_set_uniform_buffers: u32, @@ -6766,6 +7320,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_descriptor_set_uniform_buffers_dynamic( mut self, max_descriptor_set_uniform_buffers_dynamic: u32, @@ -6775,6 +7330,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_descriptor_set_storage_buffers( mut self, max_descriptor_set_storage_buffers: u32, @@ -6783,6 +7339,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_descriptor_set_storage_buffers_dynamic( mut self, max_descriptor_set_storage_buffers_dynamic: u32, @@ -6792,6 +7349,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_descriptor_set_sampled_images( mut self, max_descriptor_set_sampled_images: u32, @@ -6800,6 +7358,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_descriptor_set_storage_images( mut self, max_descriptor_set_storage_images: u32, @@ -6808,6 +7367,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_descriptor_set_input_attachments( mut self, max_descriptor_set_input_attachments: u32, @@ -6816,16 +7376,19 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_vertex_input_attributes(mut self, max_vertex_input_attributes: u32) -> Self { self.max_vertex_input_attributes = max_vertex_input_attributes; self } #[inline] + #[must_use] pub fn max_vertex_input_bindings(mut self, max_vertex_input_bindings: u32) -> Self { self.max_vertex_input_bindings = max_vertex_input_bindings; self } #[inline] + #[must_use] pub fn max_vertex_input_attribute_offset( mut self, max_vertex_input_attribute_offset: u32, @@ -6834,16 +7397,19 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_vertex_input_binding_stride(mut self, max_vertex_input_binding_stride: u32) -> Self { self.max_vertex_input_binding_stride = max_vertex_input_binding_stride; self } #[inline] + #[must_use] pub fn max_vertex_output_components(mut self, max_vertex_output_components: u32) -> Self { self.max_vertex_output_components = max_vertex_output_components; self } #[inline] + #[must_use] pub fn max_tessellation_generation_level( mut self, max_tessellation_generation_level: u32, @@ -6852,11 +7418,13 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_tessellation_patch_size(mut self, max_tessellation_patch_size: u32) -> Self { self.max_tessellation_patch_size = max_tessellation_patch_size; self } #[inline] + #[must_use] pub fn max_tessellation_control_per_vertex_input_components( mut self, max_tessellation_control_per_vertex_input_components: u32, @@ -6866,6 +7434,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_tessellation_control_per_vertex_output_components( mut self, max_tessellation_control_per_vertex_output_components: u32, @@ -6875,6 +7444,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_tessellation_control_per_patch_output_components( mut self, max_tessellation_control_per_patch_output_components: u32, @@ -6884,6 +7454,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_tessellation_control_total_output_components( mut self, max_tessellation_control_total_output_components: u32, @@ -6893,6 +7464,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_tessellation_evaluation_input_components( mut self, max_tessellation_evaluation_input_components: u32, @@ -6902,6 +7474,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_tessellation_evaluation_output_components( mut self, max_tessellation_evaluation_output_components: u32, @@ -6911,26 +7484,31 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_geometry_shader_invocations(mut self, max_geometry_shader_invocations: u32) -> Self { self.max_geometry_shader_invocations = max_geometry_shader_invocations; self } #[inline] + #[must_use] pub fn max_geometry_input_components(mut self, max_geometry_input_components: u32) -> Self { self.max_geometry_input_components = max_geometry_input_components; self } #[inline] + #[must_use] pub fn max_geometry_output_components(mut self, max_geometry_output_components: u32) -> Self { self.max_geometry_output_components = max_geometry_output_components; self } #[inline] + #[must_use] pub fn max_geometry_output_vertices(mut self, max_geometry_output_vertices: u32) -> Self { self.max_geometry_output_vertices = max_geometry_output_vertices; self } #[inline] + #[must_use] pub fn max_geometry_total_output_components( mut self, max_geometry_total_output_components: u32, @@ -6939,16 +7517,19 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_fragment_input_components(mut self, max_fragment_input_components: u32) -> Self { self.max_fragment_input_components = max_fragment_input_components; self } #[inline] + #[must_use] pub fn max_fragment_output_attachments(mut self, max_fragment_output_attachments: u32) -> Self { self.max_fragment_output_attachments = max_fragment_output_attachments; self } #[inline] + #[must_use] pub fn max_fragment_dual_src_attachments( mut self, max_fragment_dual_src_attachments: u32, @@ -6957,6 +7538,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_fragment_combined_output_resources( mut self, max_fragment_combined_output_resources: u32, @@ -6965,16 +7547,19 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_compute_shared_memory_size(mut self, max_compute_shared_memory_size: u32) -> Self { self.max_compute_shared_memory_size = max_compute_shared_memory_size; self } #[inline] + #[must_use] pub fn max_compute_work_group_count(mut self, max_compute_work_group_count: [u32; 3]) -> Self { self.max_compute_work_group_count = max_compute_work_group_count; self } #[inline] + #[must_use] pub fn max_compute_work_group_invocations( mut self, max_compute_work_group_invocations: u32, @@ -6983,71 +7568,85 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_compute_work_group_size(mut self, max_compute_work_group_size: [u32; 3]) -> Self { self.max_compute_work_group_size = max_compute_work_group_size; self } #[inline] + #[must_use] pub fn sub_pixel_precision_bits(mut self, sub_pixel_precision_bits: u32) -> Self { self.sub_pixel_precision_bits = sub_pixel_precision_bits; self } #[inline] + #[must_use] pub fn sub_texel_precision_bits(mut self, sub_texel_precision_bits: u32) -> Self { self.sub_texel_precision_bits = sub_texel_precision_bits; self } #[inline] + #[must_use] pub fn mipmap_precision_bits(mut self, mipmap_precision_bits: u32) -> Self { self.mipmap_precision_bits = mipmap_precision_bits; self } #[inline] + #[must_use] pub fn max_draw_indexed_index_value(mut self, max_draw_indexed_index_value: u32) -> Self { self.max_draw_indexed_index_value = max_draw_indexed_index_value; self } #[inline] + #[must_use] pub fn max_draw_indirect_count(mut self, max_draw_indirect_count: u32) -> Self { self.max_draw_indirect_count = max_draw_indirect_count; self } #[inline] + #[must_use] pub fn max_sampler_lod_bias(mut self, max_sampler_lod_bias: f32) -> Self { self.max_sampler_lod_bias = max_sampler_lod_bias; self } #[inline] + #[must_use] pub fn max_sampler_anisotropy(mut self, max_sampler_anisotropy: f32) -> Self { self.max_sampler_anisotropy = max_sampler_anisotropy; self } #[inline] + #[must_use] pub fn max_viewports(mut self, max_viewports: u32) -> Self { self.max_viewports = max_viewports; self } #[inline] + #[must_use] pub fn max_viewport_dimensions(mut self, max_viewport_dimensions: [u32; 2]) -> Self { self.max_viewport_dimensions = max_viewport_dimensions; self } #[inline] + #[must_use] pub fn viewport_bounds_range(mut self, viewport_bounds_range: [f32; 2]) -> Self { self.viewport_bounds_range = viewport_bounds_range; self } #[inline] + #[must_use] pub fn viewport_sub_pixel_bits(mut self, viewport_sub_pixel_bits: u32) -> Self { self.viewport_sub_pixel_bits = viewport_sub_pixel_bits; self } #[inline] + #[must_use] pub fn min_memory_map_alignment(mut self, min_memory_map_alignment: usize) -> Self { self.min_memory_map_alignment = min_memory_map_alignment; self } #[inline] + #[must_use] pub fn min_texel_buffer_offset_alignment( mut self, min_texel_buffer_offset_alignment: DeviceSize, @@ -7056,6 +7655,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn min_uniform_buffer_offset_alignment( mut self, min_uniform_buffer_offset_alignment: DeviceSize, @@ -7064,6 +7664,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn min_storage_buffer_offset_alignment( mut self, min_storage_buffer_offset_alignment: DeviceSize, @@ -7072,36 +7673,43 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn min_texel_offset(mut self, min_texel_offset: i32) -> Self { self.min_texel_offset = min_texel_offset; self } #[inline] + #[must_use] pub fn max_texel_offset(mut self, max_texel_offset: u32) -> Self { self.max_texel_offset = max_texel_offset; self } #[inline] + #[must_use] pub fn min_texel_gather_offset(mut self, min_texel_gather_offset: i32) -> Self { self.min_texel_gather_offset = min_texel_gather_offset; self } #[inline] + #[must_use] pub fn max_texel_gather_offset(mut self, max_texel_gather_offset: u32) -> Self { self.max_texel_gather_offset = max_texel_gather_offset; self } #[inline] + #[must_use] pub fn min_interpolation_offset(mut self, min_interpolation_offset: f32) -> Self { self.min_interpolation_offset = min_interpolation_offset; self } #[inline] + #[must_use] pub fn max_interpolation_offset(mut self, max_interpolation_offset: f32) -> Self { self.max_interpolation_offset = max_interpolation_offset; self } #[inline] + #[must_use] pub fn sub_pixel_interpolation_offset_bits( mut self, sub_pixel_interpolation_offset_bits: u32, @@ -7110,21 +7718,25 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_framebuffer_width(mut self, max_framebuffer_width: u32) -> Self { self.max_framebuffer_width = max_framebuffer_width; self } #[inline] + #[must_use] pub fn max_framebuffer_height(mut self, max_framebuffer_height: u32) -> Self { self.max_framebuffer_height = max_framebuffer_height; self } #[inline] + #[must_use] pub fn max_framebuffer_layers(mut self, max_framebuffer_layers: u32) -> Self { self.max_framebuffer_layers = max_framebuffer_layers; self } #[inline] + #[must_use] pub fn framebuffer_color_sample_counts( mut self, framebuffer_color_sample_counts: SampleCountFlags, @@ -7133,6 +7745,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn framebuffer_depth_sample_counts( mut self, framebuffer_depth_sample_counts: SampleCountFlags, @@ -7141,6 +7754,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn framebuffer_stencil_sample_counts( mut self, framebuffer_stencil_sample_counts: SampleCountFlags, @@ -7149,6 +7763,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn framebuffer_no_attachments_sample_counts( mut self, framebuffer_no_attachments_sample_counts: SampleCountFlags, @@ -7157,11 +7772,13 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_color_attachments(mut self, max_color_attachments: u32) -> Self { self.max_color_attachments = max_color_attachments; self } #[inline] + #[must_use] pub fn sampled_image_color_sample_counts( mut self, sampled_image_color_sample_counts: SampleCountFlags, @@ -7170,6 +7787,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn sampled_image_integer_sample_counts( mut self, sampled_image_integer_sample_counts: SampleCountFlags, @@ -7178,6 +7796,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn sampled_image_depth_sample_counts( mut self, sampled_image_depth_sample_counts: SampleCountFlags, @@ -7186,6 +7805,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn sampled_image_stencil_sample_counts( mut self, sampled_image_stencil_sample_counts: SampleCountFlags, @@ -7194,6 +7814,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn storage_image_sample_counts( mut self, storage_image_sample_counts: SampleCountFlags, @@ -7202,31 +7823,37 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn max_sample_mask_words(mut self, max_sample_mask_words: u32) -> Self { self.max_sample_mask_words = max_sample_mask_words; self } #[inline] + #[must_use] pub fn timestamp_compute_and_graphics(mut self, timestamp_compute_and_graphics: bool) -> Self { self.timestamp_compute_and_graphics = timestamp_compute_and_graphics.into(); self } #[inline] + #[must_use] pub fn timestamp_period(mut self, timestamp_period: f32) -> Self { self.timestamp_period = timestamp_period; self } #[inline] + #[must_use] pub fn max_clip_distances(mut self, max_clip_distances: u32) -> Self { self.max_clip_distances = max_clip_distances; self } #[inline] + #[must_use] pub fn max_cull_distances(mut self, max_cull_distances: u32) -> Self { self.max_cull_distances = max_cull_distances; self } #[inline] + #[must_use] pub fn max_combined_clip_and_cull_distances( mut self, max_combined_clip_and_cull_distances: u32, @@ -7235,41 +7862,49 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn discrete_queue_priorities(mut self, discrete_queue_priorities: u32) -> Self { self.discrete_queue_priorities = discrete_queue_priorities; self } #[inline] + #[must_use] pub fn point_size_range(mut self, point_size_range: [f32; 2]) -> Self { self.point_size_range = point_size_range; self } #[inline] + #[must_use] pub fn line_width_range(mut self, line_width_range: [f32; 2]) -> Self { self.line_width_range = line_width_range; self } #[inline] + #[must_use] pub fn point_size_granularity(mut self, point_size_granularity: f32) -> Self { self.point_size_granularity = point_size_granularity; self } #[inline] + #[must_use] pub fn line_width_granularity(mut self, line_width_granularity: f32) -> Self { self.line_width_granularity = line_width_granularity; self } #[inline] + #[must_use] pub fn strict_lines(mut self, strict_lines: bool) -> Self { self.strict_lines = strict_lines.into(); self } #[inline] + #[must_use] pub fn standard_sample_locations(mut self, standard_sample_locations: bool) -> Self { self.standard_sample_locations = standard_sample_locations.into(); self } #[inline] + #[must_use] pub fn optimal_buffer_copy_offset_alignment( mut self, optimal_buffer_copy_offset_alignment: DeviceSize, @@ -7278,6 +7913,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn optimal_buffer_copy_row_pitch_alignment( mut self, optimal_buffer_copy_row_pitch_alignment: DeviceSize, @@ -7286,6 +7922,7 @@ impl PhysicalDeviceLimits { self } #[inline] + #[must_use] pub fn non_coherent_atom_size(mut self, non_coherent_atom_size: DeviceSize) -> Self { self.non_coherent_atom_size = non_coherent_atom_size; self @@ -7318,10 +7955,12 @@ unsafe impl<'a> TaggedStructure for SemaphoreCreateInfo<'a> { pub unsafe trait ExtendsSemaphoreCreateInfo {} impl<'a> SemaphoreCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: SemaphoreCreateFlags) -> Self { self.flags = flags; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -7370,25 +8009,30 @@ unsafe impl<'a> TaggedStructure for QueryPoolCreateInfo<'a> { pub unsafe trait ExtendsQueryPoolCreateInfo {} impl<'a> QueryPoolCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: QueryPoolCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn query_type(mut self, query_type: QueryType) -> Self { self.query_type = query_type; self } #[inline] + #[must_use] pub fn query_count(mut self, query_count: u32) -> Self { self.query_count = query_count; self } #[inline] + #[must_use] pub fn pipeline_statistics(mut self, pipeline_statistics: QueryPipelineStatisticFlags) -> Self { self.pipeline_statistics = pipeline_statistics; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -7443,41 +8087,49 @@ unsafe impl<'a> TaggedStructure for FramebufferCreateInfo<'a> { pub unsafe trait ExtendsFramebufferCreateInfo {} impl<'a> FramebufferCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: FramebufferCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn render_pass(mut self, render_pass: RenderPass) -> Self { self.render_pass = render_pass; self } #[inline] + #[must_use] pub fn attachment_count(mut self, attachment_count: u32) -> Self { self.attachment_count = attachment_count; self } #[inline] + #[must_use] pub fn attachments(mut self, attachments: &'a [ImageView]) -> Self { self.attachment_count = attachments.len() as _; self.p_attachments = attachments.as_ptr(); self } #[inline] + #[must_use] pub fn width(mut self, width: u32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: u32) -> Self { self.height = height; self } #[inline] + #[must_use] pub fn layers(mut self, layers: u32) -> Self { self.layers = layers; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -7505,21 +8157,25 @@ pub struct DrawIndirectCommand { } impl DrawIndirectCommand { #[inline] + #[must_use] pub fn vertex_count(mut self, vertex_count: u32) -> Self { self.vertex_count = vertex_count; self } #[inline] + #[must_use] pub fn instance_count(mut self, instance_count: u32) -> Self { self.instance_count = instance_count; self } #[inline] + #[must_use] pub fn first_vertex(mut self, first_vertex: u32) -> Self { self.first_vertex = first_vertex; self } #[inline] + #[must_use] pub fn first_instance(mut self, first_instance: u32) -> Self { self.first_instance = first_instance; self @@ -7538,26 +8194,31 @@ pub struct DrawIndexedIndirectCommand { } impl DrawIndexedIndirectCommand { #[inline] + #[must_use] pub fn index_count(mut self, index_count: u32) -> Self { self.index_count = index_count; self } #[inline] + #[must_use] pub fn instance_count(mut self, instance_count: u32) -> Self { self.instance_count = instance_count; self } #[inline] + #[must_use] pub fn first_index(mut self, first_index: u32) -> Self { self.first_index = first_index; self } #[inline] + #[must_use] pub fn vertex_offset(mut self, vertex_offset: i32) -> Self { self.vertex_offset = vertex_offset; self } #[inline] + #[must_use] pub fn first_instance(mut self, first_instance: u32) -> Self { self.first_instance = first_instance; self @@ -7574,16 +8235,19 @@ pub struct DispatchIndirectCommand { } impl DispatchIndirectCommand { #[inline] + #[must_use] pub fn x(mut self, x: u32) -> Self { self.x = x; self } #[inline] + #[must_use] pub fn y(mut self, y: u32) -> Self { self.y = y; self } #[inline] + #[must_use] pub fn z(mut self, z: u32) -> Self { self.z = z; self @@ -7599,11 +8263,13 @@ pub struct MultiDrawInfoEXT { } impl MultiDrawInfoEXT { #[inline] + #[must_use] pub fn first_vertex(mut self, first_vertex: u32) -> Self { self.first_vertex = first_vertex; self } #[inline] + #[must_use] pub fn vertex_count(mut self, vertex_count: u32) -> Self { self.vertex_count = vertex_count; self @@ -7620,16 +8286,19 @@ pub struct MultiDrawIndexedInfoEXT { } impl MultiDrawIndexedInfoEXT { #[inline] + #[must_use] pub fn first_index(mut self, first_index: u32) -> Self { self.first_index = first_index; self } #[inline] + #[must_use] pub fn index_count(mut self, index_count: u32) -> Self { self.index_count = index_count; self } #[inline] + #[must_use] pub fn vertex_offset(mut self, vertex_offset: i32) -> Self { self.vertex_offset = vertex_offset; self @@ -7674,29 +8343,34 @@ unsafe impl<'a> TaggedStructure for SubmitInfo<'a> { pub unsafe trait ExtendsSubmitInfo {} impl<'a> SubmitInfo<'a> { #[inline] + #[must_use] pub fn wait_semaphores(mut self, wait_semaphores: &'a [Semaphore]) -> Self { self.wait_semaphore_count = wait_semaphores.len() as _; self.p_wait_semaphores = wait_semaphores.as_ptr(); self } #[inline] + #[must_use] pub fn wait_dst_stage_mask(mut self, wait_dst_stage_mask: &'a [PipelineStageFlags]) -> Self { self.wait_semaphore_count = wait_dst_stage_mask.len() as _; self.p_wait_dst_stage_mask = wait_dst_stage_mask.as_ptr(); self } #[inline] + #[must_use] pub fn command_buffers(mut self, command_buffers: &'a [CommandBuffer]) -> Self { self.command_buffer_count = command_buffers.len() as _; self.p_command_buffers = command_buffers.as_ptr(); self } #[inline] + #[must_use] pub fn signal_semaphores(mut self, signal_semaphores: &'a [Semaphore]) -> Self { self.signal_semaphore_count = signal_semaphores.len() as _; self.p_signal_semaphores = signal_semaphores.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -7743,40 +8417,48 @@ impl ::std::default::Default for DisplayPropertiesKHR<'_> { } impl<'a> DisplayPropertiesKHR<'a> { #[inline] + #[must_use] pub fn display(mut self, display: DisplayKHR) -> Self { self.display = display; self } #[inline] + #[must_use] pub fn display_name(mut self, display_name: &'a core::ffi::CStr) -> Self { self.display_name = display_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn display_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.display_name) } #[inline] + #[must_use] pub fn physical_dimensions(mut self, physical_dimensions: Extent2D) -> Self { self.physical_dimensions = physical_dimensions; self } #[inline] + #[must_use] pub fn physical_resolution(mut self, physical_resolution: Extent2D) -> Self { self.physical_resolution = physical_resolution; self } #[inline] + #[must_use] pub fn supported_transforms(mut self, supported_transforms: SurfaceTransformFlagsKHR) -> Self { self.supported_transforms = supported_transforms; self } #[inline] + #[must_use] pub fn plane_reorder_possible(mut self, plane_reorder_possible: bool) -> Self { self.plane_reorder_possible = plane_reorder_possible.into(); self } #[inline] + #[must_use] pub fn persistent_content(mut self, persistent_content: bool) -> Self { self.persistent_content = persistent_content.into(); self @@ -7792,11 +8474,13 @@ pub struct DisplayPlanePropertiesKHR { } impl DisplayPlanePropertiesKHR { #[inline] + #[must_use] pub fn current_display(mut self, current_display: DisplayKHR) -> Self { self.current_display = current_display; self } #[inline] + #[must_use] pub fn current_stack_index(mut self, current_stack_index: u32) -> Self { self.current_stack_index = current_stack_index; self @@ -7812,11 +8496,13 @@ pub struct DisplayModeParametersKHR { } impl DisplayModeParametersKHR { #[inline] + #[must_use] pub fn visible_region(mut self, visible_region: Extent2D) -> Self { self.visible_region = visible_region; self } #[inline] + #[must_use] pub fn refresh_rate(mut self, refresh_rate: u32) -> Self { self.refresh_rate = refresh_rate; self @@ -7832,11 +8518,13 @@ pub struct DisplayModePropertiesKHR { } impl DisplayModePropertiesKHR { #[inline] + #[must_use] pub fn display_mode(mut self, display_mode: DisplayModeKHR) -> Self { self.display_mode = display_mode; self } #[inline] + #[must_use] pub fn parameters(mut self, parameters: DisplayModeParametersKHR) -> Self { self.parameters = parameters; self @@ -7870,11 +8558,13 @@ unsafe impl<'a> TaggedStructure for DisplayModeCreateInfoKHR<'a> { } impl<'a> DisplayModeCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DisplayModeCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn parameters(mut self, parameters: DisplayModeParametersKHR) -> Self { self.parameters = parameters; self @@ -7897,46 +8587,55 @@ pub struct DisplayPlaneCapabilitiesKHR { } impl DisplayPlaneCapabilitiesKHR { #[inline] + #[must_use] pub fn supported_alpha(mut self, supported_alpha: DisplayPlaneAlphaFlagsKHR) -> Self { self.supported_alpha = supported_alpha; self } #[inline] + #[must_use] pub fn min_src_position(mut self, min_src_position: Offset2D) -> Self { self.min_src_position = min_src_position; self } #[inline] + #[must_use] pub fn max_src_position(mut self, max_src_position: Offset2D) -> Self { self.max_src_position = max_src_position; self } #[inline] + #[must_use] pub fn min_src_extent(mut self, min_src_extent: Extent2D) -> Self { self.min_src_extent = min_src_extent; self } #[inline] + #[must_use] pub fn max_src_extent(mut self, max_src_extent: Extent2D) -> Self { self.max_src_extent = max_src_extent; self } #[inline] + #[must_use] pub fn min_dst_position(mut self, min_dst_position: Offset2D) -> Self { self.min_dst_position = min_dst_position; self } #[inline] + #[must_use] pub fn max_dst_position(mut self, max_dst_position: Offset2D) -> Self { self.max_dst_position = max_dst_position; self } #[inline] + #[must_use] pub fn min_dst_extent(mut self, min_dst_extent: Extent2D) -> Self { self.min_dst_extent = min_dst_extent; self } #[inline] + #[must_use] pub fn max_dst_extent(mut self, max_dst_extent: Extent2D) -> Self { self.max_dst_extent = max_dst_extent; self @@ -7982,41 +8681,49 @@ unsafe impl<'a> TaggedStructure for DisplaySurfaceCreateInfoKHR<'a> { } impl<'a> DisplaySurfaceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DisplaySurfaceCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn display_mode(mut self, display_mode: DisplayModeKHR) -> Self { self.display_mode = display_mode; self } #[inline] + #[must_use] pub fn plane_index(mut self, plane_index: u32) -> Self { self.plane_index = plane_index; self } #[inline] + #[must_use] pub fn plane_stack_index(mut self, plane_stack_index: u32) -> Self { self.plane_stack_index = plane_stack_index; self } #[inline] + #[must_use] pub fn transform(mut self, transform: SurfaceTransformFlagsKHR) -> Self { self.transform = transform; self } #[inline] + #[must_use] pub fn global_alpha(mut self, global_alpha: f32) -> Self { self.global_alpha = global_alpha; self } #[inline] + #[must_use] pub fn alpha_mode(mut self, alpha_mode: DisplayPlaneAlphaFlagsKHR) -> Self { self.alpha_mode = alpha_mode; self } #[inline] + #[must_use] pub fn image_extent(mut self, image_extent: Extent2D) -> Self { self.image_extent = image_extent; self @@ -8053,16 +8760,19 @@ unsafe impl<'a> TaggedStructure for DisplayPresentInfoKHR<'a> { unsafe impl ExtendsPresentInfoKHR for DisplayPresentInfoKHR<'_> {} impl<'a> DisplayPresentInfoKHR<'a> { #[inline] + #[must_use] pub fn src_rect(mut self, src_rect: Rect2D) -> Self { self.src_rect = src_rect; self } #[inline] + #[must_use] pub fn dst_rect(mut self, dst_rect: Rect2D) -> Self { self.dst_rect = dst_rect; self } #[inline] + #[must_use] pub fn persistent(mut self, persistent: bool) -> Self { self.persistent = persistent.into(); self @@ -8086,46 +8796,55 @@ pub struct SurfaceCapabilitiesKHR { } impl SurfaceCapabilitiesKHR { #[inline] + #[must_use] pub fn min_image_count(mut self, min_image_count: u32) -> Self { self.min_image_count = min_image_count; self } #[inline] + #[must_use] pub fn max_image_count(mut self, max_image_count: u32) -> Self { self.max_image_count = max_image_count; self } #[inline] + #[must_use] pub fn current_extent(mut self, current_extent: Extent2D) -> Self { self.current_extent = current_extent; self } #[inline] + #[must_use] pub fn min_image_extent(mut self, min_image_extent: Extent2D) -> Self { self.min_image_extent = min_image_extent; self } #[inline] + #[must_use] pub fn max_image_extent(mut self, max_image_extent: Extent2D) -> Self { self.max_image_extent = max_image_extent; self } #[inline] + #[must_use] pub fn max_image_array_layers(mut self, max_image_array_layers: u32) -> Self { self.max_image_array_layers = max_image_array_layers; self } #[inline] + #[must_use] pub fn supported_transforms(mut self, supported_transforms: SurfaceTransformFlagsKHR) -> Self { self.supported_transforms = supported_transforms; self } #[inline] + #[must_use] pub fn current_transform(mut self, current_transform: SurfaceTransformFlagsKHR) -> Self { self.current_transform = current_transform; self } #[inline] + #[must_use] pub fn supported_composite_alpha( mut self, supported_composite_alpha: CompositeAlphaFlagsKHR, @@ -8134,6 +8853,7 @@ impl SurfaceCapabilitiesKHR { self } #[inline] + #[must_use] pub fn supported_usage_flags(mut self, supported_usage_flags: ImageUsageFlags) -> Self { self.supported_usage_flags = supported_usage_flags; self @@ -8167,11 +8887,13 @@ unsafe impl<'a> TaggedStructure for AndroidSurfaceCreateInfoKHR<'a> { } impl<'a> AndroidSurfaceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: AndroidSurfaceCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn window(mut self, window: *mut ANativeWindow) -> Self { self.window = window; self @@ -8205,11 +8927,13 @@ unsafe impl<'a> TaggedStructure for ViSurfaceCreateInfoNN<'a> { } impl<'a> ViSurfaceCreateInfoNN<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ViSurfaceCreateFlagsNN) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn window(mut self, window: *mut c_void) -> Self { self.window = window; self @@ -8245,16 +8969,19 @@ unsafe impl<'a> TaggedStructure for WaylandSurfaceCreateInfoKHR<'a> { } impl<'a> WaylandSurfaceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: WaylandSurfaceCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn display(mut self, display: *mut wl_display) -> Self { self.display = display; self } #[inline] + #[must_use] pub fn surface(mut self, surface: *mut wl_surface) -> Self { self.surface = surface; self @@ -8290,16 +9017,19 @@ unsafe impl<'a> TaggedStructure for Win32SurfaceCreateInfoKHR<'a> { } impl<'a> Win32SurfaceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: Win32SurfaceCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn hinstance(mut self, hinstance: HINSTANCE) -> Self { self.hinstance = hinstance; self } #[inline] + #[must_use] pub fn hwnd(mut self, hwnd: HWND) -> Self { self.hwnd = hwnd; self @@ -8335,16 +9065,19 @@ unsafe impl<'a> TaggedStructure for XlibSurfaceCreateInfoKHR<'a> { } impl<'a> XlibSurfaceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: XlibSurfaceCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn dpy(mut self, dpy: *mut Display) -> Self { self.dpy = dpy; self } #[inline] + #[must_use] pub fn window(mut self, window: Window) -> Self { self.window = window; self @@ -8380,16 +9113,19 @@ unsafe impl<'a> TaggedStructure for XcbSurfaceCreateInfoKHR<'a> { } impl<'a> XcbSurfaceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: XcbSurfaceCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn connection(mut self, connection: *mut xcb_connection_t) -> Self { self.connection = connection; self } #[inline] + #[must_use] pub fn window(mut self, window: xcb_window_t) -> Self { self.window = window; self @@ -8425,16 +9161,19 @@ unsafe impl<'a> TaggedStructure for DirectFBSurfaceCreateInfoEXT<'a> { } impl<'a> DirectFBSurfaceCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DirectFBSurfaceCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn dfb(mut self, dfb: *mut IDirectFB) -> Self { self.dfb = dfb; self } #[inline] + #[must_use] pub fn surface(mut self, surface: *mut IDirectFBSurface) -> Self { self.surface = surface; self @@ -8468,11 +9207,13 @@ unsafe impl<'a> TaggedStructure for ImagePipeSurfaceCreateInfoFUCHSIA<'a> { } impl<'a> ImagePipeSurfaceCreateInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ImagePipeSurfaceCreateFlagsFUCHSIA) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn image_pipe_handle(mut self, image_pipe_handle: zx_handle_t) -> Self { self.image_pipe_handle = image_pipe_handle; self @@ -8506,11 +9247,13 @@ unsafe impl<'a> TaggedStructure for StreamDescriptorSurfaceCreateInfoGGP<'a> { } impl<'a> StreamDescriptorSurfaceCreateInfoGGP<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: StreamDescriptorSurfaceCreateFlagsGGP) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stream_descriptor(mut self, stream_descriptor: GgpStreamDescriptor) -> Self { self.stream_descriptor = stream_descriptor; self @@ -8546,16 +9289,19 @@ unsafe impl<'a> TaggedStructure for ScreenSurfaceCreateInfoQNX<'a> { } impl<'a> ScreenSurfaceCreateInfoQNX<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ScreenSurfaceCreateFlagsQNX) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn context(mut self, context: &'a mut _screen_context) -> Self { self.context = context; self } #[inline] + #[must_use] pub fn window(mut self, window: &'a mut _screen_window) -> Self { self.window = window; self @@ -8571,11 +9317,13 @@ pub struct SurfaceFormatKHR { } impl SurfaceFormatKHR { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn color_space(mut self, color_space: ColorSpaceKHR) -> Self { self.color_space = color_space; self @@ -8638,81 +9386,97 @@ unsafe impl<'a> TaggedStructure for SwapchainCreateInfoKHR<'a> { pub unsafe trait ExtendsSwapchainCreateInfoKHR {} impl<'a> SwapchainCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: SwapchainCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn surface(mut self, surface: SurfaceKHR) -> Self { self.surface = surface; self } #[inline] + #[must_use] pub fn min_image_count(mut self, min_image_count: u32) -> Self { self.min_image_count = min_image_count; self } #[inline] + #[must_use] pub fn image_format(mut self, image_format: Format) -> Self { self.image_format = image_format; self } #[inline] + #[must_use] pub fn image_color_space(mut self, image_color_space: ColorSpaceKHR) -> Self { self.image_color_space = image_color_space; self } #[inline] + #[must_use] pub fn image_extent(mut self, image_extent: Extent2D) -> Self { self.image_extent = image_extent; self } #[inline] + #[must_use] pub fn image_array_layers(mut self, image_array_layers: u32) -> Self { self.image_array_layers = image_array_layers; self } #[inline] + #[must_use] pub fn image_usage(mut self, image_usage: ImageUsageFlags) -> Self { self.image_usage = image_usage; self } #[inline] + #[must_use] pub fn image_sharing_mode(mut self, image_sharing_mode: SharingMode) -> Self { self.image_sharing_mode = image_sharing_mode; self } #[inline] + #[must_use] pub fn queue_family_indices(mut self, queue_family_indices: &'a [u32]) -> Self { self.queue_family_index_count = queue_family_indices.len() as _; self.p_queue_family_indices = queue_family_indices.as_ptr(); self } #[inline] + #[must_use] pub fn pre_transform(mut self, pre_transform: SurfaceTransformFlagsKHR) -> Self { self.pre_transform = pre_transform; self } #[inline] + #[must_use] pub fn composite_alpha(mut self, composite_alpha: CompositeAlphaFlagsKHR) -> Self { self.composite_alpha = composite_alpha; self } #[inline] + #[must_use] pub fn present_mode(mut self, present_mode: PresentModeKHR) -> Self { self.present_mode = present_mode; self } #[inline] + #[must_use] pub fn clipped(mut self, clipped: bool) -> Self { self.clipped = clipped.into(); self } #[inline] + #[must_use] pub fn old_swapchain(mut self, old_swapchain: SwapchainKHR) -> Self { self.old_swapchain = old_swapchain; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -8765,29 +9529,34 @@ unsafe impl<'a> TaggedStructure for PresentInfoKHR<'a> { pub unsafe trait ExtendsPresentInfoKHR {} impl<'a> PresentInfoKHR<'a> { #[inline] + #[must_use] pub fn wait_semaphores(mut self, wait_semaphores: &'a [Semaphore]) -> Self { self.wait_semaphore_count = wait_semaphores.len() as _; self.p_wait_semaphores = wait_semaphores.as_ptr(); self } #[inline] + #[must_use] pub fn swapchains(mut self, swapchains: &'a [SwapchainKHR]) -> Self { self.swapchain_count = swapchains.len() as _; self.p_swapchains = swapchains.as_ptr(); self } #[inline] + #[must_use] pub fn image_indices(mut self, image_indices: &'a [u32]) -> Self { self.swapchain_count = image_indices.len() as _; self.p_image_indices = image_indices.as_ptr(); self } #[inline] + #[must_use] pub fn results(mut self, results: &'a mut [Result]) -> Self { self.swapchain_count = results.len() as _; self.p_results = results.as_mut_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -8845,16 +9614,19 @@ unsafe impl<'a> TaggedStructure for DebugReportCallbackCreateInfoEXT<'a> { unsafe impl ExtendsInstanceCreateInfo for DebugReportCallbackCreateInfoEXT<'_> {} impl<'a> DebugReportCallbackCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DebugReportFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn pfn_callback(mut self, pfn_callback: PFN_vkDebugReportCallbackEXT) -> Self { self.pfn_callback = pfn_callback; self } #[inline] + #[must_use] pub fn user_data(mut self, user_data: *mut c_void) -> Self { self.p_user_data = user_data; self @@ -8889,6 +9661,7 @@ unsafe impl<'a> TaggedStructure for ValidationFlagsEXT<'a> { unsafe impl ExtendsInstanceCreateInfo for ValidationFlagsEXT<'_> {} impl<'a> ValidationFlagsEXT<'a> { #[inline] + #[must_use] pub fn disabled_validation_checks( mut self, disabled_validation_checks: &'a [ValidationCheckEXT], @@ -8931,6 +9704,7 @@ unsafe impl<'a> TaggedStructure for ValidationFeaturesEXT<'a> { unsafe impl ExtendsInstanceCreateInfo for ValidationFeaturesEXT<'_> {} impl<'a> ValidationFeaturesEXT<'a> { #[inline] + #[must_use] pub fn enabled_validation_features( mut self, enabled_validation_features: &'a [ValidationFeatureEnableEXT], @@ -8940,6 +9714,7 @@ impl<'a> ValidationFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn disabled_validation_features( mut self, disabled_validation_features: &'a [ValidationFeatureDisableEXT], @@ -8980,6 +9755,7 @@ unsafe impl ExtendsPipelineRasterizationStateCreateInfo } impl<'a> PipelineRasterizationStateRasterizationOrderAMD<'a> { #[inline] + #[must_use] pub fn rasterization_order(mut self, rasterization_order: RasterizationOrderAMD) -> Self { self.rasterization_order = rasterization_order; self @@ -9015,21 +9791,25 @@ unsafe impl<'a> TaggedStructure for DebugMarkerObjectNameInfoEXT<'a> { } impl<'a> DebugMarkerObjectNameInfoEXT<'a> { #[inline] + #[must_use] pub fn object_type(mut self, object_type: DebugReportObjectTypeEXT) -> Self { self.object_type = object_type; self } #[inline] + #[must_use] pub fn object(mut self, object: u64) -> Self { self.object = object; self } #[inline] + #[must_use] pub fn object_name(mut self, object_name: &'a core::ffi::CStr) -> Self { self.p_object_name = object_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn object_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_object_name) } @@ -9068,21 +9848,25 @@ unsafe impl<'a> TaggedStructure for DebugMarkerObjectTagInfoEXT<'a> { } impl<'a> DebugMarkerObjectTagInfoEXT<'a> { #[inline] + #[must_use] pub fn object_type(mut self, object_type: DebugReportObjectTypeEXT) -> Self { self.object_type = object_type; self } #[inline] + #[must_use] pub fn object(mut self, object: u64) -> Self { self.object = object; self } #[inline] + #[must_use] pub fn tag_name(mut self, tag_name: u64) -> Self { self.tag_name = tag_name; self } #[inline] + #[must_use] pub fn tag(mut self, tag: &'a [u8]) -> Self { self.tag_size = tag.len(); self.p_tag = tag.as_ptr().cast(); @@ -9117,15 +9901,18 @@ unsafe impl<'a> TaggedStructure for DebugMarkerMarkerInfoEXT<'a> { } impl<'a> DebugMarkerMarkerInfoEXT<'a> { #[inline] + #[must_use] pub fn marker_name(mut self, marker_name: &'a core::ffi::CStr) -> Self { self.p_marker_name = marker_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn marker_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_marker_name) } #[inline] + #[must_use] pub fn color(mut self, color: [f32; 4]) -> Self { self.color = color; self @@ -9158,6 +9945,7 @@ unsafe impl<'a> TaggedStructure for DedicatedAllocationImageCreateInfoNV<'a> { unsafe impl ExtendsImageCreateInfo for DedicatedAllocationImageCreateInfoNV<'_> {} impl<'a> DedicatedAllocationImageCreateInfoNV<'a> { #[inline] + #[must_use] pub fn dedicated_allocation(mut self, dedicated_allocation: bool) -> Self { self.dedicated_allocation = dedicated_allocation.into(); self @@ -9190,6 +9978,7 @@ unsafe impl<'a> TaggedStructure for DedicatedAllocationBufferCreateInfoNV<'a> { unsafe impl ExtendsBufferCreateInfo for DedicatedAllocationBufferCreateInfoNV<'_> {} impl<'a> DedicatedAllocationBufferCreateInfoNV<'a> { #[inline] + #[must_use] pub fn dedicated_allocation(mut self, dedicated_allocation: bool) -> Self { self.dedicated_allocation = dedicated_allocation.into(); self @@ -9225,11 +10014,13 @@ unsafe impl<'a> TaggedStructure for DedicatedAllocationMemoryAllocateInfoNV<'a> unsafe impl ExtendsMemoryAllocateInfo for DedicatedAllocationMemoryAllocateInfoNV<'_> {} impl<'a> DedicatedAllocationMemoryAllocateInfoNV<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self @@ -9247,6 +10038,7 @@ pub struct ExternalImageFormatPropertiesNV { } impl ExternalImageFormatPropertiesNV { #[inline] + #[must_use] pub fn image_format_properties( mut self, image_format_properties: ImageFormatProperties, @@ -9255,6 +10047,7 @@ impl ExternalImageFormatPropertiesNV { self } #[inline] + #[must_use] pub fn external_memory_features( mut self, external_memory_features: ExternalMemoryFeatureFlagsNV, @@ -9263,6 +10056,7 @@ impl ExternalImageFormatPropertiesNV { self } #[inline] + #[must_use] pub fn export_from_imported_handle_types( mut self, export_from_imported_handle_types: ExternalMemoryHandleTypeFlagsNV, @@ -9271,6 +10065,7 @@ impl ExternalImageFormatPropertiesNV { self } #[inline] + #[must_use] pub fn compatible_handle_types( mut self, compatible_handle_types: ExternalMemoryHandleTypeFlagsNV, @@ -9306,6 +10101,7 @@ unsafe impl<'a> TaggedStructure for ExternalMemoryImageCreateInfoNV<'a> { unsafe impl ExtendsImageCreateInfo for ExternalMemoryImageCreateInfoNV<'_> {} impl<'a> ExternalMemoryImageCreateInfoNV<'a> { #[inline] + #[must_use] pub fn handle_types(mut self, handle_types: ExternalMemoryHandleTypeFlagsNV) -> Self { self.handle_types = handle_types; self @@ -9338,6 +10134,7 @@ unsafe impl<'a> TaggedStructure for ExportMemoryAllocateInfoNV<'a> { unsafe impl ExtendsMemoryAllocateInfo for ExportMemoryAllocateInfoNV<'_> {} impl<'a> ExportMemoryAllocateInfoNV<'a> { #[inline] + #[must_use] pub fn handle_types(mut self, handle_types: ExternalMemoryHandleTypeFlagsNV) -> Self { self.handle_types = handle_types; self @@ -9372,11 +10169,13 @@ unsafe impl<'a> TaggedStructure for ImportMemoryWin32HandleInfoNV<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportMemoryWin32HandleInfoNV<'_> {} impl<'a> ImportMemoryWin32HandleInfoNV<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlagsNV) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn handle(mut self, handle: HANDLE) -> Self { self.handle = handle; self @@ -9411,11 +10210,13 @@ unsafe impl<'a> TaggedStructure for ExportMemoryWin32HandleInfoNV<'a> { unsafe impl ExtendsMemoryAllocateInfo for ExportMemoryWin32HandleInfoNV<'_> {} impl<'a> ExportMemoryWin32HandleInfoNV<'a> { #[inline] + #[must_use] pub fn attributes(mut self, attributes: &'a SECURITY_ATTRIBUTES) -> Self { self.p_attributes = attributes; self } #[inline] + #[must_use] pub fn dw_access(mut self, dw_access: DWORD) -> Self { self.dw_access = dw_access; self @@ -9461,30 +10262,35 @@ unsafe impl ExtendsSubmitInfo for Win32KeyedMutexAcquireReleaseInfoNV<'_> {} unsafe impl ExtendsSubmitInfo2 for Win32KeyedMutexAcquireReleaseInfoNV<'_> {} impl<'a> Win32KeyedMutexAcquireReleaseInfoNV<'a> { #[inline] + #[must_use] pub fn acquire_syncs(mut self, acquire_syncs: &'a [DeviceMemory]) -> Self { self.acquire_count = acquire_syncs.len() as _; self.p_acquire_syncs = acquire_syncs.as_ptr(); self } #[inline] + #[must_use] pub fn acquire_keys(mut self, acquire_keys: &'a [u64]) -> Self { self.acquire_count = acquire_keys.len() as _; self.p_acquire_keys = acquire_keys.as_ptr(); self } #[inline] + #[must_use] pub fn acquire_timeout_milliseconds(mut self, acquire_timeout_milliseconds: &'a [u32]) -> Self { self.acquire_count = acquire_timeout_milliseconds.len() as _; self.p_acquire_timeout_milliseconds = acquire_timeout_milliseconds.as_ptr(); self } #[inline] + #[must_use] pub fn release_syncs(mut self, release_syncs: &'a [DeviceMemory]) -> Self { self.release_count = release_syncs.len() as _; self.p_release_syncs = release_syncs.as_ptr(); self } #[inline] + #[must_use] pub fn release_keys(mut self, release_keys: &'a [u64]) -> Self { self.release_count = release_keys.len() as _; self.p_release_keys = release_keys.as_ptr(); @@ -9520,6 +10326,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDeviceGeneratedComm unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDeviceGeneratedCommandsFeaturesNV<'_> {} impl<'a> PhysicalDeviceDeviceGeneratedCommandsFeaturesNV<'a> { #[inline] + #[must_use] pub fn device_generated_commands(mut self, device_generated_commands: bool) -> Self { self.device_generated_commands = device_generated_commands.into(); self @@ -9561,11 +10368,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV<'_> {} impl<'a> PhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV<'a> { #[inline] + #[must_use] pub fn device_generated_compute(mut self, device_generated_compute: bool) -> Self { self.device_generated_compute = device_generated_compute.into(); self } #[inline] + #[must_use] pub fn device_generated_compute_pipelines( mut self, device_generated_compute_pipelines: bool, @@ -9574,6 +10383,7 @@ impl<'a> PhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV<'a> { self } #[inline] + #[must_use] pub fn device_generated_compute_capture_replay( mut self, device_generated_compute_capture_replay: bool, @@ -9610,6 +10420,7 @@ unsafe impl<'a> TaggedStructure for DevicePrivateDataCreateInfo<'a> { unsafe impl ExtendsDeviceCreateInfo for DevicePrivateDataCreateInfo<'_> {} impl<'a> DevicePrivateDataCreateInfo<'a> { #[inline] + #[must_use] pub fn private_data_slot_request_count(mut self, private_data_slot_request_count: u32) -> Self { self.private_data_slot_request_count = private_data_slot_request_count; self @@ -9641,6 +10452,7 @@ unsafe impl<'a> TaggedStructure for PrivateDataSlotCreateInfo<'a> { } impl<'a> PrivateDataSlotCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PrivateDataSlotCreateFlags) -> Self { self.flags = flags; self @@ -9674,6 +10486,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePrivateDataFeatures unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePrivateDataFeatures<'_> {} impl<'a> PhysicalDevicePrivateDataFeatures<'a> { #[inline] + #[must_use] pub fn private_data(mut self, private_data: bool) -> Self { self.private_data = private_data.into(); self @@ -9726,16 +10539,19 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV<'a> { #[inline] + #[must_use] pub fn max_graphics_shader_group_count(mut self, max_graphics_shader_group_count: u32) -> Self { self.max_graphics_shader_group_count = max_graphics_shader_group_count; self } #[inline] + #[must_use] pub fn max_indirect_sequence_count(mut self, max_indirect_sequence_count: u32) -> Self { self.max_indirect_sequence_count = max_indirect_sequence_count; self } #[inline] + #[must_use] pub fn max_indirect_commands_token_count( mut self, max_indirect_commands_token_count: u32, @@ -9744,6 +10560,7 @@ impl<'a> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn max_indirect_commands_stream_count( mut self, max_indirect_commands_stream_count: u32, @@ -9752,6 +10569,7 @@ impl<'a> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn max_indirect_commands_token_offset( mut self, max_indirect_commands_token_offset: u32, @@ -9760,6 +10578,7 @@ impl<'a> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn max_indirect_commands_stream_stride( mut self, max_indirect_commands_stream_stride: u32, @@ -9768,6 +10587,7 @@ impl<'a> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn min_sequences_count_buffer_offset_alignment( mut self, min_sequences_count_buffer_offset_alignment: u32, @@ -9777,6 +10597,7 @@ impl<'a> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn min_sequences_index_buffer_offset_alignment( mut self, min_sequences_index_buffer_offset_alignment: u32, @@ -9786,6 +10607,7 @@ impl<'a> PhysicalDeviceDeviceGeneratedCommandsPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn min_indirect_commands_buffer_offset_alignment( mut self, min_indirect_commands_buffer_offset_alignment: u32, @@ -9822,6 +10644,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMultiDrawPropertiesEXT<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMultiDrawPropertiesEXT<'_> {} impl<'a> PhysicalDeviceMultiDrawPropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_multi_draw_count(mut self, max_multi_draw_count: u32) -> Self { self.max_multi_draw_count = max_multi_draw_count; self @@ -9859,12 +10682,14 @@ unsafe impl<'a> TaggedStructure for GraphicsShaderGroupCreateInfoNV<'a> { } impl<'a> GraphicsShaderGroupCreateInfoNV<'a> { #[inline] + #[must_use] pub fn stages(mut self, stages: &'a [PipelineShaderStageCreateInfo<'a>]) -> Self { self.stage_count = stages.len() as _; self.p_stages = stages.as_ptr(); self } #[inline] + #[must_use] pub fn vertex_input_state( mut self, vertex_input_state: &'a PipelineVertexInputStateCreateInfo<'a>, @@ -9873,6 +10698,7 @@ impl<'a> GraphicsShaderGroupCreateInfoNV<'a> { self } #[inline] + #[must_use] pub fn tessellation_state( mut self, tessellation_state: &'a PipelineTessellationStateCreateInfo<'a>, @@ -9915,12 +10741,14 @@ unsafe impl<'a> TaggedStructure for GraphicsPipelineShaderGroupsCreateInfoNV<'a> unsafe impl ExtendsGraphicsPipelineCreateInfo for GraphicsPipelineShaderGroupsCreateInfoNV<'_> {} impl<'a> GraphicsPipelineShaderGroupsCreateInfoNV<'a> { #[inline] + #[must_use] pub fn groups(mut self, groups: &'a [GraphicsShaderGroupCreateInfoNV<'a>]) -> Self { self.group_count = groups.len() as _; self.p_groups = groups.as_ptr(); self } #[inline] + #[must_use] pub fn pipelines(mut self, pipelines: &'a [Pipeline]) -> Self { self.pipeline_count = pipelines.len() as _; self.p_pipelines = pipelines.as_ptr(); @@ -9936,6 +10764,7 @@ pub struct BindShaderGroupIndirectCommandNV { } impl BindShaderGroupIndirectCommandNV { #[inline] + #[must_use] pub fn group_index(mut self, group_index: u32) -> Self { self.group_index = group_index; self @@ -9952,16 +10781,19 @@ pub struct BindIndexBufferIndirectCommandNV { } impl BindIndexBufferIndirectCommandNV { #[inline] + #[must_use] pub fn buffer_address(mut self, buffer_address: DeviceAddress) -> Self { self.buffer_address = buffer_address; self } #[inline] + #[must_use] pub fn size(mut self, size: u32) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn index_type(mut self, index_type: IndexType) -> Self { self.index_type = index_type; self @@ -9978,16 +10810,19 @@ pub struct BindVertexBufferIndirectCommandNV { } impl BindVertexBufferIndirectCommandNV { #[inline] + #[must_use] pub fn buffer_address(mut self, buffer_address: DeviceAddress) -> Self { self.buffer_address = buffer_address; self } #[inline] + #[must_use] pub fn size(mut self, size: u32) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn stride(mut self, stride: u32) -> Self { self.stride = stride; self @@ -10002,6 +10837,7 @@ pub struct SetStateFlagsIndirectCommandNV { } impl SetStateFlagsIndirectCommandNV { #[inline] + #[must_use] pub fn data(mut self, data: u32) -> Self { self.data = data; self @@ -10017,11 +10853,13 @@ pub struct IndirectCommandsStreamNV { } impl IndirectCommandsStreamNV { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self @@ -10077,31 +10915,37 @@ unsafe impl<'a> TaggedStructure for IndirectCommandsLayoutTokenNV<'a> { } impl<'a> IndirectCommandsLayoutTokenNV<'a> { #[inline] + #[must_use] pub fn token_type(mut self, token_type: IndirectCommandsTokenTypeNV) -> Self { self.token_type = token_type; self } #[inline] + #[must_use] pub fn stream(mut self, stream: u32) -> Self { self.stream = stream; self } #[inline] + #[must_use] pub fn offset(mut self, offset: u32) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn vertex_binding_unit(mut self, vertex_binding_unit: u32) -> Self { self.vertex_binding_unit = vertex_binding_unit; self } #[inline] + #[must_use] pub fn vertex_dynamic_stride(mut self, vertex_dynamic_stride: bool) -> Self { self.vertex_dynamic_stride = vertex_dynamic_stride.into(); self } #[inline] + #[must_use] pub fn pushconstant_pipeline_layout( mut self, pushconstant_pipeline_layout: PipelineLayout, @@ -10110,6 +10954,7 @@ impl<'a> IndirectCommandsLayoutTokenNV<'a> { self } #[inline] + #[must_use] pub fn pushconstant_shader_stage_flags( mut self, pushconstant_shader_stage_flags: ShaderStageFlags, @@ -10118,27 +10963,32 @@ impl<'a> IndirectCommandsLayoutTokenNV<'a> { self } #[inline] + #[must_use] pub fn pushconstant_offset(mut self, pushconstant_offset: u32) -> Self { self.pushconstant_offset = pushconstant_offset; self } #[inline] + #[must_use] pub fn pushconstant_size(mut self, pushconstant_size: u32) -> Self { self.pushconstant_size = pushconstant_size; self } #[inline] + #[must_use] pub fn indirect_state_flags(mut self, indirect_state_flags: IndirectStateFlagsNV) -> Self { self.indirect_state_flags = indirect_state_flags; self } #[inline] + #[must_use] pub fn index_types(mut self, index_types: &'a [IndexType]) -> Self { self.index_type_count = index_types.len() as _; self.p_index_types = index_types.as_ptr(); self } #[inline] + #[must_use] pub fn index_type_values(mut self, index_type_values: &'a [u32]) -> Self { self.index_type_count = index_type_values.len() as _; self.p_index_type_values = index_type_values.as_ptr(); @@ -10181,22 +11031,26 @@ unsafe impl<'a> TaggedStructure for IndirectCommandsLayoutCreateInfoNV<'a> { } impl<'a> IndirectCommandsLayoutCreateInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: IndirectCommandsLayoutUsageFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn pipeline_bind_point(mut self, pipeline_bind_point: PipelineBindPoint) -> Self { self.pipeline_bind_point = pipeline_bind_point; self } #[inline] + #[must_use] pub fn tokens(mut self, tokens: &'a [IndirectCommandsLayoutTokenNV<'a>]) -> Self { self.token_count = tokens.len() as _; self.p_tokens = tokens.as_ptr(); self } #[inline] + #[must_use] pub fn stream_strides(mut self, stream_strides: &'a [u32]) -> Self { self.stream_count = stream_strides.len() as _; self.p_stream_strides = stream_strides.as_ptr(); @@ -10253,16 +11107,19 @@ unsafe impl<'a> TaggedStructure for GeneratedCommandsInfoNV<'a> { } impl<'a> GeneratedCommandsInfoNV<'a> { #[inline] + #[must_use] pub fn pipeline_bind_point(mut self, pipeline_bind_point: PipelineBindPoint) -> Self { self.pipeline_bind_point = pipeline_bind_point; self } #[inline] + #[must_use] pub fn pipeline(mut self, pipeline: Pipeline) -> Self { self.pipeline = pipeline; self } #[inline] + #[must_use] pub fn indirect_commands_layout( mut self, indirect_commands_layout: IndirectCommandsLayoutNV, @@ -10271,47 +11128,56 @@ impl<'a> GeneratedCommandsInfoNV<'a> { self } #[inline] + #[must_use] pub fn streams(mut self, streams: &'a [IndirectCommandsStreamNV]) -> Self { self.stream_count = streams.len() as _; self.p_streams = streams.as_ptr(); self } #[inline] + #[must_use] pub fn sequences_count(mut self, sequences_count: u32) -> Self { self.sequences_count = sequences_count; self } #[inline] + #[must_use] pub fn preprocess_buffer(mut self, preprocess_buffer: Buffer) -> Self { self.preprocess_buffer = preprocess_buffer; self } #[inline] + #[must_use] pub fn preprocess_offset(mut self, preprocess_offset: DeviceSize) -> Self { self.preprocess_offset = preprocess_offset; self } #[inline] + #[must_use] pub fn preprocess_size(mut self, preprocess_size: DeviceSize) -> Self { self.preprocess_size = preprocess_size; self } #[inline] + #[must_use] pub fn sequences_count_buffer(mut self, sequences_count_buffer: Buffer) -> Self { self.sequences_count_buffer = sequences_count_buffer; self } #[inline] + #[must_use] pub fn sequences_count_offset(mut self, sequences_count_offset: DeviceSize) -> Self { self.sequences_count_offset = sequences_count_offset; self } #[inline] + #[must_use] pub fn sequences_index_buffer(mut self, sequences_index_buffer: Buffer) -> Self { self.sequences_index_buffer = sequences_index_buffer; self } #[inline] + #[must_use] pub fn sequences_index_offset(mut self, sequences_index_offset: DeviceSize) -> Self { self.sequences_index_offset = sequences_index_offset; self @@ -10350,16 +11216,19 @@ unsafe impl<'a> TaggedStructure for GeneratedCommandsMemoryRequirementsInfoNV<'a } impl<'a> GeneratedCommandsMemoryRequirementsInfoNV<'a> { #[inline] + #[must_use] pub fn pipeline_bind_point(mut self, pipeline_bind_point: PipelineBindPoint) -> Self { self.pipeline_bind_point = pipeline_bind_point; self } #[inline] + #[must_use] pub fn pipeline(mut self, pipeline: Pipeline) -> Self { self.pipeline = pipeline; self } #[inline] + #[must_use] pub fn indirect_commands_layout( mut self, indirect_commands_layout: IndirectCommandsLayoutNV, @@ -10368,6 +11237,7 @@ impl<'a> GeneratedCommandsMemoryRequirementsInfoNV<'a> { self } #[inline] + #[must_use] pub fn max_sequences_count(mut self, max_sequences_count: u32) -> Self { self.max_sequences_count = max_sequences_count; self @@ -10401,11 +11271,13 @@ unsafe impl<'a> TaggedStructure for PipelineIndirectDeviceAddressInfoNV<'a> { } impl<'a> PipelineIndirectDeviceAddressInfoNV<'a> { #[inline] + #[must_use] pub fn pipeline_bind_point(mut self, pipeline_bind_point: PipelineBindPoint) -> Self { self.pipeline_bind_point = pipeline_bind_point; self } #[inline] + #[must_use] pub fn pipeline(mut self, pipeline: Pipeline) -> Self { self.pipeline = pipeline; self @@ -10420,6 +11292,7 @@ pub struct BindPipelineIndirectCommandNV { } impl BindPipelineIndirectCommandNV { #[inline] + #[must_use] pub fn pipeline_address(mut self, pipeline_address: DeviceAddress) -> Self { self.pipeline_address = pipeline_address; self @@ -10453,10 +11326,12 @@ unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFeatures2<'_> {} pub unsafe trait ExtendsPhysicalDeviceFeatures2 {} impl<'a> PhysicalDeviceFeatures2<'a> { #[inline] + #[must_use] pub fn features(mut self, features: PhysicalDeviceFeatures) -> Self { self.features = features; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -10499,10 +11374,12 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceProperties2<'a> { pub unsafe trait ExtendsPhysicalDeviceProperties2 {} impl<'a> PhysicalDeviceProperties2<'a> { #[inline] + #[must_use] pub fn properties(mut self, properties: PhysicalDeviceProperties) -> Self { self.properties = properties; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -10545,10 +11422,12 @@ unsafe impl<'a> TaggedStructure for FormatProperties2<'a> { pub unsafe trait ExtendsFormatProperties2 {} impl<'a> FormatProperties2<'a> { #[inline] + #[must_use] pub fn format_properties(mut self, format_properties: FormatProperties) -> Self { self.format_properties = format_properties; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -10591,6 +11470,7 @@ unsafe impl<'a> TaggedStructure for ImageFormatProperties2<'a> { pub unsafe trait ExtendsImageFormatProperties2 {} impl<'a> ImageFormatProperties2<'a> { #[inline] + #[must_use] pub fn image_format_properties( mut self, image_format_properties: ImageFormatProperties, @@ -10598,6 +11478,7 @@ impl<'a> ImageFormatProperties2<'a> { self.image_format_properties = image_format_properties; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -10648,30 +11529,36 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceImageFormatInfo2<'a> { pub unsafe trait ExtendsPhysicalDeviceImageFormatInfo2 {} impl<'a> PhysicalDeviceImageFormatInfo2<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn ty(mut self, ty: ImageType) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn tiling(mut self, tiling: ImageTiling) -> Self { self.tiling = tiling; self } #[inline] + #[must_use] pub fn usage(mut self, usage: ImageUsageFlags) -> Self { self.usage = usage; self } #[inline] + #[must_use] pub fn flags(mut self, flags: ImageCreateFlags) -> Self { self.flags = flags; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -10714,6 +11601,7 @@ unsafe impl<'a> TaggedStructure for QueueFamilyProperties2<'a> { pub unsafe trait ExtendsQueueFamilyProperties2 {} impl<'a> QueueFamilyProperties2<'a> { #[inline] + #[must_use] pub fn queue_family_properties( mut self, queue_family_properties: QueueFamilyProperties, @@ -10721,6 +11609,7 @@ impl<'a> QueueFamilyProperties2<'a> { self.queue_family_properties = queue_family_properties; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -10763,10 +11652,12 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMemoryProperties2<'a> { pub unsafe trait ExtendsPhysicalDeviceMemoryProperties2 {} impl<'a> PhysicalDeviceMemoryProperties2<'a> { #[inline] + #[must_use] pub fn memory_properties(mut self, memory_properties: PhysicalDeviceMemoryProperties) -> Self { self.memory_properties = memory_properties; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -10808,6 +11699,7 @@ unsafe impl<'a> TaggedStructure for SparseImageFormatProperties2<'a> { } impl<'a> SparseImageFormatProperties2<'a> { #[inline] + #[must_use] pub fn properties(mut self, properties: SparseImageFormatProperties) -> Self { self.properties = properties; self @@ -10847,26 +11739,31 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSparseImageFormatInfo2<'a> { } impl<'a> PhysicalDeviceSparseImageFormatInfo2<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn ty(mut self, ty: ImageType) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn samples(mut self, samples: SampleCountFlags) -> Self { self.samples = samples; self } #[inline] + #[must_use] pub fn usage(mut self, usage: ImageUsageFlags) -> Self { self.usage = usage; self } #[inline] + #[must_use] pub fn tiling(mut self, tiling: ImageTiling) -> Self { self.tiling = tiling; self @@ -10900,6 +11797,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDevicePushDescriptorPropertiesKHR<'a unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDevicePushDescriptorPropertiesKHR<'_> {} impl<'a> PhysicalDevicePushDescriptorPropertiesKHR<'a> { #[inline] + #[must_use] pub fn max_push_descriptors(mut self, max_push_descriptors: u32) -> Self { self.max_push_descriptors = max_push_descriptors; self @@ -10917,21 +11815,25 @@ pub struct ConformanceVersion { } impl ConformanceVersion { #[inline] + #[must_use] pub fn major(mut self, major: u8) -> Self { self.major = major; self } #[inline] + #[must_use] pub fn minor(mut self, minor: u8) -> Self { self.minor = minor; self } #[inline] + #[must_use] pub fn subminor(mut self, subminor: u8) -> Self { self.subminor = subminor; self } #[inline] + #[must_use] pub fn patch(mut self, patch: u8) -> Self { self.patch = patch; self @@ -10982,6 +11884,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceDriverProperties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceDriverProperties<'_> {} impl<'a> PhysicalDeviceDriverProperties<'a> { #[inline] + #[must_use] pub fn driver_id(mut self, driver_id: DriverId) -> Self { self.driver_id = driver_id; self @@ -11013,6 +11916,7 @@ impl<'a> PhysicalDeviceDriverProperties<'a> { wrap_c_str_slice_until_nul(&self.driver_info) } #[inline] + #[must_use] pub fn conformance_version(mut self, conformance_version: ConformanceVersion) -> Self { self.conformance_version = conformance_version; self @@ -11047,6 +11951,7 @@ unsafe impl<'a> TaggedStructure for PresentRegionsKHR<'a> { unsafe impl ExtendsPresentInfoKHR for PresentRegionsKHR<'_> {} impl<'a> PresentRegionsKHR<'a> { #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [PresentRegionKHR<'a>]) -> Self { self.swapchain_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -11074,6 +11979,7 @@ impl ::std::default::Default for PresentRegionKHR<'_> { } impl<'a> PresentRegionKHR<'a> { #[inline] + #[must_use] pub fn rectangles(mut self, rectangles: &'a [RectLayerKHR]) -> Self { self.rectangle_count = rectangles.len() as _; self.p_rectangles = rectangles.as_ptr(); @@ -11091,16 +11997,19 @@ pub struct RectLayerKHR { } impl RectLayerKHR { #[inline] + #[must_use] pub fn offset(mut self, offset: Offset2D) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent2D) -> Self { self.extent = extent; self } #[inline] + #[must_use] pub fn layer(mut self, layer: u32) -> Self { self.layer = layer; self @@ -11136,6 +12045,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceVariablePointersFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceVariablePointersFeatures<'_> {} impl<'a> PhysicalDeviceVariablePointersFeatures<'a> { #[inline] + #[must_use] pub fn variable_pointers_storage_buffer( mut self, variable_pointers_storage_buffer: bool, @@ -11144,6 +12054,7 @@ impl<'a> PhysicalDeviceVariablePointersFeatures<'a> { self } #[inline] + #[must_use] pub fn variable_pointers(mut self, variable_pointers: bool) -> Self { self.variable_pointers = variable_pointers.into(); self @@ -11160,6 +12071,7 @@ pub struct ExternalMemoryProperties { } impl ExternalMemoryProperties { #[inline] + #[must_use] pub fn external_memory_features( mut self, external_memory_features: ExternalMemoryFeatureFlags, @@ -11168,6 +12080,7 @@ impl ExternalMemoryProperties { self } #[inline] + #[must_use] pub fn export_from_imported_handle_types( mut self, export_from_imported_handle_types: ExternalMemoryHandleTypeFlags, @@ -11176,6 +12089,7 @@ impl ExternalMemoryProperties { self } #[inline] + #[must_use] pub fn compatible_handle_types( mut self, compatible_handle_types: ExternalMemoryHandleTypeFlags, @@ -11211,6 +12125,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceExternalImageFormatInfo<'a> { unsafe impl ExtendsPhysicalDeviceImageFormatInfo2 for PhysicalDeviceExternalImageFormatInfo<'_> {} impl<'a> PhysicalDeviceExternalImageFormatInfo<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -11243,6 +12158,7 @@ unsafe impl<'a> TaggedStructure for ExternalImageFormatProperties<'a> { unsafe impl ExtendsImageFormatProperties2 for ExternalImageFormatProperties<'_> {} impl<'a> ExternalImageFormatProperties<'a> { #[inline] + #[must_use] pub fn external_memory_properties( mut self, external_memory_properties: ExternalMemoryProperties, @@ -11282,20 +12198,24 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceExternalBufferInfo<'a> { pub unsafe trait ExtendsPhysicalDeviceExternalBufferInfo {} impl<'a> PhysicalDeviceExternalBufferInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: BufferCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn usage(mut self, usage: BufferUsageFlags) -> Self { self.usage = usage; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -11340,6 +12260,7 @@ unsafe impl<'a> TaggedStructure for ExternalBufferProperties<'a> { } impl<'a> ExternalBufferProperties<'a> { #[inline] + #[must_use] pub fn external_memory_properties( mut self, external_memory_properties: ExternalMemoryProperties, @@ -11383,26 +12304,31 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceIDProperties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceIDProperties<'_> {} impl<'a> PhysicalDeviceIDProperties<'a> { #[inline] + #[must_use] pub fn device_uuid(mut self, device_uuid: [u8; UUID_SIZE]) -> Self { self.device_uuid = device_uuid; self } #[inline] + #[must_use] pub fn driver_uuid(mut self, driver_uuid: [u8; UUID_SIZE]) -> Self { self.driver_uuid = driver_uuid; self } #[inline] + #[must_use] pub fn device_luid(mut self, device_luid: [u8; LUID_SIZE]) -> Self { self.device_luid = device_luid; self } #[inline] + #[must_use] pub fn device_node_mask(mut self, device_node_mask: u32) -> Self { self.device_node_mask = device_node_mask; self } #[inline] + #[must_use] pub fn device_luid_valid(mut self, device_luid_valid: bool) -> Self { self.device_luid_valid = device_luid_valid.into(); self @@ -11435,6 +12361,7 @@ unsafe impl<'a> TaggedStructure for ExternalMemoryImageCreateInfo<'a> { unsafe impl ExtendsImageCreateInfo for ExternalMemoryImageCreateInfo<'_> {} impl<'a> ExternalMemoryImageCreateInfo<'a> { #[inline] + #[must_use] pub fn handle_types(mut self, handle_types: ExternalMemoryHandleTypeFlags) -> Self { self.handle_types = handle_types; self @@ -11467,6 +12394,7 @@ unsafe impl<'a> TaggedStructure for ExternalMemoryBufferCreateInfo<'a> { unsafe impl ExtendsBufferCreateInfo for ExternalMemoryBufferCreateInfo<'_> {} impl<'a> ExternalMemoryBufferCreateInfo<'a> { #[inline] + #[must_use] pub fn handle_types(mut self, handle_types: ExternalMemoryHandleTypeFlags) -> Self { self.handle_types = handle_types; self @@ -11499,6 +12427,7 @@ unsafe impl<'a> TaggedStructure for ExportMemoryAllocateInfo<'a> { unsafe impl ExtendsMemoryAllocateInfo for ExportMemoryAllocateInfo<'_> {} impl<'a> ExportMemoryAllocateInfo<'a> { #[inline] + #[must_use] pub fn handle_types(mut self, handle_types: ExternalMemoryHandleTypeFlags) -> Self { self.handle_types = handle_types; self @@ -11535,16 +12464,19 @@ unsafe impl<'a> TaggedStructure for ImportMemoryWin32HandleInfoKHR<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportMemoryWin32HandleInfoKHR<'_> {} impl<'a> ImportMemoryWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn handle(mut self, handle: HANDLE) -> Self { self.handle = handle; self } #[inline] + #[must_use] pub fn name(mut self, name: LPCWSTR) -> Self { self.name = name; self @@ -11581,16 +12513,19 @@ unsafe impl<'a> TaggedStructure for ExportMemoryWin32HandleInfoKHR<'a> { unsafe impl ExtendsMemoryAllocateInfo for ExportMemoryWin32HandleInfoKHR<'_> {} impl<'a> ExportMemoryWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn attributes(mut self, attributes: &'a SECURITY_ATTRIBUTES) -> Self { self.p_attributes = attributes; self } #[inline] + #[must_use] pub fn dw_access(mut self, dw_access: DWORD) -> Self { self.dw_access = dw_access; self } #[inline] + #[must_use] pub fn name(mut self, name: LPCWSTR) -> Self { self.name = name; self @@ -11625,11 +12560,13 @@ unsafe impl<'a> TaggedStructure for ImportMemoryZirconHandleInfoFUCHSIA<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportMemoryZirconHandleInfoFUCHSIA<'_> {} impl<'a> ImportMemoryZirconHandleInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn handle(mut self, handle: zx_handle_t) -> Self { self.handle = handle; self @@ -11661,6 +12598,7 @@ unsafe impl<'a> TaggedStructure for MemoryZirconHandlePropertiesFUCHSIA<'a> { } impl<'a> MemoryZirconHandlePropertiesFUCHSIA<'a> { #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self @@ -11694,11 +12632,13 @@ unsafe impl<'a> TaggedStructure for MemoryGetZirconHandleInfoFUCHSIA<'a> { } impl<'a> MemoryGetZirconHandleInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -11730,6 +12670,7 @@ unsafe impl<'a> TaggedStructure for MemoryWin32HandlePropertiesKHR<'a> { } impl<'a> MemoryWin32HandlePropertiesKHR<'a> { #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self @@ -11763,11 +12704,13 @@ unsafe impl<'a> TaggedStructure for MemoryGetWin32HandleInfoKHR<'a> { } impl<'a> MemoryGetWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -11802,11 +12745,13 @@ unsafe impl<'a> TaggedStructure for ImportMemoryFdInfoKHR<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportMemoryFdInfoKHR<'_> {} impl<'a> ImportMemoryFdInfoKHR<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn fd(mut self, fd: c_int) -> Self { self.fd = fd; self @@ -11838,6 +12783,7 @@ unsafe impl<'a> TaggedStructure for MemoryFdPropertiesKHR<'a> { } impl<'a> MemoryFdPropertiesKHR<'a> { #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self @@ -11871,11 +12817,13 @@ unsafe impl<'a> TaggedStructure for MemoryGetFdInfoKHR<'a> { } impl<'a> MemoryGetFdInfoKHR<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -11921,30 +12869,35 @@ unsafe impl ExtendsSubmitInfo for Win32KeyedMutexAcquireReleaseInfoKHR<'_> {} unsafe impl ExtendsSubmitInfo2 for Win32KeyedMutexAcquireReleaseInfoKHR<'_> {} impl<'a> Win32KeyedMutexAcquireReleaseInfoKHR<'a> { #[inline] + #[must_use] pub fn acquire_syncs(mut self, acquire_syncs: &'a [DeviceMemory]) -> Self { self.acquire_count = acquire_syncs.len() as _; self.p_acquire_syncs = acquire_syncs.as_ptr(); self } #[inline] + #[must_use] pub fn acquire_keys(mut self, acquire_keys: &'a [u64]) -> Self { self.acquire_count = acquire_keys.len() as _; self.p_acquire_keys = acquire_keys.as_ptr(); self } #[inline] + #[must_use] pub fn acquire_timeouts(mut self, acquire_timeouts: &'a [u32]) -> Self { self.acquire_count = acquire_timeouts.len() as _; self.p_acquire_timeouts = acquire_timeouts.as_ptr(); self } #[inline] + #[must_use] pub fn release_syncs(mut self, release_syncs: &'a [DeviceMemory]) -> Self { self.release_count = release_syncs.len() as _; self.p_release_syncs = release_syncs.as_ptr(); self } #[inline] + #[must_use] pub fn release_keys(mut self, release_keys: &'a [u64]) -> Self { self.release_count = release_keys.len() as _; self.p_release_keys = release_keys.as_ptr(); @@ -11978,10 +12931,12 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceExternalSemaphoreInfo<'a> { pub unsafe trait ExtendsPhysicalDeviceExternalSemaphoreInfo {} impl<'a> PhysicalDeviceExternalSemaphoreInfo<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_type = handle_type; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -12030,6 +12985,7 @@ unsafe impl<'a> TaggedStructure for ExternalSemaphoreProperties<'a> { } impl<'a> ExternalSemaphoreProperties<'a> { #[inline] + #[must_use] pub fn export_from_imported_handle_types( mut self, export_from_imported_handle_types: ExternalSemaphoreHandleTypeFlags, @@ -12038,6 +12994,7 @@ impl<'a> ExternalSemaphoreProperties<'a> { self } #[inline] + #[must_use] pub fn compatible_handle_types( mut self, compatible_handle_types: ExternalSemaphoreHandleTypeFlags, @@ -12046,6 +13003,7 @@ impl<'a> ExternalSemaphoreProperties<'a> { self } #[inline] + #[must_use] pub fn external_semaphore_features( mut self, external_semaphore_features: ExternalSemaphoreFeatureFlags, @@ -12081,6 +13039,7 @@ unsafe impl<'a> TaggedStructure for ExportSemaphoreCreateInfo<'a> { unsafe impl ExtendsSemaphoreCreateInfo for ExportSemaphoreCreateInfo<'_> {} impl<'a> ExportSemaphoreCreateInfo<'a> { #[inline] + #[must_use] pub fn handle_types(mut self, handle_types: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_types = handle_types; self @@ -12120,26 +13079,31 @@ unsafe impl<'a> TaggedStructure for ImportSemaphoreWin32HandleInfoKHR<'a> { } impl<'a> ImportSemaphoreWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn flags(mut self, flags: SemaphoreImportFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn handle(mut self, handle: HANDLE) -> Self { self.handle = handle; self } #[inline] + #[must_use] pub fn name(mut self, name: LPCWSTR) -> Self { self.name = name; self @@ -12176,16 +13140,19 @@ unsafe impl<'a> TaggedStructure for ExportSemaphoreWin32HandleInfoKHR<'a> { unsafe impl ExtendsSemaphoreCreateInfo for ExportSemaphoreWin32HandleInfoKHR<'_> {} impl<'a> ExportSemaphoreWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn attributes(mut self, attributes: &'a SECURITY_ATTRIBUTES) -> Self { self.p_attributes = attributes; self } #[inline] + #[must_use] pub fn dw_access(mut self, dw_access: DWORD) -> Self { self.dw_access = dw_access; self } #[inline] + #[must_use] pub fn name(mut self, name: LPCWSTR) -> Self { self.name = name; self @@ -12224,12 +13191,14 @@ unsafe impl<'a> TaggedStructure for D3D12FenceSubmitInfoKHR<'a> { unsafe impl ExtendsSubmitInfo for D3D12FenceSubmitInfoKHR<'_> {} impl<'a> D3D12FenceSubmitInfoKHR<'a> { #[inline] + #[must_use] pub fn wait_semaphore_values(mut self, wait_semaphore_values: &'a [u64]) -> Self { self.wait_semaphore_values_count = wait_semaphore_values.len() as _; self.p_wait_semaphore_values = wait_semaphore_values.as_ptr(); self } #[inline] + #[must_use] pub fn signal_semaphore_values(mut self, signal_semaphore_values: &'a [u64]) -> Self { self.signal_semaphore_values_count = signal_semaphore_values.len() as _; self.p_signal_semaphore_values = signal_semaphore_values.as_ptr(); @@ -12264,11 +13233,13 @@ unsafe impl<'a> TaggedStructure for SemaphoreGetWin32HandleInfoKHR<'a> { } impl<'a> SemaphoreGetWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -12306,21 +13277,25 @@ unsafe impl<'a> TaggedStructure for ImportSemaphoreFdInfoKHR<'a> { } impl<'a> ImportSemaphoreFdInfoKHR<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn flags(mut self, flags: SemaphoreImportFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn fd(mut self, fd: c_int) -> Self { self.fd = fd; self @@ -12354,11 +13329,13 @@ unsafe impl<'a> TaggedStructure for SemaphoreGetFdInfoKHR<'a> { } impl<'a> SemaphoreGetFdInfoKHR<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -12397,21 +13374,25 @@ unsafe impl<'a> TaggedStructure for ImportSemaphoreZirconHandleInfoFUCHSIA<'a> { } impl<'a> ImportSemaphoreZirconHandleInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn flags(mut self, flags: SemaphoreImportFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn zircon_handle(mut self, zircon_handle: zx_handle_t) -> Self { self.zircon_handle = zircon_handle; self @@ -12445,11 +13426,13 @@ unsafe impl<'a> TaggedStructure for SemaphoreGetZirconHandleInfoFUCHSIA<'a> { } impl<'a> SemaphoreGetZirconHandleInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalSemaphoreHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -12481,6 +13464,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceExternalFenceInfo<'a> { } impl<'a> PhysicalDeviceExternalFenceInfo<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalFenceHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -12516,6 +13500,7 @@ unsafe impl<'a> TaggedStructure for ExternalFenceProperties<'a> { } impl<'a> ExternalFenceProperties<'a> { #[inline] + #[must_use] pub fn export_from_imported_handle_types( mut self, export_from_imported_handle_types: ExternalFenceHandleTypeFlags, @@ -12524,6 +13509,7 @@ impl<'a> ExternalFenceProperties<'a> { self } #[inline] + #[must_use] pub fn compatible_handle_types( mut self, compatible_handle_types: ExternalFenceHandleTypeFlags, @@ -12532,6 +13518,7 @@ impl<'a> ExternalFenceProperties<'a> { self } #[inline] + #[must_use] pub fn external_fence_features( mut self, external_fence_features: ExternalFenceFeatureFlags, @@ -12567,6 +13554,7 @@ unsafe impl<'a> TaggedStructure for ExportFenceCreateInfo<'a> { unsafe impl ExtendsFenceCreateInfo for ExportFenceCreateInfo<'_> {} impl<'a> ExportFenceCreateInfo<'a> { #[inline] + #[must_use] pub fn handle_types(mut self, handle_types: ExternalFenceHandleTypeFlags) -> Self { self.handle_types = handle_types; self @@ -12606,26 +13594,31 @@ unsafe impl<'a> TaggedStructure for ImportFenceWin32HandleInfoKHR<'a> { } impl<'a> ImportFenceWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn fence(mut self, fence: Fence) -> Self { self.fence = fence; self } #[inline] + #[must_use] pub fn flags(mut self, flags: FenceImportFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalFenceHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn handle(mut self, handle: HANDLE) -> Self { self.handle = handle; self } #[inline] + #[must_use] pub fn name(mut self, name: LPCWSTR) -> Self { self.name = name; self @@ -12662,16 +13655,19 @@ unsafe impl<'a> TaggedStructure for ExportFenceWin32HandleInfoKHR<'a> { unsafe impl ExtendsFenceCreateInfo for ExportFenceWin32HandleInfoKHR<'_> {} impl<'a> ExportFenceWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn attributes(mut self, attributes: &'a SECURITY_ATTRIBUTES) -> Self { self.p_attributes = attributes; self } #[inline] + #[must_use] pub fn dw_access(mut self, dw_access: DWORD) -> Self { self.dw_access = dw_access; self } #[inline] + #[must_use] pub fn name(mut self, name: LPCWSTR) -> Self { self.name = name; self @@ -12705,11 +13701,13 @@ unsafe impl<'a> TaggedStructure for FenceGetWin32HandleInfoKHR<'a> { } impl<'a> FenceGetWin32HandleInfoKHR<'a> { #[inline] + #[must_use] pub fn fence(mut self, fence: Fence) -> Self { self.fence = fence; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalFenceHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -12747,21 +13745,25 @@ unsafe impl<'a> TaggedStructure for ImportFenceFdInfoKHR<'a> { } impl<'a> ImportFenceFdInfoKHR<'a> { #[inline] + #[must_use] pub fn fence(mut self, fence: Fence) -> Self { self.fence = fence; self } #[inline] + #[must_use] pub fn flags(mut self, flags: FenceImportFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalFenceHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn fd(mut self, fd: c_int) -> Self { self.fd = fd; self @@ -12795,11 +13797,13 @@ unsafe impl<'a> TaggedStructure for FenceGetFdInfoKHR<'a> { } impl<'a> FenceGetFdInfoKHR<'a> { #[inline] + #[must_use] pub fn fence(mut self, fence: Fence) -> Self { self.fence = fence; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalFenceHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -12837,16 +13841,19 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMultiviewFeatures<' unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMultiviewFeatures<'_> {} impl<'a> PhysicalDeviceMultiviewFeatures<'a> { #[inline] + #[must_use] pub fn multiview(mut self, multiview: bool) -> Self { self.multiview = multiview.into(); self } #[inline] + #[must_use] pub fn multiview_geometry_shader(mut self, multiview_geometry_shader: bool) -> Self { self.multiview_geometry_shader = multiview_geometry_shader.into(); self } #[inline] + #[must_use] pub fn multiview_tessellation_shader(mut self, multiview_tessellation_shader: bool) -> Self { self.multiview_tessellation_shader = multiview_tessellation_shader.into(); self @@ -12881,11 +13888,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMultiviewProperties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMultiviewProperties<'_> {} impl<'a> PhysicalDeviceMultiviewProperties<'a> { #[inline] + #[must_use] pub fn max_multiview_view_count(mut self, max_multiview_view_count: u32) -> Self { self.max_multiview_view_count = max_multiview_view_count; self } #[inline] + #[must_use] pub fn max_multiview_instance_index(mut self, max_multiview_instance_index: u32) -> Self { self.max_multiview_instance_index = max_multiview_instance_index; self @@ -12928,18 +13937,21 @@ unsafe impl<'a> TaggedStructure for RenderPassMultiviewCreateInfo<'a> { unsafe impl ExtendsRenderPassCreateInfo for RenderPassMultiviewCreateInfo<'_> {} impl<'a> RenderPassMultiviewCreateInfo<'a> { #[inline] + #[must_use] pub fn view_masks(mut self, view_masks: &'a [u32]) -> Self { self.subpass_count = view_masks.len() as _; self.p_view_masks = view_masks.as_ptr(); self } #[inline] + #[must_use] pub fn view_offsets(mut self, view_offsets: &'a [i32]) -> Self { self.dependency_count = view_offsets.len() as _; self.p_view_offsets = view_offsets.as_ptr(); self } #[inline] + #[must_use] pub fn correlation_masks(mut self, correlation_masks: &'a [u32]) -> Self { self.correlation_mask_count = correlation_masks.len() as _; self.p_correlation_masks = correlation_masks.as_ptr(); @@ -12992,46 +14004,55 @@ unsafe impl<'a> TaggedStructure for SurfaceCapabilities2EXT<'a> { } impl<'a> SurfaceCapabilities2EXT<'a> { #[inline] + #[must_use] pub fn min_image_count(mut self, min_image_count: u32) -> Self { self.min_image_count = min_image_count; self } #[inline] + #[must_use] pub fn max_image_count(mut self, max_image_count: u32) -> Self { self.max_image_count = max_image_count; self } #[inline] + #[must_use] pub fn current_extent(mut self, current_extent: Extent2D) -> Self { self.current_extent = current_extent; self } #[inline] + #[must_use] pub fn min_image_extent(mut self, min_image_extent: Extent2D) -> Self { self.min_image_extent = min_image_extent; self } #[inline] + #[must_use] pub fn max_image_extent(mut self, max_image_extent: Extent2D) -> Self { self.max_image_extent = max_image_extent; self } #[inline] + #[must_use] pub fn max_image_array_layers(mut self, max_image_array_layers: u32) -> Self { self.max_image_array_layers = max_image_array_layers; self } #[inline] + #[must_use] pub fn supported_transforms(mut self, supported_transforms: SurfaceTransformFlagsKHR) -> Self { self.supported_transforms = supported_transforms; self } #[inline] + #[must_use] pub fn current_transform(mut self, current_transform: SurfaceTransformFlagsKHR) -> Self { self.current_transform = current_transform; self } #[inline] + #[must_use] pub fn supported_composite_alpha( mut self, supported_composite_alpha: CompositeAlphaFlagsKHR, @@ -13040,11 +14061,13 @@ impl<'a> SurfaceCapabilities2EXT<'a> { self } #[inline] + #[must_use] pub fn supported_usage_flags(mut self, supported_usage_flags: ImageUsageFlags) -> Self { self.supported_usage_flags = supported_usage_flags; self } #[inline] + #[must_use] pub fn supported_surface_counters( mut self, supported_surface_counters: SurfaceCounterFlagsEXT, @@ -13079,6 +14102,7 @@ unsafe impl<'a> TaggedStructure for DisplayPowerInfoEXT<'a> { } impl<'a> DisplayPowerInfoEXT<'a> { #[inline] + #[must_use] pub fn power_state(mut self, power_state: DisplayPowerStateEXT) -> Self { self.power_state = power_state; self @@ -13110,6 +14134,7 @@ unsafe impl<'a> TaggedStructure for DeviceEventInfoEXT<'a> { } impl<'a> DeviceEventInfoEXT<'a> { #[inline] + #[must_use] pub fn device_event(mut self, device_event: DeviceEventTypeEXT) -> Self { self.device_event = device_event; self @@ -13141,6 +14166,7 @@ unsafe impl<'a> TaggedStructure for DisplayEventInfoEXT<'a> { } impl<'a> DisplayEventInfoEXT<'a> { #[inline] + #[must_use] pub fn display_event(mut self, display_event: DisplayEventTypeEXT) -> Self { self.display_event = display_event; self @@ -13173,6 +14199,7 @@ unsafe impl<'a> TaggedStructure for SwapchainCounterCreateInfoEXT<'a> { unsafe impl ExtendsSwapchainCreateInfoKHR for SwapchainCounterCreateInfoEXT<'_> {} impl<'a> SwapchainCounterCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn surface_counters(mut self, surface_counters: SurfaceCounterFlagsEXT) -> Self { self.surface_counters = surface_counters; self @@ -13208,11 +14235,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceGroupProperties<'a> { } impl<'a> PhysicalDeviceGroupProperties<'a> { #[inline] + #[must_use] pub fn physical_device_count(mut self, physical_device_count: u32) -> Self { self.physical_device_count = physical_device_count; self } #[inline] + #[must_use] pub fn physical_devices( mut self, physical_devices: [PhysicalDevice; MAX_DEVICE_GROUP_SIZE], @@ -13221,6 +14250,7 @@ impl<'a> PhysicalDeviceGroupProperties<'a> { self } #[inline] + #[must_use] pub fn subset_allocation(mut self, subset_allocation: bool) -> Self { self.subset_allocation = subset_allocation.into(); self @@ -13255,11 +14285,13 @@ unsafe impl<'a> TaggedStructure for MemoryAllocateFlagsInfo<'a> { unsafe impl ExtendsMemoryAllocateInfo for MemoryAllocateFlagsInfo<'_> {} impl<'a> MemoryAllocateFlagsInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: MemoryAllocateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn device_mask(mut self, device_mask: u32) -> Self { self.device_mask = device_mask; self @@ -13296,20 +14328,24 @@ unsafe impl<'a> TaggedStructure for BindBufferMemoryInfo<'a> { pub unsafe trait ExtendsBindBufferMemoryInfo {} impl<'a> BindBufferMemoryInfo<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn memory_offset(mut self, memory_offset: DeviceSize) -> Self { self.memory_offset = memory_offset; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -13354,6 +14390,7 @@ unsafe impl<'a> TaggedStructure for BindBufferMemoryDeviceGroupInfo<'a> { unsafe impl ExtendsBindBufferMemoryInfo for BindBufferMemoryDeviceGroupInfo<'_> {} impl<'a> BindBufferMemoryDeviceGroupInfo<'a> { #[inline] + #[must_use] pub fn device_indices(mut self, device_indices: &'a [u32]) -> Self { self.device_index_count = device_indices.len() as _; self.p_device_indices = device_indices.as_ptr(); @@ -13391,20 +14428,24 @@ unsafe impl<'a> TaggedStructure for BindImageMemoryInfo<'a> { pub unsafe trait ExtendsBindImageMemoryInfo {} impl<'a> BindImageMemoryInfo<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn memory_offset(mut self, memory_offset: DeviceSize) -> Self { self.memory_offset = memory_offset; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -13453,12 +14494,14 @@ unsafe impl<'a> TaggedStructure for BindImageMemoryDeviceGroupInfo<'a> { unsafe impl ExtendsBindImageMemoryInfo for BindImageMemoryDeviceGroupInfo<'_> {} impl<'a> BindImageMemoryDeviceGroupInfo<'a> { #[inline] + #[must_use] pub fn device_indices(mut self, device_indices: &'a [u32]) -> Self { self.device_index_count = device_indices.len() as _; self.p_device_indices = device_indices.as_ptr(); self } #[inline] + #[must_use] pub fn split_instance_bind_regions( mut self, split_instance_bind_regions: &'a [Rect2D], @@ -13500,11 +14543,13 @@ unsafe impl ExtendsRenderPassBeginInfo for DeviceGroupRenderPassBeginInfo<'_> {} unsafe impl ExtendsRenderingInfo for DeviceGroupRenderPassBeginInfo<'_> {} impl<'a> DeviceGroupRenderPassBeginInfo<'a> { #[inline] + #[must_use] pub fn device_mask(mut self, device_mask: u32) -> Self { self.device_mask = device_mask; self } #[inline] + #[must_use] pub fn device_render_areas(mut self, device_render_areas: &'a [Rect2D]) -> Self { self.device_render_area_count = device_render_areas.len() as _; self.p_device_render_areas = device_render_areas.as_ptr(); @@ -13538,6 +14583,7 @@ unsafe impl<'a> TaggedStructure for DeviceGroupCommandBufferBeginInfo<'a> { unsafe impl ExtendsCommandBufferBeginInfo for DeviceGroupCommandBufferBeginInfo<'_> {} impl<'a> DeviceGroupCommandBufferBeginInfo<'a> { #[inline] + #[must_use] pub fn device_mask(mut self, device_mask: u32) -> Self { self.device_mask = device_mask; self @@ -13580,6 +14626,7 @@ unsafe impl<'a> TaggedStructure for DeviceGroupSubmitInfo<'a> { unsafe impl ExtendsSubmitInfo for DeviceGroupSubmitInfo<'_> {} impl<'a> DeviceGroupSubmitInfo<'a> { #[inline] + #[must_use] pub fn wait_semaphore_device_indices( mut self, wait_semaphore_device_indices: &'a [u32], @@ -13589,12 +14636,14 @@ impl<'a> DeviceGroupSubmitInfo<'a> { self } #[inline] + #[must_use] pub fn command_buffer_device_masks(mut self, command_buffer_device_masks: &'a [u32]) -> Self { self.command_buffer_count = command_buffer_device_masks.len() as _; self.p_command_buffer_device_masks = command_buffer_device_masks.as_ptr(); self } #[inline] + #[must_use] pub fn signal_semaphore_device_indices( mut self, signal_semaphore_device_indices: &'a [u32], @@ -13633,11 +14682,13 @@ unsafe impl<'a> TaggedStructure for DeviceGroupBindSparseInfo<'a> { unsafe impl ExtendsBindSparseInfo for DeviceGroupBindSparseInfo<'_> {} impl<'a> DeviceGroupBindSparseInfo<'a> { #[inline] + #[must_use] pub fn resource_device_index(mut self, resource_device_index: u32) -> Self { self.resource_device_index = resource_device_index; self } #[inline] + #[must_use] pub fn memory_device_index(mut self, memory_device_index: u32) -> Self { self.memory_device_index = memory_device_index; self @@ -13671,11 +14722,13 @@ unsafe impl<'a> TaggedStructure for DeviceGroupPresentCapabilitiesKHR<'a> { } impl<'a> DeviceGroupPresentCapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn present_mask(mut self, present_mask: [u32; MAX_DEVICE_GROUP_SIZE]) -> Self { self.present_mask = present_mask; self } #[inline] + #[must_use] pub fn modes(mut self, modes: DeviceGroupPresentModeFlagsKHR) -> Self { self.modes = modes; self @@ -13708,6 +14761,7 @@ unsafe impl<'a> TaggedStructure for ImageSwapchainCreateInfoKHR<'a> { unsafe impl ExtendsImageCreateInfo for ImageSwapchainCreateInfoKHR<'_> {} impl<'a> ImageSwapchainCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn swapchain(mut self, swapchain: SwapchainKHR) -> Self { self.swapchain = swapchain; self @@ -13742,11 +14796,13 @@ unsafe impl<'a> TaggedStructure for BindImageMemorySwapchainInfoKHR<'a> { unsafe impl ExtendsBindImageMemoryInfo for BindImageMemorySwapchainInfoKHR<'_> {} impl<'a> BindImageMemorySwapchainInfoKHR<'a> { #[inline] + #[must_use] pub fn swapchain(mut self, swapchain: SwapchainKHR) -> Self { self.swapchain = swapchain; self } #[inline] + #[must_use] pub fn image_index(mut self, image_index: u32) -> Self { self.image_index = image_index; self @@ -13786,26 +14842,31 @@ unsafe impl<'a> TaggedStructure for AcquireNextImageInfoKHR<'a> { } impl<'a> AcquireNextImageInfoKHR<'a> { #[inline] + #[must_use] pub fn swapchain(mut self, swapchain: SwapchainKHR) -> Self { self.swapchain = swapchain; self } #[inline] + #[must_use] pub fn timeout(mut self, timeout: u64) -> Self { self.timeout = timeout; self } #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn fence(mut self, fence: Fence) -> Self { self.fence = fence; self } #[inline] + #[must_use] pub fn device_mask(mut self, device_mask: u32) -> Self { self.device_mask = device_mask; self @@ -13842,12 +14903,14 @@ unsafe impl<'a> TaggedStructure for DeviceGroupPresentInfoKHR<'a> { unsafe impl ExtendsPresentInfoKHR for DeviceGroupPresentInfoKHR<'_> {} impl<'a> DeviceGroupPresentInfoKHR<'a> { #[inline] + #[must_use] pub fn device_masks(mut self, device_masks: &'a [u32]) -> Self { self.swapchain_count = device_masks.len() as _; self.p_device_masks = device_masks.as_ptr(); self } #[inline] + #[must_use] pub fn mode(mut self, mode: DeviceGroupPresentModeFlagsKHR) -> Self { self.mode = mode; self @@ -13882,6 +14945,7 @@ unsafe impl<'a> TaggedStructure for DeviceGroupDeviceCreateInfo<'a> { unsafe impl ExtendsDeviceCreateInfo for DeviceGroupDeviceCreateInfo<'_> {} impl<'a> DeviceGroupDeviceCreateInfo<'a> { #[inline] + #[must_use] pub fn physical_devices(mut self, physical_devices: &'a [PhysicalDevice]) -> Self { self.physical_device_count = physical_devices.len() as _; self.p_physical_devices = physical_devices.as_ptr(); @@ -13915,6 +14979,7 @@ unsafe impl<'a> TaggedStructure for DeviceGroupSwapchainCreateInfoKHR<'a> { unsafe impl ExtendsSwapchainCreateInfoKHR for DeviceGroupSwapchainCreateInfoKHR<'_> {} impl<'a> DeviceGroupSwapchainCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn modes(mut self, modes: DeviceGroupPresentModeFlagsKHR) -> Self { self.modes = modes; self @@ -13934,31 +14999,37 @@ pub struct DescriptorUpdateTemplateEntry { } impl DescriptorUpdateTemplateEntry { #[inline] + #[must_use] pub fn dst_binding(mut self, dst_binding: u32) -> Self { self.dst_binding = dst_binding; self } #[inline] + #[must_use] pub fn dst_array_element(mut self, dst_array_element: u32) -> Self { self.dst_array_element = dst_array_element; self } #[inline] + #[must_use] pub fn descriptor_count(mut self, descriptor_count: u32) -> Self { self.descriptor_count = descriptor_count; self } #[inline] + #[must_use] pub fn descriptor_type(mut self, descriptor_type: DescriptorType) -> Self { self.descriptor_type = descriptor_type; self } #[inline] + #[must_use] pub fn offset(mut self, offset: usize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn stride(mut self, stride: usize) -> Self { self.stride = stride; self @@ -14004,11 +15075,13 @@ unsafe impl<'a> TaggedStructure for DescriptorUpdateTemplateCreateInfo<'a> { } impl<'a> DescriptorUpdateTemplateCreateInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DescriptorUpdateTemplateCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn descriptor_update_entries( mut self, descriptor_update_entries: &'a [DescriptorUpdateTemplateEntry], @@ -14018,26 +15091,31 @@ impl<'a> DescriptorUpdateTemplateCreateInfo<'a> { self } #[inline] + #[must_use] pub fn template_type(mut self, template_type: DescriptorUpdateTemplateType) -> Self { self.template_type = template_type; self } #[inline] + #[must_use] pub fn descriptor_set_layout(mut self, descriptor_set_layout: DescriptorSetLayout) -> Self { self.descriptor_set_layout = descriptor_set_layout; self } #[inline] + #[must_use] pub fn pipeline_bind_point(mut self, pipeline_bind_point: PipelineBindPoint) -> Self { self.pipeline_bind_point = pipeline_bind_point; self } #[inline] + #[must_use] pub fn pipeline_layout(mut self, pipeline_layout: PipelineLayout) -> Self { self.pipeline_layout = pipeline_layout; self } #[inline] + #[must_use] pub fn set(mut self, set: u32) -> Self { self.set = set; self @@ -14053,11 +15131,13 @@ pub struct XYColorEXT { } impl XYColorEXT { #[inline] + #[must_use] pub fn x(mut self, x: f32) -> Self { self.x = x; self } #[inline] + #[must_use] pub fn y(mut self, y: f32) -> Self { self.y = y; self @@ -14091,6 +15171,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePresentIdFeaturesKH unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePresentIdFeaturesKHR<'_> {} impl<'a> PhysicalDevicePresentIdFeaturesKHR<'a> { #[inline] + #[must_use] pub fn present_id(mut self, present_id: bool) -> Self { self.present_id = present_id.into(); self @@ -14125,6 +15206,7 @@ unsafe impl<'a> TaggedStructure for PresentIdKHR<'a> { unsafe impl ExtendsPresentInfoKHR for PresentIdKHR<'_> {} impl<'a> PresentIdKHR<'a> { #[inline] + #[must_use] pub fn present_ids(mut self, present_ids: &'a [u64]) -> Self { self.swapchain_count = present_ids.len() as _; self.p_present_ids = present_ids.as_ptr(); @@ -14159,6 +15241,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePresentWaitFeatures unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePresentWaitFeaturesKHR<'_> {} impl<'a> PhysicalDevicePresentWaitFeaturesKHR<'a> { #[inline] + #[must_use] pub fn present_wait(mut self, present_wait: bool) -> Self { self.present_wait = present_wait.into(); self @@ -14204,41 +15287,49 @@ unsafe impl<'a> TaggedStructure for HdrMetadataEXT<'a> { } impl<'a> HdrMetadataEXT<'a> { #[inline] + #[must_use] pub fn display_primary_red(mut self, display_primary_red: XYColorEXT) -> Self { self.display_primary_red = display_primary_red; self } #[inline] + #[must_use] pub fn display_primary_green(mut self, display_primary_green: XYColorEXT) -> Self { self.display_primary_green = display_primary_green; self } #[inline] + #[must_use] pub fn display_primary_blue(mut self, display_primary_blue: XYColorEXT) -> Self { self.display_primary_blue = display_primary_blue; self } #[inline] + #[must_use] pub fn white_point(mut self, white_point: XYColorEXT) -> Self { self.white_point = white_point; self } #[inline] + #[must_use] pub fn max_luminance(mut self, max_luminance: f32) -> Self { self.max_luminance = max_luminance; self } #[inline] + #[must_use] pub fn min_luminance(mut self, min_luminance: f32) -> Self { self.min_luminance = min_luminance; self } #[inline] + #[must_use] pub fn max_content_light_level(mut self, max_content_light_level: f32) -> Self { self.max_content_light_level = max_content_light_level; self } #[inline] + #[must_use] pub fn max_frame_average_light_level(mut self, max_frame_average_light_level: f32) -> Self { self.max_frame_average_light_level = max_frame_average_light_level; self @@ -14272,6 +15363,7 @@ unsafe impl<'a> TaggedStructure for DisplayNativeHdrSurfaceCapabilitiesAMD<'a> { unsafe impl ExtendsSurfaceCapabilities2KHR for DisplayNativeHdrSurfaceCapabilitiesAMD<'_> {} impl<'a> DisplayNativeHdrSurfaceCapabilitiesAMD<'a> { #[inline] + #[must_use] pub fn local_dimming_support(mut self, local_dimming_support: bool) -> Self { self.local_dimming_support = local_dimming_support.into(); self @@ -14305,6 +15397,7 @@ unsafe impl<'a> TaggedStructure for SwapchainDisplayNativeHdrCreateInfoAMD<'a> { unsafe impl ExtendsSwapchainCreateInfoKHR for SwapchainDisplayNativeHdrCreateInfoAMD<'_> {} impl<'a> SwapchainDisplayNativeHdrCreateInfoAMD<'a> { #[inline] + #[must_use] pub fn local_dimming_enable(mut self, local_dimming_enable: bool) -> Self { self.local_dimming_enable = local_dimming_enable.into(); self @@ -14319,6 +15412,7 @@ pub struct RefreshCycleDurationGOOGLE { } impl RefreshCycleDurationGOOGLE { #[inline] + #[must_use] pub fn refresh_duration(mut self, refresh_duration: u64) -> Self { self.refresh_duration = refresh_duration; self @@ -14337,26 +15431,31 @@ pub struct PastPresentationTimingGOOGLE { } impl PastPresentationTimingGOOGLE { #[inline] + #[must_use] pub fn present_id(mut self, present_id: u32) -> Self { self.present_id = present_id; self } #[inline] + #[must_use] pub fn desired_present_time(mut self, desired_present_time: u64) -> Self { self.desired_present_time = desired_present_time; self } #[inline] + #[must_use] pub fn actual_present_time(mut self, actual_present_time: u64) -> Self { self.actual_present_time = actual_present_time; self } #[inline] + #[must_use] pub fn earliest_present_time(mut self, earliest_present_time: u64) -> Self { self.earliest_present_time = earliest_present_time; self } #[inline] + #[must_use] pub fn present_margin(mut self, present_margin: u64) -> Self { self.present_margin = present_margin; self @@ -14391,6 +15490,7 @@ unsafe impl<'a> TaggedStructure for PresentTimesInfoGOOGLE<'a> { unsafe impl ExtendsPresentInfoKHR for PresentTimesInfoGOOGLE<'_> {} impl<'a> PresentTimesInfoGOOGLE<'a> { #[inline] + #[must_use] pub fn times(mut self, times: &'a [PresentTimeGOOGLE]) -> Self { self.swapchain_count = times.len() as _; self.p_times = times.as_ptr(); @@ -14407,11 +15507,13 @@ pub struct PresentTimeGOOGLE { } impl PresentTimeGOOGLE { #[inline] + #[must_use] pub fn present_id(mut self, present_id: u32) -> Self { self.present_id = present_id; self } #[inline] + #[must_use] pub fn desired_present_time(mut self, desired_present_time: u64) -> Self { self.desired_present_time = desired_present_time; self @@ -14445,11 +15547,13 @@ unsafe impl<'a> TaggedStructure for IOSSurfaceCreateInfoMVK<'a> { } impl<'a> IOSSurfaceCreateInfoMVK<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: IOSSurfaceCreateFlagsMVK) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn view(mut self, view: *const c_void) -> Self { self.p_view = view; self @@ -14483,11 +15587,13 @@ unsafe impl<'a> TaggedStructure for MacOSSurfaceCreateInfoMVK<'a> { } impl<'a> MacOSSurfaceCreateInfoMVK<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: MacOSSurfaceCreateFlagsMVK) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn view(mut self, view: *const c_void) -> Self { self.p_view = view; self @@ -14521,11 +15627,13 @@ unsafe impl<'a> TaggedStructure for MetalSurfaceCreateInfoEXT<'a> { } impl<'a> MetalSurfaceCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: MetalSurfaceCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn layer(mut self, layer: *const CAMetalLayer) -> Self { self.p_layer = layer; self @@ -14541,11 +15649,13 @@ pub struct ViewportWScalingNV { } impl ViewportWScalingNV { #[inline] + #[must_use] pub fn xcoeff(mut self, xcoeff: f32) -> Self { self.xcoeff = xcoeff; self } #[inline] + #[must_use] pub fn ycoeff(mut self, ycoeff: f32) -> Self { self.ycoeff = ycoeff; self @@ -14586,11 +15696,13 @@ unsafe impl ExtendsPipelineViewportStateCreateInfo } impl<'a> PipelineViewportWScalingStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn viewport_w_scaling_enable(mut self, viewport_w_scaling_enable: bool) -> Self { self.viewport_w_scaling_enable = viewport_w_scaling_enable.into(); self } #[inline] + #[must_use] pub fn viewport_w_scalings(mut self, viewport_w_scalings: &'a [ViewportWScalingNV]) -> Self { self.viewport_count = viewport_w_scalings.len() as _; self.p_viewport_w_scalings = viewport_w_scalings.as_ptr(); @@ -14609,21 +15721,25 @@ pub struct ViewportSwizzleNV { } impl ViewportSwizzleNV { #[inline] + #[must_use] pub fn x(mut self, x: ViewportCoordinateSwizzleNV) -> Self { self.x = x; self } #[inline] + #[must_use] pub fn y(mut self, y: ViewportCoordinateSwizzleNV) -> Self { self.y = y; self } #[inline] + #[must_use] pub fn z(mut self, z: ViewportCoordinateSwizzleNV) -> Self { self.z = z; self } #[inline] + #[must_use] pub fn w(mut self, w: ViewportCoordinateSwizzleNV) -> Self { self.w = w; self @@ -14664,11 +15780,13 @@ unsafe impl ExtendsPipelineViewportStateCreateInfo } impl<'a> PipelineViewportSwizzleStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineViewportSwizzleStateCreateFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn viewport_swizzles(mut self, viewport_swizzles: &'a [ViewportSwizzleNV]) -> Self { self.viewport_count = viewport_swizzles.len() as _; self.p_viewport_swizzles = viewport_swizzles.as_ptr(); @@ -14703,6 +15821,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceDiscardRectanglePropertiesEXT< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceDiscardRectanglePropertiesEXT<'_> {} impl<'a> PhysicalDeviceDiscardRectanglePropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_discard_rectangles(mut self, max_discard_rectangles: u32) -> Self { self.max_discard_rectangles = max_discard_rectangles; self @@ -14742,11 +15861,13 @@ unsafe impl<'a> TaggedStructure for PipelineDiscardRectangleStateCreateInfoEXT<' unsafe impl ExtendsGraphicsPipelineCreateInfo for PipelineDiscardRectangleStateCreateInfoEXT<'_> {} impl<'a> PipelineDiscardRectangleStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineDiscardRectangleStateCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn discard_rectangle_mode( mut self, discard_rectangle_mode: DiscardRectangleModeEXT, @@ -14755,6 +15876,7 @@ impl<'a> PipelineDiscardRectangleStateCreateInfoEXT<'a> { self } #[inline] + #[must_use] pub fn discard_rectangles(mut self, discard_rectangles: &'a [Rect2D]) -> Self { self.discard_rectangle_count = discard_rectangles.len() as _; self.p_discard_rectangles = discard_rectangles.as_ptr(); @@ -14792,6 +15914,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX<'a> { #[inline] + #[must_use] pub fn per_view_position_all_components( mut self, per_view_position_all_components: bool, @@ -14811,16 +15934,19 @@ pub struct InputAttachmentAspectReference { } impl InputAttachmentAspectReference { #[inline] + #[must_use] pub fn subpass(mut self, subpass: u32) -> Self { self.subpass = subpass; self } #[inline] + #[must_use] pub fn input_attachment_index(mut self, input_attachment_index: u32) -> Self { self.input_attachment_index = input_attachment_index; self } #[inline] + #[must_use] pub fn aspect_mask(mut self, aspect_mask: ImageAspectFlags) -> Self { self.aspect_mask = aspect_mask; self @@ -14856,6 +15982,7 @@ unsafe impl<'a> TaggedStructure for RenderPassInputAttachmentAspectCreateInfo<'a unsafe impl ExtendsRenderPassCreateInfo for RenderPassInputAttachmentAspectCreateInfo<'_> {} impl<'a> RenderPassInputAttachmentAspectCreateInfo<'a> { #[inline] + #[must_use] pub fn aspect_references( mut self, aspect_references: &'a [InputAttachmentAspectReference], @@ -14892,10 +16019,12 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSurfaceInfo2KHR<'a> { pub unsafe trait ExtendsPhysicalDeviceSurfaceInfo2KHR {} impl<'a> PhysicalDeviceSurfaceInfo2KHR<'a> { #[inline] + #[must_use] pub fn surface(mut self, surface: SurfaceKHR) -> Self { self.surface = surface; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -14938,10 +16067,12 @@ unsafe impl<'a> TaggedStructure for SurfaceCapabilities2KHR<'a> { pub unsafe trait ExtendsSurfaceCapabilities2KHR {} impl<'a> SurfaceCapabilities2KHR<'a> { #[inline] + #[must_use] pub fn surface_capabilities(mut self, surface_capabilities: SurfaceCapabilitiesKHR) -> Self { self.surface_capabilities = surface_capabilities; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -14984,10 +16115,12 @@ unsafe impl<'a> TaggedStructure for SurfaceFormat2KHR<'a> { pub unsafe trait ExtendsSurfaceFormat2KHR {} impl<'a> SurfaceFormat2KHR<'a> { #[inline] + #[must_use] pub fn surface_format(mut self, surface_format: SurfaceFormatKHR) -> Self { self.surface_format = surface_format; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -15029,6 +16162,7 @@ unsafe impl<'a> TaggedStructure for DisplayProperties2KHR<'a> { } impl<'a> DisplayProperties2KHR<'a> { #[inline] + #[must_use] pub fn display_properties(mut self, display_properties: DisplayPropertiesKHR<'a>) -> Self { self.display_properties = display_properties; self @@ -15060,6 +16194,7 @@ unsafe impl<'a> TaggedStructure for DisplayPlaneProperties2KHR<'a> { } impl<'a> DisplayPlaneProperties2KHR<'a> { #[inline] + #[must_use] pub fn display_plane_properties( mut self, display_plane_properties: DisplayPlanePropertiesKHR, @@ -15094,6 +16229,7 @@ unsafe impl<'a> TaggedStructure for DisplayModeProperties2KHR<'a> { } impl<'a> DisplayModeProperties2KHR<'a> { #[inline] + #[must_use] pub fn display_mode_properties( mut self, display_mode_properties: DisplayModePropertiesKHR, @@ -15130,11 +16266,13 @@ unsafe impl<'a> TaggedStructure for DisplayPlaneInfo2KHR<'a> { } impl<'a> DisplayPlaneInfo2KHR<'a> { #[inline] + #[must_use] pub fn mode(mut self, mode: DisplayModeKHR) -> Self { self.mode = mode; self } #[inline] + #[must_use] pub fn plane_index(mut self, plane_index: u32) -> Self { self.plane_index = plane_index; self @@ -15166,6 +16304,7 @@ unsafe impl<'a> TaggedStructure for DisplayPlaneCapabilities2KHR<'a> { } impl<'a> DisplayPlaneCapabilities2KHR<'a> { #[inline] + #[must_use] pub fn capabilities(mut self, capabilities: DisplayPlaneCapabilitiesKHR) -> Self { self.capabilities = capabilities; self @@ -15198,6 +16337,7 @@ unsafe impl<'a> TaggedStructure for SharedPresentSurfaceCapabilitiesKHR<'a> { unsafe impl ExtendsSurfaceCapabilities2KHR for SharedPresentSurfaceCapabilitiesKHR<'_> {} impl<'a> SharedPresentSurfaceCapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn shared_present_supported_usage_flags( mut self, shared_present_supported_usage_flags: ImageUsageFlags, @@ -15240,11 +16380,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevice16BitStorageFeature unsafe impl ExtendsDeviceCreateInfo for PhysicalDevice16BitStorageFeatures<'_> {} impl<'a> PhysicalDevice16BitStorageFeatures<'a> { #[inline] + #[must_use] pub fn storage_buffer16_bit_access(mut self, storage_buffer16_bit_access: bool) -> Self { self.storage_buffer16_bit_access = storage_buffer16_bit_access.into(); self } #[inline] + #[must_use] pub fn uniform_and_storage_buffer16_bit_access( mut self, uniform_and_storage_buffer16_bit_access: bool, @@ -15254,11 +16396,13 @@ impl<'a> PhysicalDevice16BitStorageFeatures<'a> { self } #[inline] + #[must_use] pub fn storage_push_constant16(mut self, storage_push_constant16: bool) -> Self { self.storage_push_constant16 = storage_push_constant16.into(); self } #[inline] + #[must_use] pub fn storage_input_output16(mut self, storage_input_output16: bool) -> Self { self.storage_input_output16 = storage_input_output16.into(); self @@ -15297,21 +16441,25 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSubgroupProperties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceSubgroupProperties<'_> {} impl<'a> PhysicalDeviceSubgroupProperties<'a> { #[inline] + #[must_use] pub fn subgroup_size(mut self, subgroup_size: u32) -> Self { self.subgroup_size = subgroup_size; self } #[inline] + #[must_use] pub fn supported_stages(mut self, supported_stages: ShaderStageFlags) -> Self { self.supported_stages = supported_stages; self } #[inline] + #[must_use] pub fn supported_operations(mut self, supported_operations: SubgroupFeatureFlags) -> Self { self.supported_operations = supported_operations; self } #[inline] + #[must_use] pub fn quad_operations_in_all_stages(mut self, quad_operations_in_all_stages: bool) -> Self { self.quad_operations_in_all_stages = quad_operations_in_all_stages.into(); self @@ -15349,6 +16497,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderSubgroupExtendedTypesFeatures<'_> {} impl<'a> PhysicalDeviceShaderSubgroupExtendedTypesFeatures<'a> { #[inline] + #[must_use] pub fn shader_subgroup_extended_types(mut self, shader_subgroup_extended_types: bool) -> Self { self.shader_subgroup_extended_types = shader_subgroup_extended_types.into(); self @@ -15380,6 +16529,7 @@ unsafe impl<'a> TaggedStructure for BufferMemoryRequirementsInfo2<'a> { } impl<'a> BufferMemoryRequirementsInfo2<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self @@ -15411,6 +16561,7 @@ unsafe impl<'a> TaggedStructure for DeviceBufferMemoryRequirements<'a> { } impl<'a> DeviceBufferMemoryRequirements<'a> { #[inline] + #[must_use] pub fn create_info(mut self, create_info: &'a BufferCreateInfo<'a>) -> Self { self.p_create_info = create_info; self @@ -15443,10 +16594,12 @@ unsafe impl<'a> TaggedStructure for ImageMemoryRequirementsInfo2<'a> { pub unsafe trait ExtendsImageMemoryRequirementsInfo2 {} impl<'a> ImageMemoryRequirementsInfo2<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -15488,6 +16641,7 @@ unsafe impl<'a> TaggedStructure for ImageSparseMemoryRequirementsInfo2<'a> { } impl<'a> ImageSparseMemoryRequirementsInfo2<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self @@ -15521,11 +16675,13 @@ unsafe impl<'a> TaggedStructure for DeviceImageMemoryRequirements<'a> { } impl<'a> DeviceImageMemoryRequirements<'a> { #[inline] + #[must_use] pub fn create_info(mut self, create_info: &'a ImageCreateInfo<'a>) -> Self { self.p_create_info = create_info; self } #[inline] + #[must_use] pub fn plane_aspect(mut self, plane_aspect: ImageAspectFlags) -> Self { self.plane_aspect = plane_aspect; self @@ -15558,10 +16714,12 @@ unsafe impl<'a> TaggedStructure for MemoryRequirements2<'a> { pub unsafe trait ExtendsMemoryRequirements2 {} impl<'a> MemoryRequirements2<'a> { #[inline] + #[must_use] pub fn memory_requirements(mut self, memory_requirements: MemoryRequirements) -> Self { self.memory_requirements = memory_requirements; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -15603,6 +16761,7 @@ unsafe impl<'a> TaggedStructure for SparseImageMemoryRequirements2<'a> { } impl<'a> SparseImageMemoryRequirements2<'a> { #[inline] + #[must_use] pub fn memory_requirements( mut self, memory_requirements: SparseImageMemoryRequirements, @@ -15638,6 +16797,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDevicePointClippingProperties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDevicePointClippingProperties<'_> {} impl<'a> PhysicalDevicePointClippingProperties<'a> { #[inline] + #[must_use] pub fn point_clipping_behavior( mut self, point_clipping_behavior: PointClippingBehavior, @@ -15675,11 +16835,13 @@ unsafe impl<'a> TaggedStructure for MemoryDedicatedRequirements<'a> { unsafe impl ExtendsMemoryRequirements2 for MemoryDedicatedRequirements<'_> {} impl<'a> MemoryDedicatedRequirements<'a> { #[inline] + #[must_use] pub fn prefers_dedicated_allocation(mut self, prefers_dedicated_allocation: bool) -> Self { self.prefers_dedicated_allocation = prefers_dedicated_allocation.into(); self } #[inline] + #[must_use] pub fn requires_dedicated_allocation(mut self, requires_dedicated_allocation: bool) -> Self { self.requires_dedicated_allocation = requires_dedicated_allocation.into(); self @@ -15714,11 +16876,13 @@ unsafe impl<'a> TaggedStructure for MemoryDedicatedAllocateInfo<'a> { unsafe impl ExtendsMemoryAllocateInfo for MemoryDedicatedAllocateInfo<'_> {} impl<'a> MemoryDedicatedAllocateInfo<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self @@ -15751,6 +16915,7 @@ unsafe impl<'a> TaggedStructure for ImageViewUsageCreateInfo<'a> { unsafe impl ExtendsImageViewCreateInfo for ImageViewUsageCreateInfo<'_> {} impl<'a> ImageViewUsageCreateInfo<'a> { #[inline] + #[must_use] pub fn usage(mut self, usage: ImageUsageFlags) -> Self { self.usage = usage; self @@ -15785,11 +16950,13 @@ unsafe impl<'a> TaggedStructure for ImageViewSlicedCreateInfoEXT<'a> { unsafe impl ExtendsImageViewCreateInfo for ImageViewSlicedCreateInfoEXT<'_> {} impl<'a> ImageViewSlicedCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn slice_offset(mut self, slice_offset: u32) -> Self { self.slice_offset = slice_offset; self } #[inline] + #[must_use] pub fn slice_count(mut self, slice_count: u32) -> Self { self.slice_count = slice_count; self @@ -15826,6 +16993,7 @@ unsafe impl ExtendsPipelineTessellationStateCreateInfo } impl<'a> PipelineTessellationDomainOriginStateCreateInfo<'a> { #[inline] + #[must_use] pub fn domain_origin(mut self, domain_origin: TessellationDomainOrigin) -> Self { self.domain_origin = domain_origin; self @@ -15859,6 +17027,7 @@ unsafe impl ExtendsSamplerCreateInfo for SamplerYcbcrConversionInfo<'_> {} unsafe impl ExtendsImageViewCreateInfo for SamplerYcbcrConversionInfo<'_> {} impl<'a> SamplerYcbcrConversionInfo<'a> { #[inline] + #[must_use] pub fn conversion(mut self, conversion: SamplerYcbcrConversion) -> Self { self.conversion = conversion; self @@ -15905,45 +17074,54 @@ unsafe impl<'a> TaggedStructure for SamplerYcbcrConversionCreateInfo<'a> { pub unsafe trait ExtendsSamplerYcbcrConversionCreateInfo {} impl<'a> SamplerYcbcrConversionCreateInfo<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn ycbcr_model(mut self, ycbcr_model: SamplerYcbcrModelConversion) -> Self { self.ycbcr_model = ycbcr_model; self } #[inline] + #[must_use] pub fn ycbcr_range(mut self, ycbcr_range: SamplerYcbcrRange) -> Self { self.ycbcr_range = ycbcr_range; self } #[inline] + #[must_use] pub fn components(mut self, components: ComponentMapping) -> Self { self.components = components; self } #[inline] + #[must_use] pub fn x_chroma_offset(mut self, x_chroma_offset: ChromaLocation) -> Self { self.x_chroma_offset = x_chroma_offset; self } #[inline] + #[must_use] pub fn y_chroma_offset(mut self, y_chroma_offset: ChromaLocation) -> Self { self.y_chroma_offset = y_chroma_offset; self } #[inline] + #[must_use] pub fn chroma_filter(mut self, chroma_filter: Filter) -> Self { self.chroma_filter = chroma_filter; self } #[inline] + #[must_use] pub fn force_explicit_reconstruction(mut self, force_explicit_reconstruction: bool) -> Self { self.force_explicit_reconstruction = force_explicit_reconstruction.into(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -15989,6 +17167,7 @@ unsafe impl<'a> TaggedStructure for BindImagePlaneMemoryInfo<'a> { unsafe impl ExtendsBindImageMemoryInfo for BindImagePlaneMemoryInfo<'_> {} impl<'a> BindImagePlaneMemoryInfo<'a> { #[inline] + #[must_use] pub fn plane_aspect(mut self, plane_aspect: ImageAspectFlags) -> Self { self.plane_aspect = plane_aspect; self @@ -16021,6 +17200,7 @@ unsafe impl<'a> TaggedStructure for ImagePlaneMemoryRequirementsInfo<'a> { unsafe impl ExtendsImageMemoryRequirementsInfo2 for ImagePlaneMemoryRequirementsInfo<'_> {} impl<'a> ImagePlaneMemoryRequirementsInfo<'a> { #[inline] + #[must_use] pub fn plane_aspect(mut self, plane_aspect: ImageAspectFlags) -> Self { self.plane_aspect = plane_aspect; self @@ -16055,6 +17235,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceSamplerYcbcrConvers unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSamplerYcbcrConversionFeatures<'_> {} impl<'a> PhysicalDeviceSamplerYcbcrConversionFeatures<'a> { #[inline] + #[must_use] pub fn sampler_ycbcr_conversion(mut self, sampler_ycbcr_conversion: bool) -> Self { self.sampler_ycbcr_conversion = sampler_ycbcr_conversion.into(); self @@ -16088,6 +17269,7 @@ unsafe impl<'a> TaggedStructure for SamplerYcbcrConversionImageFormatProperties< unsafe impl ExtendsImageFormatProperties2 for SamplerYcbcrConversionImageFormatProperties<'_> {} impl<'a> SamplerYcbcrConversionImageFormatProperties<'a> { #[inline] + #[must_use] pub fn combined_image_sampler_descriptor_count( mut self, combined_image_sampler_descriptor_count: u32, @@ -16123,6 +17305,7 @@ unsafe impl<'a> TaggedStructure for TextureLODGatherFormatPropertiesAMD<'a> { unsafe impl ExtendsImageFormatProperties2 for TextureLODGatherFormatPropertiesAMD<'_> {} impl<'a> TextureLODGatherFormatPropertiesAMD<'a> { #[inline] + #[must_use] pub fn supports_texture_gather_lod_bias_amd( mut self, supports_texture_gather_lod_bias_amd: bool, @@ -16161,16 +17344,19 @@ unsafe impl<'a> TaggedStructure for ConditionalRenderingBeginInfoEXT<'a> { } impl<'a> ConditionalRenderingBeginInfoEXT<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn flags(mut self, flags: ConditionalRenderingFlagsEXT) -> Self { self.flags = flags; self @@ -16203,6 +17389,7 @@ unsafe impl<'a> TaggedStructure for ProtectedSubmitInfo<'a> { unsafe impl ExtendsSubmitInfo for ProtectedSubmitInfo<'_> {} impl<'a> ProtectedSubmitInfo<'a> { #[inline] + #[must_use] pub fn protected_submit(mut self, protected_submit: bool) -> Self { self.protected_submit = protected_submit.into(); self @@ -16236,6 +17423,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceProtectedMemoryFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceProtectedMemoryFeatures<'_> {} impl<'a> PhysicalDeviceProtectedMemoryFeatures<'a> { #[inline] + #[must_use] pub fn protected_memory(mut self, protected_memory: bool) -> Self { self.protected_memory = protected_memory.into(); self @@ -16269,6 +17457,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceProtectedMemoryProperties<'a> unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceProtectedMemoryProperties<'_> {} impl<'a> PhysicalDeviceProtectedMemoryProperties<'a> { #[inline] + #[must_use] pub fn protected_no_fault(mut self, protected_no_fault: bool) -> Self { self.protected_no_fault = protected_no_fault.into(); self @@ -16304,16 +17493,19 @@ unsafe impl<'a> TaggedStructure for DeviceQueueInfo2<'a> { } impl<'a> DeviceQueueInfo2<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DeviceQueueCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn queue_family_index(mut self, queue_family_index: u32) -> Self { self.queue_family_index = queue_family_index; self } #[inline] + #[must_use] pub fn queue_index(mut self, queue_index: u32) -> Self { self.queue_index = queue_index; self @@ -16354,16 +17546,19 @@ unsafe impl ExtendsPipelineMultisampleStateCreateInfo } impl<'a> PipelineCoverageToColorStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCoverageToColorStateCreateFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn coverage_to_color_enable(mut self, coverage_to_color_enable: bool) -> Self { self.coverage_to_color_enable = coverage_to_color_enable.into(); self } #[inline] + #[must_use] pub fn coverage_to_color_location(mut self, coverage_to_color_location: u32) -> Self { self.coverage_to_color_location = coverage_to_color_location; self @@ -16399,6 +17594,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSamplerFilterMinmaxProperties< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceSamplerFilterMinmaxProperties<'_> {} impl<'a> PhysicalDeviceSamplerFilterMinmaxProperties<'a> { #[inline] + #[must_use] pub fn filter_minmax_single_component_formats( mut self, filter_minmax_single_component_formats: bool, @@ -16407,6 +17603,7 @@ impl<'a> PhysicalDeviceSamplerFilterMinmaxProperties<'a> { self } #[inline] + #[must_use] pub fn filter_minmax_image_component_mapping( mut self, filter_minmax_image_component_mapping: bool, @@ -16425,11 +17622,13 @@ pub struct SampleLocationEXT { } impl SampleLocationEXT { #[inline] + #[must_use] pub fn x(mut self, x: f32) -> Self { self.x = x; self } #[inline] + #[must_use] pub fn y(mut self, y: f32) -> Self { self.y = y; self @@ -16469,6 +17668,7 @@ unsafe impl ExtendsImageMemoryBarrier for SampleLocationsInfoEXT<'_> {} unsafe impl ExtendsImageMemoryBarrier2 for SampleLocationsInfoEXT<'_> {} impl<'a> SampleLocationsInfoEXT<'a> { #[inline] + #[must_use] pub fn sample_locations_per_pixel( mut self, sample_locations_per_pixel: SampleCountFlags, @@ -16477,11 +17677,13 @@ impl<'a> SampleLocationsInfoEXT<'a> { self } #[inline] + #[must_use] pub fn sample_location_grid_size(mut self, sample_location_grid_size: Extent2D) -> Self { self.sample_location_grid_size = sample_location_grid_size; self } #[inline] + #[must_use] pub fn sample_locations(mut self, sample_locations: &'a [SampleLocationEXT]) -> Self { self.sample_locations_count = sample_locations.len() as _; self.p_sample_locations = sample_locations.as_ptr(); @@ -16499,11 +17701,13 @@ pub struct AttachmentSampleLocationsEXT<'a> { } impl<'a> AttachmentSampleLocationsEXT<'a> { #[inline] + #[must_use] pub fn attachment_index(mut self, attachment_index: u32) -> Self { self.attachment_index = attachment_index; self } #[inline] + #[must_use] pub fn sample_locations_info( mut self, sample_locations_info: SampleLocationsInfoEXT<'a>, @@ -16523,11 +17727,13 @@ pub struct SubpassSampleLocationsEXT<'a> { } impl<'a> SubpassSampleLocationsEXT<'a> { #[inline] + #[must_use] pub fn subpass_index(mut self, subpass_index: u32) -> Self { self.subpass_index = subpass_index; self } #[inline] + #[must_use] pub fn sample_locations_info( mut self, sample_locations_info: SampleLocationsInfoEXT<'a>, @@ -16570,6 +17776,7 @@ unsafe impl<'a> TaggedStructure for RenderPassSampleLocationsBeginInfoEXT<'a> { unsafe impl ExtendsRenderPassBeginInfo for RenderPassSampleLocationsBeginInfoEXT<'_> {} impl<'a> RenderPassSampleLocationsBeginInfoEXT<'a> { #[inline] + #[must_use] pub fn attachment_initial_sample_locations( mut self, attachment_initial_sample_locations: &'a [AttachmentSampleLocationsEXT<'a>], @@ -16580,6 +17787,7 @@ impl<'a> RenderPassSampleLocationsBeginInfoEXT<'a> { self } #[inline] + #[must_use] pub fn post_subpass_sample_locations( mut self, post_subpass_sample_locations: &'a [SubpassSampleLocationsEXT<'a>], @@ -16622,11 +17830,13 @@ unsafe impl ExtendsPipelineMultisampleStateCreateInfo } impl<'a> PipelineSampleLocationsStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn sample_locations_enable(mut self, sample_locations_enable: bool) -> Self { self.sample_locations_enable = sample_locations_enable.into(); self } #[inline] + #[must_use] pub fn sample_locations_info( mut self, sample_locations_info: SampleLocationsInfoEXT<'a>, @@ -16671,6 +17881,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSampleLocationsPropertiesEXT<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceSampleLocationsPropertiesEXT<'_> {} impl<'a> PhysicalDeviceSampleLocationsPropertiesEXT<'a> { #[inline] + #[must_use] pub fn sample_location_sample_counts( mut self, sample_location_sample_counts: SampleCountFlags, @@ -16679,6 +17890,7 @@ impl<'a> PhysicalDeviceSampleLocationsPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_sample_location_grid_size( mut self, max_sample_location_grid_size: Extent2D, @@ -16687,6 +17899,7 @@ impl<'a> PhysicalDeviceSampleLocationsPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn sample_location_coordinate_range( mut self, sample_location_coordinate_range: [f32; 2], @@ -16695,11 +17908,13 @@ impl<'a> PhysicalDeviceSampleLocationsPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn sample_location_sub_pixel_bits(mut self, sample_location_sub_pixel_bits: u32) -> Self { self.sample_location_sub_pixel_bits = sample_location_sub_pixel_bits; self } #[inline] + #[must_use] pub fn variable_sample_locations(mut self, variable_sample_locations: bool) -> Self { self.variable_sample_locations = variable_sample_locations.into(); self @@ -16731,6 +17946,7 @@ unsafe impl<'a> TaggedStructure for MultisamplePropertiesEXT<'a> { } impl<'a> MultisamplePropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_sample_location_grid_size( mut self, max_sample_location_grid_size: Extent2D, @@ -16766,6 +17982,7 @@ unsafe impl<'a> TaggedStructure for SamplerReductionModeCreateInfo<'a> { unsafe impl ExtendsSamplerCreateInfo for SamplerReductionModeCreateInfo<'_> {} impl<'a> SamplerReductionModeCreateInfo<'a> { #[inline] + #[must_use] pub fn reduction_mode(mut self, reduction_mode: SamplerReductionMode) -> Self { self.reduction_mode = reduction_mode; self @@ -16800,6 +18017,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceBlendOperationAdvan unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceBlendOperationAdvancedFeaturesEXT<'_> {} impl<'a> PhysicalDeviceBlendOperationAdvancedFeaturesEXT<'a> { #[inline] + #[must_use] pub fn advanced_blend_coherent_operations( mut self, advanced_blend_coherent_operations: bool, @@ -16836,6 +18054,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMultiDrawFeaturesEX unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMultiDrawFeaturesEXT<'_> {} impl<'a> PhysicalDeviceMultiDrawFeaturesEXT<'a> { #[inline] + #[must_use] pub fn multi_draw(mut self, multi_draw: bool) -> Self { self.multi_draw = multi_draw.into(); self @@ -16882,6 +18101,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceBlendOperationAdvancedPropertiesEXT<'a> { #[inline] + #[must_use] pub fn advanced_blend_max_color_attachments( mut self, advanced_blend_max_color_attachments: u32, @@ -16890,6 +18110,7 @@ impl<'a> PhysicalDeviceBlendOperationAdvancedPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn advanced_blend_independent_blend( mut self, advanced_blend_independent_blend: bool, @@ -16898,6 +18119,7 @@ impl<'a> PhysicalDeviceBlendOperationAdvancedPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn advanced_blend_non_premultiplied_src_color( mut self, advanced_blend_non_premultiplied_src_color: bool, @@ -16907,6 +18129,7 @@ impl<'a> PhysicalDeviceBlendOperationAdvancedPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn advanced_blend_non_premultiplied_dst_color( mut self, advanced_blend_non_premultiplied_dst_color: bool, @@ -16916,6 +18139,7 @@ impl<'a> PhysicalDeviceBlendOperationAdvancedPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn advanced_blend_correlated_overlap( mut self, advanced_blend_correlated_overlap: bool, @@ -16924,6 +18148,7 @@ impl<'a> PhysicalDeviceBlendOperationAdvancedPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn advanced_blend_all_operations(mut self, advanced_blend_all_operations: bool) -> Self { self.advanced_blend_all_operations = advanced_blend_all_operations.into(); self @@ -16964,16 +18189,19 @@ unsafe impl ExtendsPipelineColorBlendStateCreateInfo } impl<'a> PipelineColorBlendAdvancedStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn src_premultiplied(mut self, src_premultiplied: bool) -> Self { self.src_premultiplied = src_premultiplied.into(); self } #[inline] + #[must_use] pub fn dst_premultiplied(mut self, dst_premultiplied: bool) -> Self { self.dst_premultiplied = dst_premultiplied.into(); self } #[inline] + #[must_use] pub fn blend_overlap(mut self, blend_overlap: BlendOverlapEXT) -> Self { self.blend_overlap = blend_overlap; self @@ -17010,11 +18238,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceInlineUniformBlockF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceInlineUniformBlockFeatures<'_> {} impl<'a> PhysicalDeviceInlineUniformBlockFeatures<'a> { #[inline] + #[must_use] pub fn inline_uniform_block(mut self, inline_uniform_block: bool) -> Self { self.inline_uniform_block = inline_uniform_block.into(); self } #[inline] + #[must_use] pub fn descriptor_binding_inline_uniform_block_update_after_bind( mut self, descriptor_binding_inline_uniform_block_update_after_bind: bool, @@ -17060,11 +18290,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceInlineUniformBlockProperties<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceInlineUniformBlockProperties<'_> {} impl<'a> PhysicalDeviceInlineUniformBlockProperties<'a> { #[inline] + #[must_use] pub fn max_inline_uniform_block_size(mut self, max_inline_uniform_block_size: u32) -> Self { self.max_inline_uniform_block_size = max_inline_uniform_block_size; self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_inline_uniform_blocks( mut self, max_per_stage_descriptor_inline_uniform_blocks: u32, @@ -17074,6 +18306,7 @@ impl<'a> PhysicalDeviceInlineUniformBlockProperties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_inline_uniform_blocks( mut self, max_per_stage_descriptor_update_after_bind_inline_uniform_blocks: u32, @@ -17083,6 +18316,7 @@ impl<'a> PhysicalDeviceInlineUniformBlockProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_inline_uniform_blocks( mut self, max_descriptor_set_inline_uniform_blocks: u32, @@ -17091,6 +18325,7 @@ impl<'a> PhysicalDeviceInlineUniformBlockProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_inline_uniform_blocks( mut self, max_descriptor_set_update_after_bind_inline_uniform_blocks: u32, @@ -17129,6 +18364,7 @@ unsafe impl<'a> TaggedStructure for WriteDescriptorSetInlineUniformBlock<'a> { unsafe impl ExtendsWriteDescriptorSet for WriteDescriptorSetInlineUniformBlock<'_> {} impl<'a> WriteDescriptorSetInlineUniformBlock<'a> { #[inline] + #[must_use] pub fn data(mut self, data: &'a [u8]) -> Self { self.data_size = data.len() as _; self.p_data = data.as_ptr().cast(); @@ -17163,6 +18399,7 @@ unsafe impl<'a> TaggedStructure for DescriptorPoolInlineUniformBlockCreateInfo<' unsafe impl ExtendsDescriptorPoolCreateInfo for DescriptorPoolInlineUniformBlockCreateInfo<'_> {} impl<'a> DescriptorPoolInlineUniformBlockCreateInfo<'a> { #[inline] + #[must_use] pub fn max_inline_uniform_block_bindings( mut self, max_inline_uniform_block_bindings: u32, @@ -17210,11 +18447,13 @@ unsafe impl ExtendsPipelineMultisampleStateCreateInfo } impl<'a> PipelineCoverageModulationStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCoverageModulationStateCreateFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn coverage_modulation_mode( mut self, coverage_modulation_mode: CoverageModulationModeNV, @@ -17223,6 +18462,7 @@ impl<'a> PipelineCoverageModulationStateCreateInfoNV<'a> { self } #[inline] + #[must_use] pub fn coverage_modulation_table_enable( mut self, coverage_modulation_table_enable: bool, @@ -17231,6 +18471,7 @@ impl<'a> PipelineCoverageModulationStateCreateInfoNV<'a> { self } #[inline] + #[must_use] pub fn coverage_modulation_table(mut self, coverage_modulation_table: &'a [f32]) -> Self { self.coverage_modulation_table_count = coverage_modulation_table.len() as _; self.p_coverage_modulation_table = coverage_modulation_table.as_ptr(); @@ -17268,6 +18509,7 @@ unsafe impl ExtendsSwapchainCreateInfoKHR for ImageFormatListCreateInfo<'_> {} unsafe impl ExtendsPhysicalDeviceImageFormatInfo2 for ImageFormatListCreateInfo<'_> {} impl<'a> ImageFormatListCreateInfo<'a> { #[inline] + #[must_use] pub fn view_formats(mut self, view_formats: &'a [Format]) -> Self { self.view_format_count = view_formats.len() as _; self.p_view_formats = view_formats.as_ptr(); @@ -17304,11 +18546,13 @@ unsafe impl<'a> TaggedStructure for ValidationCacheCreateInfoEXT<'a> { } impl<'a> ValidationCacheCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ValidationCacheCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn initial_data(mut self, initial_data: &'a [u8]) -> Self { self.initial_data_size = initial_data.len(); self.p_initial_data = initial_data.as_ptr().cast(); @@ -17344,6 +18588,7 @@ unsafe impl ExtendsShaderModuleCreateInfo for ShaderModuleValidationCacheCreateI unsafe impl ExtendsPipelineShaderStageCreateInfo for ShaderModuleValidationCacheCreateInfoEXT<'_> {} impl<'a> ShaderModuleValidationCacheCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn validation_cache(mut self, validation_cache: ValidationCacheEXT) -> Self { self.validation_cache = validation_cache; self @@ -17378,11 +18623,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMaintenance3Properties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMaintenance3Properties<'_> {} impl<'a> PhysicalDeviceMaintenance3Properties<'a> { #[inline] + #[must_use] pub fn max_per_set_descriptors(mut self, max_per_set_descriptors: u32) -> Self { self.max_per_set_descriptors = max_per_set_descriptors; self } #[inline] + #[must_use] pub fn max_memory_allocation_size(mut self, max_memory_allocation_size: DeviceSize) -> Self { self.max_memory_allocation_size = max_memory_allocation_size; self @@ -17416,6 +18663,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMaintenance4Feature unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMaintenance4Features<'_> {} impl<'a> PhysicalDeviceMaintenance4Features<'a> { #[inline] + #[must_use] pub fn maintenance4(mut self, maintenance4: bool) -> Self { self.maintenance4 = maintenance4.into(); self @@ -17448,6 +18696,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMaintenance4Properties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMaintenance4Properties<'_> {} impl<'a> PhysicalDeviceMaintenance4Properties<'a> { #[inline] + #[must_use] pub fn max_buffer_size(mut self, max_buffer_size: DeviceSize) -> Self { self.max_buffer_size = max_buffer_size; self @@ -17481,6 +18730,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMaintenance5Feature unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMaintenance5FeaturesKHR<'_> {} impl<'a> PhysicalDeviceMaintenance5FeaturesKHR<'a> { #[inline] + #[must_use] pub fn maintenance5(mut self, maintenance5: bool) -> Self { self.maintenance5 = maintenance5.into(); self @@ -17524,6 +18774,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMaintenance5PropertiesKHR<'a> unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMaintenance5PropertiesKHR<'_> {} impl<'a> PhysicalDeviceMaintenance5PropertiesKHR<'a> { #[inline] + #[must_use] pub fn early_fragment_multisample_coverage_after_sample_counting( mut self, early_fragment_multisample_coverage_after_sample_counting: bool, @@ -17533,6 +18784,7 @@ impl<'a> PhysicalDeviceMaintenance5PropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn early_fragment_sample_mask_test_before_sample_counting( mut self, early_fragment_sample_mask_test_before_sample_counting: bool, @@ -17542,6 +18794,7 @@ impl<'a> PhysicalDeviceMaintenance5PropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn depth_stencil_swizzle_one_support( mut self, depth_stencil_swizzle_one_support: bool, @@ -17550,11 +18803,13 @@ impl<'a> PhysicalDeviceMaintenance5PropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn polygon_mode_point_size(mut self, polygon_mode_point_size: bool) -> Self { self.polygon_mode_point_size = polygon_mode_point_size.into(); self } #[inline] + #[must_use] pub fn non_strict_single_pixel_wide_lines_use_parallelogram( mut self, non_strict_single_pixel_wide_lines_use_parallelogram: bool, @@ -17564,6 +18819,7 @@ impl<'a> PhysicalDeviceMaintenance5PropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn non_strict_wide_lines_use_parallelogram( mut self, non_strict_wide_lines_use_parallelogram: bool, @@ -17607,22 +18863,26 @@ unsafe impl<'a> TaggedStructure for RenderingAreaInfoKHR<'a> { } impl<'a> RenderingAreaInfoKHR<'a> { #[inline] + #[must_use] pub fn view_mask(mut self, view_mask: u32) -> Self { self.view_mask = view_mask; self } #[inline] + #[must_use] pub fn color_attachment_formats(mut self, color_attachment_formats: &'a [Format]) -> Self { self.color_attachment_count = color_attachment_formats.len() as _; self.p_color_attachment_formats = color_attachment_formats.as_ptr(); self } #[inline] + #[must_use] pub fn depth_attachment_format(mut self, depth_attachment_format: Format) -> Self { self.depth_attachment_format = depth_attachment_format; self } #[inline] + #[must_use] pub fn stencil_attachment_format(mut self, stencil_attachment_format: Format) -> Self { self.stencil_attachment_format = stencil_attachment_format; self @@ -17655,10 +18915,12 @@ unsafe impl<'a> TaggedStructure for DescriptorSetLayoutSupport<'a> { pub unsafe trait ExtendsDescriptorSetLayoutSupport {} impl<'a> DescriptorSetLayoutSupport<'a> { #[inline] + #[must_use] pub fn supported(mut self, supported: bool) -> Self { self.supported = supported.into(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -17703,6 +18965,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderDrawParameter unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderDrawParametersFeatures<'_> {} impl<'a> PhysicalDeviceShaderDrawParametersFeatures<'a> { #[inline] + #[must_use] pub fn shader_draw_parameters(mut self, shader_draw_parameters: bool) -> Self { self.shader_draw_parameters = shader_draw_parameters.into(); self @@ -17739,11 +19002,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderFloat16Int8Fe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderFloat16Int8Features<'_> {} impl<'a> PhysicalDeviceShaderFloat16Int8Features<'a> { #[inline] + #[must_use] pub fn shader_float16(mut self, shader_float16: bool) -> Self { self.shader_float16 = shader_float16.into(); self } #[inline] + #[must_use] pub fn shader_int8(mut self, shader_int8: bool) -> Self { self.shader_int8 = shader_int8.into(); self @@ -17808,6 +19073,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceFloatControlsProperties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceFloatControlsProperties<'_> {} impl<'a> PhysicalDeviceFloatControlsProperties<'a> { #[inline] + #[must_use] pub fn denorm_behavior_independence( mut self, denorm_behavior_independence: ShaderFloatControlsIndependence, @@ -17816,6 +19082,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn rounding_mode_independence( mut self, rounding_mode_independence: ShaderFloatControlsIndependence, @@ -17824,6 +19091,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_signed_zero_inf_nan_preserve_float16( mut self, shader_signed_zero_inf_nan_preserve_float16: bool, @@ -17833,6 +19101,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_signed_zero_inf_nan_preserve_float32( mut self, shader_signed_zero_inf_nan_preserve_float32: bool, @@ -17842,6 +19111,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_signed_zero_inf_nan_preserve_float64( mut self, shader_signed_zero_inf_nan_preserve_float64: bool, @@ -17851,21 +19121,25 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_denorm_preserve_float16(mut self, shader_denorm_preserve_float16: bool) -> Self { self.shader_denorm_preserve_float16 = shader_denorm_preserve_float16.into(); self } #[inline] + #[must_use] pub fn shader_denorm_preserve_float32(mut self, shader_denorm_preserve_float32: bool) -> Self { self.shader_denorm_preserve_float32 = shader_denorm_preserve_float32.into(); self } #[inline] + #[must_use] pub fn shader_denorm_preserve_float64(mut self, shader_denorm_preserve_float64: bool) -> Self { self.shader_denorm_preserve_float64 = shader_denorm_preserve_float64.into(); self } #[inline] + #[must_use] pub fn shader_denorm_flush_to_zero_float16( mut self, shader_denorm_flush_to_zero_float16: bool, @@ -17874,6 +19148,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_denorm_flush_to_zero_float32( mut self, shader_denorm_flush_to_zero_float32: bool, @@ -17882,6 +19157,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_denorm_flush_to_zero_float64( mut self, shader_denorm_flush_to_zero_float64: bool, @@ -17890,6 +19166,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rte_float16( mut self, shader_rounding_mode_rte_float16: bool, @@ -17898,6 +19175,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rte_float32( mut self, shader_rounding_mode_rte_float32: bool, @@ -17906,6 +19184,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rte_float64( mut self, shader_rounding_mode_rte_float64: bool, @@ -17914,6 +19193,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rtz_float16( mut self, shader_rounding_mode_rtz_float16: bool, @@ -17922,6 +19202,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rtz_float32( mut self, shader_rounding_mode_rtz_float32: bool, @@ -17930,6 +19211,7 @@ impl<'a> PhysicalDeviceFloatControlsProperties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rtz_float64( mut self, shader_rounding_mode_rtz_float64: bool, @@ -17966,6 +19248,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceHostQueryResetFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceHostQueryResetFeatures<'_> {} impl<'a> PhysicalDeviceHostQueryResetFeatures<'a> { #[inline] + #[must_use] pub fn host_query_reset(mut self, host_query_reset: bool) -> Self { self.host_query_reset = host_query_reset.into(); self @@ -17981,11 +19264,13 @@ pub struct NativeBufferUsage2ANDROID { } impl NativeBufferUsage2ANDROID { #[inline] + #[must_use] pub fn consumer(mut self, consumer: u64) -> Self { self.consumer = consumer; self } #[inline] + #[must_use] pub fn producer(mut self, producer: u64) -> Self { self.producer = producer; self @@ -18025,26 +19310,31 @@ unsafe impl<'a> TaggedStructure for NativeBufferANDROID<'a> { } impl<'a> NativeBufferANDROID<'a> { #[inline] + #[must_use] pub fn handle(mut self, handle: *const c_void) -> Self { self.handle = handle; self } #[inline] + #[must_use] pub fn stride(mut self, stride: c_int) -> Self { self.stride = stride; self } #[inline] + #[must_use] pub fn format(mut self, format: c_int) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn usage(mut self, usage: c_int) -> Self { self.usage = usage; self } #[inline] + #[must_use] pub fn usage2(mut self, usage2: NativeBufferUsage2ANDROID) -> Self { self.usage2 = usage2; self @@ -18076,6 +19366,7 @@ unsafe impl<'a> TaggedStructure for SwapchainImageCreateInfoANDROID<'a> { } impl<'a> SwapchainImageCreateInfoANDROID<'a> { #[inline] + #[must_use] pub fn usage(mut self, usage: SwapchainImageUsageFlagsANDROID) -> Self { self.usage = usage; self @@ -18108,6 +19399,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDevicePresentationPropertiesANDROID< } impl<'a> PhysicalDevicePresentationPropertiesANDROID<'a> { #[inline] + #[must_use] pub fn shared_image(mut self, shared_image: bool) -> Self { self.shared_image = shared_image.into(); self @@ -18126,26 +19418,31 @@ pub struct ShaderResourceUsageAMD { } impl ShaderResourceUsageAMD { #[inline] + #[must_use] pub fn num_used_vgprs(mut self, num_used_vgprs: u32) -> Self { self.num_used_vgprs = num_used_vgprs; self } #[inline] + #[must_use] pub fn num_used_sgprs(mut self, num_used_sgprs: u32) -> Self { self.num_used_sgprs = num_used_sgprs; self } #[inline] + #[must_use] pub fn lds_size_per_local_work_group(mut self, lds_size_per_local_work_group: u32) -> Self { self.lds_size_per_local_work_group = lds_size_per_local_work_group; self } #[inline] + #[must_use] pub fn lds_usage_size_in_bytes(mut self, lds_usage_size_in_bytes: usize) -> Self { self.lds_usage_size_in_bytes = lds_usage_size_in_bytes; self } #[inline] + #[must_use] pub fn scratch_mem_usage_in_bytes(mut self, scratch_mem_usage_in_bytes: usize) -> Self { self.scratch_mem_usage_in_bytes = scratch_mem_usage_in_bytes; self @@ -18180,36 +19477,43 @@ impl ::std::default::Default for ShaderStatisticsInfoAMD { } impl ShaderStatisticsInfoAMD { #[inline] + #[must_use] pub fn shader_stage_mask(mut self, shader_stage_mask: ShaderStageFlags) -> Self { self.shader_stage_mask = shader_stage_mask; self } #[inline] + #[must_use] pub fn resource_usage(mut self, resource_usage: ShaderResourceUsageAMD) -> Self { self.resource_usage = resource_usage; self } #[inline] + #[must_use] pub fn num_physical_vgprs(mut self, num_physical_vgprs: u32) -> Self { self.num_physical_vgprs = num_physical_vgprs; self } #[inline] + #[must_use] pub fn num_physical_sgprs(mut self, num_physical_sgprs: u32) -> Self { self.num_physical_sgprs = num_physical_sgprs; self } #[inline] + #[must_use] pub fn num_available_vgprs(mut self, num_available_vgprs: u32) -> Self { self.num_available_vgprs = num_available_vgprs; self } #[inline] + #[must_use] pub fn num_available_sgprs(mut self, num_available_sgprs: u32) -> Self { self.num_available_sgprs = num_available_sgprs; self } #[inline] + #[must_use] pub fn compute_work_group_size(mut self, compute_work_group_size: [u32; 3]) -> Self { self.compute_work_group_size = compute_work_group_size; self @@ -18243,6 +19547,7 @@ unsafe impl<'a> TaggedStructure for DeviceQueueGlobalPriorityCreateInfoKHR<'a> { unsafe impl ExtendsDeviceQueueCreateInfo for DeviceQueueGlobalPriorityCreateInfoKHR<'_> {} impl<'a> DeviceQueueGlobalPriorityCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn global_priority(mut self, global_priority: QueueGlobalPriorityKHR) -> Self { self.global_priority = global_priority; self @@ -18277,6 +19582,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceGlobalPriorityQuery unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceGlobalPriorityQueryFeaturesKHR<'_> {} impl<'a> PhysicalDeviceGlobalPriorityQueryFeaturesKHR<'a> { #[inline] + #[must_use] pub fn global_priority_query(mut self, global_priority_query: bool) -> Self { self.global_priority_query = global_priority_query.into(); self @@ -18312,11 +19618,13 @@ unsafe impl<'a> TaggedStructure for QueueFamilyGlobalPriorityPropertiesKHR<'a> { unsafe impl ExtendsQueueFamilyProperties2 for QueueFamilyGlobalPriorityPropertiesKHR<'_> {} impl<'a> QueueFamilyGlobalPriorityPropertiesKHR<'a> { #[inline] + #[must_use] pub fn priority_count(mut self, priority_count: u32) -> Self { self.priority_count = priority_count; self } #[inline] + #[must_use] pub fn priorities( mut self, priorities: [QueueGlobalPriorityKHR; MAX_GLOBAL_PRIORITY_SIZE_KHR], @@ -18356,17 +19664,20 @@ unsafe impl<'a> TaggedStructure for DebugUtilsObjectNameInfoEXT<'a> { unsafe impl ExtendsPipelineShaderStageCreateInfo for DebugUtilsObjectNameInfoEXT<'_> {} impl<'a> DebugUtilsObjectNameInfoEXT<'a> { #[inline] + #[must_use] pub fn object_handle(mut self, object_handle: T) -> Self { self.object_handle = object_handle.as_raw(); self.object_type = T::TYPE; self } #[inline] + #[must_use] pub fn object_name(mut self, object_name: &'a core::ffi::CStr) -> Self { self.p_object_name = object_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn object_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_object_name) } @@ -18405,17 +19716,20 @@ unsafe impl<'a> TaggedStructure for DebugUtilsObjectTagInfoEXT<'a> { } impl<'a> DebugUtilsObjectTagInfoEXT<'a> { #[inline] + #[must_use] pub fn object_handle(mut self, object_handle: T) -> Self { self.object_handle = object_handle.as_raw(); self.object_type = T::TYPE; self } #[inline] + #[must_use] pub fn tag_name(mut self, tag_name: u64) -> Self { self.tag_name = tag_name; self } #[inline] + #[must_use] pub fn tag(mut self, tag: &'a [u8]) -> Self { self.tag_size = tag.len(); self.p_tag = tag.as_ptr().cast(); @@ -18450,15 +19764,18 @@ unsafe impl<'a> TaggedStructure for DebugUtilsLabelEXT<'a> { } impl<'a> DebugUtilsLabelEXT<'a> { #[inline] + #[must_use] pub fn label_name(mut self, label_name: &'a core::ffi::CStr) -> Self { self.p_label_name = label_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn label_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_label_name) } #[inline] + #[must_use] pub fn color(mut self, color: [f32; 4]) -> Self { self.color = color; self @@ -18515,21 +19832,25 @@ unsafe impl<'a> TaggedStructure for DebugUtilsMessengerCreateInfoEXT<'a> { unsafe impl ExtendsInstanceCreateInfo for DebugUtilsMessengerCreateInfoEXT<'_> {} impl<'a> DebugUtilsMessengerCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DebugUtilsMessengerCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn message_severity(mut self, message_severity: DebugUtilsMessageSeverityFlagsEXT) -> Self { self.message_severity = message_severity; self } #[inline] + #[must_use] pub fn message_type(mut self, message_type: DebugUtilsMessageTypeFlagsEXT) -> Self { self.message_type = message_type; self } #[inline] + #[must_use] pub fn pfn_user_callback( mut self, pfn_user_callback: PFN_vkDebugUtilsMessengerCallbackEXT, @@ -18538,6 +19859,7 @@ impl<'a> DebugUtilsMessengerCreateInfoEXT<'a> { self } #[inline] + #[must_use] pub fn user_data(mut self, user_data: *mut c_void) -> Self { self.p_user_data = user_data; self @@ -18588,51 +19910,61 @@ unsafe impl<'a> TaggedStructure for DebugUtilsMessengerCallbackDataEXT<'a> { pub unsafe trait ExtendsDebugUtilsMessengerCallbackDataEXT {} impl<'a> DebugUtilsMessengerCallbackDataEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DebugUtilsMessengerCallbackDataFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn message_id_name(mut self, message_id_name: &'a core::ffi::CStr) -> Self { self.p_message_id_name = message_id_name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn message_id_name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_message_id_name) } #[inline] + #[must_use] pub fn message_id_number(mut self, message_id_number: i32) -> Self { self.message_id_number = message_id_number; self } #[inline] + #[must_use] pub fn message(mut self, message: &'a core::ffi::CStr) -> Self { self.p_message = message.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn message_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_message) } #[inline] + #[must_use] pub fn queue_labels(mut self, queue_labels: &'a [DebugUtilsLabelEXT<'a>]) -> Self { self.queue_label_count = queue_labels.len() as _; self.p_queue_labels = queue_labels.as_ptr(); self } #[inline] + #[must_use] pub fn cmd_buf_labels(mut self, cmd_buf_labels: &'a [DebugUtilsLabelEXT<'a>]) -> Self { self.cmd_buf_label_count = cmd_buf_labels.len() as _; self.p_cmd_buf_labels = cmd_buf_labels.as_ptr(); self } #[inline] + #[must_use] pub fn objects(mut self, objects: &'a [DebugUtilsObjectNameInfoEXT<'a>]) -> Self { self.object_count = objects.len() as _; self.p_objects = objects.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -18680,6 +20012,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDeviceMemoryReportF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDeviceMemoryReportFeaturesEXT<'_> {} impl<'a> PhysicalDeviceDeviceMemoryReportFeaturesEXT<'a> { #[inline] + #[must_use] pub fn device_memory_report(mut self, device_memory_report: bool) -> Self { self.device_memory_report = device_memory_report.into(); self @@ -18731,11 +20064,13 @@ unsafe impl<'a> TaggedStructure for DeviceDeviceMemoryReportCreateInfoEXT<'a> { unsafe impl ExtendsDeviceCreateInfo for DeviceDeviceMemoryReportCreateInfoEXT<'_> {} impl<'a> DeviceDeviceMemoryReportCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DeviceMemoryReportFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn pfn_user_callback( mut self, pfn_user_callback: PFN_vkDeviceMemoryReportCallbackEXT, @@ -18744,6 +20079,7 @@ impl<'a> DeviceDeviceMemoryReportCreateInfoEXT<'a> { self } #[inline] + #[must_use] pub fn user_data(mut self, user_data: *mut c_void) -> Self { self.p_user_data = user_data; self @@ -18787,32 +20123,38 @@ unsafe impl<'a> TaggedStructure for DeviceMemoryReportCallbackDataEXT<'a> { } impl<'a> DeviceMemoryReportCallbackDataEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DeviceMemoryReportFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn ty(mut self, ty: DeviceMemoryReportEventTypeEXT) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn memory_object_id(mut self, memory_object_id: u64) -> Self { self.memory_object_id = memory_object_id; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn object_handle(mut self, object_handle: T) -> Self { self.object_handle = object_handle.as_raw(); self.object_type = T::TYPE; self } #[inline] + #[must_use] pub fn heap_index(mut self, heap_index: u32) -> Self { self.heap_index = heap_index; self @@ -18847,11 +20189,13 @@ unsafe impl<'a> TaggedStructure for ImportMemoryHostPointerInfoEXT<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportMemoryHostPointerInfoEXT<'_> {} impl<'a> ImportMemoryHostPointerInfoEXT<'a> { #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self } #[inline] + #[must_use] pub fn host_pointer(mut self, host_pointer: *mut c_void) -> Self { self.p_host_pointer = host_pointer; self @@ -18883,6 +20227,7 @@ unsafe impl<'a> TaggedStructure for MemoryHostPointerPropertiesEXT<'a> { } impl<'a> MemoryHostPointerPropertiesEXT<'a> { #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self @@ -18916,6 +20261,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceExternalMemoryHostPropertiesEX unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceExternalMemoryHostPropertiesEXT<'_> {} impl<'a> PhysicalDeviceExternalMemoryHostPropertiesEXT<'a> { #[inline] + #[must_use] pub fn min_imported_host_pointer_alignment( mut self, min_imported_host_pointer_alignment: DeviceSize, @@ -18971,11 +20317,13 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a> { #[inline] + #[must_use] pub fn primitive_overestimation_size(mut self, primitive_overestimation_size: f32) -> Self { self.primitive_overestimation_size = primitive_overestimation_size; self } #[inline] + #[must_use] pub fn max_extra_primitive_overestimation_size( mut self, max_extra_primitive_overestimation_size: f32, @@ -18984,6 +20332,7 @@ impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn extra_primitive_overestimation_size_granularity( mut self, extra_primitive_overestimation_size_granularity: f32, @@ -18993,11 +20342,13 @@ impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn primitive_underestimation(mut self, primitive_underestimation: bool) -> Self { self.primitive_underestimation = primitive_underestimation.into(); self } #[inline] + #[must_use] pub fn conservative_point_and_line_rasterization( mut self, conservative_point_and_line_rasterization: bool, @@ -19007,6 +20358,7 @@ impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn degenerate_triangles_rasterized( mut self, degenerate_triangles_rasterized: bool, @@ -19015,11 +20367,13 @@ impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn degenerate_lines_rasterized(mut self, degenerate_lines_rasterized: bool) -> Self { self.degenerate_lines_rasterized = degenerate_lines_rasterized.into(); self } #[inline] + #[must_use] pub fn fully_covered_fragment_shader_input_variable( mut self, fully_covered_fragment_shader_input_variable: bool, @@ -19029,6 +20383,7 @@ impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn conservative_rasterization_post_depth_coverage( mut self, conservative_rasterization_post_depth_coverage: bool, @@ -19064,6 +20419,7 @@ unsafe impl<'a> TaggedStructure for CalibratedTimestampInfoEXT<'a> { } impl<'a> CalibratedTimestampInfoEXT<'a> { #[inline] + #[must_use] pub fn time_domain(mut self, time_domain: TimeDomainEXT) -> Self { self.time_domain = time_domain; self @@ -19122,71 +20478,85 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderCorePropertiesAMD<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderCorePropertiesAMD<'_> {} impl<'a> PhysicalDeviceShaderCorePropertiesAMD<'a> { #[inline] + #[must_use] pub fn shader_engine_count(mut self, shader_engine_count: u32) -> Self { self.shader_engine_count = shader_engine_count; self } #[inline] + #[must_use] pub fn shader_arrays_per_engine_count(mut self, shader_arrays_per_engine_count: u32) -> Self { self.shader_arrays_per_engine_count = shader_arrays_per_engine_count; self } #[inline] + #[must_use] pub fn compute_units_per_shader_array(mut self, compute_units_per_shader_array: u32) -> Self { self.compute_units_per_shader_array = compute_units_per_shader_array; self } #[inline] + #[must_use] pub fn simd_per_compute_unit(mut self, simd_per_compute_unit: u32) -> Self { self.simd_per_compute_unit = simd_per_compute_unit; self } #[inline] + #[must_use] pub fn wavefronts_per_simd(mut self, wavefronts_per_simd: u32) -> Self { self.wavefronts_per_simd = wavefronts_per_simd; self } #[inline] + #[must_use] pub fn wavefront_size(mut self, wavefront_size: u32) -> Self { self.wavefront_size = wavefront_size; self } #[inline] + #[must_use] pub fn sgprs_per_simd(mut self, sgprs_per_simd: u32) -> Self { self.sgprs_per_simd = sgprs_per_simd; self } #[inline] + #[must_use] pub fn min_sgpr_allocation(mut self, min_sgpr_allocation: u32) -> Self { self.min_sgpr_allocation = min_sgpr_allocation; self } #[inline] + #[must_use] pub fn max_sgpr_allocation(mut self, max_sgpr_allocation: u32) -> Self { self.max_sgpr_allocation = max_sgpr_allocation; self } #[inline] + #[must_use] pub fn sgpr_allocation_granularity(mut self, sgpr_allocation_granularity: u32) -> Self { self.sgpr_allocation_granularity = sgpr_allocation_granularity; self } #[inline] + #[must_use] pub fn vgprs_per_simd(mut self, vgprs_per_simd: u32) -> Self { self.vgprs_per_simd = vgprs_per_simd; self } #[inline] + #[must_use] pub fn min_vgpr_allocation(mut self, min_vgpr_allocation: u32) -> Self { self.min_vgpr_allocation = min_vgpr_allocation; self } #[inline] + #[must_use] pub fn max_vgpr_allocation(mut self, max_vgpr_allocation: u32) -> Self { self.max_vgpr_allocation = max_vgpr_allocation; self } #[inline] + #[must_use] pub fn vgpr_allocation_granularity(mut self, vgpr_allocation_granularity: u32) -> Self { self.vgpr_allocation_granularity = vgpr_allocation_granularity; self @@ -19222,6 +20592,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderCoreProperties2AMD<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderCoreProperties2AMD<'_> {} impl<'a> PhysicalDeviceShaderCoreProperties2AMD<'a> { #[inline] + #[must_use] pub fn shader_core_features( mut self, shader_core_features: ShaderCorePropertiesFlagsAMD, @@ -19230,6 +20601,7 @@ impl<'a> PhysicalDeviceShaderCoreProperties2AMD<'a> { self } #[inline] + #[must_use] pub fn active_compute_unit_count(mut self, active_compute_unit_count: u32) -> Self { self.active_compute_unit_count = active_compute_unit_count; self @@ -19270,11 +20642,13 @@ unsafe impl ExtendsPipelineRasterizationStateCreateInfo } impl<'a> PipelineRasterizationConservativeStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineRasterizationConservativeStateCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn conservative_rasterization_mode( mut self, conservative_rasterization_mode: ConservativeRasterizationModeEXT, @@ -19283,6 +20657,7 @@ impl<'a> PipelineRasterizationConservativeStateCreateInfoEXT<'a> { self } #[inline] + #[must_use] pub fn extra_primitive_overestimation_size( mut self, extra_primitive_overestimation_size: f32, @@ -19358,6 +20733,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDescriptorIndexingF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDescriptorIndexingFeatures<'_> {} impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { #[inline] + #[must_use] pub fn shader_input_attachment_array_dynamic_indexing( mut self, shader_input_attachment_array_dynamic_indexing: bool, @@ -19367,6 +20743,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_texel_buffer_array_dynamic_indexing( mut self, shader_uniform_texel_buffer_array_dynamic_indexing: bool, @@ -19376,6 +20753,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_storage_texel_buffer_array_dynamic_indexing( mut self, shader_storage_texel_buffer_array_dynamic_indexing: bool, @@ -19385,6 +20763,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_buffer_array_non_uniform_indexing( mut self, shader_uniform_buffer_array_non_uniform_indexing: bool, @@ -19394,6 +20773,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_sampled_image_array_non_uniform_indexing( mut self, shader_sampled_image_array_non_uniform_indexing: bool, @@ -19403,6 +20783,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_storage_buffer_array_non_uniform_indexing( mut self, shader_storage_buffer_array_non_uniform_indexing: bool, @@ -19412,6 +20793,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_storage_image_array_non_uniform_indexing( mut self, shader_storage_image_array_non_uniform_indexing: bool, @@ -19421,6 +20803,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_input_attachment_array_non_uniform_indexing( mut self, shader_input_attachment_array_non_uniform_indexing: bool, @@ -19430,6 +20813,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_texel_buffer_array_non_uniform_indexing( mut self, shader_uniform_texel_buffer_array_non_uniform_indexing: bool, @@ -19439,6 +20823,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn shader_storage_texel_buffer_array_non_uniform_indexing( mut self, shader_storage_texel_buffer_array_non_uniform_indexing: bool, @@ -19448,6 +20833,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_uniform_buffer_update_after_bind( mut self, descriptor_binding_uniform_buffer_update_after_bind: bool, @@ -19457,6 +20843,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_sampled_image_update_after_bind( mut self, descriptor_binding_sampled_image_update_after_bind: bool, @@ -19466,6 +20853,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_storage_image_update_after_bind( mut self, descriptor_binding_storage_image_update_after_bind: bool, @@ -19475,6 +20863,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_storage_buffer_update_after_bind( mut self, descriptor_binding_storage_buffer_update_after_bind: bool, @@ -19484,6 +20873,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_uniform_texel_buffer_update_after_bind( mut self, descriptor_binding_uniform_texel_buffer_update_after_bind: bool, @@ -19493,6 +20883,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_storage_texel_buffer_update_after_bind( mut self, descriptor_binding_storage_texel_buffer_update_after_bind: bool, @@ -19502,6 +20893,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_update_unused_while_pending( mut self, descriptor_binding_update_unused_while_pending: bool, @@ -19511,6 +20903,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_partially_bound( mut self, descriptor_binding_partially_bound: bool, @@ -19519,6 +20912,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_variable_descriptor_count( mut self, descriptor_binding_variable_descriptor_count: bool, @@ -19528,6 +20922,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingFeatures<'a> { self } #[inline] + #[must_use] pub fn runtime_descriptor_array(mut self, runtime_descriptor_array: bool) -> Self { self.runtime_descriptor_array = runtime_descriptor_array.into(); self @@ -19605,6 +21000,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceDescriptorIndexingProperties<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceDescriptorIndexingProperties<'_> {} impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { #[inline] + #[must_use] pub fn max_update_after_bind_descriptors_in_all_pools( mut self, max_update_after_bind_descriptors_in_all_pools: u32, @@ -19614,6 +21010,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_buffer_array_non_uniform_indexing_native( mut self, shader_uniform_buffer_array_non_uniform_indexing_native: bool, @@ -19623,6 +21020,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn shader_sampled_image_array_non_uniform_indexing_native( mut self, shader_sampled_image_array_non_uniform_indexing_native: bool, @@ -19632,6 +21030,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn shader_storage_buffer_array_non_uniform_indexing_native( mut self, shader_storage_buffer_array_non_uniform_indexing_native: bool, @@ -19641,6 +21040,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn shader_storage_image_array_non_uniform_indexing_native( mut self, shader_storage_image_array_non_uniform_indexing_native: bool, @@ -19650,6 +21050,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn shader_input_attachment_array_non_uniform_indexing_native( mut self, shader_input_attachment_array_non_uniform_indexing_native: bool, @@ -19659,6 +21060,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn robust_buffer_access_update_after_bind( mut self, robust_buffer_access_update_after_bind: bool, @@ -19667,11 +21069,13 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn quad_divergent_implicit_lod(mut self, quad_divergent_implicit_lod: bool) -> Self { self.quad_divergent_implicit_lod = quad_divergent_implicit_lod.into(); self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_samplers( mut self, max_per_stage_descriptor_update_after_bind_samplers: u32, @@ -19681,6 +21085,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_uniform_buffers( mut self, max_per_stage_descriptor_update_after_bind_uniform_buffers: u32, @@ -19690,6 +21095,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_storage_buffers( mut self, max_per_stage_descriptor_update_after_bind_storage_buffers: u32, @@ -19699,6 +21105,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_sampled_images( mut self, max_per_stage_descriptor_update_after_bind_sampled_images: u32, @@ -19708,6 +21115,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_storage_images( mut self, max_per_stage_descriptor_update_after_bind_storage_images: u32, @@ -19717,6 +21125,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_input_attachments( mut self, max_per_stage_descriptor_update_after_bind_input_attachments: u32, @@ -19726,6 +21135,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_update_after_bind_resources( mut self, max_per_stage_update_after_bind_resources: u32, @@ -19734,6 +21144,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_samplers( mut self, max_descriptor_set_update_after_bind_samplers: u32, @@ -19743,6 +21154,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_uniform_buffers( mut self, max_descriptor_set_update_after_bind_uniform_buffers: u32, @@ -19752,6 +21164,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_uniform_buffers_dynamic( mut self, max_descriptor_set_update_after_bind_uniform_buffers_dynamic: u32, @@ -19761,6 +21174,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_storage_buffers( mut self, max_descriptor_set_update_after_bind_storage_buffers: u32, @@ -19770,6 +21184,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_storage_buffers_dynamic( mut self, max_descriptor_set_update_after_bind_storage_buffers_dynamic: u32, @@ -19779,6 +21194,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_sampled_images( mut self, max_descriptor_set_update_after_bind_sampled_images: u32, @@ -19788,6 +21204,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_storage_images( mut self, max_descriptor_set_update_after_bind_storage_images: u32, @@ -19797,6 +21214,7 @@ impl<'a> PhysicalDeviceDescriptorIndexingProperties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_input_attachments( mut self, max_descriptor_set_update_after_bind_input_attachments: u32, @@ -19836,6 +21254,7 @@ unsafe impl<'a> TaggedStructure for DescriptorSetLayoutBindingFlagsCreateInfo<'a unsafe impl ExtendsDescriptorSetLayoutCreateInfo for DescriptorSetLayoutBindingFlagsCreateInfo<'_> {} impl<'a> DescriptorSetLayoutBindingFlagsCreateInfo<'a> { #[inline] + #[must_use] pub fn binding_flags(mut self, binding_flags: &'a [DescriptorBindingFlags]) -> Self { self.binding_count = binding_flags.len() as _; self.p_binding_flags = binding_flags.as_ptr(); @@ -19875,6 +21294,7 @@ unsafe impl ExtendsDescriptorSetAllocateInfo } impl<'a> DescriptorSetVariableDescriptorCountAllocateInfo<'a> { #[inline] + #[must_use] pub fn descriptor_counts(mut self, descriptor_counts: &'a [u32]) -> Self { self.descriptor_set_count = descriptor_counts.len() as _; self.p_descriptor_counts = descriptor_counts.as_ptr(); @@ -19912,6 +21332,7 @@ unsafe impl ExtendsDescriptorSetLayoutSupport } impl<'a> DescriptorSetVariableDescriptorCountLayoutSupport<'a> { #[inline] + #[must_use] pub fn max_variable_descriptor_count(mut self, max_variable_descriptor_count: u32) -> Self { self.max_variable_descriptor_count = max_variable_descriptor_count; self @@ -19960,50 +21381,60 @@ unsafe impl<'a> TaggedStructure for AttachmentDescription2<'a> { pub unsafe trait ExtendsAttachmentDescription2 {} impl<'a> AttachmentDescription2<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: AttachmentDescriptionFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn samples(mut self, samples: SampleCountFlags) -> Self { self.samples = samples; self } #[inline] + #[must_use] pub fn load_op(mut self, load_op: AttachmentLoadOp) -> Self { self.load_op = load_op; self } #[inline] + #[must_use] pub fn store_op(mut self, store_op: AttachmentStoreOp) -> Self { self.store_op = store_op; self } #[inline] + #[must_use] pub fn stencil_load_op(mut self, stencil_load_op: AttachmentLoadOp) -> Self { self.stencil_load_op = stencil_load_op; self } #[inline] + #[must_use] pub fn stencil_store_op(mut self, stencil_store_op: AttachmentStoreOp) -> Self { self.stencil_store_op = stencil_store_op; self } #[inline] + #[must_use] pub fn initial_layout(mut self, initial_layout: ImageLayout) -> Self { self.initial_layout = initial_layout; self } #[inline] + #[must_use] pub fn final_layout(mut self, final_layout: ImageLayout) -> Self { self.final_layout = final_layout; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -20050,20 +21481,24 @@ unsafe impl<'a> TaggedStructure for AttachmentReference2<'a> { pub unsafe trait ExtendsAttachmentReference2 {} impl<'a> AttachmentReference2<'a> { #[inline] + #[must_use] pub fn attachment(mut self, attachment: u32) -> Self { self.attachment = attachment; self } #[inline] + #[must_use] pub fn layout(mut self, layout: ImageLayout) -> Self { self.layout = layout; self } #[inline] + #[must_use] pub fn aspect_mask(mut self, aspect_mask: ImageAspectFlags) -> Self { self.aspect_mask = aspect_mask; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -20126,33 +21561,39 @@ unsafe impl<'a> TaggedStructure for SubpassDescription2<'a> { pub unsafe trait ExtendsSubpassDescription2 {} impl<'a> SubpassDescription2<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: SubpassDescriptionFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn pipeline_bind_point(mut self, pipeline_bind_point: PipelineBindPoint) -> Self { self.pipeline_bind_point = pipeline_bind_point; self } #[inline] + #[must_use] pub fn view_mask(mut self, view_mask: u32) -> Self { self.view_mask = view_mask; self } #[inline] + #[must_use] pub fn input_attachments(mut self, input_attachments: &'a [AttachmentReference2<'a>]) -> Self { self.input_attachment_count = input_attachments.len() as _; self.p_input_attachments = input_attachments.as_ptr(); self } #[inline] + #[must_use] pub fn color_attachments(mut self, color_attachments: &'a [AttachmentReference2<'a>]) -> Self { self.color_attachment_count = color_attachments.len() as _; self.p_color_attachments = color_attachments.as_ptr(); self } #[inline] + #[must_use] pub fn resolve_attachments( mut self, resolve_attachments: &'a [AttachmentReference2<'a>], @@ -20162,6 +21603,7 @@ impl<'a> SubpassDescription2<'a> { self } #[inline] + #[must_use] pub fn depth_stencil_attachment( mut self, depth_stencil_attachment: &'a AttachmentReference2<'a>, @@ -20170,11 +21612,13 @@ impl<'a> SubpassDescription2<'a> { self } #[inline] + #[must_use] pub fn preserve_attachments(mut self, preserve_attachments: &'a [u32]) -> Self { self.preserve_attachment_count = preserve_attachments.len() as _; self.p_preserve_attachments = preserve_attachments.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -20231,45 +21675,54 @@ unsafe impl<'a> TaggedStructure for SubpassDependency2<'a> { pub unsafe trait ExtendsSubpassDependency2 {} impl<'a> SubpassDependency2<'a> { #[inline] + #[must_use] pub fn src_subpass(mut self, src_subpass: u32) -> Self { self.src_subpass = src_subpass; self } #[inline] + #[must_use] pub fn dst_subpass(mut self, dst_subpass: u32) -> Self { self.dst_subpass = dst_subpass; self } #[inline] + #[must_use] pub fn src_stage_mask(mut self, src_stage_mask: PipelineStageFlags) -> Self { self.src_stage_mask = src_stage_mask; self } #[inline] + #[must_use] pub fn dst_stage_mask(mut self, dst_stage_mask: PipelineStageFlags) -> Self { self.dst_stage_mask = dst_stage_mask; self } #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags) -> Self { self.dst_access_mask = dst_access_mask; self } #[inline] + #[must_use] pub fn dependency_flags(mut self, dependency_flags: DependencyFlags) -> Self { self.dependency_flags = dependency_flags; self } #[inline] + #[must_use] pub fn view_offset(mut self, view_offset: i32) -> Self { self.view_offset = view_offset; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -20328,34 +21781,40 @@ unsafe impl<'a> TaggedStructure for RenderPassCreateInfo2<'a> { pub unsafe trait ExtendsRenderPassCreateInfo2 {} impl<'a> RenderPassCreateInfo2<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: RenderPassCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn attachments(mut self, attachments: &'a [AttachmentDescription2<'a>]) -> Self { self.attachment_count = attachments.len() as _; self.p_attachments = attachments.as_ptr(); self } #[inline] + #[must_use] pub fn subpasses(mut self, subpasses: &'a [SubpassDescription2<'a>]) -> Self { self.subpass_count = subpasses.len() as _; self.p_subpasses = subpasses.as_ptr(); self } #[inline] + #[must_use] pub fn dependencies(mut self, dependencies: &'a [SubpassDependency2<'a>]) -> Self { self.dependency_count = dependencies.len() as _; self.p_dependencies = dependencies.as_ptr(); self } #[inline] + #[must_use] pub fn correlated_view_masks(mut self, correlated_view_masks: &'a [u32]) -> Self { self.correlated_view_mask_count = correlated_view_masks.len() as _; self.p_correlated_view_masks = correlated_view_masks.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -20397,6 +21856,7 @@ unsafe impl<'a> TaggedStructure for SubpassBeginInfo<'a> { } impl<'a> SubpassBeginInfo<'a> { #[inline] + #[must_use] pub fn contents(mut self, contents: SubpassContents) -> Self { self.contents = contents; self @@ -20426,6 +21886,7 @@ unsafe impl<'a> TaggedStructure for SubpassEndInfo<'a> { } pub unsafe trait ExtendsSubpassEndInfo {} impl<'a> SubpassEndInfo<'a> { + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -20470,6 +21931,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceTimelineSemaphoreFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceTimelineSemaphoreFeatures<'_> {} impl<'a> PhysicalDeviceTimelineSemaphoreFeatures<'a> { #[inline] + #[must_use] pub fn timeline_semaphore(mut self, timeline_semaphore: bool) -> Self { self.timeline_semaphore = timeline_semaphore.into(); self @@ -20503,6 +21965,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceTimelineSemaphoreProperties<'a unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceTimelineSemaphoreProperties<'_> {} impl<'a> PhysicalDeviceTimelineSemaphoreProperties<'a> { #[inline] + #[must_use] pub fn max_timeline_semaphore_value_difference( mut self, max_timeline_semaphore_value_difference: u64, @@ -20541,11 +22004,13 @@ unsafe impl ExtendsSemaphoreCreateInfo for SemaphoreTypeCreateInfo<'_> {} unsafe impl ExtendsPhysicalDeviceExternalSemaphoreInfo for SemaphoreTypeCreateInfo<'_> {} impl<'a> SemaphoreTypeCreateInfo<'a> { #[inline] + #[must_use] pub fn semaphore_type(mut self, semaphore_type: SemaphoreType) -> Self { self.semaphore_type = semaphore_type; self } #[inline] + #[must_use] pub fn initial_value(mut self, initial_value: u64) -> Self { self.initial_value = initial_value; self @@ -20585,12 +22050,14 @@ unsafe impl ExtendsSubmitInfo for TimelineSemaphoreSubmitInfo<'_> {} unsafe impl ExtendsBindSparseInfo for TimelineSemaphoreSubmitInfo<'_> {} impl<'a> TimelineSemaphoreSubmitInfo<'a> { #[inline] + #[must_use] pub fn wait_semaphore_values(mut self, wait_semaphore_values: &'a [u64]) -> Self { self.wait_semaphore_value_count = wait_semaphore_values.len() as _; self.p_wait_semaphore_values = wait_semaphore_values.as_ptr(); self } #[inline] + #[must_use] pub fn signal_semaphore_values(mut self, signal_semaphore_values: &'a [u64]) -> Self { self.signal_semaphore_value_count = signal_semaphore_values.len() as _; self.p_signal_semaphore_values = signal_semaphore_values.as_ptr(); @@ -20629,17 +22096,20 @@ unsafe impl<'a> TaggedStructure for SemaphoreWaitInfo<'a> { } impl<'a> SemaphoreWaitInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: SemaphoreWaitFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn semaphores(mut self, semaphores: &'a [Semaphore]) -> Self { self.semaphore_count = semaphores.len() as _; self.p_semaphores = semaphores.as_ptr(); self } #[inline] + #[must_use] pub fn values(mut self, values: &'a [u64]) -> Self { self.semaphore_count = values.len() as _; self.p_values = values.as_ptr(); @@ -20674,11 +22144,13 @@ unsafe impl<'a> TaggedStructure for SemaphoreSignalInfo<'a> { } impl<'a> SemaphoreSignalInfo<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn value(mut self, value: u64) -> Self { self.value = value; self @@ -20694,11 +22166,13 @@ pub struct VertexInputBindingDivisorDescriptionEXT { } impl VertexInputBindingDivisorDescriptionEXT { #[inline] + #[must_use] pub fn binding(mut self, binding: u32) -> Self { self.binding = binding; self } #[inline] + #[must_use] pub fn divisor(mut self, divisor: u32) -> Self { self.divisor = divisor; self @@ -20737,6 +22211,7 @@ unsafe impl ExtendsPipelineVertexInputStateCreateInfo } impl<'a> PipelineVertexInputDivisorStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn vertex_binding_divisors( mut self, vertex_binding_divisors: &'a [VertexInputBindingDivisorDescriptionEXT], @@ -20777,6 +22252,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceVertexAttributeDivisorPropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_vertex_attrib_divisor(mut self, max_vertex_attrib_divisor: u32) -> Self { self.max_vertex_attrib_divisor = max_vertex_attrib_divisor; self @@ -20816,21 +22292,25 @@ unsafe impl<'a> TaggedStructure for PhysicalDevicePCIBusInfoPropertiesEXT<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDevicePCIBusInfoPropertiesEXT<'_> {} impl<'a> PhysicalDevicePCIBusInfoPropertiesEXT<'a> { #[inline] + #[must_use] pub fn pci_domain(mut self, pci_domain: u32) -> Self { self.pci_domain = pci_domain; self } #[inline] + #[must_use] pub fn pci_bus(mut self, pci_bus: u32) -> Self { self.pci_bus = pci_bus; self } #[inline] + #[must_use] pub fn pci_device(mut self, pci_device: u32) -> Self { self.pci_device = pci_device; self } #[inline] + #[must_use] pub fn pci_function(mut self, pci_function: u32) -> Self { self.pci_function = pci_function; self @@ -20864,6 +22344,7 @@ unsafe impl<'a> TaggedStructure for ImportAndroidHardwareBufferInfoANDROID<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportAndroidHardwareBufferInfoANDROID<'_> {} impl<'a> ImportAndroidHardwareBufferInfoANDROID<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: *mut AHardwareBuffer) -> Self { self.buffer = buffer; self @@ -20896,6 +22377,7 @@ unsafe impl<'a> TaggedStructure for AndroidHardwareBufferUsageANDROID<'a> { unsafe impl ExtendsImageFormatProperties2 for AndroidHardwareBufferUsageANDROID<'_> {} impl<'a> AndroidHardwareBufferUsageANDROID<'a> { #[inline] + #[must_use] pub fn android_hardware_buffer_usage(mut self, android_hardware_buffer_usage: u64) -> Self { self.android_hardware_buffer_usage = android_hardware_buffer_usage; self @@ -20930,15 +22412,18 @@ unsafe impl<'a> TaggedStructure for AndroidHardwareBufferPropertiesANDROID<'a> { pub unsafe trait ExtendsAndroidHardwareBufferPropertiesANDROID {} impl<'a> AndroidHardwareBufferPropertiesANDROID<'a> { #[inline] + #[must_use] pub fn allocation_size(mut self, allocation_size: DeviceSize) -> Self { self.allocation_size = allocation_size; self } #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -20984,6 +22469,7 @@ unsafe impl<'a> TaggedStructure for MemoryGetAndroidHardwareBufferInfoANDROID<'a } impl<'a> MemoryGetAndroidHardwareBufferInfoANDROID<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self @@ -21034,21 +22520,25 @@ unsafe impl ExtendsAndroidHardwareBufferPropertiesANDROID } impl<'a> AndroidHardwareBufferFormatPropertiesANDROID<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn external_format(mut self, external_format: u64) -> Self { self.external_format = external_format; self } #[inline] + #[must_use] pub fn format_features(mut self, format_features: FormatFeatureFlags) -> Self { self.format_features = format_features; self } #[inline] + #[must_use] pub fn sampler_ycbcr_conversion_components( mut self, sampler_ycbcr_conversion_components: ComponentMapping, @@ -21057,6 +22547,7 @@ impl<'a> AndroidHardwareBufferFormatPropertiesANDROID<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_model( mut self, suggested_ycbcr_model: SamplerYcbcrModelConversion, @@ -21065,16 +22556,19 @@ impl<'a> AndroidHardwareBufferFormatPropertiesANDROID<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_range(mut self, suggested_ycbcr_range: SamplerYcbcrRange) -> Self { self.suggested_ycbcr_range = suggested_ycbcr_range; self } #[inline] + #[must_use] pub fn suggested_x_chroma_offset(mut self, suggested_x_chroma_offset: ChromaLocation) -> Self { self.suggested_x_chroma_offset = suggested_x_chroma_offset; self } #[inline] + #[must_use] pub fn suggested_y_chroma_offset(mut self, suggested_y_chroma_offset: ChromaLocation) -> Self { self.suggested_y_chroma_offset = suggested_y_chroma_offset; self @@ -21111,6 +22605,7 @@ unsafe impl ExtendsCommandBufferInheritanceInfo } impl<'a> CommandBufferInheritanceConditionalRenderingInfoEXT<'a> { #[inline] + #[must_use] pub fn conditional_rendering_enable(mut self, conditional_rendering_enable: bool) -> Self { self.conditional_rendering_enable = conditional_rendering_enable.into(); self @@ -21147,6 +22642,7 @@ unsafe impl ExtendsGraphicsPipelineCreateInfo for ExternalFormatANDROID<'_> {} unsafe impl ExtendsCommandBufferInheritanceInfo for ExternalFormatANDROID<'_> {} impl<'a> ExternalFormatANDROID<'a> { #[inline] + #[must_use] pub fn external_format(mut self, external_format: u64) -> Self { self.external_format = external_format; self @@ -21184,11 +22680,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevice8BitStorageFeatures unsafe impl ExtendsDeviceCreateInfo for PhysicalDevice8BitStorageFeatures<'_> {} impl<'a> PhysicalDevice8BitStorageFeatures<'a> { #[inline] + #[must_use] pub fn storage_buffer8_bit_access(mut self, storage_buffer8_bit_access: bool) -> Self { self.storage_buffer8_bit_access = storage_buffer8_bit_access.into(); self } #[inline] + #[must_use] pub fn uniform_and_storage_buffer8_bit_access( mut self, uniform_and_storage_buffer8_bit_access: bool, @@ -21197,6 +22695,7 @@ impl<'a> PhysicalDevice8BitStorageFeatures<'a> { self } #[inline] + #[must_use] pub fn storage_push_constant8(mut self, storage_push_constant8: bool) -> Self { self.storage_push_constant8 = storage_push_constant8.into(); self @@ -21233,11 +22732,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceConditionalRenderin unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceConditionalRenderingFeaturesEXT<'_> {} impl<'a> PhysicalDeviceConditionalRenderingFeaturesEXT<'a> { #[inline] + #[must_use] pub fn conditional_rendering(mut self, conditional_rendering: bool) -> Self { self.conditional_rendering = conditional_rendering.into(); self } #[inline] + #[must_use] pub fn inherited_conditional_rendering( mut self, inherited_conditional_rendering: bool, @@ -21279,11 +22780,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceVulkanMemoryModelFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceVulkanMemoryModelFeatures<'_> {} impl<'a> PhysicalDeviceVulkanMemoryModelFeatures<'a> { #[inline] + #[must_use] pub fn vulkan_memory_model(mut self, vulkan_memory_model: bool) -> Self { self.vulkan_memory_model = vulkan_memory_model.into(); self } #[inline] + #[must_use] pub fn vulkan_memory_model_device_scope( mut self, vulkan_memory_model_device_scope: bool, @@ -21292,6 +22795,7 @@ impl<'a> PhysicalDeviceVulkanMemoryModelFeatures<'a> { self } #[inline] + #[must_use] pub fn vulkan_memory_model_availability_visibility_chains( mut self, vulkan_memory_model_availability_visibility_chains: bool, @@ -21332,11 +22836,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderAtomicInt64Fe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderAtomicInt64Features<'_> {} impl<'a> PhysicalDeviceShaderAtomicInt64Features<'a> { #[inline] + #[must_use] pub fn shader_buffer_int64_atomics(mut self, shader_buffer_int64_atomics: bool) -> Self { self.shader_buffer_int64_atomics = shader_buffer_int64_atomics.into(); self } #[inline] + #[must_use] pub fn shader_shared_int64_atomics(mut self, shader_shared_int64_atomics: bool) -> Self { self.shader_shared_int64_atomics = shader_shared_int64_atomics.into(); self @@ -21393,11 +22899,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderAtomicFloatFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderAtomicFloatFeaturesEXT<'_> {} impl<'a> PhysicalDeviceShaderAtomicFloatFeaturesEXT<'a> { #[inline] + #[must_use] pub fn shader_buffer_float32_atomics(mut self, shader_buffer_float32_atomics: bool) -> Self { self.shader_buffer_float32_atomics = shader_buffer_float32_atomics.into(); self } #[inline] + #[must_use] pub fn shader_buffer_float32_atomic_add( mut self, shader_buffer_float32_atomic_add: bool, @@ -21406,11 +22914,13 @@ impl<'a> PhysicalDeviceShaderAtomicFloatFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_buffer_float64_atomics(mut self, shader_buffer_float64_atomics: bool) -> Self { self.shader_buffer_float64_atomics = shader_buffer_float64_atomics.into(); self } #[inline] + #[must_use] pub fn shader_buffer_float64_atomic_add( mut self, shader_buffer_float64_atomic_add: bool, @@ -21419,11 +22929,13 @@ impl<'a> PhysicalDeviceShaderAtomicFloatFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_shared_float32_atomics(mut self, shader_shared_float32_atomics: bool) -> Self { self.shader_shared_float32_atomics = shader_shared_float32_atomics.into(); self } #[inline] + #[must_use] pub fn shader_shared_float32_atomic_add( mut self, shader_shared_float32_atomic_add: bool, @@ -21432,11 +22944,13 @@ impl<'a> PhysicalDeviceShaderAtomicFloatFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_shared_float64_atomics(mut self, shader_shared_float64_atomics: bool) -> Self { self.shader_shared_float64_atomics = shader_shared_float64_atomics.into(); self } #[inline] + #[must_use] pub fn shader_shared_float64_atomic_add( mut self, shader_shared_float64_atomic_add: bool, @@ -21445,11 +22959,13 @@ impl<'a> PhysicalDeviceShaderAtomicFloatFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_image_float32_atomics(mut self, shader_image_float32_atomics: bool) -> Self { self.shader_image_float32_atomics = shader_image_float32_atomics.into(); self } #[inline] + #[must_use] pub fn shader_image_float32_atomic_add( mut self, shader_image_float32_atomic_add: bool, @@ -21458,11 +22974,13 @@ impl<'a> PhysicalDeviceShaderAtomicFloatFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn sparse_image_float32_atomics(mut self, sparse_image_float32_atomics: bool) -> Self { self.sparse_image_float32_atomics = sparse_image_float32_atomics.into(); self } #[inline] + #[must_use] pub fn sparse_image_float32_atomic_add( mut self, sparse_image_float32_atomic_add: bool, @@ -21522,11 +23040,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderAtomicFloat2F unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'_> {} impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { #[inline] + #[must_use] pub fn shader_buffer_float16_atomics(mut self, shader_buffer_float16_atomics: bool) -> Self { self.shader_buffer_float16_atomics = shader_buffer_float16_atomics.into(); self } #[inline] + #[must_use] pub fn shader_buffer_float16_atomic_add( mut self, shader_buffer_float16_atomic_add: bool, @@ -21535,6 +23055,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_buffer_float16_atomic_min_max( mut self, shader_buffer_float16_atomic_min_max: bool, @@ -21543,6 +23064,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_buffer_float32_atomic_min_max( mut self, shader_buffer_float32_atomic_min_max: bool, @@ -21551,6 +23073,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_buffer_float64_atomic_min_max( mut self, shader_buffer_float64_atomic_min_max: bool, @@ -21559,11 +23082,13 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_shared_float16_atomics(mut self, shader_shared_float16_atomics: bool) -> Self { self.shader_shared_float16_atomics = shader_shared_float16_atomics.into(); self } #[inline] + #[must_use] pub fn shader_shared_float16_atomic_add( mut self, shader_shared_float16_atomic_add: bool, @@ -21572,6 +23097,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_shared_float16_atomic_min_max( mut self, shader_shared_float16_atomic_min_max: bool, @@ -21580,6 +23106,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_shared_float32_atomic_min_max( mut self, shader_shared_float32_atomic_min_max: bool, @@ -21588,6 +23115,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_shared_float64_atomic_min_max( mut self, shader_shared_float64_atomic_min_max: bool, @@ -21596,6 +23124,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_image_float32_atomic_min_max( mut self, shader_image_float32_atomic_min_max: bool, @@ -21604,6 +23133,7 @@ impl<'a> PhysicalDeviceShaderAtomicFloat2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn sparse_image_float32_atomic_min_max( mut self, sparse_image_float32_atomic_min_max: bool, @@ -21643,6 +23173,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceVertexAttributeDivi unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceVertexAttributeDivisorFeaturesEXT<'_> {} impl<'a> PhysicalDeviceVertexAttributeDivisorFeaturesEXT<'a> { #[inline] + #[must_use] pub fn vertex_attribute_instance_rate_divisor( mut self, vertex_attribute_instance_rate_divisor: bool, @@ -21651,6 +23182,7 @@ impl<'a> PhysicalDeviceVertexAttributeDivisorFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn vertex_attribute_instance_rate_zero_divisor( mut self, vertex_attribute_instance_rate_zero_divisor: bool, @@ -21687,6 +23219,7 @@ unsafe impl<'a> TaggedStructure for QueueFamilyCheckpointPropertiesNV<'a> { unsafe impl ExtendsQueueFamilyProperties2 for QueueFamilyCheckpointPropertiesNV<'_> {} impl<'a> QueueFamilyCheckpointPropertiesNV<'a> { #[inline] + #[must_use] pub fn checkpoint_execution_stage_mask( mut self, checkpoint_execution_stage_mask: PipelineStageFlags, @@ -21723,11 +23256,13 @@ unsafe impl<'a> TaggedStructure for CheckpointDataNV<'a> { } impl<'a> CheckpointDataNV<'a> { #[inline] + #[must_use] pub fn stage(mut self, stage: PipelineStageFlags) -> Self { self.stage = stage; self } #[inline] + #[must_use] pub fn checkpoint_marker(mut self, checkpoint_marker: *mut c_void) -> Self { self.p_checkpoint_marker = checkpoint_marker; self @@ -21767,6 +23302,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceDepthStencilResolveProperties< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceDepthStencilResolveProperties<'_> {} impl<'a> PhysicalDeviceDepthStencilResolveProperties<'a> { #[inline] + #[must_use] pub fn supported_depth_resolve_modes( mut self, supported_depth_resolve_modes: ResolveModeFlags, @@ -21775,6 +23311,7 @@ impl<'a> PhysicalDeviceDepthStencilResolveProperties<'a> { self } #[inline] + #[must_use] pub fn supported_stencil_resolve_modes( mut self, supported_stencil_resolve_modes: ResolveModeFlags, @@ -21783,11 +23320,13 @@ impl<'a> PhysicalDeviceDepthStencilResolveProperties<'a> { self } #[inline] + #[must_use] pub fn independent_resolve_none(mut self, independent_resolve_none: bool) -> Self { self.independent_resolve_none = independent_resolve_none.into(); self } #[inline] + #[must_use] pub fn independent_resolve(mut self, independent_resolve: bool) -> Self { self.independent_resolve = independent_resolve.into(); self @@ -21824,16 +23363,19 @@ unsafe impl<'a> TaggedStructure for SubpassDescriptionDepthStencilResolve<'a> { unsafe impl ExtendsSubpassDescription2 for SubpassDescriptionDepthStencilResolve<'_> {} impl<'a> SubpassDescriptionDepthStencilResolve<'a> { #[inline] + #[must_use] pub fn depth_resolve_mode(mut self, depth_resolve_mode: ResolveModeFlags) -> Self { self.depth_resolve_mode = depth_resolve_mode; self } #[inline] + #[must_use] pub fn stencil_resolve_mode(mut self, stencil_resolve_mode: ResolveModeFlags) -> Self { self.stencil_resolve_mode = stencil_resolve_mode; self } #[inline] + #[must_use] pub fn depth_stencil_resolve_attachment( mut self, depth_stencil_resolve_attachment: &'a AttachmentReference2<'a>, @@ -21869,6 +23411,7 @@ unsafe impl<'a> TaggedStructure for ImageViewASTCDecodeModeEXT<'a> { unsafe impl ExtendsImageViewCreateInfo for ImageViewASTCDecodeModeEXT<'_> {} impl<'a> ImageViewASTCDecodeModeEXT<'a> { #[inline] + #[must_use] pub fn decode_mode(mut self, decode_mode: Format) -> Self { self.decode_mode = decode_mode; self @@ -21902,6 +23445,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceASTCDecodeFeaturesE unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceASTCDecodeFeaturesEXT<'_> {} impl<'a> PhysicalDeviceASTCDecodeFeaturesEXT<'a> { #[inline] + #[must_use] pub fn decode_mode_shared_exponent(mut self, decode_mode_shared_exponent: bool) -> Self { self.decode_mode_shared_exponent = decode_mode_shared_exponent.into(); self @@ -21938,11 +23482,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceTransformFeedbackFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceTransformFeedbackFeaturesEXT<'_> {} impl<'a> PhysicalDeviceTransformFeedbackFeaturesEXT<'a> { #[inline] + #[must_use] pub fn transform_feedback(mut self, transform_feedback: bool) -> Self { self.transform_feedback = transform_feedback.into(); self } #[inline] + #[must_use] pub fn geometry_streams(mut self, geometry_streams: bool) -> Self { self.geometry_streams = geometry_streams.into(); self @@ -21994,16 +23540,19 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceTransformFeedbackPropertiesEXT unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceTransformFeedbackPropertiesEXT<'_> {} impl<'a> PhysicalDeviceTransformFeedbackPropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_transform_feedback_streams(mut self, max_transform_feedback_streams: u32) -> Self { self.max_transform_feedback_streams = max_transform_feedback_streams; self } #[inline] + #[must_use] pub fn max_transform_feedback_buffers(mut self, max_transform_feedback_buffers: u32) -> Self { self.max_transform_feedback_buffers = max_transform_feedback_buffers; self } #[inline] + #[must_use] pub fn max_transform_feedback_buffer_size( mut self, max_transform_feedback_buffer_size: DeviceSize, @@ -22012,6 +23561,7 @@ impl<'a> PhysicalDeviceTransformFeedbackPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_transform_feedback_stream_data_size( mut self, max_transform_feedback_stream_data_size: u32, @@ -22020,6 +23570,7 @@ impl<'a> PhysicalDeviceTransformFeedbackPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_transform_feedback_buffer_data_size( mut self, max_transform_feedback_buffer_data_size: u32, @@ -22028,6 +23579,7 @@ impl<'a> PhysicalDeviceTransformFeedbackPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_transform_feedback_buffer_data_stride( mut self, max_transform_feedback_buffer_data_stride: u32, @@ -22036,11 +23588,13 @@ impl<'a> PhysicalDeviceTransformFeedbackPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn transform_feedback_queries(mut self, transform_feedback_queries: bool) -> Self { self.transform_feedback_queries = transform_feedback_queries.into(); self } #[inline] + #[must_use] pub fn transform_feedback_streams_lines_triangles( mut self, transform_feedback_streams_lines_triangles: bool, @@ -22050,6 +23604,7 @@ impl<'a> PhysicalDeviceTransformFeedbackPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn transform_feedback_rasterization_stream_select( mut self, transform_feedback_rasterization_stream_select: bool, @@ -22059,6 +23614,7 @@ impl<'a> PhysicalDeviceTransformFeedbackPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn transform_feedback_draw(mut self, transform_feedback_draw: bool) -> Self { self.transform_feedback_draw = transform_feedback_draw.into(); self @@ -22097,11 +23653,13 @@ unsafe impl ExtendsPipelineRasterizationStateCreateInfo } impl<'a> PipelineRasterizationStateStreamCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineRasterizationStateStreamCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn rasterization_stream(mut self, rasterization_stream: u32) -> Self { self.rasterization_stream = rasterization_stream; self @@ -22139,6 +23697,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRepresentativeFragmentTestFeaturesNV<'_> {} impl<'a> PhysicalDeviceRepresentativeFragmentTestFeaturesNV<'a> { #[inline] + #[must_use] pub fn representative_fragment_test(mut self, representative_fragment_test: bool) -> Self { self.representative_fragment_test = representative_fragment_test.into(); self @@ -22175,6 +23734,7 @@ unsafe impl ExtendsGraphicsPipelineCreateInfo } impl<'a> PipelineRepresentativeFragmentTestStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn representative_fragment_test_enable( mut self, representative_fragment_test_enable: bool, @@ -22212,6 +23772,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceExclusiveScissorFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExclusiveScissorFeaturesNV<'_> {} impl<'a> PhysicalDeviceExclusiveScissorFeaturesNV<'a> { #[inline] + #[must_use] pub fn exclusive_scissor(mut self, exclusive_scissor: bool) -> Self { self.exclusive_scissor = exclusive_scissor.into(); self @@ -22250,6 +23811,7 @@ unsafe impl ExtendsPipelineViewportStateCreateInfo } impl<'a> PipelineViewportExclusiveScissorStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn exclusive_scissors(mut self, exclusive_scissors: &'a [Rect2D]) -> Self { self.exclusive_scissor_count = exclusive_scissors.len() as _; self.p_exclusive_scissors = exclusive_scissors.as_ptr(); @@ -22285,6 +23847,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCornerSampledImageF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCornerSampledImageFeaturesNV<'_> {} impl<'a> PhysicalDeviceCornerSampledImageFeaturesNV<'a> { #[inline] + #[must_use] pub fn corner_sampled_image(mut self, corner_sampled_image: bool) -> Self { self.corner_sampled_image = corner_sampled_image.into(); self @@ -22324,11 +23887,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceComputeShaderDerivativesFeaturesNV<'_> {} impl<'a> PhysicalDeviceComputeShaderDerivativesFeaturesNV<'a> { #[inline] + #[must_use] pub fn compute_derivative_group_quads(mut self, compute_derivative_group_quads: bool) -> Self { self.compute_derivative_group_quads = compute_derivative_group_quads.into(); self } #[inline] + #[must_use] pub fn compute_derivative_group_linear( mut self, compute_derivative_group_linear: bool, @@ -22366,6 +23931,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderImageFootprin unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderImageFootprintFeaturesNV<'_> {} impl<'a> PhysicalDeviceShaderImageFootprintFeaturesNV<'a> { #[inline] + #[must_use] pub fn image_footprint(mut self, image_footprint: bool) -> Self { self.image_footprint = image_footprint.into(); self @@ -22406,6 +23972,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV<'a> { #[inline] + #[must_use] pub fn dedicated_allocation_image_aliasing( mut self, dedicated_allocation_image_aliasing: bool, @@ -22443,6 +24010,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCopyMemoryIndirectF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCopyMemoryIndirectFeaturesNV<'_> {} impl<'a> PhysicalDeviceCopyMemoryIndirectFeaturesNV<'a> { #[inline] + #[must_use] pub fn indirect_copy(mut self, indirect_copy: bool) -> Self { self.indirect_copy = indirect_copy.into(); self @@ -22476,6 +24044,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceCopyMemoryIndirectPropertiesNV unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceCopyMemoryIndirectPropertiesNV<'_> {} impl<'a> PhysicalDeviceCopyMemoryIndirectPropertiesNV<'a> { #[inline] + #[must_use] pub fn supported_queues(mut self, supported_queues: QueueFlags) -> Self { self.supported_queues = supported_queues; self @@ -22510,6 +24079,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMemoryDecompression unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMemoryDecompressionFeaturesNV<'_> {} impl<'a> PhysicalDeviceMemoryDecompressionFeaturesNV<'a> { #[inline] + #[must_use] pub fn memory_decompression(mut self, memory_decompression: bool) -> Self { self.memory_decompression = memory_decompression.into(); self @@ -22545,6 +24115,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMemoryDecompressionPropertiesN unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMemoryDecompressionPropertiesNV<'_> {} impl<'a> PhysicalDeviceMemoryDecompressionPropertiesNV<'a> { #[inline] + #[must_use] pub fn decompression_methods( mut self, decompression_methods: MemoryDecompressionMethodFlagsNV, @@ -22553,6 +24124,7 @@ impl<'a> PhysicalDeviceMemoryDecompressionPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn max_decompression_indirect_count( mut self, max_decompression_indirect_count: u64, @@ -22582,6 +24154,7 @@ impl ::std::default::Default for ShadingRatePaletteNV<'_> { } impl<'a> ShadingRatePaletteNV<'a> { #[inline] + #[must_use] pub fn shading_rate_palette_entries( mut self, shading_rate_palette_entries: &'a [ShadingRatePaletteEntryNV], @@ -22626,11 +24199,13 @@ unsafe impl ExtendsPipelineViewportStateCreateInfo } impl<'a> PipelineViewportShadingRateImageStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn shading_rate_image_enable(mut self, shading_rate_image_enable: bool) -> Self { self.shading_rate_image_enable = shading_rate_image_enable.into(); self } #[inline] + #[must_use] pub fn shading_rate_palettes( mut self, shading_rate_palettes: &'a [ShadingRatePaletteNV<'a>], @@ -22671,11 +24246,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShadingRateImageFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShadingRateImageFeaturesNV<'_> {} impl<'a> PhysicalDeviceShadingRateImageFeaturesNV<'a> { #[inline] + #[must_use] pub fn shading_rate_image(mut self, shading_rate_image: bool) -> Self { self.shading_rate_image = shading_rate_image.into(); self } #[inline] + #[must_use] pub fn shading_rate_coarse_sample_order( mut self, shading_rate_coarse_sample_order: bool, @@ -22716,16 +24293,19 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShadingRateImagePropertiesNV<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShadingRateImagePropertiesNV<'_> {} impl<'a> PhysicalDeviceShadingRateImagePropertiesNV<'a> { #[inline] + #[must_use] pub fn shading_rate_texel_size(mut self, shading_rate_texel_size: Extent2D) -> Self { self.shading_rate_texel_size = shading_rate_texel_size; self } #[inline] + #[must_use] pub fn shading_rate_palette_size(mut self, shading_rate_palette_size: u32) -> Self { self.shading_rate_palette_size = shading_rate_palette_size; self } #[inline] + #[must_use] pub fn shading_rate_max_coarse_samples(mut self, shading_rate_max_coarse_samples: u32) -> Self { self.shading_rate_max_coarse_samples = shading_rate_max_coarse_samples; self @@ -22760,6 +24340,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceInvocationMaskFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceInvocationMaskFeaturesHUAWEI<'_> {} impl<'a> PhysicalDeviceInvocationMaskFeaturesHUAWEI<'a> { #[inline] + #[must_use] pub fn invocation_mask(mut self, invocation_mask: bool) -> Self { self.invocation_mask = invocation_mask.into(); self @@ -22776,16 +24357,19 @@ pub struct CoarseSampleLocationNV { } impl CoarseSampleLocationNV { #[inline] + #[must_use] pub fn pixel_x(mut self, pixel_x: u32) -> Self { self.pixel_x = pixel_x; self } #[inline] + #[must_use] pub fn pixel_y(mut self, pixel_y: u32) -> Self { self.pixel_y = pixel_y; self } #[inline] + #[must_use] pub fn sample(mut self, sample: u32) -> Self { self.sample = sample; self @@ -22816,16 +24400,19 @@ impl ::std::default::Default for CoarseSampleOrderCustomNV<'_> { } impl<'a> CoarseSampleOrderCustomNV<'a> { #[inline] + #[must_use] pub fn shading_rate(mut self, shading_rate: ShadingRatePaletteEntryNV) -> Self { self.shading_rate = shading_rate; self } #[inline] + #[must_use] pub fn sample_count(mut self, sample_count: u32) -> Self { self.sample_count = sample_count; self } #[inline] + #[must_use] pub fn sample_locations(mut self, sample_locations: &'a [CoarseSampleLocationNV]) -> Self { self.sample_location_count = sample_locations.len() as _; self.p_sample_locations = sample_locations.as_ptr(); @@ -22867,11 +24454,13 @@ unsafe impl ExtendsPipelineViewportStateCreateInfo } impl<'a> PipelineViewportCoarseSampleOrderStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn sample_order_type(mut self, sample_order_type: CoarseSampleOrderTypeNV) -> Self { self.sample_order_type = sample_order_type; self } #[inline] + #[must_use] pub fn custom_sample_orders( mut self, custom_sample_orders: &'a [CoarseSampleOrderCustomNV<'a>], @@ -22911,11 +24500,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMeshShaderFeaturesN unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMeshShaderFeaturesNV<'_> {} impl<'a> PhysicalDeviceMeshShaderFeaturesNV<'a> { #[inline] + #[must_use] pub fn task_shader(mut self, task_shader: bool) -> Self { self.task_shader = task_shader.into(); self } #[inline] + #[must_use] pub fn mesh_shader(mut self, mesh_shader: bool) -> Self { self.mesh_shader = mesh_shader.into(); self @@ -22972,61 +24563,73 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMeshShaderPropertiesNV<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMeshShaderPropertiesNV<'_> {} impl<'a> PhysicalDeviceMeshShaderPropertiesNV<'a> { #[inline] + #[must_use] pub fn max_draw_mesh_tasks_count(mut self, max_draw_mesh_tasks_count: u32) -> Self { self.max_draw_mesh_tasks_count = max_draw_mesh_tasks_count; self } #[inline] + #[must_use] pub fn max_task_work_group_invocations(mut self, max_task_work_group_invocations: u32) -> Self { self.max_task_work_group_invocations = max_task_work_group_invocations; self } #[inline] + #[must_use] pub fn max_task_work_group_size(mut self, max_task_work_group_size: [u32; 3]) -> Self { self.max_task_work_group_size = max_task_work_group_size; self } #[inline] + #[must_use] pub fn max_task_total_memory_size(mut self, max_task_total_memory_size: u32) -> Self { self.max_task_total_memory_size = max_task_total_memory_size; self } #[inline] + #[must_use] pub fn max_task_output_count(mut self, max_task_output_count: u32) -> Self { self.max_task_output_count = max_task_output_count; self } #[inline] + #[must_use] pub fn max_mesh_work_group_invocations(mut self, max_mesh_work_group_invocations: u32) -> Self { self.max_mesh_work_group_invocations = max_mesh_work_group_invocations; self } #[inline] + #[must_use] pub fn max_mesh_work_group_size(mut self, max_mesh_work_group_size: [u32; 3]) -> Self { self.max_mesh_work_group_size = max_mesh_work_group_size; self } #[inline] + #[must_use] pub fn max_mesh_total_memory_size(mut self, max_mesh_total_memory_size: u32) -> Self { self.max_mesh_total_memory_size = max_mesh_total_memory_size; self } #[inline] + #[must_use] pub fn max_mesh_output_vertices(mut self, max_mesh_output_vertices: u32) -> Self { self.max_mesh_output_vertices = max_mesh_output_vertices; self } #[inline] + #[must_use] pub fn max_mesh_output_primitives(mut self, max_mesh_output_primitives: u32) -> Self { self.max_mesh_output_primitives = max_mesh_output_primitives; self } #[inline] + #[must_use] pub fn max_mesh_multiview_view_count(mut self, max_mesh_multiview_view_count: u32) -> Self { self.max_mesh_multiview_view_count = max_mesh_multiview_view_count; self } #[inline] + #[must_use] pub fn mesh_output_per_vertex_granularity( mut self, mesh_output_per_vertex_granularity: u32, @@ -23035,6 +24638,7 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn mesh_output_per_primitive_granularity( mut self, mesh_output_per_primitive_granularity: u32, @@ -23053,11 +24657,13 @@ pub struct DrawMeshTasksIndirectCommandNV { } impl DrawMeshTasksIndirectCommandNV { #[inline] + #[must_use] pub fn task_count(mut self, task_count: u32) -> Self { self.task_count = task_count; self } #[inline] + #[must_use] pub fn first_task(mut self, first_task: u32) -> Self { self.first_task = first_task; self @@ -23099,21 +24705,25 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMeshShaderFeaturesE unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMeshShaderFeaturesEXT<'_> {} impl<'a> PhysicalDeviceMeshShaderFeaturesEXT<'a> { #[inline] + #[must_use] pub fn task_shader(mut self, task_shader: bool) -> Self { self.task_shader = task_shader.into(); self } #[inline] + #[must_use] pub fn mesh_shader(mut self, mesh_shader: bool) -> Self { self.mesh_shader = mesh_shader.into(); self } #[inline] + #[must_use] pub fn multiview_mesh_shader(mut self, multiview_mesh_shader: bool) -> Self { self.multiview_mesh_shader = multiview_mesh_shader.into(); self } #[inline] + #[must_use] pub fn primitive_fragment_shading_rate_mesh_shader( mut self, primitive_fragment_shading_rate_mesh_shader: bool, @@ -23123,6 +24733,7 @@ impl<'a> PhysicalDeviceMeshShaderFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn mesh_shader_queries(mut self, mesh_shader_queries: bool) -> Self { self.mesh_shader_queries = mesh_shader_queries.into(); self @@ -23209,36 +24820,43 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMeshShaderPropertiesEXT<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceMeshShaderPropertiesEXT<'_> {} impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_task_work_group_total_count(mut self, max_task_work_group_total_count: u32) -> Self { self.max_task_work_group_total_count = max_task_work_group_total_count; self } #[inline] + #[must_use] pub fn max_task_work_group_count(mut self, max_task_work_group_count: [u32; 3]) -> Self { self.max_task_work_group_count = max_task_work_group_count; self } #[inline] + #[must_use] pub fn max_task_work_group_invocations(mut self, max_task_work_group_invocations: u32) -> Self { self.max_task_work_group_invocations = max_task_work_group_invocations; self } #[inline] + #[must_use] pub fn max_task_work_group_size(mut self, max_task_work_group_size: [u32; 3]) -> Self { self.max_task_work_group_size = max_task_work_group_size; self } #[inline] + #[must_use] pub fn max_task_payload_size(mut self, max_task_payload_size: u32) -> Self { self.max_task_payload_size = max_task_payload_size; self } #[inline] + #[must_use] pub fn max_task_shared_memory_size(mut self, max_task_shared_memory_size: u32) -> Self { self.max_task_shared_memory_size = max_task_shared_memory_size; self } #[inline] + #[must_use] pub fn max_task_payload_and_shared_memory_size( mut self, max_task_payload_and_shared_memory_size: u32, @@ -23247,31 +24865,37 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_mesh_work_group_total_count(mut self, max_mesh_work_group_total_count: u32) -> Self { self.max_mesh_work_group_total_count = max_mesh_work_group_total_count; self } #[inline] + #[must_use] pub fn max_mesh_work_group_count(mut self, max_mesh_work_group_count: [u32; 3]) -> Self { self.max_mesh_work_group_count = max_mesh_work_group_count; self } #[inline] + #[must_use] pub fn max_mesh_work_group_invocations(mut self, max_mesh_work_group_invocations: u32) -> Self { self.max_mesh_work_group_invocations = max_mesh_work_group_invocations; self } #[inline] + #[must_use] pub fn max_mesh_work_group_size(mut self, max_mesh_work_group_size: [u32; 3]) -> Self { self.max_mesh_work_group_size = max_mesh_work_group_size; self } #[inline] + #[must_use] pub fn max_mesh_shared_memory_size(mut self, max_mesh_shared_memory_size: u32) -> Self { self.max_mesh_shared_memory_size = max_mesh_shared_memory_size; self } #[inline] + #[must_use] pub fn max_mesh_payload_and_shared_memory_size( mut self, max_mesh_payload_and_shared_memory_size: u32, @@ -23280,11 +24904,13 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_mesh_output_memory_size(mut self, max_mesh_output_memory_size: u32) -> Self { self.max_mesh_output_memory_size = max_mesh_output_memory_size; self } #[inline] + #[must_use] pub fn max_mesh_payload_and_output_memory_size( mut self, max_mesh_payload_and_output_memory_size: u32, @@ -23293,31 +24919,37 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_mesh_output_components(mut self, max_mesh_output_components: u32) -> Self { self.max_mesh_output_components = max_mesh_output_components; self } #[inline] + #[must_use] pub fn max_mesh_output_vertices(mut self, max_mesh_output_vertices: u32) -> Self { self.max_mesh_output_vertices = max_mesh_output_vertices; self } #[inline] + #[must_use] pub fn max_mesh_output_primitives(mut self, max_mesh_output_primitives: u32) -> Self { self.max_mesh_output_primitives = max_mesh_output_primitives; self } #[inline] + #[must_use] pub fn max_mesh_output_layers(mut self, max_mesh_output_layers: u32) -> Self { self.max_mesh_output_layers = max_mesh_output_layers; self } #[inline] + #[must_use] pub fn max_mesh_multiview_view_count(mut self, max_mesh_multiview_view_count: u32) -> Self { self.max_mesh_multiview_view_count = max_mesh_multiview_view_count; self } #[inline] + #[must_use] pub fn mesh_output_per_vertex_granularity( mut self, mesh_output_per_vertex_granularity: u32, @@ -23326,6 +24958,7 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn mesh_output_per_primitive_granularity( mut self, mesh_output_per_primitive_granularity: u32, @@ -23334,6 +24967,7 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_preferred_task_work_group_invocations( mut self, max_preferred_task_work_group_invocations: u32, @@ -23342,6 +24976,7 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_preferred_mesh_work_group_invocations( mut self, max_preferred_mesh_work_group_invocations: u32, @@ -23350,6 +24985,7 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn prefers_local_invocation_vertex_output( mut self, prefers_local_invocation_vertex_output: bool, @@ -23358,6 +24994,7 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn prefers_local_invocation_primitive_output( mut self, prefers_local_invocation_primitive_output: bool, @@ -23367,11 +25004,13 @@ impl<'a> PhysicalDeviceMeshShaderPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn prefers_compact_vertex_output(mut self, prefers_compact_vertex_output: bool) -> Self { self.prefers_compact_vertex_output = prefers_compact_vertex_output.into(); self } #[inline] + #[must_use] pub fn prefers_compact_primitive_output( mut self, prefers_compact_primitive_output: bool, @@ -23391,16 +25030,19 @@ pub struct DrawMeshTasksIndirectCommandEXT { } impl DrawMeshTasksIndirectCommandEXT { #[inline] + #[must_use] pub fn group_count_x(mut self, group_count_x: u32) -> Self { self.group_count_x = group_count_x; self } #[inline] + #[must_use] pub fn group_count_y(mut self, group_count_y: u32) -> Self { self.group_count_y = group_count_y; self } #[inline] + #[must_use] pub fn group_count_z(mut self, group_count_z: u32) -> Self { self.group_count_z = group_count_z; self @@ -23440,26 +25082,31 @@ unsafe impl<'a> TaggedStructure for RayTracingShaderGroupCreateInfoNV<'a> { } impl<'a> RayTracingShaderGroupCreateInfoNV<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: RayTracingShaderGroupTypeKHR) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn general_shader(mut self, general_shader: u32) -> Self { self.general_shader = general_shader; self } #[inline] + #[must_use] pub fn closest_hit_shader(mut self, closest_hit_shader: u32) -> Self { self.closest_hit_shader = closest_hit_shader; self } #[inline] + #[must_use] pub fn any_hit_shader(mut self, any_hit_shader: u32) -> Self { self.any_hit_shader = any_hit_shader; self } #[inline] + #[must_use] pub fn intersection_shader(mut self, intersection_shader: u32) -> Self { self.intersection_shader = intersection_shader; self @@ -23501,31 +25148,37 @@ unsafe impl<'a> TaggedStructure for RayTracingShaderGroupCreateInfoKHR<'a> { } impl<'a> RayTracingShaderGroupCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: RayTracingShaderGroupTypeKHR) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn general_shader(mut self, general_shader: u32) -> Self { self.general_shader = general_shader; self } #[inline] + #[must_use] pub fn closest_hit_shader(mut self, closest_hit_shader: u32) -> Self { self.closest_hit_shader = closest_hit_shader; self } #[inline] + #[must_use] pub fn any_hit_shader(mut self, any_hit_shader: u32) -> Self { self.any_hit_shader = any_hit_shader; self } #[inline] + #[must_use] pub fn intersection_shader(mut self, intersection_shader: u32) -> Self { self.intersection_shader = intersection_shader; self } #[inline] + #[must_use] pub fn shader_group_capture_replay_handle( mut self, shader_group_capture_replay_handle: *const c_void, @@ -23577,42 +25230,50 @@ unsafe impl<'a> TaggedStructure for RayTracingPipelineCreateInfoNV<'a> { pub unsafe trait ExtendsRayTracingPipelineCreateInfoNV {} impl<'a> RayTracingPipelineCreateInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stages(mut self, stages: &'a [PipelineShaderStageCreateInfo<'a>]) -> Self { self.stage_count = stages.len() as _; self.p_stages = stages.as_ptr(); self } #[inline] + #[must_use] pub fn groups(mut self, groups: &'a [RayTracingShaderGroupCreateInfoNV<'a>]) -> Self { self.group_count = groups.len() as _; self.p_groups = groups.as_ptr(); self } #[inline] + #[must_use] pub fn max_recursion_depth(mut self, max_recursion_depth: u32) -> Self { self.max_recursion_depth = max_recursion_depth; self } #[inline] + #[must_use] pub fn layout(mut self, layout: PipelineLayout) -> Self { self.layout = layout; self } #[inline] + #[must_use] pub fn base_pipeline_handle(mut self, base_pipeline_handle: Pipeline) -> Self { self.base_pipeline_handle = base_pipeline_handle; self } #[inline] + #[must_use] pub fn base_pipeline_index(mut self, base_pipeline_index: i32) -> Self { self.base_pipeline_index = base_pipeline_index; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -23677,23 +25338,27 @@ unsafe impl<'a> TaggedStructure for RayTracingPipelineCreateInfoKHR<'a> { pub unsafe trait ExtendsRayTracingPipelineCreateInfoKHR {} impl<'a> RayTracingPipelineCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stages(mut self, stages: &'a [PipelineShaderStageCreateInfo<'a>]) -> Self { self.stage_count = stages.len() as _; self.p_stages = stages.as_ptr(); self } #[inline] + #[must_use] pub fn groups(mut self, groups: &'a [RayTracingShaderGroupCreateInfoKHR<'a>]) -> Self { self.group_count = groups.len() as _; self.p_groups = groups.as_ptr(); self } #[inline] + #[must_use] pub fn max_pipeline_ray_recursion_depth( mut self, max_pipeline_ray_recursion_depth: u32, @@ -23702,11 +25367,13 @@ impl<'a> RayTracingPipelineCreateInfoKHR<'a> { self } #[inline] + #[must_use] pub fn library_info(mut self, library_info: &'a PipelineLibraryCreateInfoKHR<'a>) -> Self { self.p_library_info = library_info; self } #[inline] + #[must_use] pub fn library_interface( mut self, library_interface: &'a RayTracingPipelineInterfaceCreateInfoKHR<'a>, @@ -23715,25 +25382,30 @@ impl<'a> RayTracingPipelineCreateInfoKHR<'a> { self } #[inline] + #[must_use] pub fn dynamic_state(mut self, dynamic_state: &'a PipelineDynamicStateCreateInfo<'a>) -> Self { self.p_dynamic_state = dynamic_state; self } #[inline] + #[must_use] pub fn layout(mut self, layout: PipelineLayout) -> Self { self.layout = layout; self } #[inline] + #[must_use] pub fn base_pipeline_handle(mut self, base_pipeline_handle: Pipeline) -> Self { self.base_pipeline_handle = base_pipeline_handle; self } #[inline] + #[must_use] pub fn base_pipeline_index(mut self, base_pipeline_index: i32) -> Self { self.base_pipeline_index = base_pipeline_index; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -23795,56 +25467,67 @@ unsafe impl<'a> TaggedStructure for GeometryTrianglesNV<'a> { } impl<'a> GeometryTrianglesNV<'a> { #[inline] + #[must_use] pub fn vertex_data(mut self, vertex_data: Buffer) -> Self { self.vertex_data = vertex_data; self } #[inline] + #[must_use] pub fn vertex_offset(mut self, vertex_offset: DeviceSize) -> Self { self.vertex_offset = vertex_offset; self } #[inline] + #[must_use] pub fn vertex_count(mut self, vertex_count: u32) -> Self { self.vertex_count = vertex_count; self } #[inline] + #[must_use] pub fn vertex_stride(mut self, vertex_stride: DeviceSize) -> Self { self.vertex_stride = vertex_stride; self } #[inline] + #[must_use] pub fn vertex_format(mut self, vertex_format: Format) -> Self { self.vertex_format = vertex_format; self } #[inline] + #[must_use] pub fn index_data(mut self, index_data: Buffer) -> Self { self.index_data = index_data; self } #[inline] + #[must_use] pub fn index_offset(mut self, index_offset: DeviceSize) -> Self { self.index_offset = index_offset; self } #[inline] + #[must_use] pub fn index_count(mut self, index_count: u32) -> Self { self.index_count = index_count; self } #[inline] + #[must_use] pub fn index_type(mut self, index_type: IndexType) -> Self { self.index_type = index_type; self } #[inline] + #[must_use] pub fn transform_data(mut self, transform_data: Buffer) -> Self { self.transform_data = transform_data; self } #[inline] + #[must_use] pub fn transform_offset(mut self, transform_offset: DeviceSize) -> Self { self.transform_offset = transform_offset; self @@ -23882,21 +25565,25 @@ unsafe impl<'a> TaggedStructure for GeometryAABBNV<'a> { } impl<'a> GeometryAABBNV<'a> { #[inline] + #[must_use] pub fn aabb_data(mut self, aabb_data: Buffer) -> Self { self.aabb_data = aabb_data; self } #[inline] + #[must_use] pub fn num_aab_bs(mut self, num_aab_bs: u32) -> Self { self.num_aab_bs = num_aab_bs; self } #[inline] + #[must_use] pub fn stride(mut self, stride: u32) -> Self { self.stride = stride; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self @@ -23913,11 +25600,13 @@ pub struct GeometryDataNV<'a> { } impl<'a> GeometryDataNV<'a> { #[inline] + #[must_use] pub fn triangles(mut self, triangles: GeometryTrianglesNV<'a>) -> Self { self.triangles = triangles; self } #[inline] + #[must_use] pub fn aabbs(mut self, aabbs: GeometryAABBNV<'a>) -> Self { self.aabbs = aabbs; self @@ -23953,16 +25642,19 @@ unsafe impl<'a> TaggedStructure for GeometryNV<'a> { } impl<'a> GeometryNV<'a> { #[inline] + #[must_use] pub fn geometry_type(mut self, geometry_type: GeometryTypeKHR) -> Self { self.geometry_type = geometry_type; self } #[inline] + #[must_use] pub fn geometry(mut self, geometry: GeometryDataNV<'a>) -> Self { self.geometry = geometry; self } #[inline] + #[must_use] pub fn flags(mut self, flags: GeometryFlagsKHR) -> Self { self.flags = flags; self @@ -24002,21 +25694,25 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureInfoNV<'a> { } impl<'a> AccelerationStructureInfoNV<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: AccelerationStructureTypeNV) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn flags(mut self, flags: BuildAccelerationStructureFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn instance_count(mut self, instance_count: u32) -> Self { self.instance_count = instance_count; self } #[inline] + #[must_use] pub fn geometries(mut self, geometries: &'a [GeometryNV<'a>]) -> Self { self.geometry_count = geometries.len() as _; self.p_geometries = geometries.as_ptr(); @@ -24052,15 +25748,18 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureCreateInfoNV<'a> { pub unsafe trait ExtendsAccelerationStructureCreateInfoNV {} impl<'a> AccelerationStructureCreateInfoNV<'a> { #[inline] + #[must_use] pub fn compacted_size(mut self, compacted_size: DeviceSize) -> Self { self.compacted_size = compacted_size; self } #[inline] + #[must_use] pub fn info(mut self, info: AccelerationStructureInfoNV<'a>) -> Self { self.info = info; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -24113,6 +25812,7 @@ unsafe impl<'a> TaggedStructure for BindAccelerationStructureMemoryInfoNV<'a> { } impl<'a> BindAccelerationStructureMemoryInfoNV<'a> { #[inline] + #[must_use] pub fn acceleration_structure( mut self, acceleration_structure: AccelerationStructureNV, @@ -24121,16 +25821,19 @@ impl<'a> BindAccelerationStructureMemoryInfoNV<'a> { self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn memory_offset(mut self, memory_offset: DeviceSize) -> Self { self.memory_offset = memory_offset; self } #[inline] + #[must_use] pub fn device_indices(mut self, device_indices: &'a [u32]) -> Self { self.device_index_count = device_indices.len() as _; self.p_device_indices = device_indices.as_ptr(); @@ -24167,6 +25870,7 @@ unsafe impl<'a> TaggedStructure for WriteDescriptorSetAccelerationStructureKHR<' unsafe impl ExtendsWriteDescriptorSet for WriteDescriptorSetAccelerationStructureKHR<'_> {} impl<'a> WriteDescriptorSetAccelerationStructureKHR<'a> { #[inline] + #[must_use] pub fn acceleration_structures( mut self, acceleration_structures: &'a [AccelerationStructureKHR], @@ -24206,6 +25910,7 @@ unsafe impl<'a> TaggedStructure for WriteDescriptorSetAccelerationStructureNV<'a unsafe impl ExtendsWriteDescriptorSet for WriteDescriptorSetAccelerationStructureNV<'_> {} impl<'a> WriteDescriptorSetAccelerationStructureNV<'a> { #[inline] + #[must_use] pub fn acceleration_structures( mut self, acceleration_structures: &'a [AccelerationStructureNV], @@ -24244,11 +25949,13 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureMemoryRequirementsInfoN } impl<'a> AccelerationStructureMemoryRequirementsInfoNV<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: AccelerationStructureMemoryRequirementsTypeNV) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn acceleration_structure( mut self, acceleration_structure: AccelerationStructureNV, @@ -24294,11 +26001,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceAccelerationStructu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceAccelerationStructureFeaturesKHR<'_> {} impl<'a> PhysicalDeviceAccelerationStructureFeaturesKHR<'a> { #[inline] + #[must_use] pub fn acceleration_structure(mut self, acceleration_structure: bool) -> Self { self.acceleration_structure = acceleration_structure.into(); self } #[inline] + #[must_use] pub fn acceleration_structure_capture_replay( mut self, acceleration_structure_capture_replay: bool, @@ -24307,6 +26016,7 @@ impl<'a> PhysicalDeviceAccelerationStructureFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn acceleration_structure_indirect_build( mut self, acceleration_structure_indirect_build: bool, @@ -24315,6 +26025,7 @@ impl<'a> PhysicalDeviceAccelerationStructureFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn acceleration_structure_host_commands( mut self, acceleration_structure_host_commands: bool, @@ -24323,6 +26034,7 @@ impl<'a> PhysicalDeviceAccelerationStructureFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_acceleration_structure_update_after_bind( mut self, descriptor_binding_acceleration_structure_update_after_bind: bool, @@ -24369,11 +26081,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceRayTracingPipelineF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRayTracingPipelineFeaturesKHR<'_> {} impl<'a> PhysicalDeviceRayTracingPipelineFeaturesKHR<'a> { #[inline] + #[must_use] pub fn ray_tracing_pipeline(mut self, ray_tracing_pipeline: bool) -> Self { self.ray_tracing_pipeline = ray_tracing_pipeline.into(); self } #[inline] + #[must_use] pub fn ray_tracing_pipeline_shader_group_handle_capture_replay( mut self, ray_tracing_pipeline_shader_group_handle_capture_replay: bool, @@ -24383,6 +26097,7 @@ impl<'a> PhysicalDeviceRayTracingPipelineFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn ray_tracing_pipeline_shader_group_handle_capture_replay_mixed( mut self, ray_tracing_pipeline_shader_group_handle_capture_replay_mixed: bool, @@ -24392,6 +26107,7 @@ impl<'a> PhysicalDeviceRayTracingPipelineFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn ray_tracing_pipeline_trace_rays_indirect( mut self, ray_tracing_pipeline_trace_rays_indirect: bool, @@ -24401,6 +26117,7 @@ impl<'a> PhysicalDeviceRayTracingPipelineFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn ray_traversal_primitive_culling( mut self, ray_traversal_primitive_culling: bool, @@ -24437,6 +26154,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceRayQueryFeaturesKHR unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRayQueryFeaturesKHR<'_> {} impl<'a> PhysicalDeviceRayQueryFeaturesKHR<'a> { #[inline] + #[must_use] pub fn ray_query(mut self, ray_query: bool) -> Self { self.ray_query = ray_query.into(); self @@ -24487,21 +26205,25 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceAccelerationStructurePropertiesKHR<'a> { #[inline] + #[must_use] pub fn max_geometry_count(mut self, max_geometry_count: u64) -> Self { self.max_geometry_count = max_geometry_count; self } #[inline] + #[must_use] pub fn max_instance_count(mut self, max_instance_count: u64) -> Self { self.max_instance_count = max_instance_count; self } #[inline] + #[must_use] pub fn max_primitive_count(mut self, max_primitive_count: u64) -> Self { self.max_primitive_count = max_primitive_count; self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_acceleration_structures( mut self, max_per_stage_descriptor_acceleration_structures: u32, @@ -24511,6 +26233,7 @@ impl<'a> PhysicalDeviceAccelerationStructurePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_acceleration_structures( mut self, max_per_stage_descriptor_update_after_bind_acceleration_structures: u32, @@ -24520,6 +26243,7 @@ impl<'a> PhysicalDeviceAccelerationStructurePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_acceleration_structures( mut self, max_descriptor_set_acceleration_structures: u32, @@ -24529,6 +26253,7 @@ impl<'a> PhysicalDeviceAccelerationStructurePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_acceleration_structures( mut self, max_descriptor_set_update_after_bind_acceleration_structures: u32, @@ -24538,6 +26263,7 @@ impl<'a> PhysicalDeviceAccelerationStructurePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn min_acceleration_structure_scratch_offset_alignment( mut self, min_acceleration_structure_scratch_offset_alignment: u32, @@ -24589,26 +26315,31 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceRayTracingPipelinePropertiesKH unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceRayTracingPipelinePropertiesKHR<'_> {} impl<'a> PhysicalDeviceRayTracingPipelinePropertiesKHR<'a> { #[inline] + #[must_use] pub fn shader_group_handle_size(mut self, shader_group_handle_size: u32) -> Self { self.shader_group_handle_size = shader_group_handle_size; self } #[inline] + #[must_use] pub fn max_ray_recursion_depth(mut self, max_ray_recursion_depth: u32) -> Self { self.max_ray_recursion_depth = max_ray_recursion_depth; self } #[inline] + #[must_use] pub fn max_shader_group_stride(mut self, max_shader_group_stride: u32) -> Self { self.max_shader_group_stride = max_shader_group_stride; self } #[inline] + #[must_use] pub fn shader_group_base_alignment(mut self, shader_group_base_alignment: u32) -> Self { self.shader_group_base_alignment = shader_group_base_alignment; self } #[inline] + #[must_use] pub fn shader_group_handle_capture_replay_size( mut self, shader_group_handle_capture_replay_size: u32, @@ -24617,6 +26348,7 @@ impl<'a> PhysicalDeviceRayTracingPipelinePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_ray_dispatch_invocation_count( mut self, max_ray_dispatch_invocation_count: u32, @@ -24625,11 +26357,13 @@ impl<'a> PhysicalDeviceRayTracingPipelinePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn shader_group_handle_alignment(mut self, shader_group_handle_alignment: u32) -> Self { self.shader_group_handle_alignment = shader_group_handle_alignment; self } #[inline] + #[must_use] pub fn max_ray_hit_attribute_size(mut self, max_ray_hit_attribute_size: u32) -> Self { self.max_ray_hit_attribute_size = max_ray_hit_attribute_size; self @@ -24676,41 +26410,49 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceRayTracingPropertiesNV<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceRayTracingPropertiesNV<'_> {} impl<'a> PhysicalDeviceRayTracingPropertiesNV<'a> { #[inline] + #[must_use] pub fn shader_group_handle_size(mut self, shader_group_handle_size: u32) -> Self { self.shader_group_handle_size = shader_group_handle_size; self } #[inline] + #[must_use] pub fn max_recursion_depth(mut self, max_recursion_depth: u32) -> Self { self.max_recursion_depth = max_recursion_depth; self } #[inline] + #[must_use] pub fn max_shader_group_stride(mut self, max_shader_group_stride: u32) -> Self { self.max_shader_group_stride = max_shader_group_stride; self } #[inline] + #[must_use] pub fn shader_group_base_alignment(mut self, shader_group_base_alignment: u32) -> Self { self.shader_group_base_alignment = shader_group_base_alignment; self } #[inline] + #[must_use] pub fn max_geometry_count(mut self, max_geometry_count: u64) -> Self { self.max_geometry_count = max_geometry_count; self } #[inline] + #[must_use] pub fn max_instance_count(mut self, max_instance_count: u64) -> Self { self.max_instance_count = max_instance_count; self } #[inline] + #[must_use] pub fn max_triangle_count(mut self, max_triangle_count: u64) -> Self { self.max_triangle_count = max_triangle_count; self } #[inline] + #[must_use] pub fn max_descriptor_set_acceleration_structures( mut self, max_descriptor_set_acceleration_structures: u32, @@ -24731,16 +26473,19 @@ pub struct StridedDeviceAddressRegionKHR { } impl StridedDeviceAddressRegionKHR { #[inline] + #[must_use] pub fn device_address(mut self, device_address: DeviceAddress) -> Self { self.device_address = device_address; self } #[inline] + #[must_use] pub fn stride(mut self, stride: DeviceSize) -> Self { self.stride = stride; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -24757,16 +26502,19 @@ pub struct TraceRaysIndirectCommandKHR { } impl TraceRaysIndirectCommandKHR { #[inline] + #[must_use] pub fn width(mut self, width: u32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: u32) -> Self { self.height = height; self } #[inline] + #[must_use] pub fn depth(mut self, depth: u32) -> Self { self.depth = depth; self @@ -24794,6 +26542,7 @@ pub struct TraceRaysIndirectCommand2KHR { } impl TraceRaysIndirectCommand2KHR { #[inline] + #[must_use] pub fn raygen_shader_record_address( mut self, raygen_shader_record_address: DeviceAddress, @@ -24802,11 +26551,13 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn raygen_shader_record_size(mut self, raygen_shader_record_size: DeviceSize) -> Self { self.raygen_shader_record_size = raygen_shader_record_size; self } #[inline] + #[must_use] pub fn miss_shader_binding_table_address( mut self, miss_shader_binding_table_address: DeviceAddress, @@ -24815,6 +26566,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn miss_shader_binding_table_size( mut self, miss_shader_binding_table_size: DeviceSize, @@ -24823,6 +26575,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn miss_shader_binding_table_stride( mut self, miss_shader_binding_table_stride: DeviceSize, @@ -24831,6 +26584,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn hit_shader_binding_table_address( mut self, hit_shader_binding_table_address: DeviceAddress, @@ -24839,6 +26593,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn hit_shader_binding_table_size( mut self, hit_shader_binding_table_size: DeviceSize, @@ -24847,6 +26602,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn hit_shader_binding_table_stride( mut self, hit_shader_binding_table_stride: DeviceSize, @@ -24855,6 +26611,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn callable_shader_binding_table_address( mut self, callable_shader_binding_table_address: DeviceAddress, @@ -24863,6 +26620,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn callable_shader_binding_table_size( mut self, callable_shader_binding_table_size: DeviceSize, @@ -24871,6 +26629,7 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn callable_shader_binding_table_stride( mut self, callable_shader_binding_table_stride: DeviceSize, @@ -24879,16 +26638,19 @@ impl TraceRaysIndirectCommand2KHR { self } #[inline] + #[must_use] pub fn width(mut self, width: u32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: u32) -> Self { self.height = height; self } #[inline] + #[must_use] pub fn depth(mut self, depth: u32) -> Self { self.depth = depth; self @@ -24925,11 +26687,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceRayTracingMaintenan unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRayTracingMaintenance1FeaturesKHR<'_> {} impl<'a> PhysicalDeviceRayTracingMaintenance1FeaturesKHR<'a> { #[inline] + #[must_use] pub fn ray_tracing_maintenance1(mut self, ray_tracing_maintenance1: bool) -> Self { self.ray_tracing_maintenance1 = ray_tracing_maintenance1.into(); self } #[inline] + #[must_use] pub fn ray_tracing_pipeline_trace_rays_indirect2( mut self, ray_tracing_pipeline_trace_rays_indirect2: bool, @@ -24968,6 +26732,7 @@ unsafe impl<'a> TaggedStructure for DrmFormatModifierPropertiesListEXT<'a> { unsafe impl ExtendsFormatProperties2 for DrmFormatModifierPropertiesListEXT<'_> {} impl<'a> DrmFormatModifierPropertiesListEXT<'a> { #[inline] + #[must_use] pub fn drm_format_modifier_properties( mut self, drm_format_modifier_properties: &'a mut [DrmFormatModifierPropertiesEXT], @@ -24988,16 +26753,19 @@ pub struct DrmFormatModifierPropertiesEXT { } impl DrmFormatModifierPropertiesEXT { #[inline] + #[must_use] pub fn drm_format_modifier(mut self, drm_format_modifier: u64) -> Self { self.drm_format_modifier = drm_format_modifier; self } #[inline] + #[must_use] pub fn drm_format_modifier_plane_count(mut self, drm_format_modifier_plane_count: u32) -> Self { self.drm_format_modifier_plane_count = drm_format_modifier_plane_count; self } #[inline] + #[must_use] pub fn drm_format_modifier_tiling_features( mut self, drm_format_modifier_tiling_features: FormatFeatureFlags, @@ -25043,16 +26811,19 @@ unsafe impl ExtendsPhysicalDeviceImageFormatInfo2 } impl<'a> PhysicalDeviceImageDrmFormatModifierInfoEXT<'a> { #[inline] + #[must_use] pub fn drm_format_modifier(mut self, drm_format_modifier: u64) -> Self { self.drm_format_modifier = drm_format_modifier; self } #[inline] + #[must_use] pub fn sharing_mode(mut self, sharing_mode: SharingMode) -> Self { self.sharing_mode = sharing_mode; self } #[inline] + #[must_use] pub fn queue_family_indices(mut self, queue_family_indices: &'a [u32]) -> Self { self.queue_family_index_count = queue_family_indices.len() as _; self.p_queue_family_indices = queue_family_indices.as_ptr(); @@ -25089,6 +26860,7 @@ unsafe impl<'a> TaggedStructure for ImageDrmFormatModifierListCreateInfoEXT<'a> unsafe impl ExtendsImageCreateInfo for ImageDrmFormatModifierListCreateInfoEXT<'_> {} impl<'a> ImageDrmFormatModifierListCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn drm_format_modifiers(mut self, drm_format_modifiers: &'a [u64]) -> Self { self.drm_format_modifier_count = drm_format_modifiers.len() as _; self.p_drm_format_modifiers = drm_format_modifiers.as_ptr(); @@ -25127,11 +26899,13 @@ unsafe impl<'a> TaggedStructure for ImageDrmFormatModifierExplicitCreateInfoEXT< unsafe impl ExtendsImageCreateInfo for ImageDrmFormatModifierExplicitCreateInfoEXT<'_> {} impl<'a> ImageDrmFormatModifierExplicitCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn drm_format_modifier(mut self, drm_format_modifier: u64) -> Self { self.drm_format_modifier = drm_format_modifier; self } #[inline] + #[must_use] pub fn plane_layouts(mut self, plane_layouts: &'a [SubresourceLayout]) -> Self { self.drm_format_modifier_plane_count = plane_layouts.len() as _; self.p_plane_layouts = plane_layouts.as_ptr(); @@ -25164,6 +26938,7 @@ unsafe impl<'a> TaggedStructure for ImageDrmFormatModifierPropertiesEXT<'a> { } impl<'a> ImageDrmFormatModifierPropertiesEXT<'a> { #[inline] + #[must_use] pub fn drm_format_modifier(mut self, drm_format_modifier: u64) -> Self { self.drm_format_modifier = drm_format_modifier; self @@ -25197,6 +26972,7 @@ unsafe impl ExtendsImageCreateInfo for ImageStencilUsageCreateInfo<'_> {} unsafe impl ExtendsPhysicalDeviceImageFormatInfo2 for ImageStencilUsageCreateInfo<'_> {} impl<'a> ImageStencilUsageCreateInfo<'a> { #[inline] + #[must_use] pub fn stencil_usage(mut self, stencil_usage: ImageUsageFlags) -> Self { self.stencil_usage = stencil_usage; self @@ -25230,6 +27006,7 @@ unsafe impl<'a> TaggedStructure for DeviceMemoryOverallocationCreateInfoAMD<'a> unsafe impl ExtendsDeviceCreateInfo for DeviceMemoryOverallocationCreateInfoAMD<'_> {} impl<'a> DeviceMemoryOverallocationCreateInfoAMD<'a> { #[inline] + #[must_use] pub fn overallocation_behavior( mut self, overallocation_behavior: MemoryOverallocationBehaviorAMD, @@ -25271,16 +27048,19 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceFragmentDensityMapF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFragmentDensityMapFeaturesEXT<'_> {} impl<'a> PhysicalDeviceFragmentDensityMapFeaturesEXT<'a> { #[inline] + #[must_use] pub fn fragment_density_map(mut self, fragment_density_map: bool) -> Self { self.fragment_density_map = fragment_density_map.into(); self } #[inline] + #[must_use] pub fn fragment_density_map_dynamic(mut self, fragment_density_map_dynamic: bool) -> Self { self.fragment_density_map_dynamic = fragment_density_map_dynamic.into(); self } #[inline] + #[must_use] pub fn fragment_density_map_non_subsampled_images( mut self, fragment_density_map_non_subsampled_images: bool, @@ -25319,6 +27099,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceFragmentDensityMap2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFragmentDensityMap2FeaturesEXT<'_> {} impl<'a> PhysicalDeviceFragmentDensityMap2FeaturesEXT<'a> { #[inline] + #[must_use] pub fn fragment_density_map_deferred(mut self, fragment_density_map_deferred: bool) -> Self { self.fragment_density_map_deferred = fragment_density_map_deferred.into(); self @@ -25356,6 +27137,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn fragment_density_map_offset(mut self, fragment_density_map_offset: bool) -> Self { self.fragment_density_map_offset = fragment_density_map_offset.into(); self @@ -25393,6 +27175,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceFragmentDensityMapPropertiesEX unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceFragmentDensityMapPropertiesEXT<'_> {} impl<'a> PhysicalDeviceFragmentDensityMapPropertiesEXT<'a> { #[inline] + #[must_use] pub fn min_fragment_density_texel_size( mut self, min_fragment_density_texel_size: Extent2D, @@ -25401,6 +27184,7 @@ impl<'a> PhysicalDeviceFragmentDensityMapPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_fragment_density_texel_size( mut self, max_fragment_density_texel_size: Extent2D, @@ -25409,6 +27193,7 @@ impl<'a> PhysicalDeviceFragmentDensityMapPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn fragment_density_invocations(mut self, fragment_density_invocations: bool) -> Self { self.fragment_density_invocations = fragment_density_invocations.into(); self @@ -25451,11 +27236,13 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceFragmentDensityMap2PropertiesEXT<'a> { #[inline] + #[must_use] pub fn subsampled_loads(mut self, subsampled_loads: bool) -> Self { self.subsampled_loads = subsampled_loads.into(); self } #[inline] + #[must_use] pub fn subsampled_coarse_reconstruction_early_access( mut self, subsampled_coarse_reconstruction_early_access: bool, @@ -25465,11 +27252,13 @@ impl<'a> PhysicalDeviceFragmentDensityMap2PropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_subsampled_array_layers(mut self, max_subsampled_array_layers: u32) -> Self { self.max_subsampled_array_layers = max_subsampled_array_layers; self } #[inline] + #[must_use] pub fn max_descriptor_set_subsampled_samplers( mut self, max_descriptor_set_subsampled_samplers: u32, @@ -25509,6 +27298,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM<'a> { #[inline] + #[must_use] pub fn fragment_density_offset_granularity( mut self, fragment_density_offset_granularity: Extent2D, @@ -25546,6 +27336,7 @@ unsafe impl ExtendsRenderPassCreateInfo for RenderPassFragmentDensityMapCreateIn unsafe impl ExtendsRenderPassCreateInfo2 for RenderPassFragmentDensityMapCreateInfoEXT<'_> {} impl<'a> RenderPassFragmentDensityMapCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn fragment_density_map_attachment( mut self, fragment_density_map_attachment: AttachmentReference, @@ -25584,6 +27375,7 @@ unsafe impl<'a> TaggedStructure for SubpassFragmentDensityMapOffsetEndInfoQCOM<' unsafe impl ExtendsSubpassEndInfo for SubpassFragmentDensityMapOffsetEndInfoQCOM<'_> {} impl<'a> SubpassFragmentDensityMapOffsetEndInfoQCOM<'a> { #[inline] + #[must_use] pub fn fragment_density_offsets(mut self, fragment_density_offsets: &'a [Offset2D]) -> Self { self.fragment_density_offset_count = fragment_density_offsets.len() as _; self.p_fragment_density_offsets = fragment_density_offsets.as_ptr(); @@ -25619,6 +27411,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceScalarBlockLayoutFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceScalarBlockLayoutFeatures<'_> {} impl<'a> PhysicalDeviceScalarBlockLayoutFeatures<'a> { #[inline] + #[must_use] pub fn scalar_block_layout(mut self, scalar_block_layout: bool) -> Self { self.scalar_block_layout = scalar_block_layout.into(); self @@ -25651,6 +27444,7 @@ unsafe impl<'a> TaggedStructure for SurfaceProtectedCapabilitiesKHR<'a> { unsafe impl ExtendsSurfaceCapabilities2KHR for SurfaceProtectedCapabilitiesKHR<'_> {} impl<'a> SurfaceProtectedCapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn supports_protected(mut self, supports_protected: bool) -> Self { self.supports_protected = supports_protected.into(); self @@ -25688,6 +27482,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceUniformBufferStandardLayoutFeatures<'_> {} impl<'a> PhysicalDeviceUniformBufferStandardLayoutFeatures<'a> { #[inline] + #[must_use] pub fn uniform_buffer_standard_layout(mut self, uniform_buffer_standard_layout: bool) -> Self { self.uniform_buffer_standard_layout = uniform_buffer_standard_layout.into(); self @@ -25722,6 +27517,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDepthClipEnableFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDepthClipEnableFeaturesEXT<'_> {} impl<'a> PhysicalDeviceDepthClipEnableFeaturesEXT<'a> { #[inline] + #[must_use] pub fn depth_clip_enable(mut self, depth_clip_enable: bool) -> Self { self.depth_clip_enable = depth_clip_enable.into(); self @@ -25760,11 +27556,13 @@ unsafe impl ExtendsPipelineRasterizationStateCreateInfo } impl<'a> PipelineRasterizationDepthClipStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineRasterizationDepthClipStateCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn depth_clip_enable(mut self, depth_clip_enable: bool) -> Self { self.depth_clip_enable = depth_clip_enable.into(); self @@ -25800,11 +27598,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceMemoryBudgetPropertiesEXT<'a> unsafe impl ExtendsPhysicalDeviceMemoryProperties2 for PhysicalDeviceMemoryBudgetPropertiesEXT<'_> {} impl<'a> PhysicalDeviceMemoryBudgetPropertiesEXT<'a> { #[inline] + #[must_use] pub fn heap_budget(mut self, heap_budget: [DeviceSize; MAX_MEMORY_HEAPS]) -> Self { self.heap_budget = heap_budget; self } #[inline] + #[must_use] pub fn heap_usage(mut self, heap_usage: [DeviceSize; MAX_MEMORY_HEAPS]) -> Self { self.heap_usage = heap_usage; self @@ -25839,6 +27639,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMemoryPriorityFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMemoryPriorityFeaturesEXT<'_> {} impl<'a> PhysicalDeviceMemoryPriorityFeaturesEXT<'a> { #[inline] + #[must_use] pub fn memory_priority(mut self, memory_priority: bool) -> Self { self.memory_priority = memory_priority.into(); self @@ -25871,6 +27672,7 @@ unsafe impl<'a> TaggedStructure for MemoryPriorityAllocateInfoEXT<'a> { unsafe impl ExtendsMemoryAllocateInfo for MemoryPriorityAllocateInfoEXT<'_> {} impl<'a> MemoryPriorityAllocateInfoEXT<'a> { #[inline] + #[must_use] pub fn priority(mut self, priority: f32) -> Self { self.priority = priority; self @@ -25908,6 +27710,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT<'_> {} impl<'a> PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT<'a> { #[inline] + #[must_use] pub fn pageable_device_local_memory(mut self, pageable_device_local_memory: bool) -> Self { self.pageable_device_local_memory = pageable_device_local_memory.into(); self @@ -25946,11 +27749,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceBufferDeviceAddress unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceBufferDeviceAddressFeatures<'_> {} impl<'a> PhysicalDeviceBufferDeviceAddressFeatures<'a> { #[inline] + #[must_use] pub fn buffer_device_address(mut self, buffer_device_address: bool) -> Self { self.buffer_device_address = buffer_device_address.into(); self } #[inline] + #[must_use] pub fn buffer_device_address_capture_replay( mut self, buffer_device_address_capture_replay: bool, @@ -25959,6 +27764,7 @@ impl<'a> PhysicalDeviceBufferDeviceAddressFeatures<'a> { self } #[inline] + #[must_use] pub fn buffer_device_address_multi_device( mut self, buffer_device_address_multi_device: bool, @@ -26000,11 +27806,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceBufferDeviceAddress unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceBufferDeviceAddressFeaturesEXT<'_> {} impl<'a> PhysicalDeviceBufferDeviceAddressFeaturesEXT<'a> { #[inline] + #[must_use] pub fn buffer_device_address(mut self, buffer_device_address: bool) -> Self { self.buffer_device_address = buffer_device_address.into(); self } #[inline] + #[must_use] pub fn buffer_device_address_capture_replay( mut self, buffer_device_address_capture_replay: bool, @@ -26013,6 +27821,7 @@ impl<'a> PhysicalDeviceBufferDeviceAddressFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn buffer_device_address_multi_device( mut self, buffer_device_address_multi_device: bool, @@ -26047,6 +27856,7 @@ unsafe impl<'a> TaggedStructure for BufferDeviceAddressInfo<'a> { } impl<'a> BufferDeviceAddressInfo<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self @@ -26079,6 +27889,7 @@ unsafe impl<'a> TaggedStructure for BufferOpaqueCaptureAddressCreateInfo<'a> { unsafe impl ExtendsBufferCreateInfo for BufferOpaqueCaptureAddressCreateInfo<'_> {} impl<'a> BufferOpaqueCaptureAddressCreateInfo<'a> { #[inline] + #[must_use] pub fn opaque_capture_address(mut self, opaque_capture_address: u64) -> Self { self.opaque_capture_address = opaque_capture_address; self @@ -26111,6 +27922,7 @@ unsafe impl<'a> TaggedStructure for BufferDeviceAddressCreateInfoEXT<'a> { unsafe impl ExtendsBufferCreateInfo for BufferDeviceAddressCreateInfoEXT<'_> {} impl<'a> BufferDeviceAddressCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn device_address(mut self, device_address: DeviceAddress) -> Self { self.device_address = device_address; self @@ -26147,6 +27959,7 @@ unsafe impl ExtendsPhysicalDeviceImageFormatInfo2 } impl<'a> PhysicalDeviceImageViewImageFormatInfoEXT<'a> { #[inline] + #[must_use] pub fn image_view_type(mut self, image_view_type: ImageViewType) -> Self { self.image_view_type = image_view_type; self @@ -26182,11 +27995,13 @@ unsafe impl<'a> TaggedStructure for FilterCubicImageViewImageFormatPropertiesEXT unsafe impl ExtendsImageFormatProperties2 for FilterCubicImageViewImageFormatPropertiesEXT<'_> {} impl<'a> FilterCubicImageViewImageFormatPropertiesEXT<'a> { #[inline] + #[must_use] pub fn filter_cubic(mut self, filter_cubic: bool) -> Self { self.filter_cubic = filter_cubic.into(); self } #[inline] + #[must_use] pub fn filter_cubic_minmax(mut self, filter_cubic_minmax: bool) -> Self { self.filter_cubic_minmax = filter_cubic_minmax.into(); self @@ -26221,6 +28036,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceImagelessFramebuffe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImagelessFramebufferFeatures<'_> {} impl<'a> PhysicalDeviceImagelessFramebufferFeatures<'a> { #[inline] + #[must_use] pub fn imageless_framebuffer(mut self, imageless_framebuffer: bool) -> Self { self.imageless_framebuffer = imageless_framebuffer.into(); self @@ -26255,6 +28071,7 @@ unsafe impl<'a> TaggedStructure for FramebufferAttachmentsCreateInfo<'a> { unsafe impl ExtendsFramebufferCreateInfo for FramebufferAttachmentsCreateInfo<'_> {} impl<'a> FramebufferAttachmentsCreateInfo<'a> { #[inline] + #[must_use] pub fn attachment_image_infos( mut self, attachment_image_infos: &'a [FramebufferAttachmentImageInfo<'a>], @@ -26302,31 +28119,37 @@ unsafe impl<'a> TaggedStructure for FramebufferAttachmentImageInfo<'a> { } impl<'a> FramebufferAttachmentImageInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ImageCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn usage(mut self, usage: ImageUsageFlags) -> Self { self.usage = usage; self } #[inline] + #[must_use] pub fn width(mut self, width: u32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: u32) -> Self { self.height = height; self } #[inline] + #[must_use] pub fn layer_count(mut self, layer_count: u32) -> Self { self.layer_count = layer_count; self } #[inline] + #[must_use] pub fn view_formats(mut self, view_formats: &'a [Format]) -> Self { self.view_format_count = view_formats.len() as _; self.p_view_formats = view_formats.as_ptr(); @@ -26362,6 +28185,7 @@ unsafe impl<'a> TaggedStructure for RenderPassAttachmentBeginInfo<'a> { unsafe impl ExtendsRenderPassBeginInfo for RenderPassAttachmentBeginInfo<'_> {} impl<'a> RenderPassAttachmentBeginInfo<'a> { #[inline] + #[must_use] pub fn attachments(mut self, attachments: &'a [ImageView]) -> Self { self.attachment_count = attachments.len() as _; self.p_attachments = attachments.as_ptr(); @@ -26397,6 +28221,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceTextureCompressionA unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceTextureCompressionASTCHDRFeatures<'_> {} impl<'a> PhysicalDeviceTextureCompressionASTCHDRFeatures<'a> { #[inline] + #[must_use] pub fn texture_compression_astc_hdr(mut self, texture_compression_astc_hdr: bool) -> Self { self.texture_compression_astc_hdr = texture_compression_astc_hdr.into(); self @@ -26433,11 +28258,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCooperativeMatrixFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCooperativeMatrixFeaturesNV<'_> {} impl<'a> PhysicalDeviceCooperativeMatrixFeaturesNV<'a> { #[inline] + #[must_use] pub fn cooperative_matrix(mut self, cooperative_matrix: bool) -> Self { self.cooperative_matrix = cooperative_matrix.into(); self } #[inline] + #[must_use] pub fn cooperative_matrix_robust_buffer_access( mut self, cooperative_matrix_robust_buffer_access: bool, @@ -26475,6 +28302,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceCooperativeMatrixPropertiesNV< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceCooperativeMatrixPropertiesNV<'_> {} impl<'a> PhysicalDeviceCooperativeMatrixPropertiesNV<'a> { #[inline] + #[must_use] pub fn cooperative_matrix_supported_stages( mut self, cooperative_matrix_supported_stages: ShaderStageFlags, @@ -26523,41 +28351,49 @@ unsafe impl<'a> TaggedStructure for CooperativeMatrixPropertiesNV<'a> { } impl<'a> CooperativeMatrixPropertiesNV<'a> { #[inline] + #[must_use] pub fn m_size(mut self, m_size: u32) -> Self { self.m_size = m_size; self } #[inline] + #[must_use] pub fn n_size(mut self, n_size: u32) -> Self { self.n_size = n_size; self } #[inline] + #[must_use] pub fn k_size(mut self, k_size: u32) -> Self { self.k_size = k_size; self } #[inline] + #[must_use] pub fn a_type(mut self, a_type: ComponentTypeNV) -> Self { self.a_type = a_type; self } #[inline] + #[must_use] pub fn b_type(mut self, b_type: ComponentTypeNV) -> Self { self.b_type = b_type; self } #[inline] + #[must_use] pub fn c_type(mut self, c_type: ComponentTypeNV) -> Self { self.c_type = c_type; self } #[inline] + #[must_use] pub fn d_type(mut self, d_type: ComponentTypeNV) -> Self { self.d_type = d_type; self } #[inline] + #[must_use] pub fn scope(mut self, scope: ScopeNV) -> Self { self.scope = scope; self @@ -26592,6 +28428,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceYcbcrImageArraysFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceYcbcrImageArraysFeaturesEXT<'_> {} impl<'a> PhysicalDeviceYcbcrImageArraysFeaturesEXT<'a> { #[inline] + #[must_use] pub fn ycbcr_image_arrays(mut self, ycbcr_image_arrays: bool) -> Self { self.ycbcr_image_arrays = ycbcr_image_arrays.into(); self @@ -26627,16 +28464,19 @@ unsafe impl<'a> TaggedStructure for ImageViewHandleInfoNVX<'a> { } impl<'a> ImageViewHandleInfoNVX<'a> { #[inline] + #[must_use] pub fn image_view(mut self, image_view: ImageView) -> Self { self.image_view = image_view; self } #[inline] + #[must_use] pub fn descriptor_type(mut self, descriptor_type: DescriptorType) -> Self { self.descriptor_type = descriptor_type; self } #[inline] + #[must_use] pub fn sampler(mut self, sampler: Sampler) -> Self { self.sampler = sampler; self @@ -26670,11 +28510,13 @@ unsafe impl<'a> TaggedStructure for ImageViewAddressPropertiesNVX<'a> { } impl<'a> ImageViewAddressPropertiesNVX<'a> { #[inline] + #[must_use] pub fn device_address(mut self, device_address: DeviceAddress) -> Self { self.device_address = device_address; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -26707,6 +28549,7 @@ unsafe impl<'a> TaggedStructure for PresentFrameTokenGGP<'a> { unsafe impl ExtendsPresentInfoKHR for PresentFrameTokenGGP<'_> {} impl<'a> PresentFrameTokenGGP<'a> { #[inline] + #[must_use] pub fn frame_token(mut self, frame_token: GgpFrameToken) -> Self { self.frame_token = frame_token; self @@ -26722,11 +28565,13 @@ pub struct PipelineCreationFeedback { } impl PipelineCreationFeedback { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCreationFeedbackFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn duration(mut self, duration: u64) -> Self { self.duration = duration; self @@ -26767,6 +28612,7 @@ unsafe impl ExtendsRayTracingPipelineCreateInfoKHR for PipelineCreationFeedbackC unsafe impl ExtendsExecutionGraphPipelineCreateInfoAMDX for PipelineCreationFeedbackCreateInfo<'_> {} impl<'a> PipelineCreationFeedbackCreateInfo<'a> { #[inline] + #[must_use] pub fn pipeline_creation_feedback( mut self, pipeline_creation_feedback: &'a mut PipelineCreationFeedback, @@ -26775,6 +28621,7 @@ impl<'a> PipelineCreationFeedbackCreateInfo<'a> { self } #[inline] + #[must_use] pub fn pipeline_stage_creation_feedbacks( mut self, pipeline_stage_creation_feedbacks: &'a mut [PipelineCreationFeedback], @@ -26812,6 +28659,7 @@ unsafe impl ExtendsPhysicalDeviceSurfaceInfo2KHR for SurfaceFullScreenExclusiveI unsafe impl ExtendsSwapchainCreateInfoKHR for SurfaceFullScreenExclusiveInfoEXT<'_> {} impl<'a> SurfaceFullScreenExclusiveInfoEXT<'a> { #[inline] + #[must_use] pub fn full_screen_exclusive(mut self, full_screen_exclusive: FullScreenExclusiveEXT) -> Self { self.full_screen_exclusive = full_screen_exclusive; self @@ -26846,6 +28694,7 @@ unsafe impl ExtendsPhysicalDeviceSurfaceInfo2KHR for SurfaceFullScreenExclusiveW unsafe impl ExtendsSwapchainCreateInfoKHR for SurfaceFullScreenExclusiveWin32InfoEXT<'_> {} impl<'a> SurfaceFullScreenExclusiveWin32InfoEXT<'a> { #[inline] + #[must_use] pub fn hmonitor(mut self, hmonitor: HMONITOR) -> Self { self.hmonitor = hmonitor; self @@ -26879,6 +28728,7 @@ unsafe impl<'a> TaggedStructure for SurfaceCapabilitiesFullScreenExclusiveEXT<'a unsafe impl ExtendsSurfaceCapabilities2KHR for SurfaceCapabilitiesFullScreenExclusiveEXT<'_> {} impl<'a> SurfaceCapabilitiesFullScreenExclusiveEXT<'a> { #[inline] + #[must_use] pub fn full_screen_exclusive_supported( mut self, full_screen_exclusive_supported: bool, @@ -26916,6 +28766,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePresentBarrierFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePresentBarrierFeaturesNV<'_> {} impl<'a> PhysicalDevicePresentBarrierFeaturesNV<'a> { #[inline] + #[must_use] pub fn present_barrier(mut self, present_barrier: bool) -> Self { self.present_barrier = present_barrier.into(); self @@ -26948,6 +28799,7 @@ unsafe impl<'a> TaggedStructure for SurfaceCapabilitiesPresentBarrierNV<'a> { unsafe impl ExtendsSurfaceCapabilities2KHR for SurfaceCapabilitiesPresentBarrierNV<'_> {} impl<'a> SurfaceCapabilitiesPresentBarrierNV<'a> { #[inline] + #[must_use] pub fn present_barrier_supported(mut self, present_barrier_supported: bool) -> Self { self.present_barrier_supported = present_barrier_supported.into(); self @@ -26980,6 +28832,7 @@ unsafe impl<'a> TaggedStructure for SwapchainPresentBarrierCreateInfoNV<'a> { unsafe impl ExtendsSwapchainCreateInfoKHR for SwapchainPresentBarrierCreateInfoNV<'_> {} impl<'a> SwapchainPresentBarrierCreateInfoNV<'a> { #[inline] + #[must_use] pub fn present_barrier_enable(mut self, present_barrier_enable: bool) -> Self { self.present_barrier_enable = present_barrier_enable.into(); self @@ -27016,6 +28869,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePerformanceQueryFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePerformanceQueryFeaturesKHR<'_> {} impl<'a> PhysicalDevicePerformanceQueryFeaturesKHR<'a> { #[inline] + #[must_use] pub fn performance_counter_query_pools( mut self, performance_counter_query_pools: bool, @@ -27024,6 +28878,7 @@ impl<'a> PhysicalDevicePerformanceQueryFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn performance_counter_multiple_query_pools( mut self, performance_counter_multiple_query_pools: bool, @@ -27061,6 +28916,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDevicePerformanceQueryPropertiesKHR< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDevicePerformanceQueryPropertiesKHR<'_> {} impl<'a> PhysicalDevicePerformanceQueryPropertiesKHR<'a> { #[inline] + #[must_use] pub fn allow_command_buffer_query_copies( mut self, allow_command_buffer_query_copies: bool, @@ -27101,21 +28957,25 @@ unsafe impl<'a> TaggedStructure for PerformanceCounterKHR<'a> { } impl<'a> PerformanceCounterKHR<'a> { #[inline] + #[must_use] pub fn unit(mut self, unit: PerformanceCounterUnitKHR) -> Self { self.unit = unit; self } #[inline] + #[must_use] pub fn scope(mut self, scope: PerformanceCounterScopeKHR) -> Self { self.scope = scope; self } #[inline] + #[must_use] pub fn storage(mut self, storage: PerformanceCounterStorageKHR) -> Self { self.storage = storage; self } #[inline] + #[must_use] pub fn uuid(mut self, uuid: [u8; UUID_SIZE]) -> Self { self.uuid = uuid; self @@ -27165,6 +29025,7 @@ unsafe impl<'a> TaggedStructure for PerformanceCounterDescriptionKHR<'a> { } impl<'a> PerformanceCounterDescriptionKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PerformanceCounterDescriptionFlagsKHR) -> Self { self.flags = flags; self @@ -27240,11 +29101,13 @@ unsafe impl<'a> TaggedStructure for QueryPoolPerformanceCreateInfoKHR<'a> { unsafe impl ExtendsQueryPoolCreateInfo for QueryPoolPerformanceCreateInfoKHR<'_> {} impl<'a> QueryPoolPerformanceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn queue_family_index(mut self, queue_family_index: u32) -> Self { self.queue_family_index = queue_family_index; self } #[inline] + #[must_use] pub fn counter_indices(mut self, counter_indices: &'a [u32]) -> Self { self.counter_index_count = counter_indices.len() as _; self.p_counter_indices = counter_indices.as_ptr(); @@ -27296,11 +29159,13 @@ unsafe impl<'a> TaggedStructure for AcquireProfilingLockInfoKHR<'a> { } impl<'a> AcquireProfilingLockInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: AcquireProfilingLockFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn timeout(mut self, timeout: u64) -> Self { self.timeout = timeout; self @@ -27334,6 +29199,7 @@ unsafe impl ExtendsSubmitInfo for PerformanceQuerySubmitInfoKHR<'_> {} unsafe impl ExtendsSubmitInfo2 for PerformanceQuerySubmitInfoKHR<'_> {} impl<'a> PerformanceQuerySubmitInfoKHR<'a> { #[inline] + #[must_use] pub fn counter_pass_index(mut self, counter_pass_index: u32) -> Self { self.counter_pass_index = counter_pass_index; self @@ -27365,6 +29231,7 @@ unsafe impl<'a> TaggedStructure for HeadlessSurfaceCreateInfoEXT<'a> { } impl<'a> HeadlessSurfaceCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: HeadlessSurfaceCreateFlagsEXT) -> Self { self.flags = flags; self @@ -27399,6 +29266,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCoverageReductionMo unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCoverageReductionModeFeaturesNV<'_> {} impl<'a> PhysicalDeviceCoverageReductionModeFeaturesNV<'a> { #[inline] + #[must_use] pub fn coverage_reduction_mode(mut self, coverage_reduction_mode: bool) -> Self { self.coverage_reduction_mode = coverage_reduction_mode.into(); self @@ -27437,11 +29305,13 @@ unsafe impl ExtendsPipelineMultisampleStateCreateInfo } impl<'a> PipelineCoverageReductionStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCoverageReductionStateCreateFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn coverage_reduction_mode( mut self, coverage_reduction_mode: CoverageReductionModeNV, @@ -27482,6 +29352,7 @@ unsafe impl<'a> TaggedStructure for FramebufferMixedSamplesCombinationNV<'a> { } impl<'a> FramebufferMixedSamplesCombinationNV<'a> { #[inline] + #[must_use] pub fn coverage_reduction_mode( mut self, coverage_reduction_mode: CoverageReductionModeNV, @@ -27490,16 +29361,19 @@ impl<'a> FramebufferMixedSamplesCombinationNV<'a> { self } #[inline] + #[must_use] pub fn rasterization_samples(mut self, rasterization_samples: SampleCountFlags) -> Self { self.rasterization_samples = rasterization_samples; self } #[inline] + #[must_use] pub fn depth_stencil_samples(mut self, depth_stencil_samples: SampleCountFlags) -> Self { self.depth_stencil_samples = depth_stencil_samples; self } #[inline] + #[must_use] pub fn color_samples(mut self, color_samples: SampleCountFlags) -> Self { self.color_samples = color_samples; self @@ -27537,6 +29411,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL<'_> {} impl<'a> PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL<'a> { #[inline] + #[must_use] pub fn shader_integer_functions2(mut self, shader_integer_functions2: bool) -> Self { self.shader_integer_functions2 = shader_integer_functions2.into(); self @@ -27576,11 +29451,13 @@ impl fmt::Debug for PerformanceValueINTEL { } impl PerformanceValueINTEL { #[inline] + #[must_use] pub fn ty(mut self, ty: PerformanceValueTypeINTEL) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn data(mut self, data: PerformanceValueDataINTEL) -> Self { self.data = data; self @@ -27612,6 +29489,7 @@ unsafe impl<'a> TaggedStructure for InitializePerformanceApiInfoINTEL<'a> { } impl<'a> InitializePerformanceApiInfoINTEL<'a> { #[inline] + #[must_use] pub fn user_data(mut self, user_data: *mut c_void) -> Self { self.p_user_data = user_data; self @@ -27645,6 +29523,7 @@ unsafe impl<'a> TaggedStructure for QueryPoolPerformanceQueryCreateInfoINTEL<'a> unsafe impl ExtendsQueryPoolCreateInfo for QueryPoolPerformanceQueryCreateInfoINTEL<'_> {} impl<'a> QueryPoolPerformanceQueryCreateInfoINTEL<'a> { #[inline] + #[must_use] pub fn performance_counters_sampling( mut self, performance_counters_sampling: QueryPoolSamplingModeINTEL, @@ -27679,6 +29558,7 @@ unsafe impl<'a> TaggedStructure for PerformanceMarkerInfoINTEL<'a> { } impl<'a> PerformanceMarkerInfoINTEL<'a> { #[inline] + #[must_use] pub fn marker(mut self, marker: u64) -> Self { self.marker = marker; self @@ -27710,6 +29590,7 @@ unsafe impl<'a> TaggedStructure for PerformanceStreamMarkerInfoINTEL<'a> { } impl<'a> PerformanceStreamMarkerInfoINTEL<'a> { #[inline] + #[must_use] pub fn marker(mut self, marker: u32) -> Self { self.marker = marker; self @@ -27745,16 +29626,19 @@ unsafe impl<'a> TaggedStructure for PerformanceOverrideInfoINTEL<'a> { } impl<'a> PerformanceOverrideInfoINTEL<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: PerformanceOverrideTypeINTEL) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn enable(mut self, enable: bool) -> Self { self.enable = enable.into(); self } #[inline] + #[must_use] pub fn parameter(mut self, parameter: u64) -> Self { self.parameter = parameter; self @@ -27787,6 +29671,7 @@ unsafe impl<'a> TaggedStructure for PerformanceConfigurationAcquireInfoINTEL<'a> } impl<'a> PerformanceConfigurationAcquireInfoINTEL<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: PerformanceConfigurationTypeINTEL) -> Self { self.ty = ty; self @@ -27822,11 +29707,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderClockFeatures unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderClockFeaturesKHR<'_> {} impl<'a> PhysicalDeviceShaderClockFeaturesKHR<'a> { #[inline] + #[must_use] pub fn shader_subgroup_clock(mut self, shader_subgroup_clock: bool) -> Self { self.shader_subgroup_clock = shader_subgroup_clock.into(); self } #[inline] + #[must_use] pub fn shader_device_clock(mut self, shader_device_clock: bool) -> Self { self.shader_device_clock = shader_device_clock.into(); self @@ -27861,6 +29748,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceIndexTypeUint8Featu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceIndexTypeUint8FeaturesEXT<'_> {} impl<'a> PhysicalDeviceIndexTypeUint8FeaturesEXT<'a> { #[inline] + #[must_use] pub fn index_type_uint8(mut self, index_type_uint8: bool) -> Self { self.index_type_uint8 = index_type_uint8.into(); self @@ -27896,11 +29784,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderSMBuiltinsPropertiesNV<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderSMBuiltinsPropertiesNV<'_> {} impl<'a> PhysicalDeviceShaderSMBuiltinsPropertiesNV<'a> { #[inline] + #[must_use] pub fn shader_sm_count(mut self, shader_sm_count: u32) -> Self { self.shader_sm_count = shader_sm_count; self } #[inline] + #[must_use] pub fn shader_warps_per_sm(mut self, shader_warps_per_sm: u32) -> Self { self.shader_warps_per_sm = shader_warps_per_sm; self @@ -27935,6 +29825,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderSMBuiltinsFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderSMBuiltinsFeaturesNV<'_> {} impl<'a> PhysicalDeviceShaderSMBuiltinsFeaturesNV<'a> { #[inline] + #[must_use] pub fn shader_sm_builtins(mut self, shader_sm_builtins: bool) -> Self { self.shader_sm_builtins = shader_sm_builtins.into(); self @@ -27976,6 +29867,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFragmentShaderInterlockFeaturesEXT<'_> {} impl<'a> PhysicalDeviceFragmentShaderInterlockFeaturesEXT<'a> { #[inline] + #[must_use] pub fn fragment_shader_sample_interlock( mut self, fragment_shader_sample_interlock: bool, @@ -27984,6 +29876,7 @@ impl<'a> PhysicalDeviceFragmentShaderInterlockFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn fragment_shader_pixel_interlock( mut self, fragment_shader_pixel_interlock: bool, @@ -27992,6 +29885,7 @@ impl<'a> PhysicalDeviceFragmentShaderInterlockFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn fragment_shader_shading_rate_interlock( mut self, fragment_shader_shading_rate_interlock: bool, @@ -28032,6 +29926,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSeparateDepthStencilLayoutsFeatures<'_> {} impl<'a> PhysicalDeviceSeparateDepthStencilLayoutsFeatures<'a> { #[inline] + #[must_use] pub fn separate_depth_stencil_layouts(mut self, separate_depth_stencil_layouts: bool) -> Self { self.separate_depth_stencil_layouts = separate_depth_stencil_layouts.into(); self @@ -28064,6 +29959,7 @@ unsafe impl<'a> TaggedStructure for AttachmentReferenceStencilLayout<'a> { unsafe impl ExtendsAttachmentReference2 for AttachmentReferenceStencilLayout<'_> {} impl<'a> AttachmentReferenceStencilLayout<'a> { #[inline] + #[must_use] pub fn stencil_layout(mut self, stencil_layout: ImageLayout) -> Self { self.stencil_layout = stencil_layout; self @@ -28103,6 +29999,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT<'_> {} impl<'a> PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT<'a> { #[inline] + #[must_use] pub fn primitive_topology_list_restart( mut self, primitive_topology_list_restart: bool, @@ -28111,6 +30008,7 @@ impl<'a> PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn primitive_topology_patch_list_restart( mut self, primitive_topology_patch_list_restart: bool, @@ -28148,11 +30046,13 @@ unsafe impl<'a> TaggedStructure for AttachmentDescriptionStencilLayout<'a> { unsafe impl ExtendsAttachmentDescription2 for AttachmentDescriptionStencilLayout<'_> {} impl<'a> AttachmentDescriptionStencilLayout<'a> { #[inline] + #[must_use] pub fn stencil_initial_layout(mut self, stencil_initial_layout: ImageLayout) -> Self { self.stencil_initial_layout = stencil_initial_layout; self } #[inline] + #[must_use] pub fn stencil_final_layout(mut self, stencil_final_layout: ImageLayout) -> Self { self.stencil_final_layout = stencil_final_layout; self @@ -28190,6 +30090,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePipelineExecutablePropertiesFeaturesKHR<'_> {} impl<'a> PhysicalDevicePipelineExecutablePropertiesFeaturesKHR<'a> { #[inline] + #[must_use] pub fn pipeline_executable_info(mut self, pipeline_executable_info: bool) -> Self { self.pipeline_executable_info = pipeline_executable_info.into(); self @@ -28221,6 +30122,7 @@ unsafe impl<'a> TaggedStructure for PipelineInfoKHR<'a> { } impl<'a> PipelineInfoKHR<'a> { #[inline] + #[must_use] pub fn pipeline(mut self, pipeline: Pipeline) -> Self { self.pipeline = pipeline; self @@ -28270,6 +30172,7 @@ unsafe impl<'a> TaggedStructure for PipelineExecutablePropertiesKHR<'a> { } impl<'a> PipelineExecutablePropertiesKHR<'a> { #[inline] + #[must_use] pub fn stages(mut self, stages: ShaderStageFlags) -> Self { self.stages = stages; self @@ -28301,6 +30204,7 @@ impl<'a> PipelineExecutablePropertiesKHR<'a> { wrap_c_str_slice_until_nul(&self.description) } #[inline] + #[must_use] pub fn subgroup_size(mut self, subgroup_size: u32) -> Self { self.subgroup_size = subgroup_size; self @@ -28334,11 +30238,13 @@ unsafe impl<'a> TaggedStructure for PipelineExecutableInfoKHR<'a> { } impl<'a> PipelineExecutableInfoKHR<'a> { #[inline] + #[must_use] pub fn pipeline(mut self, pipeline: Pipeline) -> Self { self.pipeline = pipeline; self } #[inline] + #[must_use] pub fn executable_index(mut self, executable_index: u32) -> Self { self.executable_index = executable_index; self @@ -28429,11 +30335,13 @@ impl<'a> PipelineExecutableStatisticKHR<'a> { wrap_c_str_slice_until_nul(&self.description) } #[inline] + #[must_use] pub fn format(mut self, format: PipelineExecutableStatisticFormatKHR) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn value(mut self, value: PipelineExecutableStatisticValueKHR) -> Self { self.value = value; self @@ -28513,11 +30421,13 @@ impl<'a> PipelineExecutableInternalRepresentationKHR<'a> { wrap_c_str_slice_until_nul(&self.description) } #[inline] + #[must_use] pub fn is_text(mut self, is_text: bool) -> Self { self.is_text = is_text.into(); self } #[inline] + #[must_use] pub fn data(mut self, data: &'a mut [u8]) -> Self { self.data_size = data.len(); self.p_data = data.as_mut_ptr().cast(); @@ -28556,6 +30466,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderDemoteToHelperInvocationFeatures<'_> {} impl<'a> PhysicalDeviceShaderDemoteToHelperInvocationFeatures<'a> { #[inline] + #[must_use] pub fn shader_demote_to_helper_invocation( mut self, shader_demote_to_helper_invocation: bool, @@ -28593,6 +30504,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceTexelBufferAlignmen unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceTexelBufferAlignmentFeaturesEXT<'_> {} impl<'a> PhysicalDeviceTexelBufferAlignmentFeaturesEXT<'a> { #[inline] + #[must_use] pub fn texel_buffer_alignment(mut self, texel_buffer_alignment: bool) -> Self { self.texel_buffer_alignment = texel_buffer_alignment.into(); self @@ -28632,6 +30544,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceTexelBufferAlignmentProperties unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceTexelBufferAlignmentProperties<'_> {} impl<'a> PhysicalDeviceTexelBufferAlignmentProperties<'a> { #[inline] + #[must_use] pub fn storage_texel_buffer_offset_alignment_bytes( mut self, storage_texel_buffer_offset_alignment_bytes: DeviceSize, @@ -28641,6 +30554,7 @@ impl<'a> PhysicalDeviceTexelBufferAlignmentProperties<'a> { self } #[inline] + #[must_use] pub fn storage_texel_buffer_offset_single_texel_alignment( mut self, storage_texel_buffer_offset_single_texel_alignment: bool, @@ -28650,6 +30564,7 @@ impl<'a> PhysicalDeviceTexelBufferAlignmentProperties<'a> { self } #[inline] + #[must_use] pub fn uniform_texel_buffer_offset_alignment_bytes( mut self, uniform_texel_buffer_offset_alignment_bytes: DeviceSize, @@ -28659,6 +30574,7 @@ impl<'a> PhysicalDeviceTexelBufferAlignmentProperties<'a> { self } #[inline] + #[must_use] pub fn uniform_texel_buffer_offset_single_texel_alignment( mut self, uniform_texel_buffer_offset_single_texel_alignment: bool, @@ -28699,11 +30615,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceSubgroupSizeControl unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSubgroupSizeControlFeatures<'_> {} impl<'a> PhysicalDeviceSubgroupSizeControlFeatures<'a> { #[inline] + #[must_use] pub fn subgroup_size_control(mut self, subgroup_size_control: bool) -> Self { self.subgroup_size_control = subgroup_size_control.into(); self } #[inline] + #[must_use] pub fn compute_full_subgroups(mut self, compute_full_subgroups: bool) -> Self { self.compute_full_subgroups = compute_full_subgroups.into(); self @@ -28743,21 +30661,25 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSubgroupSizeControlProperties< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceSubgroupSizeControlProperties<'_> {} impl<'a> PhysicalDeviceSubgroupSizeControlProperties<'a> { #[inline] + #[must_use] pub fn min_subgroup_size(mut self, min_subgroup_size: u32) -> Self { self.min_subgroup_size = min_subgroup_size; self } #[inline] + #[must_use] pub fn max_subgroup_size(mut self, max_subgroup_size: u32) -> Self { self.max_subgroup_size = max_subgroup_size; self } #[inline] + #[must_use] pub fn max_compute_workgroup_subgroups(mut self, max_compute_workgroup_subgroups: u32) -> Self { self.max_compute_workgroup_subgroups = max_compute_workgroup_subgroups; self } #[inline] + #[must_use] pub fn required_subgroup_size_stages( mut self, required_subgroup_size_stages: ShaderStageFlags, @@ -28798,6 +30720,7 @@ unsafe impl ExtendsPipelineShaderStageCreateInfo unsafe impl ExtendsShaderCreateInfoEXT for PipelineShaderStageRequiredSubgroupSizeCreateInfo<'_> {} impl<'a> PipelineShaderStageRequiredSubgroupSizeCreateInfo<'a> { #[inline] + #[must_use] pub fn required_subgroup_size(mut self, required_subgroup_size: u32) -> Self { self.required_subgroup_size = required_subgroup_size; self @@ -28833,11 +30756,13 @@ unsafe impl<'a> TaggedStructure for SubpassShadingPipelineCreateInfoHUAWEI<'a> { unsafe impl ExtendsComputePipelineCreateInfo for SubpassShadingPipelineCreateInfoHUAWEI<'_> {} impl<'a> SubpassShadingPipelineCreateInfoHUAWEI<'a> { #[inline] + #[must_use] pub fn render_pass(mut self, render_pass: RenderPass) -> Self { self.render_pass = render_pass; self } #[inline] + #[must_use] pub fn subpass(mut self, subpass: u32) -> Self { self.subpass = subpass; self @@ -28871,6 +30796,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSubpassShadingPropertiesHUAWEI unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceSubpassShadingPropertiesHUAWEI<'_> {} impl<'a> PhysicalDeviceSubpassShadingPropertiesHUAWEI<'a> { #[inline] + #[must_use] pub fn max_subpass_shading_workgroup_size_aspect_ratio( mut self, max_subpass_shading_workgroup_size_aspect_ratio: u32, @@ -28917,21 +30843,25 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceClusterCullingShaderPropertiesHUAWEI<'a> { #[inline] + #[must_use] pub fn max_work_group_count(mut self, max_work_group_count: [u32; 3]) -> Self { self.max_work_group_count = max_work_group_count; self } #[inline] + #[must_use] pub fn max_work_group_size(mut self, max_work_group_size: [u32; 3]) -> Self { self.max_work_group_size = max_work_group_size; self } #[inline] + #[must_use] pub fn max_output_cluster_count(mut self, max_output_cluster_count: u32) -> Self { self.max_output_cluster_count = max_output_cluster_count; self } #[inline] + #[must_use] pub fn indirect_buffer_offset_alignment( mut self, indirect_buffer_offset_alignment: DeviceSize, @@ -28968,6 +30898,7 @@ unsafe impl<'a> TaggedStructure for MemoryOpaqueCaptureAddressAllocateInfo<'a> { unsafe impl ExtendsMemoryAllocateInfo for MemoryOpaqueCaptureAddressAllocateInfo<'_> {} impl<'a> MemoryOpaqueCaptureAddressAllocateInfo<'a> { #[inline] + #[must_use] pub fn opaque_capture_address(mut self, opaque_capture_address: u64) -> Self { self.opaque_capture_address = opaque_capture_address; self @@ -28999,6 +30930,7 @@ unsafe impl<'a> TaggedStructure for DeviceMemoryOpaqueCaptureAddressInfo<'a> { } impl<'a> DeviceMemoryOpaqueCaptureAddressInfo<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self @@ -29043,31 +30975,37 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceLineRasterizationFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceLineRasterizationFeaturesEXT<'_> {} impl<'a> PhysicalDeviceLineRasterizationFeaturesEXT<'a> { #[inline] + #[must_use] pub fn rectangular_lines(mut self, rectangular_lines: bool) -> Self { self.rectangular_lines = rectangular_lines.into(); self } #[inline] + #[must_use] pub fn bresenham_lines(mut self, bresenham_lines: bool) -> Self { self.bresenham_lines = bresenham_lines.into(); self } #[inline] + #[must_use] pub fn smooth_lines(mut self, smooth_lines: bool) -> Self { self.smooth_lines = smooth_lines.into(); self } #[inline] + #[must_use] pub fn stippled_rectangular_lines(mut self, stippled_rectangular_lines: bool) -> Self { self.stippled_rectangular_lines = stippled_rectangular_lines.into(); self } #[inline] + #[must_use] pub fn stippled_bresenham_lines(mut self, stippled_bresenham_lines: bool) -> Self { self.stippled_bresenham_lines = stippled_bresenham_lines.into(); self } #[inline] + #[must_use] pub fn stippled_smooth_lines(mut self, stippled_smooth_lines: bool) -> Self { self.stippled_smooth_lines = stippled_smooth_lines.into(); self @@ -29101,6 +31039,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceLineRasterizationPropertiesEXT unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceLineRasterizationPropertiesEXT<'_> {} impl<'a> PhysicalDeviceLineRasterizationPropertiesEXT<'a> { #[inline] + #[must_use] pub fn line_sub_pixel_precision_bits(mut self, line_sub_pixel_precision_bits: u32) -> Self { self.line_sub_pixel_precision_bits = line_sub_pixel_precision_bits; self @@ -29143,6 +31082,7 @@ unsafe impl ExtendsPipelineRasterizationStateCreateInfo } impl<'a> PipelineRasterizationLineStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn line_rasterization_mode( mut self, line_rasterization_mode: LineRasterizationModeEXT, @@ -29151,16 +31091,19 @@ impl<'a> PipelineRasterizationLineStateCreateInfoEXT<'a> { self } #[inline] + #[must_use] pub fn stippled_line_enable(mut self, stippled_line_enable: bool) -> Self { self.stippled_line_enable = stippled_line_enable.into(); self } #[inline] + #[must_use] pub fn line_stipple_factor(mut self, line_stipple_factor: u32) -> Self { self.line_stipple_factor = line_stipple_factor; self } #[inline] + #[must_use] pub fn line_stipple_pattern(mut self, line_stipple_pattern: u16) -> Self { self.line_stipple_pattern = line_stipple_pattern; self @@ -29198,6 +31141,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePipelineCreationCacheControlFeatures<'_> {} impl<'a> PhysicalDevicePipelineCreationCacheControlFeatures<'a> { #[inline] + #[must_use] pub fn pipeline_creation_cache_control( mut self, pipeline_creation_cache_control: bool, @@ -29256,11 +31200,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceVulkan11Features<'_ unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceVulkan11Features<'_> {} impl<'a> PhysicalDeviceVulkan11Features<'a> { #[inline] + #[must_use] pub fn storage_buffer16_bit_access(mut self, storage_buffer16_bit_access: bool) -> Self { self.storage_buffer16_bit_access = storage_buffer16_bit_access.into(); self } #[inline] + #[must_use] pub fn uniform_and_storage_buffer16_bit_access( mut self, uniform_and_storage_buffer16_bit_access: bool, @@ -29270,31 +31216,37 @@ impl<'a> PhysicalDeviceVulkan11Features<'a> { self } #[inline] + #[must_use] pub fn storage_push_constant16(mut self, storage_push_constant16: bool) -> Self { self.storage_push_constant16 = storage_push_constant16.into(); self } #[inline] + #[must_use] pub fn storage_input_output16(mut self, storage_input_output16: bool) -> Self { self.storage_input_output16 = storage_input_output16.into(); self } #[inline] + #[must_use] pub fn multiview(mut self, multiview: bool) -> Self { self.multiview = multiview.into(); self } #[inline] + #[must_use] pub fn multiview_geometry_shader(mut self, multiview_geometry_shader: bool) -> Self { self.multiview_geometry_shader = multiview_geometry_shader.into(); self } #[inline] + #[must_use] pub fn multiview_tessellation_shader(mut self, multiview_tessellation_shader: bool) -> Self { self.multiview_tessellation_shader = multiview_tessellation_shader.into(); self } #[inline] + #[must_use] pub fn variable_pointers_storage_buffer( mut self, variable_pointers_storage_buffer: bool, @@ -29303,21 +31255,25 @@ impl<'a> PhysicalDeviceVulkan11Features<'a> { self } #[inline] + #[must_use] pub fn variable_pointers(mut self, variable_pointers: bool) -> Self { self.variable_pointers = variable_pointers.into(); self } #[inline] + #[must_use] pub fn protected_memory(mut self, protected_memory: bool) -> Self { self.protected_memory = protected_memory.into(); self } #[inline] + #[must_use] pub fn sampler_ycbcr_conversion(mut self, sampler_ycbcr_conversion: bool) -> Self { self.sampler_ycbcr_conversion = sampler_ycbcr_conversion.into(); self } #[inline] + #[must_use] pub fn shader_draw_parameters(mut self, shader_draw_parameters: bool) -> Self { self.shader_draw_parameters = shader_draw_parameters.into(); self @@ -29378,36 +31334,43 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceVulkan11Properties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceVulkan11Properties<'_> {} impl<'a> PhysicalDeviceVulkan11Properties<'a> { #[inline] + #[must_use] pub fn device_uuid(mut self, device_uuid: [u8; UUID_SIZE]) -> Self { self.device_uuid = device_uuid; self } #[inline] + #[must_use] pub fn driver_uuid(mut self, driver_uuid: [u8; UUID_SIZE]) -> Self { self.driver_uuid = driver_uuid; self } #[inline] + #[must_use] pub fn device_luid(mut self, device_luid: [u8; LUID_SIZE]) -> Self { self.device_luid = device_luid; self } #[inline] + #[must_use] pub fn device_node_mask(mut self, device_node_mask: u32) -> Self { self.device_node_mask = device_node_mask; self } #[inline] + #[must_use] pub fn device_luid_valid(mut self, device_luid_valid: bool) -> Self { self.device_luid_valid = device_luid_valid.into(); self } #[inline] + #[must_use] pub fn subgroup_size(mut self, subgroup_size: u32) -> Self { self.subgroup_size = subgroup_size; self } #[inline] + #[must_use] pub fn subgroup_supported_stages( mut self, subgroup_supported_stages: ShaderStageFlags, @@ -29416,6 +31379,7 @@ impl<'a> PhysicalDeviceVulkan11Properties<'a> { self } #[inline] + #[must_use] pub fn subgroup_supported_operations( mut self, subgroup_supported_operations: SubgroupFeatureFlags, @@ -29424,6 +31388,7 @@ impl<'a> PhysicalDeviceVulkan11Properties<'a> { self } #[inline] + #[must_use] pub fn subgroup_quad_operations_in_all_stages( mut self, subgroup_quad_operations_in_all_stages: bool, @@ -29432,6 +31397,7 @@ impl<'a> PhysicalDeviceVulkan11Properties<'a> { self } #[inline] + #[must_use] pub fn point_clipping_behavior( mut self, point_clipping_behavior: PointClippingBehavior, @@ -29440,26 +31406,31 @@ impl<'a> PhysicalDeviceVulkan11Properties<'a> { self } #[inline] + #[must_use] pub fn max_multiview_view_count(mut self, max_multiview_view_count: u32) -> Self { self.max_multiview_view_count = max_multiview_view_count; self } #[inline] + #[must_use] pub fn max_multiview_instance_index(mut self, max_multiview_instance_index: u32) -> Self { self.max_multiview_instance_index = max_multiview_instance_index; self } #[inline] + #[must_use] pub fn protected_no_fault(mut self, protected_no_fault: bool) -> Self { self.protected_no_fault = protected_no_fault.into(); self } #[inline] + #[must_use] pub fn max_per_set_descriptors(mut self, max_per_set_descriptors: u32) -> Self { self.max_per_set_descriptors = max_per_set_descriptors; self } #[inline] + #[must_use] pub fn max_memory_allocation_size(mut self, max_memory_allocation_size: DeviceSize) -> Self { self.max_memory_allocation_size = max_memory_allocation_size; self @@ -29585,21 +31556,25 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceVulkan12Features<'_ unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceVulkan12Features<'_> {} impl<'a> PhysicalDeviceVulkan12Features<'a> { #[inline] + #[must_use] pub fn sampler_mirror_clamp_to_edge(mut self, sampler_mirror_clamp_to_edge: bool) -> Self { self.sampler_mirror_clamp_to_edge = sampler_mirror_clamp_to_edge.into(); self } #[inline] + #[must_use] pub fn draw_indirect_count(mut self, draw_indirect_count: bool) -> Self { self.draw_indirect_count = draw_indirect_count.into(); self } #[inline] + #[must_use] pub fn storage_buffer8_bit_access(mut self, storage_buffer8_bit_access: bool) -> Self { self.storage_buffer8_bit_access = storage_buffer8_bit_access.into(); self } #[inline] + #[must_use] pub fn uniform_and_storage_buffer8_bit_access( mut self, uniform_and_storage_buffer8_bit_access: bool, @@ -29608,36 +31583,43 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn storage_push_constant8(mut self, storage_push_constant8: bool) -> Self { self.storage_push_constant8 = storage_push_constant8.into(); self } #[inline] + #[must_use] pub fn shader_buffer_int64_atomics(mut self, shader_buffer_int64_atomics: bool) -> Self { self.shader_buffer_int64_atomics = shader_buffer_int64_atomics.into(); self } #[inline] + #[must_use] pub fn shader_shared_int64_atomics(mut self, shader_shared_int64_atomics: bool) -> Self { self.shader_shared_int64_atomics = shader_shared_int64_atomics.into(); self } #[inline] + #[must_use] pub fn shader_float16(mut self, shader_float16: bool) -> Self { self.shader_float16 = shader_float16.into(); self } #[inline] + #[must_use] pub fn shader_int8(mut self, shader_int8: bool) -> Self { self.shader_int8 = shader_int8.into(); self } #[inline] + #[must_use] pub fn descriptor_indexing(mut self, descriptor_indexing: bool) -> Self { self.descriptor_indexing = descriptor_indexing.into(); self } #[inline] + #[must_use] pub fn shader_input_attachment_array_dynamic_indexing( mut self, shader_input_attachment_array_dynamic_indexing: bool, @@ -29647,6 +31629,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_texel_buffer_array_dynamic_indexing( mut self, shader_uniform_texel_buffer_array_dynamic_indexing: bool, @@ -29656,6 +31639,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_storage_texel_buffer_array_dynamic_indexing( mut self, shader_storage_texel_buffer_array_dynamic_indexing: bool, @@ -29665,6 +31649,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_buffer_array_non_uniform_indexing( mut self, shader_uniform_buffer_array_non_uniform_indexing: bool, @@ -29674,6 +31659,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_sampled_image_array_non_uniform_indexing( mut self, shader_sampled_image_array_non_uniform_indexing: bool, @@ -29683,6 +31669,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_storage_buffer_array_non_uniform_indexing( mut self, shader_storage_buffer_array_non_uniform_indexing: bool, @@ -29692,6 +31679,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_storage_image_array_non_uniform_indexing( mut self, shader_storage_image_array_non_uniform_indexing: bool, @@ -29701,6 +31689,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_input_attachment_array_non_uniform_indexing( mut self, shader_input_attachment_array_non_uniform_indexing: bool, @@ -29710,6 +31699,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_texel_buffer_array_non_uniform_indexing( mut self, shader_uniform_texel_buffer_array_non_uniform_indexing: bool, @@ -29719,6 +31709,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_storage_texel_buffer_array_non_uniform_indexing( mut self, shader_storage_texel_buffer_array_non_uniform_indexing: bool, @@ -29728,6 +31719,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_uniform_buffer_update_after_bind( mut self, descriptor_binding_uniform_buffer_update_after_bind: bool, @@ -29737,6 +31729,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_sampled_image_update_after_bind( mut self, descriptor_binding_sampled_image_update_after_bind: bool, @@ -29746,6 +31739,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_storage_image_update_after_bind( mut self, descriptor_binding_storage_image_update_after_bind: bool, @@ -29755,6 +31749,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_storage_buffer_update_after_bind( mut self, descriptor_binding_storage_buffer_update_after_bind: bool, @@ -29764,6 +31759,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_uniform_texel_buffer_update_after_bind( mut self, descriptor_binding_uniform_texel_buffer_update_after_bind: bool, @@ -29773,6 +31769,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_storage_texel_buffer_update_after_bind( mut self, descriptor_binding_storage_texel_buffer_update_after_bind: bool, @@ -29782,6 +31779,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_update_unused_while_pending( mut self, descriptor_binding_update_unused_while_pending: bool, @@ -29791,6 +31789,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_partially_bound( mut self, descriptor_binding_partially_bound: bool, @@ -29799,6 +31798,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn descriptor_binding_variable_descriptor_count( mut self, descriptor_binding_variable_descriptor_count: bool, @@ -29808,56 +31808,67 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn runtime_descriptor_array(mut self, runtime_descriptor_array: bool) -> Self { self.runtime_descriptor_array = runtime_descriptor_array.into(); self } #[inline] + #[must_use] pub fn sampler_filter_minmax(mut self, sampler_filter_minmax: bool) -> Self { self.sampler_filter_minmax = sampler_filter_minmax.into(); self } #[inline] + #[must_use] pub fn scalar_block_layout(mut self, scalar_block_layout: bool) -> Self { self.scalar_block_layout = scalar_block_layout.into(); self } #[inline] + #[must_use] pub fn imageless_framebuffer(mut self, imageless_framebuffer: bool) -> Self { self.imageless_framebuffer = imageless_framebuffer.into(); self } #[inline] + #[must_use] pub fn uniform_buffer_standard_layout(mut self, uniform_buffer_standard_layout: bool) -> Self { self.uniform_buffer_standard_layout = uniform_buffer_standard_layout.into(); self } #[inline] + #[must_use] pub fn shader_subgroup_extended_types(mut self, shader_subgroup_extended_types: bool) -> Self { self.shader_subgroup_extended_types = shader_subgroup_extended_types.into(); self } #[inline] + #[must_use] pub fn separate_depth_stencil_layouts(mut self, separate_depth_stencil_layouts: bool) -> Self { self.separate_depth_stencil_layouts = separate_depth_stencil_layouts.into(); self } #[inline] + #[must_use] pub fn host_query_reset(mut self, host_query_reset: bool) -> Self { self.host_query_reset = host_query_reset.into(); self } #[inline] + #[must_use] pub fn timeline_semaphore(mut self, timeline_semaphore: bool) -> Self { self.timeline_semaphore = timeline_semaphore.into(); self } #[inline] + #[must_use] pub fn buffer_device_address(mut self, buffer_device_address: bool) -> Self { self.buffer_device_address = buffer_device_address.into(); self } #[inline] + #[must_use] pub fn buffer_device_address_capture_replay( mut self, buffer_device_address_capture_replay: bool, @@ -29866,6 +31877,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn buffer_device_address_multi_device( mut self, buffer_device_address_multi_device: bool, @@ -29874,11 +31886,13 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn vulkan_memory_model(mut self, vulkan_memory_model: bool) -> Self { self.vulkan_memory_model = vulkan_memory_model.into(); self } #[inline] + #[must_use] pub fn vulkan_memory_model_device_scope( mut self, vulkan_memory_model_device_scope: bool, @@ -29887,6 +31901,7 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn vulkan_memory_model_availability_visibility_chains( mut self, vulkan_memory_model_availability_visibility_chains: bool, @@ -29896,16 +31911,19 @@ impl<'a> PhysicalDeviceVulkan12Features<'a> { self } #[inline] + #[must_use] pub fn shader_output_viewport_index(mut self, shader_output_viewport_index: bool) -> Self { self.shader_output_viewport_index = shader_output_viewport_index.into(); self } #[inline] + #[must_use] pub fn shader_output_layer(mut self, shader_output_layer: bool) -> Self { self.shader_output_layer = shader_output_layer.into(); self } #[inline] + #[must_use] pub fn subgroup_broadcast_dynamic_id(mut self, subgroup_broadcast_dynamic_id: bool) -> Self { self.subgroup_broadcast_dynamic_id = subgroup_broadcast_dynamic_id.into(); self @@ -30238,6 +32256,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceVulkan12Properties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceVulkan12Properties<'_> {} impl<'a> PhysicalDeviceVulkan12Properties<'a> { #[inline] + #[must_use] pub fn driver_id(mut self, driver_id: DriverId) -> Self { self.driver_id = driver_id; self @@ -30269,11 +32288,13 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { wrap_c_str_slice_until_nul(&self.driver_info) } #[inline] + #[must_use] pub fn conformance_version(mut self, conformance_version: ConformanceVersion) -> Self { self.conformance_version = conformance_version; self } #[inline] + #[must_use] pub fn denorm_behavior_independence( mut self, denorm_behavior_independence: ShaderFloatControlsIndependence, @@ -30282,6 +32303,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn rounding_mode_independence( mut self, rounding_mode_independence: ShaderFloatControlsIndependence, @@ -30290,6 +32312,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_signed_zero_inf_nan_preserve_float16( mut self, shader_signed_zero_inf_nan_preserve_float16: bool, @@ -30299,6 +32322,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_signed_zero_inf_nan_preserve_float32( mut self, shader_signed_zero_inf_nan_preserve_float32: bool, @@ -30308,6 +32332,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_signed_zero_inf_nan_preserve_float64( mut self, shader_signed_zero_inf_nan_preserve_float64: bool, @@ -30317,21 +32342,25 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_denorm_preserve_float16(mut self, shader_denorm_preserve_float16: bool) -> Self { self.shader_denorm_preserve_float16 = shader_denorm_preserve_float16.into(); self } #[inline] + #[must_use] pub fn shader_denorm_preserve_float32(mut self, shader_denorm_preserve_float32: bool) -> Self { self.shader_denorm_preserve_float32 = shader_denorm_preserve_float32.into(); self } #[inline] + #[must_use] pub fn shader_denorm_preserve_float64(mut self, shader_denorm_preserve_float64: bool) -> Self { self.shader_denorm_preserve_float64 = shader_denorm_preserve_float64.into(); self } #[inline] + #[must_use] pub fn shader_denorm_flush_to_zero_float16( mut self, shader_denorm_flush_to_zero_float16: bool, @@ -30340,6 +32369,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_denorm_flush_to_zero_float32( mut self, shader_denorm_flush_to_zero_float32: bool, @@ -30348,6 +32378,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_denorm_flush_to_zero_float64( mut self, shader_denorm_flush_to_zero_float64: bool, @@ -30356,6 +32387,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rte_float16( mut self, shader_rounding_mode_rte_float16: bool, @@ -30364,6 +32396,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rte_float32( mut self, shader_rounding_mode_rte_float32: bool, @@ -30372,6 +32405,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rte_float64( mut self, shader_rounding_mode_rte_float64: bool, @@ -30380,6 +32414,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rtz_float16( mut self, shader_rounding_mode_rtz_float16: bool, @@ -30388,6 +32423,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rtz_float32( mut self, shader_rounding_mode_rtz_float32: bool, @@ -30396,6 +32432,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_rounding_mode_rtz_float64( mut self, shader_rounding_mode_rtz_float64: bool, @@ -30404,6 +32441,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_update_after_bind_descriptors_in_all_pools( mut self, max_update_after_bind_descriptors_in_all_pools: u32, @@ -30413,6 +32451,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_uniform_buffer_array_non_uniform_indexing_native( mut self, shader_uniform_buffer_array_non_uniform_indexing_native: bool, @@ -30422,6 +32461,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_sampled_image_array_non_uniform_indexing_native( mut self, shader_sampled_image_array_non_uniform_indexing_native: bool, @@ -30431,6 +32471,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_storage_buffer_array_non_uniform_indexing_native( mut self, shader_storage_buffer_array_non_uniform_indexing_native: bool, @@ -30440,6 +32481,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_storage_image_array_non_uniform_indexing_native( mut self, shader_storage_image_array_non_uniform_indexing_native: bool, @@ -30449,6 +32491,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn shader_input_attachment_array_non_uniform_indexing_native( mut self, shader_input_attachment_array_non_uniform_indexing_native: bool, @@ -30458,6 +32501,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn robust_buffer_access_update_after_bind( mut self, robust_buffer_access_update_after_bind: bool, @@ -30466,11 +32510,13 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn quad_divergent_implicit_lod(mut self, quad_divergent_implicit_lod: bool) -> Self { self.quad_divergent_implicit_lod = quad_divergent_implicit_lod.into(); self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_samplers( mut self, max_per_stage_descriptor_update_after_bind_samplers: u32, @@ -30480,6 +32526,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_uniform_buffers( mut self, max_per_stage_descriptor_update_after_bind_uniform_buffers: u32, @@ -30489,6 +32536,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_storage_buffers( mut self, max_per_stage_descriptor_update_after_bind_storage_buffers: u32, @@ -30498,6 +32546,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_sampled_images( mut self, max_per_stage_descriptor_update_after_bind_sampled_images: u32, @@ -30507,6 +32556,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_storage_images( mut self, max_per_stage_descriptor_update_after_bind_storage_images: u32, @@ -30516,6 +32566,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_input_attachments( mut self, max_per_stage_descriptor_update_after_bind_input_attachments: u32, @@ -30525,6 +32576,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_update_after_bind_resources( mut self, max_per_stage_update_after_bind_resources: u32, @@ -30533,6 +32585,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_samplers( mut self, max_descriptor_set_update_after_bind_samplers: u32, @@ -30542,6 +32595,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_uniform_buffers( mut self, max_descriptor_set_update_after_bind_uniform_buffers: u32, @@ -30551,6 +32605,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_uniform_buffers_dynamic( mut self, max_descriptor_set_update_after_bind_uniform_buffers_dynamic: u32, @@ -30560,6 +32615,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_storage_buffers( mut self, max_descriptor_set_update_after_bind_storage_buffers: u32, @@ -30569,6 +32625,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_storage_buffers_dynamic( mut self, max_descriptor_set_update_after_bind_storage_buffers_dynamic: u32, @@ -30578,6 +32635,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_sampled_images( mut self, max_descriptor_set_update_after_bind_sampled_images: u32, @@ -30587,6 +32645,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_storage_images( mut self, max_descriptor_set_update_after_bind_storage_images: u32, @@ -30596,6 +32655,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_input_attachments( mut self, max_descriptor_set_update_after_bind_input_attachments: u32, @@ -30605,6 +32665,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn supported_depth_resolve_modes( mut self, supported_depth_resolve_modes: ResolveModeFlags, @@ -30613,6 +32674,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn supported_stencil_resolve_modes( mut self, supported_stencil_resolve_modes: ResolveModeFlags, @@ -30621,16 +32683,19 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn independent_resolve_none(mut self, independent_resolve_none: bool) -> Self { self.independent_resolve_none = independent_resolve_none.into(); self } #[inline] + #[must_use] pub fn independent_resolve(mut self, independent_resolve: bool) -> Self { self.independent_resolve = independent_resolve.into(); self } #[inline] + #[must_use] pub fn filter_minmax_single_component_formats( mut self, filter_minmax_single_component_formats: bool, @@ -30639,6 +32704,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn filter_minmax_image_component_mapping( mut self, filter_minmax_image_component_mapping: bool, @@ -30647,6 +32713,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn max_timeline_semaphore_value_difference( mut self, max_timeline_semaphore_value_difference: u64, @@ -30655,6 +32722,7 @@ impl<'a> PhysicalDeviceVulkan12Properties<'a> { self } #[inline] + #[must_use] pub fn framebuffer_integer_color_sample_counts( mut self, framebuffer_integer_color_sample_counts: SampleCountFlags, @@ -30719,16 +32787,19 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceVulkan13Features<'_ unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceVulkan13Features<'_> {} impl<'a> PhysicalDeviceVulkan13Features<'a> { #[inline] + #[must_use] pub fn robust_image_access(mut self, robust_image_access: bool) -> Self { self.robust_image_access = robust_image_access.into(); self } #[inline] + #[must_use] pub fn inline_uniform_block(mut self, inline_uniform_block: bool) -> Self { self.inline_uniform_block = inline_uniform_block.into(); self } #[inline] + #[must_use] pub fn descriptor_binding_inline_uniform_block_update_after_bind( mut self, descriptor_binding_inline_uniform_block_update_after_bind: bool, @@ -30738,6 +32809,7 @@ impl<'a> PhysicalDeviceVulkan13Features<'a> { self } #[inline] + #[must_use] pub fn pipeline_creation_cache_control( mut self, pipeline_creation_cache_control: bool, @@ -30746,11 +32818,13 @@ impl<'a> PhysicalDeviceVulkan13Features<'a> { self } #[inline] + #[must_use] pub fn private_data(mut self, private_data: bool) -> Self { self.private_data = private_data.into(); self } #[inline] + #[must_use] pub fn shader_demote_to_helper_invocation( mut self, shader_demote_to_helper_invocation: bool, @@ -30759,31 +32833,37 @@ impl<'a> PhysicalDeviceVulkan13Features<'a> { self } #[inline] + #[must_use] pub fn shader_terminate_invocation(mut self, shader_terminate_invocation: bool) -> Self { self.shader_terminate_invocation = shader_terminate_invocation.into(); self } #[inline] + #[must_use] pub fn subgroup_size_control(mut self, subgroup_size_control: bool) -> Self { self.subgroup_size_control = subgroup_size_control.into(); self } #[inline] + #[must_use] pub fn compute_full_subgroups(mut self, compute_full_subgroups: bool) -> Self { self.compute_full_subgroups = compute_full_subgroups.into(); self } #[inline] + #[must_use] pub fn synchronization2(mut self, synchronization2: bool) -> Self { self.synchronization2 = synchronization2.into(); self } #[inline] + #[must_use] pub fn texture_compression_astc_hdr(mut self, texture_compression_astc_hdr: bool) -> Self { self.texture_compression_astc_hdr = texture_compression_astc_hdr.into(); self } #[inline] + #[must_use] pub fn shader_zero_initialize_workgroup_memory( mut self, shader_zero_initialize_workgroup_memory: bool, @@ -30793,16 +32873,19 @@ impl<'a> PhysicalDeviceVulkan13Features<'a> { self } #[inline] + #[must_use] pub fn dynamic_rendering(mut self, dynamic_rendering: bool) -> Self { self.dynamic_rendering = dynamic_rendering.into(); self } #[inline] + #[must_use] pub fn shader_integer_dot_product(mut self, shader_integer_dot_product: bool) -> Self { self.shader_integer_dot_product = shader_integer_dot_product.into(); self } #[inline] + #[must_use] pub fn maintenance4(mut self, maintenance4: bool) -> Self { self.maintenance4 = maintenance4.into(); self @@ -30875,21 +32958,25 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceVulkan13Properties<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceVulkan13Properties<'_> {} impl<'a> PhysicalDeviceVulkan13Properties<'a> { #[inline] + #[must_use] pub fn min_subgroup_size(mut self, min_subgroup_size: u32) -> Self { self.min_subgroup_size = min_subgroup_size; self } #[inline] + #[must_use] pub fn max_subgroup_size(mut self, max_subgroup_size: u32) -> Self { self.max_subgroup_size = max_subgroup_size; self } #[inline] + #[must_use] pub fn max_compute_workgroup_subgroups(mut self, max_compute_workgroup_subgroups: u32) -> Self { self.max_compute_workgroup_subgroups = max_compute_workgroup_subgroups; self } #[inline] + #[must_use] pub fn required_subgroup_size_stages( mut self, required_subgroup_size_stages: ShaderStageFlags, @@ -30898,11 +32985,13 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn max_inline_uniform_block_size(mut self, max_inline_uniform_block_size: u32) -> Self { self.max_inline_uniform_block_size = max_inline_uniform_block_size; self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_inline_uniform_blocks( mut self, max_per_stage_descriptor_inline_uniform_blocks: u32, @@ -30912,6 +33001,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn max_per_stage_descriptor_update_after_bind_inline_uniform_blocks( mut self, max_per_stage_descriptor_update_after_bind_inline_uniform_blocks: u32, @@ -30921,6 +33011,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_inline_uniform_blocks( mut self, max_descriptor_set_inline_uniform_blocks: u32, @@ -30929,6 +33020,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_set_update_after_bind_inline_uniform_blocks( mut self, max_descriptor_set_update_after_bind_inline_uniform_blocks: u32, @@ -30938,11 +33030,13 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn max_inline_uniform_total_size(mut self, max_inline_uniform_total_size: u32) -> Self { self.max_inline_uniform_total_size = max_inline_uniform_total_size; self } #[inline] + #[must_use] pub fn integer_dot_product8_bit_unsigned_accelerated( mut self, integer_dot_product8_bit_unsigned_accelerated: bool, @@ -30952,6 +33046,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product8_bit_signed_accelerated( mut self, integer_dot_product8_bit_signed_accelerated: bool, @@ -30961,6 +33056,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product8_bit_mixed_signedness_accelerated( mut self, integer_dot_product8_bit_mixed_signedness_accelerated: bool, @@ -30970,6 +33066,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product4x8_bit_packed_unsigned_accelerated( mut self, integer_dot_product4x8_bit_packed_unsigned_accelerated: bool, @@ -30979,6 +33076,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product4x8_bit_packed_signed_accelerated( mut self, integer_dot_product4x8_bit_packed_signed_accelerated: bool, @@ -30988,6 +33086,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product4x8_bit_packed_mixed_signedness_accelerated( mut self, integer_dot_product4x8_bit_packed_mixed_signedness_accelerated: bool, @@ -30997,6 +33096,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product16_bit_unsigned_accelerated( mut self, integer_dot_product16_bit_unsigned_accelerated: bool, @@ -31006,6 +33106,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product16_bit_signed_accelerated( mut self, integer_dot_product16_bit_signed_accelerated: bool, @@ -31015,6 +33116,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product16_bit_mixed_signedness_accelerated( mut self, integer_dot_product16_bit_mixed_signedness_accelerated: bool, @@ -31024,6 +33126,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product32_bit_unsigned_accelerated( mut self, integer_dot_product32_bit_unsigned_accelerated: bool, @@ -31033,6 +33136,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product32_bit_signed_accelerated( mut self, integer_dot_product32_bit_signed_accelerated: bool, @@ -31042,6 +33146,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product32_bit_mixed_signedness_accelerated( mut self, integer_dot_product32_bit_mixed_signedness_accelerated: bool, @@ -31051,6 +33156,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product64_bit_unsigned_accelerated( mut self, integer_dot_product64_bit_unsigned_accelerated: bool, @@ -31060,6 +33166,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product64_bit_signed_accelerated( mut self, integer_dot_product64_bit_signed_accelerated: bool, @@ -31069,6 +33176,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product64_bit_mixed_signedness_accelerated( mut self, integer_dot_product64_bit_mixed_signedness_accelerated: bool, @@ -31078,6 +33186,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating8_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating8_bit_unsigned_accelerated: bool, @@ -31087,6 +33196,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating8_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating8_bit_signed_accelerated: bool, @@ -31096,6 +33206,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating8_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating8_bit_mixed_signedness_accelerated: bool, @@ -31105,6 +33216,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating4x8_bit_packed_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating4x8_bit_packed_unsigned_accelerated: bool, @@ -31114,6 +33226,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating4x8_bit_packed_signed_accelerated( mut self, integer_dot_product_accumulating_saturating4x8_bit_packed_signed_accelerated: bool, @@ -31123,6 +33236,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating4x8_bit_packed_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating4x8_bit_packed_mixed_signedness_accelerated : bool, @@ -31131,6 +33245,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating16_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating16_bit_unsigned_accelerated: bool, @@ -31140,6 +33255,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating16_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating16_bit_signed_accelerated: bool, @@ -31149,6 +33265,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating16_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating16_bit_mixed_signedness_accelerated: bool, @@ -31158,6 +33275,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating32_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating32_bit_unsigned_accelerated: bool, @@ -31167,6 +33285,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating32_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating32_bit_signed_accelerated: bool, @@ -31176,6 +33295,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating32_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating32_bit_mixed_signedness_accelerated: bool, @@ -31185,6 +33305,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating64_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating64_bit_unsigned_accelerated: bool, @@ -31194,6 +33315,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating64_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating64_bit_signed_accelerated: bool, @@ -31203,6 +33325,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating64_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating64_bit_mixed_signedness_accelerated: bool, @@ -31212,6 +33335,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn storage_texel_buffer_offset_alignment_bytes( mut self, storage_texel_buffer_offset_alignment_bytes: DeviceSize, @@ -31221,6 +33345,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn storage_texel_buffer_offset_single_texel_alignment( mut self, storage_texel_buffer_offset_single_texel_alignment: bool, @@ -31230,6 +33355,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn uniform_texel_buffer_offset_alignment_bytes( mut self, uniform_texel_buffer_offset_alignment_bytes: DeviceSize, @@ -31239,6 +33365,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn uniform_texel_buffer_offset_single_texel_alignment( mut self, uniform_texel_buffer_offset_single_texel_alignment: bool, @@ -31248,6 +33375,7 @@ impl<'a> PhysicalDeviceVulkan13Properties<'a> { self } #[inline] + #[must_use] pub fn max_buffer_size(mut self, max_buffer_size: DeviceSize) -> Self { self.max_buffer_size = max_buffer_size; self @@ -31285,6 +33413,7 @@ unsafe impl ExtendsExecutionGraphPipelineCreateInfoAMDX } impl<'a> PipelineCompilerControlCreateInfoAMD<'a> { #[inline] + #[must_use] pub fn compiler_control_flags( mut self, compiler_control_flags: PipelineCompilerControlFlagsAMD, @@ -31322,6 +33451,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCoherentMemoryFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCoherentMemoryFeaturesAMD<'_> {} impl<'a> PhysicalDeviceCoherentMemoryFeaturesAMD<'a> { #[inline] + #[must_use] pub fn device_coherent_memory(mut self, device_coherent_memory: bool) -> Self { self.device_coherent_memory = device_coherent_memory.into(); self @@ -31400,6 +33530,7 @@ impl<'a> PhysicalDeviceToolProperties<'a> { wrap_c_str_slice_until_nul(&self.version) } #[inline] + #[must_use] pub fn purposes(mut self, purposes: ToolPurposeFlags) -> Self { self.purposes = purposes; self @@ -31471,11 +33602,13 @@ unsafe impl<'a> TaggedStructure for SamplerCustomBorderColorCreateInfoEXT<'a> { unsafe impl ExtendsSamplerCreateInfo for SamplerCustomBorderColorCreateInfoEXT<'_> {} impl<'a> SamplerCustomBorderColorCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn custom_border_color(mut self, custom_border_color: ClearColorValue) -> Self { self.custom_border_color = custom_border_color; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self @@ -31509,6 +33642,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceCustomBorderColorPropertiesEXT unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceCustomBorderColorPropertiesEXT<'_> {} impl<'a> PhysicalDeviceCustomBorderColorPropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_custom_border_color_samplers( mut self, max_custom_border_color_samplers: u32, @@ -31548,11 +33682,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCustomBorderColorFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCustomBorderColorFeaturesEXT<'_> {} impl<'a> PhysicalDeviceCustomBorderColorFeaturesEXT<'a> { #[inline] + #[must_use] pub fn custom_border_colors(mut self, custom_border_colors: bool) -> Self { self.custom_border_colors = custom_border_colors.into(); self } #[inline] + #[must_use] pub fn custom_border_color_without_format( mut self, custom_border_color_without_format: bool, @@ -31591,11 +33727,13 @@ unsafe impl<'a> TaggedStructure for SamplerBorderColorComponentMappingCreateInfo unsafe impl ExtendsSamplerCreateInfo for SamplerBorderColorComponentMappingCreateInfoEXT<'_> {} impl<'a> SamplerBorderColorComponentMappingCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn components(mut self, components: ComponentMapping) -> Self { self.components = components; self } #[inline] + #[must_use] pub fn srgb(mut self, srgb: bool) -> Self { self.srgb = srgb.into(); self @@ -31632,11 +33770,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceBorderColorSwizzleF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceBorderColorSwizzleFeaturesEXT<'_> {} impl<'a> PhysicalDeviceBorderColorSwizzleFeaturesEXT<'a> { #[inline] + #[must_use] pub fn border_color_swizzle(mut self, border_color_swizzle: bool) -> Self { self.border_color_swizzle = border_color_swizzle.into(); self } #[inline] + #[must_use] pub fn border_color_swizzle_from_image( mut self, border_color_swizzle_from_image: bool, @@ -31739,40 +33879,48 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureGeometryTrianglesDataKH pub unsafe trait ExtendsAccelerationStructureGeometryTrianglesDataKHR {} impl<'a> AccelerationStructureGeometryTrianglesDataKHR<'a> { #[inline] + #[must_use] pub fn vertex_format(mut self, vertex_format: Format) -> Self { self.vertex_format = vertex_format; self } #[inline] + #[must_use] pub fn vertex_data(mut self, vertex_data: DeviceOrHostAddressConstKHR) -> Self { self.vertex_data = vertex_data; self } #[inline] + #[must_use] pub fn vertex_stride(mut self, vertex_stride: DeviceSize) -> Self { self.vertex_stride = vertex_stride; self } #[inline] + #[must_use] pub fn max_vertex(mut self, max_vertex: u32) -> Self { self.max_vertex = max_vertex; self } #[inline] + #[must_use] pub fn index_type(mut self, index_type: IndexType) -> Self { self.index_type = index_type; self } #[inline] + #[must_use] pub fn index_data(mut self, index_data: DeviceOrHostAddressConstKHR) -> Self { self.index_data = index_data; self } #[inline] + #[must_use] pub fn transform_data(mut self, transform_data: DeviceOrHostAddressConstKHR) -> Self { self.transform_data = transform_data; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -31830,11 +33978,13 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureGeometryAabbsDataKHR<'a } impl<'a> AccelerationStructureGeometryAabbsDataKHR<'a> { #[inline] + #[must_use] pub fn data(mut self, data: DeviceOrHostAddressConstKHR) -> Self { self.data = data; self } #[inline] + #[must_use] pub fn stride(mut self, stride: DeviceSize) -> Self { self.stride = stride; self @@ -31879,11 +34029,13 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureGeometryInstancesDataKH } impl<'a> AccelerationStructureGeometryInstancesDataKHR<'a> { #[inline] + #[must_use] pub fn array_of_pointers(mut self, array_of_pointers: bool) -> Self { self.array_of_pointers = array_of_pointers.into(); self } #[inline] + #[must_use] pub fn data(mut self, data: DeviceOrHostAddressConstKHR) -> Self { self.data = data; self @@ -31944,16 +34096,19 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureGeometryKHR<'a> { } impl<'a> AccelerationStructureGeometryKHR<'a> { #[inline] + #[must_use] pub fn geometry_type(mut self, geometry_type: GeometryTypeKHR) -> Self { self.geometry_type = geometry_type; self } #[inline] + #[must_use] pub fn geometry(mut self, geometry: AccelerationStructureGeometryDataKHR<'a>) -> Self { self.geometry = geometry; self } #[inline] + #[must_use] pub fn flags(mut self, flags: GeometryFlagsKHR) -> Self { self.flags = flags; self @@ -32025,21 +34180,25 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureBuildGeometryInfoKHR<'a } impl<'a> AccelerationStructureBuildGeometryInfoKHR<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: AccelerationStructureTypeKHR) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn flags(mut self, flags: BuildAccelerationStructureFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn mode(mut self, mode: BuildAccelerationStructureModeKHR) -> Self { self.mode = mode; self } #[inline] + #[must_use] pub fn src_acceleration_structure( mut self, src_acceleration_structure: AccelerationStructureKHR, @@ -32048,6 +34207,7 @@ impl<'a> AccelerationStructureBuildGeometryInfoKHR<'a> { self } #[inline] + #[must_use] pub fn dst_acceleration_structure( mut self, dst_acceleration_structure: AccelerationStructureKHR, @@ -32056,12 +34216,14 @@ impl<'a> AccelerationStructureBuildGeometryInfoKHR<'a> { self } #[inline] + #[must_use] pub fn geometries(mut self, geometries: &'a [AccelerationStructureGeometryKHR<'a>]) -> Self { self.geometry_count = geometries.len() as _; self.p_geometries = geometries.as_ptr(); self } #[inline] + #[must_use] pub fn geometries_ptrs( mut self, geometries_ptrs: &'a [&'a AccelerationStructureGeometryKHR<'a>], @@ -32071,6 +34233,7 @@ impl<'a> AccelerationStructureBuildGeometryInfoKHR<'a> { self } #[inline] + #[must_use] pub fn scratch_data(mut self, scratch_data: DeviceOrHostAddressKHR) -> Self { self.scratch_data = scratch_data; self @@ -32088,21 +34251,25 @@ pub struct AccelerationStructureBuildRangeInfoKHR { } impl AccelerationStructureBuildRangeInfoKHR { #[inline] + #[must_use] pub fn primitive_count(mut self, primitive_count: u32) -> Self { self.primitive_count = primitive_count; self } #[inline] + #[must_use] pub fn primitive_offset(mut self, primitive_offset: u32) -> Self { self.primitive_offset = primitive_offset; self } #[inline] + #[must_use] pub fn first_vertex(mut self, first_vertex: u32) -> Self { self.first_vertex = first_vertex; self } #[inline] + #[must_use] pub fn transform_offset(mut self, transform_offset: u32) -> Self { self.transform_offset = transform_offset; self @@ -32145,35 +34312,42 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureCreateInfoKHR<'a> { pub unsafe trait ExtendsAccelerationStructureCreateInfoKHR {} impl<'a> AccelerationStructureCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn create_flags(mut self, create_flags: AccelerationStructureCreateFlagsKHR) -> Self { self.create_flags = create_flags; self } #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn ty(mut self, ty: AccelerationStructureTypeKHR) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn device_address(mut self, device_address: DeviceAddress) -> Self { self.device_address = device_address; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -32206,31 +34380,37 @@ pub struct AabbPositionsKHR { } impl AabbPositionsKHR { #[inline] + #[must_use] pub fn min_x(mut self, min_x: f32) -> Self { self.min_x = min_x; self } #[inline] + #[must_use] pub fn min_y(mut self, min_y: f32) -> Self { self.min_y = min_y; self } #[inline] + #[must_use] pub fn min_z(mut self, min_z: f32) -> Self { self.min_z = min_z; self } #[inline] + #[must_use] pub fn max_x(mut self, max_x: f32) -> Self { self.max_x = max_x; self } #[inline] + #[must_use] pub fn max_y(mut self, max_y: f32) -> Self { self.max_y = max_y; self } #[inline] + #[must_use] pub fn max_z(mut self, max_z: f32) -> Self { self.max_z = max_z; self @@ -32285,6 +34465,7 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureDeviceAddressInfoKHR<'a } impl<'a> AccelerationStructureDeviceAddressInfoKHR<'a> { #[inline] + #[must_use] pub fn acceleration_structure( mut self, acceleration_structure: AccelerationStructureKHR, @@ -32319,6 +34500,7 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureVersionInfoKHR<'a> { } impl<'a> AccelerationStructureVersionInfoKHR<'a> { #[inline] + #[must_use] pub fn version_data(mut self, version_data: &'a [u8; 2 * UUID_SIZE]) -> Self { self.p_version_data = version_data; self @@ -32354,16 +34536,19 @@ unsafe impl<'a> TaggedStructure for CopyAccelerationStructureInfoKHR<'a> { } impl<'a> CopyAccelerationStructureInfoKHR<'a> { #[inline] + #[must_use] pub fn src(mut self, src: AccelerationStructureKHR) -> Self { self.src = src; self } #[inline] + #[must_use] pub fn dst(mut self, dst: AccelerationStructureKHR) -> Self { self.dst = dst; self } #[inline] + #[must_use] pub fn mode(mut self, mode: CopyAccelerationStructureModeKHR) -> Self { self.mode = mode; self @@ -32411,16 +34596,19 @@ unsafe impl<'a> TaggedStructure for CopyAccelerationStructureToMemoryInfoKHR<'a> } impl<'a> CopyAccelerationStructureToMemoryInfoKHR<'a> { #[inline] + #[must_use] pub fn src(mut self, src: AccelerationStructureKHR) -> Self { self.src = src; self } #[inline] + #[must_use] pub fn dst(mut self, dst: DeviceOrHostAddressKHR) -> Self { self.dst = dst; self } #[inline] + #[must_use] pub fn mode(mut self, mode: CopyAccelerationStructureModeKHR) -> Self { self.mode = mode; self @@ -32468,16 +34656,19 @@ unsafe impl<'a> TaggedStructure for CopyMemoryToAccelerationStructureInfoKHR<'a> } impl<'a> CopyMemoryToAccelerationStructureInfoKHR<'a> { #[inline] + #[must_use] pub fn src(mut self, src: DeviceOrHostAddressConstKHR) -> Self { self.src = src; self } #[inline] + #[must_use] pub fn dst(mut self, dst: AccelerationStructureKHR) -> Self { self.dst = dst; self } #[inline] + #[must_use] pub fn mode(mut self, mode: CopyAccelerationStructureModeKHR) -> Self { self.mode = mode; self @@ -32512,11 +34703,13 @@ unsafe impl<'a> TaggedStructure for RayTracingPipelineInterfaceCreateInfoKHR<'a> } impl<'a> RayTracingPipelineInterfaceCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn max_pipeline_ray_payload_size(mut self, max_pipeline_ray_payload_size: u32) -> Self { self.max_pipeline_ray_payload_size = max_pipeline_ray_payload_size; self } #[inline] + #[must_use] pub fn max_pipeline_ray_hit_attribute_size( mut self, max_pipeline_ray_hit_attribute_size: u32, @@ -32554,6 +34747,7 @@ unsafe impl<'a> TaggedStructure for PipelineLibraryCreateInfoKHR<'a> { unsafe impl ExtendsGraphicsPipelineCreateInfo for PipelineLibraryCreateInfoKHR<'_> {} impl<'a> PipelineLibraryCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn libraries(mut self, libraries: &'a [Pipeline]) -> Self { self.library_count = libraries.len() as _; self.p_libraries = libraries.as_ptr(); @@ -32589,6 +34783,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceExtendedDynamicStat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExtendedDynamicStateFeaturesEXT<'_> {} impl<'a> PhysicalDeviceExtendedDynamicStateFeaturesEXT<'a> { #[inline] + #[must_use] pub fn extended_dynamic_state(mut self, extended_dynamic_state: bool) -> Self { self.extended_dynamic_state = extended_dynamic_state.into(); self @@ -32627,11 +34822,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceExtendedDynamicStat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExtendedDynamicState2FeaturesEXT<'_> {} impl<'a> PhysicalDeviceExtendedDynamicState2FeaturesEXT<'a> { #[inline] + #[must_use] pub fn extended_dynamic_state2(mut self, extended_dynamic_state2: bool) -> Self { self.extended_dynamic_state2 = extended_dynamic_state2.into(); self } #[inline] + #[must_use] pub fn extended_dynamic_state2_logic_op( mut self, extended_dynamic_state2_logic_op: bool, @@ -32640,6 +34837,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState2FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state2_patch_control_points( mut self, extended_dynamic_state2_patch_control_points: bool, @@ -32738,6 +34936,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceExtendedDynamicStat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExtendedDynamicState3FeaturesEXT<'_> {} impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { #[inline] + #[must_use] pub fn extended_dynamic_state3_tessellation_domain_origin( mut self, extended_dynamic_state3_tessellation_domain_origin: bool, @@ -32747,6 +34946,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_depth_clamp_enable( mut self, extended_dynamic_state3_depth_clamp_enable: bool, @@ -32756,6 +34956,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_polygon_mode( mut self, extended_dynamic_state3_polygon_mode: bool, @@ -32764,6 +34965,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_rasterization_samples( mut self, extended_dynamic_state3_rasterization_samples: bool, @@ -32773,6 +34975,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_sample_mask( mut self, extended_dynamic_state3_sample_mask: bool, @@ -32781,6 +34984,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_alpha_to_coverage_enable( mut self, extended_dynamic_state3_alpha_to_coverage_enable: bool, @@ -32790,6 +34994,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_alpha_to_one_enable( mut self, extended_dynamic_state3_alpha_to_one_enable: bool, @@ -32799,6 +35004,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_logic_op_enable( mut self, extended_dynamic_state3_logic_op_enable: bool, @@ -32808,6 +35014,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_color_blend_enable( mut self, extended_dynamic_state3_color_blend_enable: bool, @@ -32817,6 +35024,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_color_blend_equation( mut self, extended_dynamic_state3_color_blend_equation: bool, @@ -32826,6 +35034,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_color_write_mask( mut self, extended_dynamic_state3_color_write_mask: bool, @@ -32835,6 +35044,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_rasterization_stream( mut self, extended_dynamic_state3_rasterization_stream: bool, @@ -32844,6 +35054,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_conservative_rasterization_mode( mut self, extended_dynamic_state3_conservative_rasterization_mode: bool, @@ -32853,6 +35064,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_extra_primitive_overestimation_size( mut self, extended_dynamic_state3_extra_primitive_overestimation_size: bool, @@ -32862,6 +35074,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_depth_clip_enable( mut self, extended_dynamic_state3_depth_clip_enable: bool, @@ -32871,6 +35084,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_sample_locations_enable( mut self, extended_dynamic_state3_sample_locations_enable: bool, @@ -32880,6 +35094,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_color_blend_advanced( mut self, extended_dynamic_state3_color_blend_advanced: bool, @@ -32889,6 +35104,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_provoking_vertex_mode( mut self, extended_dynamic_state3_provoking_vertex_mode: bool, @@ -32898,6 +35114,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_line_rasterization_mode( mut self, extended_dynamic_state3_line_rasterization_mode: bool, @@ -32907,6 +35124,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_line_stipple_enable( mut self, extended_dynamic_state3_line_stipple_enable: bool, @@ -32916,6 +35134,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_depth_clip_negative_one_to_one( mut self, extended_dynamic_state3_depth_clip_negative_one_to_one: bool, @@ -32925,6 +35144,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_viewport_w_scaling_enable( mut self, extended_dynamic_state3_viewport_w_scaling_enable: bool, @@ -32934,6 +35154,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_viewport_swizzle( mut self, extended_dynamic_state3_viewport_swizzle: bool, @@ -32943,6 +35164,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_coverage_to_color_enable( mut self, extended_dynamic_state3_coverage_to_color_enable: bool, @@ -32952,6 +35174,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_coverage_to_color_location( mut self, extended_dynamic_state3_coverage_to_color_location: bool, @@ -32961,6 +35184,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_coverage_modulation_mode( mut self, extended_dynamic_state3_coverage_modulation_mode: bool, @@ -32970,6 +35194,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_coverage_modulation_table_enable( mut self, extended_dynamic_state3_coverage_modulation_table_enable: bool, @@ -32979,6 +35204,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_coverage_modulation_table( mut self, extended_dynamic_state3_coverage_modulation_table: bool, @@ -32988,6 +35214,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_coverage_reduction_mode( mut self, extended_dynamic_state3_coverage_reduction_mode: bool, @@ -32997,6 +35224,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_representative_fragment_test_enable( mut self, extended_dynamic_state3_representative_fragment_test_enable: bool, @@ -33006,6 +35234,7 @@ impl<'a> PhysicalDeviceExtendedDynamicState3FeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn extended_dynamic_state3_shading_rate_image_enable( mut self, extended_dynamic_state3_shading_rate_image_enable: bool, @@ -33046,6 +35275,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceExtendedDynamicState3PropertiesEXT<'a> { #[inline] + #[must_use] pub fn dynamic_primitive_topology_unrestricted( mut self, dynamic_primitive_topology_unrestricted: bool, @@ -33069,31 +35299,37 @@ pub struct ColorBlendEquationEXT { } impl ColorBlendEquationEXT { #[inline] + #[must_use] pub fn src_color_blend_factor(mut self, src_color_blend_factor: BlendFactor) -> Self { self.src_color_blend_factor = src_color_blend_factor; self } #[inline] + #[must_use] pub fn dst_color_blend_factor(mut self, dst_color_blend_factor: BlendFactor) -> Self { self.dst_color_blend_factor = dst_color_blend_factor; self } #[inline] + #[must_use] pub fn color_blend_op(mut self, color_blend_op: BlendOp) -> Self { self.color_blend_op = color_blend_op; self } #[inline] + #[must_use] pub fn src_alpha_blend_factor(mut self, src_alpha_blend_factor: BlendFactor) -> Self { self.src_alpha_blend_factor = src_alpha_blend_factor; self } #[inline] + #[must_use] pub fn dst_alpha_blend_factor(mut self, dst_alpha_blend_factor: BlendFactor) -> Self { self.dst_alpha_blend_factor = dst_alpha_blend_factor; self } #[inline] + #[must_use] pub fn alpha_blend_op(mut self, alpha_blend_op: BlendOp) -> Self { self.alpha_blend_op = alpha_blend_op; self @@ -33112,26 +35348,31 @@ pub struct ColorBlendAdvancedEXT { } impl ColorBlendAdvancedEXT { #[inline] + #[must_use] pub fn advanced_blend_op(mut self, advanced_blend_op: BlendOp) -> Self { self.advanced_blend_op = advanced_blend_op; self } #[inline] + #[must_use] pub fn src_premultiplied(mut self, src_premultiplied: bool) -> Self { self.src_premultiplied = src_premultiplied.into(); self } #[inline] + #[must_use] pub fn dst_premultiplied(mut self, dst_premultiplied: bool) -> Self { self.dst_premultiplied = dst_premultiplied.into(); self } #[inline] + #[must_use] pub fn blend_overlap(mut self, blend_overlap: BlendOverlapEXT) -> Self { self.blend_overlap = blend_overlap; self } #[inline] + #[must_use] pub fn clamp_results(mut self, clamp_results: bool) -> Self { self.clamp_results = clamp_results.into(); self @@ -33164,6 +35405,7 @@ unsafe impl<'a> TaggedStructure for RenderPassTransformBeginInfoQCOM<'a> { unsafe impl ExtendsRenderPassBeginInfo for RenderPassTransformBeginInfoQCOM<'_> {} impl<'a> RenderPassTransformBeginInfoQCOM<'a> { #[inline] + #[must_use] pub fn transform(mut self, transform: SurfaceTransformFlagsKHR) -> Self { self.transform = transform; self @@ -33197,6 +35439,7 @@ unsafe impl ExtendsBufferImageCopy2 for CopyCommandTransformInfoQCOM<'_> {} unsafe impl ExtendsImageBlit2 for CopyCommandTransformInfoQCOM<'_> {} impl<'a> CopyCommandTransformInfoQCOM<'a> { #[inline] + #[must_use] pub fn transform(mut self, transform: SurfaceTransformFlagsKHR) -> Self { self.transform = transform; self @@ -33235,11 +35478,13 @@ unsafe impl ExtendsCommandBufferInheritanceInfo } impl<'a> CommandBufferInheritanceRenderPassTransformInfoQCOM<'a> { #[inline] + #[must_use] pub fn transform(mut self, transform: SurfaceTransformFlagsKHR) -> Self { self.transform = transform; self } #[inline] + #[must_use] pub fn render_area(mut self, render_area: Rect2D) -> Self { self.render_area = render_area; self @@ -33274,6 +35519,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDiagnosticsConfigFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDiagnosticsConfigFeaturesNV<'_> {} impl<'a> PhysicalDeviceDiagnosticsConfigFeaturesNV<'a> { #[inline] + #[must_use] pub fn diagnostics_config(mut self, diagnostics_config: bool) -> Self { self.diagnostics_config = diagnostics_config.into(); self @@ -33306,6 +35552,7 @@ unsafe impl<'a> TaggedStructure for DeviceDiagnosticsConfigCreateInfoNV<'a> { unsafe impl ExtendsDeviceCreateInfo for DeviceDiagnosticsConfigCreateInfoNV<'_> {} impl<'a> DeviceDiagnosticsConfigCreateInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DeviceDiagnosticsConfigFlagsNV) -> Self { self.flags = flags; self @@ -33343,6 +35590,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures<'_> {} impl<'a> PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures<'a> { #[inline] + #[must_use] pub fn shader_zero_initialize_workgroup_memory( mut self, shader_zero_initialize_workgroup_memory: bool, @@ -33387,6 +35635,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR<'a> { #[inline] + #[must_use] pub fn shader_subgroup_uniform_control_flow( mut self, shader_subgroup_uniform_control_flow: bool, @@ -33427,16 +35676,19 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceRobustness2Features unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRobustness2FeaturesEXT<'_> {} impl<'a> PhysicalDeviceRobustness2FeaturesEXT<'a> { #[inline] + #[must_use] pub fn robust_buffer_access2(mut self, robust_buffer_access2: bool) -> Self { self.robust_buffer_access2 = robust_buffer_access2.into(); self } #[inline] + #[must_use] pub fn robust_image_access2(mut self, robust_image_access2: bool) -> Self { self.robust_image_access2 = robust_image_access2.into(); self } #[inline] + #[must_use] pub fn null_descriptor(mut self, null_descriptor: bool) -> Self { self.null_descriptor = null_descriptor.into(); self @@ -33472,6 +35724,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceRobustness2PropertiesEXT<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceRobustness2PropertiesEXT<'_> {} impl<'a> PhysicalDeviceRobustness2PropertiesEXT<'a> { #[inline] + #[must_use] pub fn robust_storage_buffer_access_size_alignment( mut self, robust_storage_buffer_access_size_alignment: DeviceSize, @@ -33481,6 +35734,7 @@ impl<'a> PhysicalDeviceRobustness2PropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn robust_uniform_buffer_access_size_alignment( mut self, robust_uniform_buffer_access_size_alignment: DeviceSize, @@ -33518,6 +35772,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceImageRobustnessFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImageRobustnessFeatures<'_> {} impl<'a> PhysicalDeviceImageRobustnessFeatures<'a> { #[inline] + #[must_use] pub fn robust_image_access(mut self, robust_image_access: bool) -> Self { self.robust_image_access = robust_image_access.into(); self @@ -33561,6 +35816,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR<'_> {} impl<'a> PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR<'a> { #[inline] + #[must_use] pub fn workgroup_memory_explicit_layout( mut self, workgroup_memory_explicit_layout: bool, @@ -33569,6 +35825,7 @@ impl<'a> PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn workgroup_memory_explicit_layout_scalar_block_layout( mut self, workgroup_memory_explicit_layout_scalar_block_layout: bool, @@ -33578,6 +35835,7 @@ impl<'a> PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn workgroup_memory_explicit_layout8_bit_access( mut self, workgroup_memory_explicit_layout8_bit_access: bool, @@ -33587,6 +35845,7 @@ impl<'a> PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn workgroup_memory_explicit_layout16_bit_access( mut self, workgroup_memory_explicit_layout16_bit_access: bool, @@ -33653,6 +35912,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePortabilitySubsetFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePortabilitySubsetFeaturesKHR<'_> {} impl<'a> PhysicalDevicePortabilitySubsetFeaturesKHR<'a> { #[inline] + #[must_use] pub fn constant_alpha_color_blend_factors( mut self, constant_alpha_color_blend_factors: bool, @@ -33661,11 +35921,13 @@ impl<'a> PhysicalDevicePortabilitySubsetFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn events(mut self, events: bool) -> Self { self.events = events.into(); self } #[inline] + #[must_use] pub fn image_view_format_reinterpretation( mut self, image_view_format_reinterpretation: bool, @@ -33674,41 +35936,49 @@ impl<'a> PhysicalDevicePortabilitySubsetFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn image_view_format_swizzle(mut self, image_view_format_swizzle: bool) -> Self { self.image_view_format_swizzle = image_view_format_swizzle.into(); self } #[inline] + #[must_use] pub fn image_view2_d_on3_d_image(mut self, image_view2_d_on3_d_image: bool) -> Self { self.image_view2_d_on3_d_image = image_view2_d_on3_d_image.into(); self } #[inline] + #[must_use] pub fn multisample_array_image(mut self, multisample_array_image: bool) -> Self { self.multisample_array_image = multisample_array_image.into(); self } #[inline] + #[must_use] pub fn mutable_comparison_samplers(mut self, mutable_comparison_samplers: bool) -> Self { self.mutable_comparison_samplers = mutable_comparison_samplers.into(); self } #[inline] + #[must_use] pub fn point_polygons(mut self, point_polygons: bool) -> Self { self.point_polygons = point_polygons.into(); self } #[inline] + #[must_use] pub fn sampler_mip_lod_bias(mut self, sampler_mip_lod_bias: bool) -> Self { self.sampler_mip_lod_bias = sampler_mip_lod_bias.into(); self } #[inline] + #[must_use] pub fn separate_stencil_mask_ref(mut self, separate_stencil_mask_ref: bool) -> Self { self.separate_stencil_mask_ref = separate_stencil_mask_ref.into(); self } #[inline] + #[must_use] pub fn shader_sample_rate_interpolation_functions( mut self, shader_sample_rate_interpolation_functions: bool, @@ -33718,21 +35988,25 @@ impl<'a> PhysicalDevicePortabilitySubsetFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn tessellation_isolines(mut self, tessellation_isolines: bool) -> Self { self.tessellation_isolines = tessellation_isolines.into(); self } #[inline] + #[must_use] pub fn tessellation_point_mode(mut self, tessellation_point_mode: bool) -> Self { self.tessellation_point_mode = tessellation_point_mode.into(); self } #[inline] + #[must_use] pub fn triangle_fans(mut self, triangle_fans: bool) -> Self { self.triangle_fans = triangle_fans.into(); self } #[inline] + #[must_use] pub fn vertex_attribute_access_beyond_stride( mut self, vertex_attribute_access_beyond_stride: bool, @@ -33769,6 +36043,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDevicePortabilitySubsetPropertiesKHR unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDevicePortabilitySubsetPropertiesKHR<'_> {} impl<'a> PhysicalDevicePortabilitySubsetPropertiesKHR<'a> { #[inline] + #[must_use] pub fn min_vertex_input_binding_stride_alignment( mut self, min_vertex_input_binding_stride_alignment: u32, @@ -33807,11 +36082,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevice4444FormatsFeatures unsafe impl ExtendsDeviceCreateInfo for PhysicalDevice4444FormatsFeaturesEXT<'_> {} impl<'a> PhysicalDevice4444FormatsFeaturesEXT<'a> { #[inline] + #[must_use] pub fn format_a4r4g4b4(mut self, format_a4r4g4b4: bool) -> Self { self.format_a4r4g4b4 = format_a4r4g4b4.into(); self } #[inline] + #[must_use] pub fn format_a4b4g4r4(mut self, format_a4b4g4r4: bool) -> Self { self.format_a4b4g4r4 = format_a4b4g4r4.into(); self @@ -33846,6 +36123,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceSubpassShadingFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSubpassShadingFeaturesHUAWEI<'_> {} impl<'a> PhysicalDeviceSubpassShadingFeaturesHUAWEI<'a> { #[inline] + #[must_use] pub fn subpass_shading(mut self, subpass_shading: bool) -> Self { self.subpass_shading = subpass_shading.into(); self @@ -33885,11 +36163,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceClusterCullingShaderFeaturesHUAWEI<'_> {} impl<'a> PhysicalDeviceClusterCullingShaderFeaturesHUAWEI<'a> { #[inline] + #[must_use] pub fn clusterculling_shader(mut self, clusterculling_shader: bool) -> Self { self.clusterculling_shader = clusterculling_shader.into(); self } #[inline] + #[must_use] pub fn multiview_cluster_culling_shader( mut self, multiview_cluster_culling_shader: bool, @@ -33928,16 +36208,19 @@ unsafe impl<'a> TaggedStructure for BufferCopy2<'a> { } impl<'a> BufferCopy2<'a> { #[inline] + #[must_use] pub fn src_offset(mut self, src_offset: DeviceSize) -> Self { self.src_offset = src_offset; self } #[inline] + #[must_use] pub fn dst_offset(mut self, dst_offset: DeviceSize) -> Self { self.dst_offset = dst_offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -33977,26 +36260,31 @@ unsafe impl<'a> TaggedStructure for ImageCopy2<'a> { } impl<'a> ImageCopy2<'a> { #[inline] + #[must_use] pub fn src_subresource(mut self, src_subresource: ImageSubresourceLayers) -> Self { self.src_subresource = src_subresource; self } #[inline] + #[must_use] pub fn src_offset(mut self, src_offset: Offset3D) -> Self { self.src_offset = src_offset; self } #[inline] + #[must_use] pub fn dst_subresource(mut self, dst_subresource: ImageSubresourceLayers) -> Self { self.dst_subresource = dst_subresource; self } #[inline] + #[must_use] pub fn dst_offset(mut self, dst_offset: Offset3D) -> Self { self.dst_offset = dst_offset; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent3D) -> Self { self.extent = extent; self @@ -34035,25 +36323,30 @@ unsafe impl<'a> TaggedStructure for ImageBlit2<'a> { pub unsafe trait ExtendsImageBlit2 {} impl<'a> ImageBlit2<'a> { #[inline] + #[must_use] pub fn src_subresource(mut self, src_subresource: ImageSubresourceLayers) -> Self { self.src_subresource = src_subresource; self } #[inline] + #[must_use] pub fn src_offsets(mut self, src_offsets: [Offset3D; 2]) -> Self { self.src_offsets = src_offsets; self } #[inline] + #[must_use] pub fn dst_subresource(mut self, dst_subresource: ImageSubresourceLayers) -> Self { self.dst_subresource = dst_subresource; self } #[inline] + #[must_use] pub fn dst_offsets(mut self, dst_offsets: [Offset3D; 2]) -> Self { self.dst_offsets = dst_offsets; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -34106,35 +36399,42 @@ unsafe impl<'a> TaggedStructure for BufferImageCopy2<'a> { pub unsafe trait ExtendsBufferImageCopy2 {} impl<'a> BufferImageCopy2<'a> { #[inline] + #[must_use] pub fn buffer_offset(mut self, buffer_offset: DeviceSize) -> Self { self.buffer_offset = buffer_offset; self } #[inline] + #[must_use] pub fn buffer_row_length(mut self, buffer_row_length: u32) -> Self { self.buffer_row_length = buffer_row_length; self } #[inline] + #[must_use] pub fn buffer_image_height(mut self, buffer_image_height: u32) -> Self { self.buffer_image_height = buffer_image_height; self } #[inline] + #[must_use] pub fn image_subresource(mut self, image_subresource: ImageSubresourceLayers) -> Self { self.image_subresource = image_subresource; self } #[inline] + #[must_use] pub fn image_offset(mut self, image_offset: Offset3D) -> Self { self.image_offset = image_offset; self } #[inline] + #[must_use] pub fn image_extent(mut self, image_extent: Extent3D) -> Self { self.image_extent = image_extent; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -34184,26 +36484,31 @@ unsafe impl<'a> TaggedStructure for ImageResolve2<'a> { } impl<'a> ImageResolve2<'a> { #[inline] + #[must_use] pub fn src_subresource(mut self, src_subresource: ImageSubresourceLayers) -> Self { self.src_subresource = src_subresource; self } #[inline] + #[must_use] pub fn src_offset(mut self, src_offset: Offset3D) -> Self { self.src_offset = src_offset; self } #[inline] + #[must_use] pub fn dst_subresource(mut self, dst_subresource: ImageSubresourceLayers) -> Self { self.dst_subresource = dst_subresource; self } #[inline] + #[must_use] pub fn dst_offset(mut self, dst_offset: Offset3D) -> Self { self.dst_offset = dst_offset; self } #[inline] + #[must_use] pub fn extent(mut self, extent: Extent3D) -> Self { self.extent = extent; self @@ -34241,16 +36546,19 @@ unsafe impl<'a> TaggedStructure for CopyBufferInfo2<'a> { } impl<'a> CopyBufferInfo2<'a> { #[inline] + #[must_use] pub fn src_buffer(mut self, src_buffer: Buffer) -> Self { self.src_buffer = src_buffer; self } #[inline] + #[must_use] pub fn dst_buffer(mut self, dst_buffer: Buffer) -> Self { self.dst_buffer = dst_buffer; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [BufferCopy2<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -34293,26 +36601,31 @@ unsafe impl<'a> TaggedStructure for CopyImageInfo2<'a> { } impl<'a> CopyImageInfo2<'a> { #[inline] + #[must_use] pub fn src_image(mut self, src_image: Image) -> Self { self.src_image = src_image; self } #[inline] + #[must_use] pub fn src_image_layout(mut self, src_image_layout: ImageLayout) -> Self { self.src_image_layout = src_image_layout; self } #[inline] + #[must_use] pub fn dst_image(mut self, dst_image: Image) -> Self { self.dst_image = dst_image; self } #[inline] + #[must_use] pub fn dst_image_layout(mut self, dst_image_layout: ImageLayout) -> Self { self.dst_image_layout = dst_image_layout; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [ImageCopy2<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -34358,36 +36671,43 @@ unsafe impl<'a> TaggedStructure for BlitImageInfo2<'a> { pub unsafe trait ExtendsBlitImageInfo2 {} impl<'a> BlitImageInfo2<'a> { #[inline] + #[must_use] pub fn src_image(mut self, src_image: Image) -> Self { self.src_image = src_image; self } #[inline] + #[must_use] pub fn src_image_layout(mut self, src_image_layout: ImageLayout) -> Self { self.src_image_layout = src_image_layout; self } #[inline] + #[must_use] pub fn dst_image(mut self, dst_image: Image) -> Self { self.dst_image = dst_image; self } #[inline] + #[must_use] pub fn dst_image_layout(mut self, dst_image_layout: ImageLayout) -> Self { self.dst_image_layout = dst_image_layout; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [ImageBlit2<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); self } #[inline] + #[must_use] pub fn filter(mut self, filter: Filter) -> Self { self.filter = filter; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -34437,21 +36757,25 @@ unsafe impl<'a> TaggedStructure for CopyBufferToImageInfo2<'a> { } impl<'a> CopyBufferToImageInfo2<'a> { #[inline] + #[must_use] pub fn src_buffer(mut self, src_buffer: Buffer) -> Self { self.src_buffer = src_buffer; self } #[inline] + #[must_use] pub fn dst_image(mut self, dst_image: Image) -> Self { self.dst_image = dst_image; self } #[inline] + #[must_use] pub fn dst_image_layout(mut self, dst_image_layout: ImageLayout) -> Self { self.dst_image_layout = dst_image_layout; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [BufferImageCopy2<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -34492,21 +36816,25 @@ unsafe impl<'a> TaggedStructure for CopyImageToBufferInfo2<'a> { } impl<'a> CopyImageToBufferInfo2<'a> { #[inline] + #[must_use] pub fn src_image(mut self, src_image: Image) -> Self { self.src_image = src_image; self } #[inline] + #[must_use] pub fn src_image_layout(mut self, src_image_layout: ImageLayout) -> Self { self.src_image_layout = src_image_layout; self } #[inline] + #[must_use] pub fn dst_buffer(mut self, dst_buffer: Buffer) -> Self { self.dst_buffer = dst_buffer; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [BufferImageCopy2<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -34549,26 +36877,31 @@ unsafe impl<'a> TaggedStructure for ResolveImageInfo2<'a> { } impl<'a> ResolveImageInfo2<'a> { #[inline] + #[must_use] pub fn src_image(mut self, src_image: Image) -> Self { self.src_image = src_image; self } #[inline] + #[must_use] pub fn src_image_layout(mut self, src_image_layout: ImageLayout) -> Self { self.src_image_layout = src_image_layout; self } #[inline] + #[must_use] pub fn dst_image(mut self, dst_image: Image) -> Self { self.dst_image = dst_image; self } #[inline] + #[must_use] pub fn dst_image_layout(mut self, dst_image_layout: ImageLayout) -> Self { self.dst_image_layout = dst_image_layout; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [ImageResolve2<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -34606,11 +36939,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderImageAtomicIn unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderImageAtomicInt64FeaturesEXT<'_> {} impl<'a> PhysicalDeviceShaderImageAtomicInt64FeaturesEXT<'a> { #[inline] + #[must_use] pub fn shader_image_int64_atomics(mut self, shader_image_int64_atomics: bool) -> Self { self.shader_image_int64_atomics = shader_image_int64_atomics.into(); self } #[inline] + #[must_use] pub fn sparse_image_int64_atomics(mut self, sparse_image_int64_atomics: bool) -> Self { self.sparse_image_int64_atomics = sparse_image_int64_atomics.into(); self @@ -34645,6 +36980,7 @@ unsafe impl<'a> TaggedStructure for FragmentShadingRateAttachmentInfoKHR<'a> { unsafe impl ExtendsSubpassDescription2 for FragmentShadingRateAttachmentInfoKHR<'_> {} impl<'a> FragmentShadingRateAttachmentInfoKHR<'a> { #[inline] + #[must_use] pub fn fragment_shading_rate_attachment( mut self, fragment_shading_rate_attachment: &'a AttachmentReference2<'a>, @@ -34653,6 +36989,7 @@ impl<'a> FragmentShadingRateAttachmentInfoKHR<'a> { self } #[inline] + #[must_use] pub fn shading_rate_attachment_texel_size( mut self, shading_rate_attachment_texel_size: Extent2D, @@ -34694,11 +37031,13 @@ unsafe impl ExtendsGraphicsPipelineCreateInfo } impl<'a> PipelineFragmentShadingRateStateCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn fragment_size(mut self, fragment_size: Extent2D) -> Self { self.fragment_size = fragment_size; self } #[inline] + #[must_use] pub fn combiner_ops(mut self, combiner_ops: [FragmentShadingRateCombinerOpKHR; 2]) -> Self { self.combiner_ops = combiner_ops; self @@ -34737,11 +37076,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceFragmentShadingRate unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFragmentShadingRateFeaturesKHR<'_> {} impl<'a> PhysicalDeviceFragmentShadingRateFeaturesKHR<'a> { #[inline] + #[must_use] pub fn pipeline_fragment_shading_rate(mut self, pipeline_fragment_shading_rate: bool) -> Self { self.pipeline_fragment_shading_rate = pipeline_fragment_shading_rate.into(); self } #[inline] + #[must_use] pub fn primitive_fragment_shading_rate( mut self, primitive_fragment_shading_rate: bool, @@ -34750,6 +37091,7 @@ impl<'a> PhysicalDeviceFragmentShadingRateFeaturesKHR<'a> { self } #[inline] + #[must_use] pub fn attachment_fragment_shading_rate( mut self, attachment_fragment_shading_rate: bool, @@ -34821,6 +37163,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { #[inline] + #[must_use] pub fn min_fragment_shading_rate_attachment_texel_size( mut self, min_fragment_shading_rate_attachment_texel_size: Extent2D, @@ -34830,6 +37173,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_fragment_shading_rate_attachment_texel_size( mut self, max_fragment_shading_rate_attachment_texel_size: Extent2D, @@ -34839,6 +37183,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_fragment_shading_rate_attachment_texel_size_aspect_ratio( mut self, max_fragment_shading_rate_attachment_texel_size_aspect_ratio: u32, @@ -34848,6 +37193,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn primitive_fragment_shading_rate_with_multiple_viewports( mut self, primitive_fragment_shading_rate_with_multiple_viewports: bool, @@ -34857,6 +37203,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn layered_shading_rate_attachments( mut self, layered_shading_rate_attachments: bool, @@ -34865,6 +37212,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_non_trivial_combiner_ops( mut self, fragment_shading_rate_non_trivial_combiner_ops: bool, @@ -34874,16 +37222,19 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_fragment_size(mut self, max_fragment_size: Extent2D) -> Self { self.max_fragment_size = max_fragment_size; self } #[inline] + #[must_use] pub fn max_fragment_size_aspect_ratio(mut self, max_fragment_size_aspect_ratio: u32) -> Self { self.max_fragment_size_aspect_ratio = max_fragment_size_aspect_ratio; self } #[inline] + #[must_use] pub fn max_fragment_shading_rate_coverage_samples( mut self, max_fragment_shading_rate_coverage_samples: u32, @@ -34893,6 +37244,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_fragment_shading_rate_rasterization_samples( mut self, max_fragment_shading_rate_rasterization_samples: SampleCountFlags, @@ -34902,6 +37254,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_with_shader_depth_stencil_writes( mut self, fragment_shading_rate_with_shader_depth_stencil_writes: bool, @@ -34911,6 +37264,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_with_sample_mask( mut self, fragment_shading_rate_with_sample_mask: bool, @@ -34919,6 +37273,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_with_shader_sample_mask( mut self, fragment_shading_rate_with_shader_sample_mask: bool, @@ -34928,6 +37283,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_with_conservative_rasterization( mut self, fragment_shading_rate_with_conservative_rasterization: bool, @@ -34937,6 +37293,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_with_fragment_shader_interlock( mut self, fragment_shading_rate_with_fragment_shader_interlock: bool, @@ -34946,6 +37303,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_with_custom_sample_locations( mut self, fragment_shading_rate_with_custom_sample_locations: bool, @@ -34955,6 +37313,7 @@ impl<'a> PhysicalDeviceFragmentShadingRatePropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn fragment_shading_rate_strict_multiply_combiner( mut self, fragment_shading_rate_strict_multiply_combiner: bool, @@ -34992,11 +37351,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceFragmentShadingRateKHR<'a> { } impl<'a> PhysicalDeviceFragmentShadingRateKHR<'a> { #[inline] + #[must_use] pub fn sample_counts(mut self, sample_counts: SampleCountFlags) -> Self { self.sample_counts = sample_counts; self } #[inline] + #[must_use] pub fn fragment_size(mut self, fragment_size: Extent2D) -> Self { self.fragment_size = fragment_size; self @@ -35031,6 +37392,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderTerminateInvo unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderTerminateInvocationFeatures<'_> {} impl<'a> PhysicalDeviceShaderTerminateInvocationFeatures<'a> { #[inline] + #[must_use] pub fn shader_terminate_invocation(mut self, shader_terminate_invocation: bool) -> Self { self.shader_terminate_invocation = shader_terminate_invocation.into(); self @@ -35072,11 +37434,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFragmentShadingRateEnumsFeaturesNV<'_> {} impl<'a> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV<'a> { #[inline] + #[must_use] pub fn fragment_shading_rate_enums(mut self, fragment_shading_rate_enums: bool) -> Self { self.fragment_shading_rate_enums = fragment_shading_rate_enums.into(); self } #[inline] + #[must_use] pub fn supersample_fragment_shading_rates( mut self, supersample_fragment_shading_rates: bool, @@ -35085,6 +37449,7 @@ impl<'a> PhysicalDeviceFragmentShadingRateEnumsFeaturesNV<'a> { self } #[inline] + #[must_use] pub fn no_invocation_fragment_shading_rates( mut self, no_invocation_fragment_shading_rates: bool, @@ -35124,6 +37489,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceFragmentShadingRateEnumsPropertiesNV<'a> { #[inline] + #[must_use] pub fn max_fragment_shading_rate_invocation_count( mut self, max_fragment_shading_rate_invocation_count: SampleCountFlags, @@ -35168,16 +37534,19 @@ unsafe impl ExtendsGraphicsPipelineCreateInfo } impl<'a> PipelineFragmentShadingRateEnumStateCreateInfoNV<'a> { #[inline] + #[must_use] pub fn shading_rate_type(mut self, shading_rate_type: FragmentShadingRateTypeNV) -> Self { self.shading_rate_type = shading_rate_type; self } #[inline] + #[must_use] pub fn shading_rate(mut self, shading_rate: FragmentShadingRateNV) -> Self { self.shading_rate = shading_rate; self } #[inline] + #[must_use] pub fn combiner_ops(mut self, combiner_ops: [FragmentShadingRateCombinerOpKHR; 2]) -> Self { self.combiner_ops = combiner_ops; self @@ -35214,16 +37583,19 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureBuildSizesInfoKHR<'a> { } impl<'a> AccelerationStructureBuildSizesInfoKHR<'a> { #[inline] + #[must_use] pub fn acceleration_structure_size(mut self, acceleration_structure_size: DeviceSize) -> Self { self.acceleration_structure_size = acceleration_structure_size; self } #[inline] + #[must_use] pub fn update_scratch_size(mut self, update_scratch_size: DeviceSize) -> Self { self.update_scratch_size = update_scratch_size; self } #[inline] + #[must_use] pub fn build_scratch_size(mut self, build_scratch_size: DeviceSize) -> Self { self.build_scratch_size = build_scratch_size; self @@ -35260,11 +37632,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceImage2DViewOf3DFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImage2DViewOf3DFeaturesEXT<'_> {} impl<'a> PhysicalDeviceImage2DViewOf3DFeaturesEXT<'a> { #[inline] + #[must_use] pub fn image2_d_view_of3_d(mut self, image2_d_view_of3_d: bool) -> Self { self.image2_d_view_of3_d = image2_d_view_of3_d.into(); self } #[inline] + #[must_use] pub fn sampler2_d_view_of3_d(mut self, sampler2_d_view_of3_d: bool) -> Self { self.sampler2_d_view_of3_d = sampler2_d_view_of3_d.into(); self @@ -35299,6 +37673,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceImageSlicedViewOf3D unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImageSlicedViewOf3DFeaturesEXT<'_> {} impl<'a> PhysicalDeviceImageSlicedViewOf3DFeaturesEXT<'a> { #[inline] + #[must_use] pub fn image_sliced_view_of3_d(mut self, image_sliced_view_of3_d: bool) -> Self { self.image_sliced_view_of3_d = image_sliced_view_of3_d.into(); self @@ -35341,6 +37716,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT<'a> { #[inline] + #[must_use] pub fn attachment_feedback_loop_dynamic_state( mut self, attachment_feedback_loop_dynamic_state: bool, @@ -35378,6 +37754,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceMutableDescriptorTy unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMutableDescriptorTypeFeaturesEXT<'_> {} impl<'a> PhysicalDeviceMutableDescriptorTypeFeaturesEXT<'a> { #[inline] + #[must_use] pub fn mutable_descriptor_type(mut self, mutable_descriptor_type: bool) -> Self { self.mutable_descriptor_type = mutable_descriptor_type.into(); self @@ -35404,6 +37781,7 @@ impl ::std::default::Default for MutableDescriptorTypeListEXT<'_> { } impl<'a> MutableDescriptorTypeListEXT<'a> { #[inline] + #[must_use] pub fn descriptor_types(mut self, descriptor_types: &'a [DescriptorType]) -> Self { self.descriptor_type_count = descriptor_types.len() as _; self.p_descriptor_types = descriptor_types.as_ptr(); @@ -35440,6 +37818,7 @@ unsafe impl ExtendsDescriptorSetLayoutCreateInfo for MutableDescriptorTypeCreate unsafe impl ExtendsDescriptorPoolCreateInfo for MutableDescriptorTypeCreateInfoEXT<'_> {} impl<'a> MutableDescriptorTypeCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn mutable_descriptor_type_lists( mut self, mutable_descriptor_type_lists: &'a [MutableDescriptorTypeListEXT<'a>], @@ -35478,6 +37857,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDepthClipControlFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDepthClipControlFeaturesEXT<'_> {} impl<'a> PhysicalDeviceDepthClipControlFeaturesEXT<'a> { #[inline] + #[must_use] pub fn depth_clip_control(mut self, depth_clip_control: bool) -> Self { self.depth_clip_control = depth_clip_control.into(); self @@ -35514,6 +37894,7 @@ unsafe impl ExtendsPipelineViewportStateCreateInfo } impl<'a> PipelineViewportDepthClipControlCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn negative_one_to_one(mut self, negative_one_to_one: bool) -> Self { self.negative_one_to_one = negative_one_to_one.into(); self @@ -35551,6 +37932,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceVertexInputDynamicStateFeaturesEXT<'_> {} impl<'a> PhysicalDeviceVertexInputDynamicStateFeaturesEXT<'a> { #[inline] + #[must_use] pub fn vertex_input_dynamic_state(mut self, vertex_input_dynamic_state: bool) -> Self { self.vertex_input_dynamic_state = vertex_input_dynamic_state.into(); self @@ -35585,6 +37967,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceExternalMemoryRDMAF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExternalMemoryRDMAFeaturesNV<'_> {} impl<'a> PhysicalDeviceExternalMemoryRDMAFeaturesNV<'a> { #[inline] + #[must_use] pub fn external_memory_rdma(mut self, external_memory_rdma: bool) -> Self { self.external_memory_rdma = external_memory_rdma.into(); self @@ -35622,21 +38005,25 @@ unsafe impl<'a> TaggedStructure for VertexInputBindingDescription2EXT<'a> { } impl<'a> VertexInputBindingDescription2EXT<'a> { #[inline] + #[must_use] pub fn binding(mut self, binding: u32) -> Self { self.binding = binding; self } #[inline] + #[must_use] pub fn stride(mut self, stride: u32) -> Self { self.stride = stride; self } #[inline] + #[must_use] pub fn input_rate(mut self, input_rate: VertexInputRate) -> Self { self.input_rate = input_rate; self } #[inline] + #[must_use] pub fn divisor(mut self, divisor: u32) -> Self { self.divisor = divisor; self @@ -35674,21 +38061,25 @@ unsafe impl<'a> TaggedStructure for VertexInputAttributeDescription2EXT<'a> { } impl<'a> VertexInputAttributeDescription2EXT<'a> { #[inline] + #[must_use] pub fn location(mut self, location: u32) -> Self { self.location = location; self } #[inline] + #[must_use] pub fn binding(mut self, binding: u32) -> Self { self.binding = binding; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn offset(mut self, offset: u32) -> Self { self.offset = offset; self @@ -35723,6 +38114,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceColorWriteEnableFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceColorWriteEnableFeaturesEXT<'_> {} impl<'a> PhysicalDeviceColorWriteEnableFeaturesEXT<'a> { #[inline] + #[must_use] pub fn color_write_enable(mut self, color_write_enable: bool) -> Self { self.color_write_enable = color_write_enable.into(); self @@ -35757,6 +38149,7 @@ unsafe impl<'a> TaggedStructure for PipelineColorWriteCreateInfoEXT<'a> { unsafe impl ExtendsPipelineColorBlendStateCreateInfo for PipelineColorWriteCreateInfoEXT<'_> {} impl<'a> PipelineColorWriteCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn color_write_enables(mut self, color_write_enables: &'a [Bool32]) -> Self { self.attachment_count = color_write_enables.len() as _; self.p_color_write_enables = color_write_enables.as_ptr(); @@ -35796,21 +38189,25 @@ unsafe impl<'a> TaggedStructure for MemoryBarrier2<'a> { unsafe impl ExtendsSubpassDependency2 for MemoryBarrier2<'_> {} impl<'a> MemoryBarrier2<'a> { #[inline] + #[must_use] pub fn src_stage_mask(mut self, src_stage_mask: PipelineStageFlags2) -> Self { self.src_stage_mask = src_stage_mask; self } #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags2) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_stage_mask(mut self, dst_stage_mask: PipelineStageFlags2) -> Self { self.dst_stage_mask = dst_stage_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags2) -> Self { self.dst_access_mask = dst_access_mask; self @@ -35861,55 +38258,66 @@ unsafe impl<'a> TaggedStructure for ImageMemoryBarrier2<'a> { pub unsafe trait ExtendsImageMemoryBarrier2 {} impl<'a> ImageMemoryBarrier2<'a> { #[inline] + #[must_use] pub fn src_stage_mask(mut self, src_stage_mask: PipelineStageFlags2) -> Self { self.src_stage_mask = src_stage_mask; self } #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags2) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_stage_mask(mut self, dst_stage_mask: PipelineStageFlags2) -> Self { self.dst_stage_mask = dst_stage_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags2) -> Self { self.dst_access_mask = dst_access_mask; self } #[inline] + #[must_use] pub fn old_layout(mut self, old_layout: ImageLayout) -> Self { self.old_layout = old_layout; self } #[inline] + #[must_use] pub fn new_layout(mut self, new_layout: ImageLayout) -> Self { self.new_layout = new_layout; self } #[inline] + #[must_use] pub fn src_queue_family_index(mut self, src_queue_family_index: u32) -> Self { self.src_queue_family_index = src_queue_family_index; self } #[inline] + #[must_use] pub fn dst_queue_family_index(mut self, dst_queue_family_index: u32) -> Self { self.dst_queue_family_index = dst_queue_family_index; self } #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn subresource_range(mut self, subresource_range: ImageSubresourceRange) -> Self { self.subresource_range = subresource_range; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -35968,50 +38376,60 @@ unsafe impl<'a> TaggedStructure for BufferMemoryBarrier2<'a> { pub unsafe trait ExtendsBufferMemoryBarrier2 {} impl<'a> BufferMemoryBarrier2<'a> { #[inline] + #[must_use] pub fn src_stage_mask(mut self, src_stage_mask: PipelineStageFlags2) -> Self { self.src_stage_mask = src_stage_mask; self } #[inline] + #[must_use] pub fn src_access_mask(mut self, src_access_mask: AccessFlags2) -> Self { self.src_access_mask = src_access_mask; self } #[inline] + #[must_use] pub fn dst_stage_mask(mut self, dst_stage_mask: PipelineStageFlags2) -> Self { self.dst_stage_mask = dst_stage_mask; self } #[inline] + #[must_use] pub fn dst_access_mask(mut self, dst_access_mask: AccessFlags2) -> Self { self.dst_access_mask = dst_access_mask; self } #[inline] + #[must_use] pub fn src_queue_family_index(mut self, src_queue_family_index: u32) -> Self { self.src_queue_family_index = src_queue_family_index; self } #[inline] + #[must_use] pub fn dst_queue_family_index(mut self, dst_queue_family_index: u32) -> Self { self.dst_queue_family_index = dst_queue_family_index; self } #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -36065,17 +38483,20 @@ unsafe impl<'a> TaggedStructure for DependencyInfo<'a> { } impl<'a> DependencyInfo<'a> { #[inline] + #[must_use] pub fn dependency_flags(mut self, dependency_flags: DependencyFlags) -> Self { self.dependency_flags = dependency_flags; self } #[inline] + #[must_use] pub fn memory_barriers(mut self, memory_barriers: &'a [MemoryBarrier2<'a>]) -> Self { self.memory_barrier_count = memory_barriers.len() as _; self.p_memory_barriers = memory_barriers.as_ptr(); self } #[inline] + #[must_use] pub fn buffer_memory_barriers( mut self, buffer_memory_barriers: &'a [BufferMemoryBarrier2<'a>], @@ -36085,6 +38506,7 @@ impl<'a> DependencyInfo<'a> { self } #[inline] + #[must_use] pub fn image_memory_barriers( mut self, image_memory_barriers: &'a [ImageMemoryBarrier2<'a>], @@ -36126,21 +38548,25 @@ unsafe impl<'a> TaggedStructure for SemaphoreSubmitInfo<'a> { } impl<'a> SemaphoreSubmitInfo<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn value(mut self, value: u64) -> Self { self.value = value; self } #[inline] + #[must_use] pub fn stage_mask(mut self, stage_mask: PipelineStageFlags2) -> Self { self.stage_mask = stage_mask; self } #[inline] + #[must_use] pub fn device_index(mut self, device_index: u32) -> Self { self.device_index = device_index; self @@ -36174,11 +38600,13 @@ unsafe impl<'a> TaggedStructure for CommandBufferSubmitInfo<'a> { } impl<'a> CommandBufferSubmitInfo<'a> { #[inline] + #[must_use] pub fn command_buffer(mut self, command_buffer: CommandBuffer) -> Self { self.command_buffer = command_buffer; self } #[inline] + #[must_use] pub fn device_mask(mut self, device_mask: u32) -> Self { self.device_mask = device_mask; self @@ -36223,11 +38651,13 @@ unsafe impl<'a> TaggedStructure for SubmitInfo2<'a> { pub unsafe trait ExtendsSubmitInfo2 {} impl<'a> SubmitInfo2<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: SubmitFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn wait_semaphore_infos( mut self, wait_semaphore_infos: &'a [SemaphoreSubmitInfo<'a>], @@ -36237,6 +38667,7 @@ impl<'a> SubmitInfo2<'a> { self } #[inline] + #[must_use] pub fn command_buffer_infos( mut self, command_buffer_infos: &'a [CommandBufferSubmitInfo<'a>], @@ -36246,6 +38677,7 @@ impl<'a> SubmitInfo2<'a> { self } #[inline] + #[must_use] pub fn signal_semaphore_infos( mut self, signal_semaphore_infos: &'a [SemaphoreSubmitInfo<'a>], @@ -36254,6 +38686,7 @@ impl<'a> SubmitInfo2<'a> { self.p_signal_semaphore_infos = signal_semaphore_infos.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -36296,6 +38729,7 @@ unsafe impl<'a> TaggedStructure for QueueFamilyCheckpointProperties2NV<'a> { unsafe impl ExtendsQueueFamilyProperties2 for QueueFamilyCheckpointProperties2NV<'_> {} impl<'a> QueueFamilyCheckpointProperties2NV<'a> { #[inline] + #[must_use] pub fn checkpoint_execution_stage_mask( mut self, checkpoint_execution_stage_mask: PipelineStageFlags2, @@ -36332,11 +38766,13 @@ unsafe impl<'a> TaggedStructure for CheckpointData2NV<'a> { } impl<'a> CheckpointData2NV<'a> { #[inline] + #[must_use] pub fn stage(mut self, stage: PipelineStageFlags2) -> Self { self.stage = stage; self } #[inline] + #[must_use] pub fn checkpoint_marker(mut self, checkpoint_marker: *mut c_void) -> Self { self.p_checkpoint_marker = checkpoint_marker; self @@ -36370,6 +38806,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceSynchronization2Fea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSynchronization2Features<'_> {} impl<'a> PhysicalDeviceSynchronization2Features<'a> { #[inline] + #[must_use] pub fn synchronization2(mut self, synchronization2: bool) -> Self { self.synchronization2 = synchronization2.into(); self @@ -36404,6 +38841,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceHostImageCopyFeatur unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceHostImageCopyFeaturesEXT<'_> {} impl<'a> PhysicalDeviceHostImageCopyFeaturesEXT<'a> { #[inline] + #[must_use] pub fn host_image_copy(mut self, host_image_copy: bool) -> Self { self.host_image_copy = host_image_copy.into(); self @@ -36447,18 +38885,21 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceHostImageCopyPropertiesEXT<'a> unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceHostImageCopyPropertiesEXT<'_> {} impl<'a> PhysicalDeviceHostImageCopyPropertiesEXT<'a> { #[inline] + #[must_use] pub fn copy_src_layouts(mut self, copy_src_layouts: &'a mut [ImageLayout]) -> Self { self.copy_src_layout_count = copy_src_layouts.len() as _; self.p_copy_src_layouts = copy_src_layouts.as_mut_ptr(); self } #[inline] + #[must_use] pub fn copy_dst_layouts(mut self, copy_dst_layouts: &'a mut [ImageLayout]) -> Self { self.copy_dst_layout_count = copy_dst_layouts.len() as _; self.p_copy_dst_layouts = copy_dst_layouts.as_mut_ptr(); self } #[inline] + #[must_use] pub fn optimal_tiling_layout_uuid( mut self, optimal_tiling_layout_uuid: [u8; UUID_SIZE], @@ -36467,6 +38908,7 @@ impl<'a> PhysicalDeviceHostImageCopyPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn identical_memory_type_requirements( mut self, identical_memory_type_requirements: bool, @@ -36511,31 +38953,37 @@ unsafe impl<'a> TaggedStructure for MemoryToImageCopyEXT<'a> { } impl<'a> MemoryToImageCopyEXT<'a> { #[inline] + #[must_use] pub fn host_pointer(mut self, host_pointer: *const c_void) -> Self { self.p_host_pointer = host_pointer; self } #[inline] + #[must_use] pub fn memory_row_length(mut self, memory_row_length: u32) -> Self { self.memory_row_length = memory_row_length; self } #[inline] + #[must_use] pub fn memory_image_height(mut self, memory_image_height: u32) -> Self { self.memory_image_height = memory_image_height; self } #[inline] + #[must_use] pub fn image_subresource(mut self, image_subresource: ImageSubresourceLayers) -> Self { self.image_subresource = image_subresource; self } #[inline] + #[must_use] pub fn image_offset(mut self, image_offset: Offset3D) -> Self { self.image_offset = image_offset; self } #[inline] + #[must_use] pub fn image_extent(mut self, image_extent: Extent3D) -> Self { self.image_extent = image_extent; self @@ -36577,31 +39025,37 @@ unsafe impl<'a> TaggedStructure for ImageToMemoryCopyEXT<'a> { } impl<'a> ImageToMemoryCopyEXT<'a> { #[inline] + #[must_use] pub fn host_pointer(mut self, host_pointer: *mut c_void) -> Self { self.p_host_pointer = host_pointer; self } #[inline] + #[must_use] pub fn memory_row_length(mut self, memory_row_length: u32) -> Self { self.memory_row_length = memory_row_length; self } #[inline] + #[must_use] pub fn memory_image_height(mut self, memory_image_height: u32) -> Self { self.memory_image_height = memory_image_height; self } #[inline] + #[must_use] pub fn image_subresource(mut self, image_subresource: ImageSubresourceLayers) -> Self { self.image_subresource = image_subresource; self } #[inline] + #[must_use] pub fn image_offset(mut self, image_offset: Offset3D) -> Self { self.image_offset = image_offset; self } #[inline] + #[must_use] pub fn image_extent(mut self, image_extent: Extent3D) -> Self { self.image_extent = image_extent; self @@ -36641,21 +39095,25 @@ unsafe impl<'a> TaggedStructure for CopyMemoryToImageInfoEXT<'a> { } impl<'a> CopyMemoryToImageInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: HostImageCopyFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn dst_image(mut self, dst_image: Image) -> Self { self.dst_image = dst_image; self } #[inline] + #[must_use] pub fn dst_image_layout(mut self, dst_image_layout: ImageLayout) -> Self { self.dst_image_layout = dst_image_layout; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [MemoryToImageCopyEXT<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -36696,21 +39154,25 @@ unsafe impl<'a> TaggedStructure for CopyImageToMemoryInfoEXT<'a> { } impl<'a> CopyImageToMemoryInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: HostImageCopyFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn src_image(mut self, src_image: Image) -> Self { self.src_image = src_image; self } #[inline] + #[must_use] pub fn src_image_layout(mut self, src_image_layout: ImageLayout) -> Self { self.src_image_layout = src_image_layout; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [ImageToMemoryCopyEXT<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -36755,31 +39217,37 @@ unsafe impl<'a> TaggedStructure for CopyImageToImageInfoEXT<'a> { } impl<'a> CopyImageToImageInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: HostImageCopyFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn src_image(mut self, src_image: Image) -> Self { self.src_image = src_image; self } #[inline] + #[must_use] pub fn src_image_layout(mut self, src_image_layout: ImageLayout) -> Self { self.src_image_layout = src_image_layout; self } #[inline] + #[must_use] pub fn dst_image(mut self, dst_image: Image) -> Self { self.dst_image = dst_image; self } #[inline] + #[must_use] pub fn dst_image_layout(mut self, dst_image_layout: ImageLayout) -> Self { self.dst_image_layout = dst_image_layout; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [ImageCopy2<'a>]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -36818,21 +39286,25 @@ unsafe impl<'a> TaggedStructure for HostImageLayoutTransitionInfoEXT<'a> { } impl<'a> HostImageLayoutTransitionInfoEXT<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn old_layout(mut self, old_layout: ImageLayout) -> Self { self.old_layout = old_layout; self } #[inline] + #[must_use] pub fn new_layout(mut self, new_layout: ImageLayout) -> Self { self.new_layout = new_layout; self } #[inline] + #[must_use] pub fn subresource_range(mut self, subresource_range: ImageSubresourceRange) -> Self { self.subresource_range = subresource_range; self @@ -36865,6 +39337,7 @@ unsafe impl<'a> TaggedStructure for SubresourceHostMemcpySizeEXT<'a> { unsafe impl ExtendsSubresourceLayout2KHR for SubresourceHostMemcpySizeEXT<'_> {} impl<'a> SubresourceHostMemcpySizeEXT<'a> { #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -36900,11 +39373,13 @@ unsafe impl<'a> TaggedStructure for HostImageCopyDevicePerformanceQueryEXT<'a> { unsafe impl ExtendsImageFormatProperties2 for HostImageCopyDevicePerformanceQueryEXT<'_> {} impl<'a> HostImageCopyDevicePerformanceQueryEXT<'a> { #[inline] + #[must_use] pub fn optimal_device_access(mut self, optimal_device_access: bool) -> Self { self.optimal_device_access = optimal_device_access.into(); self } #[inline] + #[must_use] pub fn identical_memory_layout(mut self, identical_memory_layout: bool) -> Self { self.identical_memory_layout = identical_memory_layout.into(); self @@ -36946,11 +39421,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT<'_> {} impl<'a> PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT<'a> { #[inline] + #[must_use] pub fn primitives_generated_query(mut self, primitives_generated_query: bool) -> Self { self.primitives_generated_query = primitives_generated_query.into(); self } #[inline] + #[must_use] pub fn primitives_generated_query_with_rasterizer_discard( mut self, primitives_generated_query_with_rasterizer_discard: bool, @@ -36960,6 +39437,7 @@ impl<'a> PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn primitives_generated_query_with_non_zero_streams( mut self, primitives_generated_query_with_non_zero_streams: bool, @@ -36998,6 +39476,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceLegacyDitheringFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceLegacyDitheringFeaturesEXT<'_> {} impl<'a> PhysicalDeviceLegacyDitheringFeaturesEXT<'a> { #[inline] + #[must_use] pub fn legacy_dithering(mut self, legacy_dithering: bool) -> Self { self.legacy_dithering = legacy_dithering.into(); self @@ -37038,6 +39517,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT<'a> { #[inline] + #[must_use] pub fn multisampled_render_to_single_sampled( mut self, multisampled_render_to_single_sampled: bool, @@ -37073,6 +39553,7 @@ unsafe impl<'a> TaggedStructure for SubpassResolvePerformanceQueryEXT<'a> { unsafe impl ExtendsFormatProperties2 for SubpassResolvePerformanceQueryEXT<'_> {} impl<'a> SubpassResolvePerformanceQueryEXT<'a> { #[inline] + #[must_use] pub fn optimal(mut self, optimal: bool) -> Self { self.optimal = optimal.into(); self @@ -37109,6 +39590,7 @@ unsafe impl ExtendsSubpassDescription2 for MultisampledRenderToSingleSampledInfo unsafe impl ExtendsRenderingInfo for MultisampledRenderToSingleSampledInfoEXT<'_> {} impl<'a> MultisampledRenderToSingleSampledInfoEXT<'a> { #[inline] + #[must_use] pub fn multisampled_render_to_single_sampled_enable( mut self, multisampled_render_to_single_sampled_enable: bool, @@ -37118,6 +39600,7 @@ impl<'a> MultisampledRenderToSingleSampledInfoEXT<'a> { self } #[inline] + #[must_use] pub fn rasterization_samples(mut self, rasterization_samples: SampleCountFlags) -> Self { self.rasterization_samples = rasterization_samples; self @@ -37155,6 +39638,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePipelineProtectedAccessFeaturesEXT<'_> {} impl<'a> PhysicalDevicePipelineProtectedAccessFeaturesEXT<'a> { #[inline] + #[must_use] pub fn pipeline_protected_access(mut self, pipeline_protected_access: bool) -> Self { self.pipeline_protected_access = pipeline_protected_access.into(); self @@ -37187,6 +39671,7 @@ unsafe impl<'a> TaggedStructure for QueueFamilyVideoPropertiesKHR<'a> { unsafe impl ExtendsQueueFamilyProperties2 for QueueFamilyVideoPropertiesKHR<'_> {} impl<'a> QueueFamilyVideoPropertiesKHR<'a> { #[inline] + #[must_use] pub fn video_codec_operations( mut self, video_codec_operations: VideoCodecOperationFlagsKHR, @@ -37223,6 +39708,7 @@ unsafe impl<'a> TaggedStructure for QueueFamilyQueryResultStatusPropertiesKHR<'a unsafe impl ExtendsQueueFamilyProperties2 for QueueFamilyQueryResultStatusPropertiesKHR<'_> {} impl<'a> QueueFamilyQueryResultStatusPropertiesKHR<'a> { #[inline] + #[must_use] pub fn query_result_status_support(mut self, query_result_status_support: bool) -> Self { self.query_result_status_support = query_result_status_support.into(); self @@ -37260,6 +39746,7 @@ unsafe impl ExtendsImageCreateInfo for VideoProfileListInfoKHR<'_> {} unsafe impl ExtendsBufferCreateInfo for VideoProfileListInfoKHR<'_> {} impl<'a> VideoProfileListInfoKHR<'a> { #[inline] + #[must_use] pub fn profiles(mut self, profiles: &'a [VideoProfileInfoKHR<'a>]) -> Self { self.profile_count = profiles.len() as _; self.p_profiles = profiles.as_ptr(); @@ -37293,10 +39780,12 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceVideoFormatInfoKHR<'a> { pub unsafe trait ExtendsPhysicalDeviceVideoFormatInfoKHR {} impl<'a> PhysicalDeviceVideoFormatInfoKHR<'a> { #[inline] + #[must_use] pub fn image_usage(mut self, image_usage: ImageUsageFlags) -> Self { self.image_usage = image_usage; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -37351,31 +39840,37 @@ unsafe impl<'a> TaggedStructure for VideoFormatPropertiesKHR<'a> { } impl<'a> VideoFormatPropertiesKHR<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn component_mapping(mut self, component_mapping: ComponentMapping) -> Self { self.component_mapping = component_mapping; self } #[inline] + #[must_use] pub fn image_create_flags(mut self, image_create_flags: ImageCreateFlags) -> Self { self.image_create_flags = image_create_flags; self } #[inline] + #[must_use] pub fn image_type(mut self, image_type: ImageType) -> Self { self.image_type = image_type; self } #[inline] + #[must_use] pub fn image_tiling(mut self, image_tiling: ImageTiling) -> Self { self.image_tiling = image_tiling; self } #[inline] + #[must_use] pub fn image_usage_flags(mut self, image_usage_flags: ImageUsageFlags) -> Self { self.image_usage_flags = image_usage_flags; self @@ -37415,6 +39910,7 @@ unsafe impl ExtendsQueryPoolCreateInfo for VideoProfileInfoKHR<'_> {} pub unsafe trait ExtendsVideoProfileInfoKHR {} impl<'a> VideoProfileInfoKHR<'a> { #[inline] + #[must_use] pub fn video_codec_operation( mut self, video_codec_operation: VideoCodecOperationFlagsKHR, @@ -37423,6 +39919,7 @@ impl<'a> VideoProfileInfoKHR<'a> { self } #[inline] + #[must_use] pub fn chroma_subsampling( mut self, chroma_subsampling: VideoChromaSubsamplingFlagsKHR, @@ -37431,15 +39928,18 @@ impl<'a> VideoProfileInfoKHR<'a> { self } #[inline] + #[must_use] pub fn luma_bit_depth(mut self, luma_bit_depth: VideoComponentBitDepthFlagsKHR) -> Self { self.luma_bit_depth = luma_bit_depth; self } #[inline] + #[must_use] pub fn chroma_bit_depth(mut self, chroma_bit_depth: VideoComponentBitDepthFlagsKHR) -> Self { self.chroma_bit_depth = chroma_bit_depth; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -37498,11 +39998,13 @@ unsafe impl<'a> TaggedStructure for VideoCapabilitiesKHR<'a> { pub unsafe trait ExtendsVideoCapabilitiesKHR {} impl<'a> VideoCapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoCapabilityFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn min_bitstream_buffer_offset_alignment( mut self, min_bitstream_buffer_offset_alignment: DeviceSize, @@ -37511,6 +40013,7 @@ impl<'a> VideoCapabilitiesKHR<'a> { self } #[inline] + #[must_use] pub fn min_bitstream_buffer_size_alignment( mut self, min_bitstream_buffer_size_alignment: DeviceSize, @@ -37519,35 +40022,42 @@ impl<'a> VideoCapabilitiesKHR<'a> { self } #[inline] + #[must_use] pub fn picture_access_granularity(mut self, picture_access_granularity: Extent2D) -> Self { self.picture_access_granularity = picture_access_granularity; self } #[inline] + #[must_use] pub fn min_coded_extent(mut self, min_coded_extent: Extent2D) -> Self { self.min_coded_extent = min_coded_extent; self } #[inline] + #[must_use] pub fn max_coded_extent(mut self, max_coded_extent: Extent2D) -> Self { self.max_coded_extent = max_coded_extent; self } #[inline] + #[must_use] pub fn max_dpb_slots(mut self, max_dpb_slots: u32) -> Self { self.max_dpb_slots = max_dpb_slots; self } #[inline] + #[must_use] pub fn max_active_reference_pictures(mut self, max_active_reference_pictures: u32) -> Self { self.max_active_reference_pictures = max_active_reference_pictures; self } #[inline] + #[must_use] pub fn std_header_version(mut self, std_header_version: ExtensionProperties) -> Self { self.std_header_version = std_header_version; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -37591,11 +40101,13 @@ unsafe impl<'a> TaggedStructure for VideoSessionMemoryRequirementsKHR<'a> { } impl<'a> VideoSessionMemoryRequirementsKHR<'a> { #[inline] + #[must_use] pub fn memory_bind_index(mut self, memory_bind_index: u32) -> Self { self.memory_bind_index = memory_bind_index; self } #[inline] + #[must_use] pub fn memory_requirements(mut self, memory_requirements: MemoryRequirements) -> Self { self.memory_requirements = memory_requirements; self @@ -37633,21 +40145,25 @@ unsafe impl<'a> TaggedStructure for BindVideoSessionMemoryInfoKHR<'a> { } impl<'a> BindVideoSessionMemoryInfoKHR<'a> { #[inline] + #[must_use] pub fn memory_bind_index(mut self, memory_bind_index: u32) -> Self { self.memory_bind_index = memory_bind_index; self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn memory_offset(mut self, memory_offset: DeviceSize) -> Self { self.memory_offset = memory_offset; self } #[inline] + #[must_use] pub fn memory_size(mut self, memory_size: DeviceSize) -> Self { self.memory_size = memory_size; self @@ -37685,21 +40201,25 @@ unsafe impl<'a> TaggedStructure for VideoPictureResourceInfoKHR<'a> { } impl<'a> VideoPictureResourceInfoKHR<'a> { #[inline] + #[must_use] pub fn coded_offset(mut self, coded_offset: Offset2D) -> Self { self.coded_offset = coded_offset; self } #[inline] + #[must_use] pub fn coded_extent(mut self, coded_extent: Extent2D) -> Self { self.coded_extent = coded_extent; self } #[inline] + #[must_use] pub fn base_array_layer(mut self, base_array_layer: u32) -> Self { self.base_array_layer = base_array_layer; self } #[inline] + #[must_use] pub fn image_view_binding(mut self, image_view_binding: ImageView) -> Self { self.image_view_binding = image_view_binding; self @@ -37734,11 +40254,13 @@ unsafe impl<'a> TaggedStructure for VideoReferenceSlotInfoKHR<'a> { pub unsafe trait ExtendsVideoReferenceSlotInfoKHR {} impl<'a> VideoReferenceSlotInfoKHR<'a> { #[inline] + #[must_use] pub fn slot_index(mut self, slot_index: i32) -> Self { self.slot_index = slot_index; self } #[inline] + #[must_use] pub fn picture_resource( mut self, picture_resource: &'a VideoPictureResourceInfoKHR<'a>, @@ -37746,6 +40268,7 @@ impl<'a> VideoReferenceSlotInfoKHR<'a> { self.p_picture_resource = picture_resource; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -37788,6 +40311,7 @@ unsafe impl<'a> TaggedStructure for VideoDecodeCapabilitiesKHR<'a> { unsafe impl ExtendsVideoCapabilitiesKHR for VideoDecodeCapabilitiesKHR<'_> {} impl<'a> VideoDecodeCapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoDecodeCapabilityFlagsKHR) -> Self { self.flags = flags; self @@ -37821,6 +40345,7 @@ unsafe impl ExtendsVideoProfileInfoKHR for VideoDecodeUsageInfoKHR<'_> {} unsafe impl ExtendsQueryPoolCreateInfo for VideoDecodeUsageInfoKHR<'_> {} impl<'a> VideoDecodeUsageInfoKHR<'a> { #[inline] + #[must_use] pub fn video_usage_hints(mut self, video_usage_hints: VideoDecodeUsageFlagsKHR) -> Self { self.video_usage_hints = video_usage_hints; self @@ -37867,26 +40392,31 @@ unsafe impl<'a> TaggedStructure for VideoDecodeInfoKHR<'a> { pub unsafe trait ExtendsVideoDecodeInfoKHR {} impl<'a> VideoDecodeInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoDecodeFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn src_buffer(mut self, src_buffer: Buffer) -> Self { self.src_buffer = src_buffer; self } #[inline] + #[must_use] pub fn src_buffer_offset(mut self, src_buffer_offset: DeviceSize) -> Self { self.src_buffer_offset = src_buffer_offset; self } #[inline] + #[must_use] pub fn src_buffer_range(mut self, src_buffer_range: DeviceSize) -> Self { self.src_buffer_range = src_buffer_range; self } #[inline] + #[must_use] pub fn dst_picture_resource( mut self, dst_picture_resource: VideoPictureResourceInfoKHR<'a>, @@ -37895,6 +40425,7 @@ impl<'a> VideoDecodeInfoKHR<'a> { self } #[inline] + #[must_use] pub fn setup_reference_slot( mut self, setup_reference_slot: &'a VideoReferenceSlotInfoKHR<'a>, @@ -37903,11 +40434,13 @@ impl<'a> VideoDecodeInfoKHR<'a> { self } #[inline] + #[must_use] pub fn reference_slots(mut self, reference_slots: &'a [VideoReferenceSlotInfoKHR<'a>]) -> Self { self.reference_slot_count = reference_slots.len() as _; self.p_reference_slots = reference_slots.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -37953,11 +40486,13 @@ unsafe impl ExtendsVideoProfileInfoKHR for VideoDecodeH264ProfileInfoKHR<'_> {} unsafe impl ExtendsQueryPoolCreateInfo for VideoDecodeH264ProfileInfoKHR<'_> {} impl<'a> VideoDecodeH264ProfileInfoKHR<'a> { #[inline] + #[must_use] pub fn std_profile_idc(mut self, std_profile_idc: StdVideoH264ProfileIdc) -> Self { self.std_profile_idc = std_profile_idc; self } #[inline] + #[must_use] pub fn picture_layout(mut self, picture_layout: VideoDecodeH264PictureLayoutFlagsKHR) -> Self { self.picture_layout = picture_layout; self @@ -37992,11 +40527,13 @@ unsafe impl<'a> TaggedStructure for VideoDecodeH264CapabilitiesKHR<'a> { unsafe impl ExtendsVideoCapabilitiesKHR for VideoDecodeH264CapabilitiesKHR<'_> {} impl<'a> VideoDecodeH264CapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn max_level_idc(mut self, max_level_idc: StdVideoH264LevelIdc) -> Self { self.max_level_idc = max_level_idc; self } #[inline] + #[must_use] pub fn field_offset_granularity(mut self, field_offset_granularity: Offset2D) -> Self { self.field_offset_granularity = field_offset_granularity; self @@ -38039,12 +40576,14 @@ unsafe impl ExtendsVideoSessionParametersUpdateInfoKHR } impl<'a> VideoDecodeH264SessionParametersAddInfoKHR<'a> { #[inline] + #[must_use] pub fn std_sp_ss(mut self, std_sp_ss: &'a [StdVideoH264SequenceParameterSet]) -> Self { self.std_sps_count = std_sp_ss.len() as _; self.p_std_sp_ss = std_sp_ss.as_ptr(); self } #[inline] + #[must_use] pub fn std_pp_ss(mut self, std_pp_ss: &'a [StdVideoH264PictureParameterSet]) -> Self { self.std_pps_count = std_pp_ss.len() as _; self.p_std_pp_ss = std_pp_ss.as_ptr(); @@ -38086,16 +40625,19 @@ unsafe impl ExtendsVideoSessionParametersCreateInfoKHR } impl<'a> VideoDecodeH264SessionParametersCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn max_std_sps_count(mut self, max_std_sps_count: u32) -> Self { self.max_std_sps_count = max_std_sps_count; self } #[inline] + #[must_use] pub fn max_std_pps_count(mut self, max_std_pps_count: u32) -> Self { self.max_std_pps_count = max_std_pps_count; self } #[inline] + #[must_use] pub fn parameters_add_info( mut self, parameters_add_info: &'a VideoDecodeH264SessionParametersAddInfoKHR<'a>, @@ -38135,11 +40677,13 @@ unsafe impl<'a> TaggedStructure for VideoDecodeH264PictureInfoKHR<'a> { unsafe impl ExtendsVideoDecodeInfoKHR for VideoDecodeH264PictureInfoKHR<'_> {} impl<'a> VideoDecodeH264PictureInfoKHR<'a> { #[inline] + #[must_use] pub fn std_picture_info(mut self, std_picture_info: &'a StdVideoDecodeH264PictureInfo) -> Self { self.p_std_picture_info = std_picture_info; self } #[inline] + #[must_use] pub fn slice_offsets(mut self, slice_offsets: &'a [u32]) -> Self { self.slice_count = slice_offsets.len() as _; self.p_slice_offsets = slice_offsets.as_ptr(); @@ -38173,6 +40717,7 @@ unsafe impl<'a> TaggedStructure for VideoDecodeH264DpbSlotInfoKHR<'a> { unsafe impl ExtendsVideoReferenceSlotInfoKHR for VideoDecodeH264DpbSlotInfoKHR<'_> {} impl<'a> VideoDecodeH264DpbSlotInfoKHR<'a> { #[inline] + #[must_use] pub fn std_reference_info( mut self, std_reference_info: &'a StdVideoDecodeH264ReferenceInfo, @@ -38209,6 +40754,7 @@ unsafe impl ExtendsVideoProfileInfoKHR for VideoDecodeH265ProfileInfoKHR<'_> {} unsafe impl ExtendsQueryPoolCreateInfo for VideoDecodeH265ProfileInfoKHR<'_> {} impl<'a> VideoDecodeH265ProfileInfoKHR<'a> { #[inline] + #[must_use] pub fn std_profile_idc(mut self, std_profile_idc: StdVideoH265ProfileIdc) -> Self { self.std_profile_idc = std_profile_idc; self @@ -38241,6 +40787,7 @@ unsafe impl<'a> TaggedStructure for VideoDecodeH265CapabilitiesKHR<'a> { unsafe impl ExtendsVideoCapabilitiesKHR for VideoDecodeH265CapabilitiesKHR<'_> {} impl<'a> VideoDecodeH265CapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn max_level_idc(mut self, max_level_idc: StdVideoH265LevelIdc) -> Self { self.max_level_idc = max_level_idc; self @@ -38287,18 +40834,21 @@ unsafe impl ExtendsVideoSessionParametersUpdateInfoKHR } impl<'a> VideoDecodeH265SessionParametersAddInfoKHR<'a> { #[inline] + #[must_use] pub fn std_vp_ss(mut self, std_vp_ss: &'a [StdVideoH265VideoParameterSet]) -> Self { self.std_vps_count = std_vp_ss.len() as _; self.p_std_vp_ss = std_vp_ss.as_ptr(); self } #[inline] + #[must_use] pub fn std_sp_ss(mut self, std_sp_ss: &'a [StdVideoH265SequenceParameterSet]) -> Self { self.std_sps_count = std_sp_ss.len() as _; self.p_std_sp_ss = std_sp_ss.as_ptr(); self } #[inline] + #[must_use] pub fn std_pp_ss(mut self, std_pp_ss: &'a [StdVideoH265PictureParameterSet]) -> Self { self.std_pps_count = std_pp_ss.len() as _; self.p_std_pp_ss = std_pp_ss.as_ptr(); @@ -38342,21 +40892,25 @@ unsafe impl ExtendsVideoSessionParametersCreateInfoKHR } impl<'a> VideoDecodeH265SessionParametersCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn max_std_vps_count(mut self, max_std_vps_count: u32) -> Self { self.max_std_vps_count = max_std_vps_count; self } #[inline] + #[must_use] pub fn max_std_sps_count(mut self, max_std_sps_count: u32) -> Self { self.max_std_sps_count = max_std_sps_count; self } #[inline] + #[must_use] pub fn max_std_pps_count(mut self, max_std_pps_count: u32) -> Self { self.max_std_pps_count = max_std_pps_count; self } #[inline] + #[must_use] pub fn parameters_add_info( mut self, parameters_add_info: &'a VideoDecodeH265SessionParametersAddInfoKHR<'a>, @@ -38396,11 +40950,13 @@ unsafe impl<'a> TaggedStructure for VideoDecodeH265PictureInfoKHR<'a> { unsafe impl ExtendsVideoDecodeInfoKHR for VideoDecodeH265PictureInfoKHR<'_> {} impl<'a> VideoDecodeH265PictureInfoKHR<'a> { #[inline] + #[must_use] pub fn std_picture_info(mut self, std_picture_info: &'a StdVideoDecodeH265PictureInfo) -> Self { self.p_std_picture_info = std_picture_info; self } #[inline] + #[must_use] pub fn slice_segment_offsets(mut self, slice_segment_offsets: &'a [u32]) -> Self { self.slice_segment_count = slice_segment_offsets.len() as _; self.p_slice_segment_offsets = slice_segment_offsets.as_ptr(); @@ -38434,6 +40990,7 @@ unsafe impl<'a> TaggedStructure for VideoDecodeH265DpbSlotInfoKHR<'a> { unsafe impl ExtendsVideoReferenceSlotInfoKHR for VideoDecodeH265DpbSlotInfoKHR<'_> {} impl<'a> VideoDecodeH265DpbSlotInfoKHR<'a> { #[inline] + #[must_use] pub fn std_reference_info( mut self, std_reference_info: &'a StdVideoDecodeH265ReferenceInfo, @@ -38485,50 +41042,60 @@ unsafe impl<'a> TaggedStructure for VideoSessionCreateInfoKHR<'a> { pub unsafe trait ExtendsVideoSessionCreateInfoKHR {} impl<'a> VideoSessionCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn queue_family_index(mut self, queue_family_index: u32) -> Self { self.queue_family_index = queue_family_index; self } #[inline] + #[must_use] pub fn flags(mut self, flags: VideoSessionCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn video_profile(mut self, video_profile: &'a VideoProfileInfoKHR<'a>) -> Self { self.p_video_profile = video_profile; self } #[inline] + #[must_use] pub fn picture_format(mut self, picture_format: Format) -> Self { self.picture_format = picture_format; self } #[inline] + #[must_use] pub fn max_coded_extent(mut self, max_coded_extent: Extent2D) -> Self { self.max_coded_extent = max_coded_extent; self } #[inline] + #[must_use] pub fn reference_picture_format(mut self, reference_picture_format: Format) -> Self { self.reference_picture_format = reference_picture_format; self } #[inline] + #[must_use] pub fn max_dpb_slots(mut self, max_dpb_slots: u32) -> Self { self.max_dpb_slots = max_dpb_slots; self } #[inline] + #[must_use] pub fn max_active_reference_pictures(mut self, max_active_reference_pictures: u32) -> Self { self.max_active_reference_pictures = max_active_reference_pictures; self } #[inline] + #[must_use] pub fn std_header_version(mut self, std_header_version: &'a ExtensionProperties) -> Self { self.p_std_header_version = std_header_version; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -38575,11 +41142,13 @@ unsafe impl<'a> TaggedStructure for VideoSessionParametersCreateInfoKHR<'a> { pub unsafe trait ExtendsVideoSessionParametersCreateInfoKHR {} impl<'a> VideoSessionParametersCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoSessionParametersCreateFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn video_session_parameters_template( mut self, video_session_parameters_template: VideoSessionParametersKHR, @@ -38588,10 +41157,12 @@ impl<'a> VideoSessionParametersCreateInfoKHR<'a> { self } #[inline] + #[must_use] pub fn video_session(mut self, video_session: VideoSessionKHR) -> Self { self.video_session = video_session; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -38637,10 +41208,12 @@ unsafe impl<'a> TaggedStructure for VideoSessionParametersUpdateInfoKHR<'a> { pub unsafe trait ExtendsVideoSessionParametersUpdateInfoKHR {} impl<'a> VideoSessionParametersUpdateInfoKHR<'a> { #[inline] + #[must_use] pub fn update_sequence_count(mut self, update_sequence_count: u32) -> Self { self.update_sequence_count = update_sequence_count; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -38687,6 +41260,7 @@ unsafe impl<'a> TaggedStructure for VideoEncodeSessionParametersGetInfoKHR<'a> { pub unsafe trait ExtendsVideoEncodeSessionParametersGetInfoKHR {} impl<'a> VideoEncodeSessionParametersGetInfoKHR<'a> { #[inline] + #[must_use] pub fn video_session_parameters( mut self, video_session_parameters: VideoSessionParametersKHR, @@ -38694,6 +41268,7 @@ impl<'a> VideoEncodeSessionParametersGetInfoKHR<'a> { self.video_session_parameters = video_session_parameters; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -38740,10 +41315,12 @@ unsafe impl<'a> TaggedStructure for VideoEncodeSessionParametersFeedbackInfoKHR< pub unsafe trait ExtendsVideoEncodeSessionParametersFeedbackInfoKHR {} impl<'a> VideoEncodeSessionParametersFeedbackInfoKHR<'a> { #[inline] + #[must_use] pub fn has_overrides(mut self, has_overrides: bool) -> Self { self.has_overrides = has_overrides.into(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -38797,16 +41374,19 @@ unsafe impl<'a> TaggedStructure for VideoBeginCodingInfoKHR<'a> { pub unsafe trait ExtendsVideoBeginCodingInfoKHR {} impl<'a> VideoBeginCodingInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoBeginCodingFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn video_session(mut self, video_session: VideoSessionKHR) -> Self { self.video_session = video_session; self } #[inline] + #[must_use] pub fn video_session_parameters( mut self, video_session_parameters: VideoSessionParametersKHR, @@ -38815,11 +41395,13 @@ impl<'a> VideoBeginCodingInfoKHR<'a> { self } #[inline] + #[must_use] pub fn reference_slots(mut self, reference_slots: &'a [VideoReferenceSlotInfoKHR<'a>]) -> Self { self.reference_slot_count = reference_slots.len() as _; self.p_reference_slots = reference_slots.as_ptr(); self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -38861,6 +41443,7 @@ unsafe impl<'a> TaggedStructure for VideoEndCodingInfoKHR<'a> { } impl<'a> VideoEndCodingInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEndCodingFlagsKHR) -> Self { self.flags = flags; self @@ -38893,10 +41476,12 @@ unsafe impl<'a> TaggedStructure for VideoCodingControlInfoKHR<'a> { pub unsafe trait ExtendsVideoCodingControlInfoKHR {} impl<'a> VideoCodingControlInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoCodingControlFlagsKHR) -> Self { self.flags = flags; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -38944,16 +41529,19 @@ unsafe impl ExtendsVideoProfileInfoKHR for VideoEncodeUsageInfoKHR<'_> {} unsafe impl ExtendsQueryPoolCreateInfo for VideoEncodeUsageInfoKHR<'_> {} impl<'a> VideoEncodeUsageInfoKHR<'a> { #[inline] + #[must_use] pub fn video_usage_hints(mut self, video_usage_hints: VideoEncodeUsageFlagsKHR) -> Self { self.video_usage_hints = video_usage_hints; self } #[inline] + #[must_use] pub fn video_content_hints(mut self, video_content_hints: VideoEncodeContentFlagsKHR) -> Self { self.video_content_hints = video_content_hints; self } #[inline] + #[must_use] pub fn tuning_mode(mut self, tuning_mode: VideoEncodeTuningModeKHR) -> Self { self.tuning_mode = tuning_mode; self @@ -39002,26 +41590,31 @@ unsafe impl<'a> TaggedStructure for VideoEncodeInfoKHR<'a> { pub unsafe trait ExtendsVideoEncodeInfoKHR {} impl<'a> VideoEncodeInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEncodeFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn dst_buffer(mut self, dst_buffer: Buffer) -> Self { self.dst_buffer = dst_buffer; self } #[inline] + #[must_use] pub fn dst_buffer_offset(mut self, dst_buffer_offset: DeviceSize) -> Self { self.dst_buffer_offset = dst_buffer_offset; self } #[inline] + #[must_use] pub fn dst_buffer_range(mut self, dst_buffer_range: DeviceSize) -> Self { self.dst_buffer_range = dst_buffer_range; self } #[inline] + #[must_use] pub fn src_picture_resource( mut self, src_picture_resource: VideoPictureResourceInfoKHR<'a>, @@ -39030,6 +41623,7 @@ impl<'a> VideoEncodeInfoKHR<'a> { self } #[inline] + #[must_use] pub fn setup_reference_slot( mut self, setup_reference_slot: &'a VideoReferenceSlotInfoKHR<'a>, @@ -39038,12 +41632,14 @@ impl<'a> VideoEncodeInfoKHR<'a> { self } #[inline] + #[must_use] pub fn reference_slots(mut self, reference_slots: &'a [VideoReferenceSlotInfoKHR<'a>]) -> Self { self.reference_slot_count = reference_slots.len() as _; self.p_reference_slots = reference_slots.as_ptr(); self } #[inline] + #[must_use] pub fn preceding_externally_encoded_bytes( mut self, preceding_externally_encoded_bytes: u32, @@ -39051,6 +41647,7 @@ impl<'a> VideoEncodeInfoKHR<'a> { self.preceding_externally_encoded_bytes = preceding_externally_encoded_bytes; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -39094,6 +41691,7 @@ unsafe impl<'a> TaggedStructure for QueryPoolVideoEncodeFeedbackCreateInfoKHR<'a unsafe impl ExtendsQueryPoolCreateInfo for QueryPoolVideoEncodeFeedbackCreateInfoKHR<'_> {} impl<'a> QueryPoolVideoEncodeFeedbackCreateInfoKHR<'a> { #[inline] + #[must_use] pub fn encode_feedback_flags( mut self, encode_feedback_flags: VideoEncodeFeedbackFlagsKHR, @@ -39130,6 +41728,7 @@ unsafe impl ExtendsVideoCodingControlInfoKHR for VideoEncodeQualityLevelInfoKHR< unsafe impl ExtendsVideoSessionParametersCreateInfoKHR for VideoEncodeQualityLevelInfoKHR<'_> {} impl<'a> VideoEncodeQualityLevelInfoKHR<'a> { #[inline] + #[must_use] pub fn quality_level(mut self, quality_level: u32) -> Self { self.quality_level = quality_level; self @@ -39164,11 +41763,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceVideoEncodeQualityLevelInfoKHR } impl<'a> PhysicalDeviceVideoEncodeQualityLevelInfoKHR<'a> { #[inline] + #[must_use] pub fn video_profile(mut self, video_profile: &'a VideoProfileInfoKHR<'a>) -> Self { self.p_video_profile = video_profile; self } #[inline] + #[must_use] pub fn quality_level(mut self, quality_level: u32) -> Self { self.quality_level = quality_level; self @@ -39203,6 +41804,7 @@ unsafe impl<'a> TaggedStructure for VideoEncodeQualityLevelPropertiesKHR<'a> { pub unsafe trait ExtendsVideoEncodeQualityLevelPropertiesKHR {} impl<'a> VideoEncodeQualityLevelPropertiesKHR<'a> { #[inline] + #[must_use] pub fn preferred_rate_control_mode( mut self, preferred_rate_control_mode: VideoEncodeRateControlModeFlagsKHR, @@ -39211,6 +41813,7 @@ impl<'a> VideoEncodeQualityLevelPropertiesKHR<'a> { self } #[inline] + #[must_use] pub fn preferred_rate_control_layer_count( mut self, preferred_rate_control_layer_count: u32, @@ -39218,6 +41821,7 @@ impl<'a> VideoEncodeQualityLevelPropertiesKHR<'a> { self.preferred_rate_control_layer_count = preferred_rate_control_layer_count; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -39274,11 +41878,13 @@ unsafe impl ExtendsVideoCodingControlInfoKHR for VideoEncodeRateControlInfoKHR<' unsafe impl ExtendsVideoBeginCodingInfoKHR for VideoEncodeRateControlInfoKHR<'_> {} impl<'a> VideoEncodeRateControlInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEncodeRateControlFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn rate_control_mode( mut self, rate_control_mode: VideoEncodeRateControlModeFlagsKHR, @@ -39287,17 +41893,20 @@ impl<'a> VideoEncodeRateControlInfoKHR<'a> { self } #[inline] + #[must_use] pub fn layers(mut self, layers: &'a [VideoEncodeRateControlLayerInfoKHR<'a>]) -> Self { self.layer_count = layers.len() as _; self.p_layers = layers.as_ptr(); self } #[inline] + #[must_use] pub fn virtual_buffer_size_in_ms(mut self, virtual_buffer_size_in_ms: u32) -> Self { self.virtual_buffer_size_in_ms = virtual_buffer_size_in_ms; self } #[inline] + #[must_use] pub fn initial_virtual_buffer_size_in_ms( mut self, initial_virtual_buffer_size_in_ms: u32, @@ -39339,25 +41948,30 @@ unsafe impl<'a> TaggedStructure for VideoEncodeRateControlLayerInfoKHR<'a> { pub unsafe trait ExtendsVideoEncodeRateControlLayerInfoKHR {} impl<'a> VideoEncodeRateControlLayerInfoKHR<'a> { #[inline] + #[must_use] pub fn average_bitrate(mut self, average_bitrate: u64) -> Self { self.average_bitrate = average_bitrate; self } #[inline] + #[must_use] pub fn max_bitrate(mut self, max_bitrate: u64) -> Self { self.max_bitrate = max_bitrate; self } #[inline] + #[must_use] pub fn frame_rate_numerator(mut self, frame_rate_numerator: u32) -> Self { self.frame_rate_numerator = frame_rate_numerator; self } #[inline] + #[must_use] pub fn frame_rate_denominator(mut self, frame_rate_denominator: u32) -> Self { self.frame_rate_denominator = frame_rate_denominator; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -39415,11 +42029,13 @@ unsafe impl<'a> TaggedStructure for VideoEncodeCapabilitiesKHR<'a> { unsafe impl ExtendsVideoCapabilitiesKHR for VideoEncodeCapabilitiesKHR<'_> {} impl<'a> VideoEncodeCapabilitiesKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEncodeCapabilityFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn rate_control_modes( mut self, rate_control_modes: VideoEncodeRateControlModeFlagsKHR, @@ -39428,21 +42044,25 @@ impl<'a> VideoEncodeCapabilitiesKHR<'a> { self } #[inline] + #[must_use] pub fn max_rate_control_layers(mut self, max_rate_control_layers: u32) -> Self { self.max_rate_control_layers = max_rate_control_layers; self } #[inline] + #[must_use] pub fn max_bitrate(mut self, max_bitrate: u64) -> Self { self.max_bitrate = max_bitrate; self } #[inline] + #[must_use] pub fn max_quality_levels(mut self, max_quality_levels: u32) -> Self { self.max_quality_levels = max_quality_levels; self } #[inline] + #[must_use] pub fn encode_input_picture_granularity( mut self, encode_input_picture_granularity: Extent2D, @@ -39451,6 +42071,7 @@ impl<'a> VideoEncodeCapabilitiesKHR<'a> { self } #[inline] + #[must_use] pub fn supported_encode_feedback_flags( mut self, supported_encode_feedback_flags: VideoEncodeFeedbackFlagsKHR, @@ -39510,21 +42131,25 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH264CapabilitiesEXT<'a> { unsafe impl ExtendsVideoCapabilitiesKHR for VideoEncodeH264CapabilitiesEXT<'_> {} impl<'a> VideoEncodeH264CapabilitiesEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEncodeH264CapabilityFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn max_level_idc(mut self, max_level_idc: StdVideoH264LevelIdc) -> Self { self.max_level_idc = max_level_idc; self } #[inline] + #[must_use] pub fn max_slice_count(mut self, max_slice_count: u32) -> Self { self.max_slice_count = max_slice_count; self } #[inline] + #[must_use] pub fn max_p_picture_l0_reference_count( mut self, max_p_picture_l0_reference_count: u32, @@ -39533,6 +42158,7 @@ impl<'a> VideoEncodeH264CapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_b_picture_l0_reference_count( mut self, max_b_picture_l0_reference_count: u32, @@ -39541,16 +42167,19 @@ impl<'a> VideoEncodeH264CapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_l1_reference_count(mut self, max_l1_reference_count: u32) -> Self { self.max_l1_reference_count = max_l1_reference_count; self } #[inline] + #[must_use] pub fn max_temporal_layer_count(mut self, max_temporal_layer_count: u32) -> Self { self.max_temporal_layer_count = max_temporal_layer_count; self } #[inline] + #[must_use] pub fn expect_dyadic_temporal_layer_pattern( mut self, expect_dyadic_temporal_layer_pattern: bool, @@ -39559,26 +42188,31 @@ impl<'a> VideoEncodeH264CapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn min_qp(mut self, min_qp: i32) -> Self { self.min_qp = min_qp; self } #[inline] + #[must_use] pub fn max_qp(mut self, max_qp: i32) -> Self { self.max_qp = max_qp; self } #[inline] + #[must_use] pub fn prefers_gop_remaining_frames(mut self, prefers_gop_remaining_frames: bool) -> Self { self.prefers_gop_remaining_frames = prefers_gop_remaining_frames.into(); self } #[inline] + #[must_use] pub fn requires_gop_remaining_frames(mut self, requires_gop_remaining_frames: bool) -> Self { self.requires_gop_remaining_frames = requires_gop_remaining_frames.into(); self } #[inline] + #[must_use] pub fn std_syntax_flags(mut self, std_syntax_flags: VideoEncodeH264StdFlagsEXT) -> Self { self.std_syntax_flags = std_syntax_flags; self @@ -39631,6 +42265,7 @@ unsafe impl ExtendsVideoEncodeQualityLevelPropertiesKHR } impl<'a> VideoEncodeH264QualityLevelPropertiesEXT<'a> { #[inline] + #[must_use] pub fn preferred_rate_control_flags( mut self, preferred_rate_control_flags: VideoEncodeH264RateControlFlagsEXT, @@ -39639,16 +42274,19 @@ impl<'a> VideoEncodeH264QualityLevelPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn preferred_gop_frame_count(mut self, preferred_gop_frame_count: u32) -> Self { self.preferred_gop_frame_count = preferred_gop_frame_count; self } #[inline] + #[must_use] pub fn preferred_idr_period(mut self, preferred_idr_period: u32) -> Self { self.preferred_idr_period = preferred_idr_period; self } #[inline] + #[must_use] pub fn preferred_consecutive_b_frame_count( mut self, preferred_consecutive_b_frame_count: u32, @@ -39657,16 +42295,19 @@ impl<'a> VideoEncodeH264QualityLevelPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn preferred_temporal_layer_count(mut self, preferred_temporal_layer_count: u32) -> Self { self.preferred_temporal_layer_count = preferred_temporal_layer_count; self } #[inline] + #[must_use] pub fn preferred_constant_qp(mut self, preferred_constant_qp: VideoEncodeH264QpEXT) -> Self { self.preferred_constant_qp = preferred_constant_qp; self } #[inline] + #[must_use] pub fn preferred_max_l0_reference_count( mut self, preferred_max_l0_reference_count: u32, @@ -39675,6 +42316,7 @@ impl<'a> VideoEncodeH264QualityLevelPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn preferred_max_l1_reference_count( mut self, preferred_max_l1_reference_count: u32, @@ -39683,6 +42325,7 @@ impl<'a> VideoEncodeH264QualityLevelPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn preferred_std_entropy_coding_mode_flag( mut self, preferred_std_entropy_coding_mode_flag: bool, @@ -39720,11 +42363,13 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH264SessionCreateInfoEXT<'a> { unsafe impl ExtendsVideoSessionCreateInfoKHR for VideoEncodeH264SessionCreateInfoEXT<'_> {} impl<'a> VideoEncodeH264SessionCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn use_max_level_idc(mut self, use_max_level_idc: bool) -> Self { self.use_max_level_idc = use_max_level_idc.into(); self } #[inline] + #[must_use] pub fn max_level_idc(mut self, max_level_idc: StdVideoH264LevelIdc) -> Self { self.max_level_idc = max_level_idc; self @@ -39767,12 +42412,14 @@ unsafe impl ExtendsVideoSessionParametersUpdateInfoKHR } impl<'a> VideoEncodeH264SessionParametersAddInfoEXT<'a> { #[inline] + #[must_use] pub fn std_sp_ss(mut self, std_sp_ss: &'a [StdVideoH264SequenceParameterSet]) -> Self { self.std_sps_count = std_sp_ss.len() as _; self.p_std_sp_ss = std_sp_ss.as_ptr(); self } #[inline] + #[must_use] pub fn std_pp_ss(mut self, std_pp_ss: &'a [StdVideoH264PictureParameterSet]) -> Self { self.std_pps_count = std_pp_ss.len() as _; self.p_std_pp_ss = std_pp_ss.as_ptr(); @@ -39814,16 +42461,19 @@ unsafe impl ExtendsVideoSessionParametersCreateInfoKHR } impl<'a> VideoEncodeH264SessionParametersCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn max_std_sps_count(mut self, max_std_sps_count: u32) -> Self { self.max_std_sps_count = max_std_sps_count; self } #[inline] + #[must_use] pub fn max_std_pps_count(mut self, max_std_pps_count: u32) -> Self { self.max_std_pps_count = max_std_pps_count; self } #[inline] + #[must_use] pub fn parameters_add_info( mut self, parameters_add_info: &'a VideoEncodeH264SessionParametersAddInfoEXT<'a>, @@ -39869,21 +42519,25 @@ unsafe impl ExtendsVideoEncodeSessionParametersGetInfoKHR } impl<'a> VideoEncodeH264SessionParametersGetInfoEXT<'a> { #[inline] + #[must_use] pub fn write_std_sps(mut self, write_std_sps: bool) -> Self { self.write_std_sps = write_std_sps.into(); self } #[inline] + #[must_use] pub fn write_std_pps(mut self, write_std_pps: bool) -> Self { self.write_std_pps = write_std_pps.into(); self } #[inline] + #[must_use] pub fn std_sps_id(mut self, std_sps_id: u32) -> Self { self.std_sps_id = std_sps_id; self } #[inline] + #[must_use] pub fn std_pps_id(mut self, std_pps_id: u32) -> Self { self.std_pps_id = std_pps_id; self @@ -39922,11 +42576,13 @@ unsafe impl ExtendsVideoEncodeSessionParametersFeedbackInfoKHR } impl<'a> VideoEncodeH264SessionParametersFeedbackInfoEXT<'a> { #[inline] + #[must_use] pub fn has_std_sps_overrides(mut self, has_std_sps_overrides: bool) -> Self { self.has_std_sps_overrides = has_std_sps_overrides.into(); self } #[inline] + #[must_use] pub fn has_std_pps_overrides(mut self, has_std_pps_overrides: bool) -> Self { self.has_std_pps_overrides = has_std_pps_overrides.into(); self @@ -39959,6 +42615,7 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH264DpbSlotInfoEXT<'a> { unsafe impl ExtendsVideoReferenceSlotInfoKHR for VideoEncodeH264DpbSlotInfoEXT<'_> {} impl<'a> VideoEncodeH264DpbSlotInfoEXT<'a> { #[inline] + #[must_use] pub fn std_reference_info( mut self, std_reference_info: &'a StdVideoEncodeH264ReferenceInfo, @@ -40000,6 +42657,7 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH264PictureInfoEXT<'a> { unsafe impl ExtendsVideoEncodeInfoKHR for VideoEncodeH264PictureInfoEXT<'_> {} impl<'a> VideoEncodeH264PictureInfoEXT<'a> { #[inline] + #[must_use] pub fn nalu_slice_entries( mut self, nalu_slice_entries: &'a [VideoEncodeH264NaluSliceInfoEXT<'a>], @@ -40009,11 +42667,13 @@ impl<'a> VideoEncodeH264PictureInfoEXT<'a> { self } #[inline] + #[must_use] pub fn std_picture_info(mut self, std_picture_info: &'a StdVideoEncodeH264PictureInfo) -> Self { self.p_std_picture_info = std_picture_info; self } #[inline] + #[must_use] pub fn generate_prefix_nalu(mut self, generate_prefix_nalu: bool) -> Self { self.generate_prefix_nalu = generate_prefix_nalu.into(); self @@ -40047,6 +42707,7 @@ unsafe impl ExtendsVideoProfileInfoKHR for VideoEncodeH264ProfileInfoEXT<'_> {} unsafe impl ExtendsQueryPoolCreateInfo for VideoEncodeH264ProfileInfoEXT<'_> {} impl<'a> VideoEncodeH264ProfileInfoEXT<'a> { #[inline] + #[must_use] pub fn std_profile_idc(mut self, std_profile_idc: StdVideoH264ProfileIdc) -> Self { self.std_profile_idc = std_profile_idc; self @@ -40080,11 +42741,13 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH264NaluSliceInfoEXT<'a> { } impl<'a> VideoEncodeH264NaluSliceInfoEXT<'a> { #[inline] + #[must_use] pub fn constant_qp(mut self, constant_qp: i32) -> Self { self.constant_qp = constant_qp; self } #[inline] + #[must_use] pub fn std_slice_header(mut self, std_slice_header: &'a StdVideoEncodeH264SliceHeader) -> Self { self.p_std_slice_header = std_slice_header; self @@ -40126,26 +42789,31 @@ unsafe impl ExtendsVideoCodingControlInfoKHR for VideoEncodeH264RateControlInfoE unsafe impl ExtendsVideoBeginCodingInfoKHR for VideoEncodeH264RateControlInfoEXT<'_> {} impl<'a> VideoEncodeH264RateControlInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEncodeH264RateControlFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn gop_frame_count(mut self, gop_frame_count: u32) -> Self { self.gop_frame_count = gop_frame_count; self } #[inline] + #[must_use] pub fn idr_period(mut self, idr_period: u32) -> Self { self.idr_period = idr_period; self } #[inline] + #[must_use] pub fn consecutive_b_frame_count(mut self, consecutive_b_frame_count: u32) -> Self { self.consecutive_b_frame_count = consecutive_b_frame_count; self } #[inline] + #[must_use] pub fn temporal_layer_count(mut self, temporal_layer_count: u32) -> Self { self.temporal_layer_count = temporal_layer_count; self @@ -40162,16 +42830,19 @@ pub struct VideoEncodeH264QpEXT { } impl VideoEncodeH264QpEXT { #[inline] + #[must_use] pub fn qp_i(mut self, qp_i: i32) -> Self { self.qp_i = qp_i; self } #[inline] + #[must_use] pub fn qp_p(mut self, qp_p: i32) -> Self { self.qp_p = qp_p; self } #[inline] + #[must_use] pub fn qp_b(mut self, qp_b: i32) -> Self { self.qp_b = qp_b; self @@ -40188,16 +42859,19 @@ pub struct VideoEncodeH264FrameSizeEXT { } impl VideoEncodeH264FrameSizeEXT { #[inline] + #[must_use] pub fn frame_i_size(mut self, frame_i_size: u32) -> Self { self.frame_i_size = frame_i_size; self } #[inline] + #[must_use] pub fn frame_p_size(mut self, frame_p_size: u32) -> Self { self.frame_p_size = frame_p_size; self } #[inline] + #[must_use] pub fn frame_b_size(mut self, frame_b_size: u32) -> Self { self.frame_b_size = frame_b_size; self @@ -40237,21 +42911,25 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH264GopRemainingFrameInfoEXT<'a> unsafe impl ExtendsVideoBeginCodingInfoKHR for VideoEncodeH264GopRemainingFrameInfoEXT<'_> {} impl<'a> VideoEncodeH264GopRemainingFrameInfoEXT<'a> { #[inline] + #[must_use] pub fn use_gop_remaining_frames(mut self, use_gop_remaining_frames: bool) -> Self { self.use_gop_remaining_frames = use_gop_remaining_frames.into(); self } #[inline] + #[must_use] pub fn gop_remaining_i(mut self, gop_remaining_i: u32) -> Self { self.gop_remaining_i = gop_remaining_i; self } #[inline] + #[must_use] pub fn gop_remaining_p(mut self, gop_remaining_p: u32) -> Self { self.gop_remaining_p = gop_remaining_p; self } #[inline] + #[must_use] pub fn gop_remaining_b(mut self, gop_remaining_b: u32) -> Self { self.gop_remaining_b = gop_remaining_b; self @@ -40298,31 +42976,37 @@ unsafe impl ExtendsVideoEncodeRateControlLayerInfoKHR } impl<'a> VideoEncodeH264RateControlLayerInfoEXT<'a> { #[inline] + #[must_use] pub fn use_min_qp(mut self, use_min_qp: bool) -> Self { self.use_min_qp = use_min_qp.into(); self } #[inline] + #[must_use] pub fn min_qp(mut self, min_qp: VideoEncodeH264QpEXT) -> Self { self.min_qp = min_qp; self } #[inline] + #[must_use] pub fn use_max_qp(mut self, use_max_qp: bool) -> Self { self.use_max_qp = use_max_qp.into(); self } #[inline] + #[must_use] pub fn max_qp(mut self, max_qp: VideoEncodeH264QpEXT) -> Self { self.max_qp = max_qp; self } #[inline] + #[must_use] pub fn use_max_frame_size(mut self, use_max_frame_size: bool) -> Self { self.use_max_frame_size = use_max_frame_size.into(); self } #[inline] + #[must_use] pub fn max_frame_size(mut self, max_frame_size: VideoEncodeH264FrameSizeEXT) -> Self { self.max_frame_size = max_frame_size; self @@ -40385,31 +43069,37 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH265CapabilitiesEXT<'a> { unsafe impl ExtendsVideoCapabilitiesKHR for VideoEncodeH265CapabilitiesEXT<'_> {} impl<'a> VideoEncodeH265CapabilitiesEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEncodeH265CapabilityFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn max_level_idc(mut self, max_level_idc: StdVideoH265LevelIdc) -> Self { self.max_level_idc = max_level_idc; self } #[inline] + #[must_use] pub fn max_slice_segment_count(mut self, max_slice_segment_count: u32) -> Self { self.max_slice_segment_count = max_slice_segment_count; self } #[inline] + #[must_use] pub fn max_tiles(mut self, max_tiles: Extent2D) -> Self { self.max_tiles = max_tiles; self } #[inline] + #[must_use] pub fn ctb_sizes(mut self, ctb_sizes: VideoEncodeH265CtbSizeFlagsEXT) -> Self { self.ctb_sizes = ctb_sizes; self } #[inline] + #[must_use] pub fn transform_block_sizes( mut self, transform_block_sizes: VideoEncodeH265TransformBlockSizeFlagsEXT, @@ -40418,6 +43108,7 @@ impl<'a> VideoEncodeH265CapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_p_picture_l0_reference_count( mut self, max_p_picture_l0_reference_count: u32, @@ -40426,6 +43117,7 @@ impl<'a> VideoEncodeH265CapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_b_picture_l0_reference_count( mut self, max_b_picture_l0_reference_count: u32, @@ -40434,16 +43126,19 @@ impl<'a> VideoEncodeH265CapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_l1_reference_count(mut self, max_l1_reference_count: u32) -> Self { self.max_l1_reference_count = max_l1_reference_count; self } #[inline] + #[must_use] pub fn max_sub_layer_count(mut self, max_sub_layer_count: u32) -> Self { self.max_sub_layer_count = max_sub_layer_count; self } #[inline] + #[must_use] pub fn expect_dyadic_temporal_sub_layer_pattern( mut self, expect_dyadic_temporal_sub_layer_pattern: bool, @@ -40453,26 +43148,31 @@ impl<'a> VideoEncodeH265CapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn min_qp(mut self, min_qp: i32) -> Self { self.min_qp = min_qp; self } #[inline] + #[must_use] pub fn max_qp(mut self, max_qp: i32) -> Self { self.max_qp = max_qp; self } #[inline] + #[must_use] pub fn prefers_gop_remaining_frames(mut self, prefers_gop_remaining_frames: bool) -> Self { self.prefers_gop_remaining_frames = prefers_gop_remaining_frames.into(); self } #[inline] + #[must_use] pub fn requires_gop_remaining_frames(mut self, requires_gop_remaining_frames: bool) -> Self { self.requires_gop_remaining_frames = requires_gop_remaining_frames.into(); self } #[inline] + #[must_use] pub fn std_syntax_flags(mut self, std_syntax_flags: VideoEncodeH265StdFlagsEXT) -> Self { self.std_syntax_flags = std_syntax_flags; self @@ -40523,6 +43223,7 @@ unsafe impl ExtendsVideoEncodeQualityLevelPropertiesKHR } impl<'a> VideoEncodeH265QualityLevelPropertiesEXT<'a> { #[inline] + #[must_use] pub fn preferred_rate_control_flags( mut self, preferred_rate_control_flags: VideoEncodeH265RateControlFlagsEXT, @@ -40531,16 +43232,19 @@ impl<'a> VideoEncodeH265QualityLevelPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn preferred_gop_frame_count(mut self, preferred_gop_frame_count: u32) -> Self { self.preferred_gop_frame_count = preferred_gop_frame_count; self } #[inline] + #[must_use] pub fn preferred_idr_period(mut self, preferred_idr_period: u32) -> Self { self.preferred_idr_period = preferred_idr_period; self } #[inline] + #[must_use] pub fn preferred_consecutive_b_frame_count( mut self, preferred_consecutive_b_frame_count: u32, @@ -40549,16 +43253,19 @@ impl<'a> VideoEncodeH265QualityLevelPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn preferred_sub_layer_count(mut self, preferred_sub_layer_count: u32) -> Self { self.preferred_sub_layer_count = preferred_sub_layer_count; self } #[inline] + #[must_use] pub fn preferred_constant_qp(mut self, preferred_constant_qp: VideoEncodeH265QpEXT) -> Self { self.preferred_constant_qp = preferred_constant_qp; self } #[inline] + #[must_use] pub fn preferred_max_l0_reference_count( mut self, preferred_max_l0_reference_count: u32, @@ -40567,6 +43274,7 @@ impl<'a> VideoEncodeH265QualityLevelPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn preferred_max_l1_reference_count( mut self, preferred_max_l1_reference_count: u32, @@ -40604,11 +43312,13 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH265SessionCreateInfoEXT<'a> { unsafe impl ExtendsVideoSessionCreateInfoKHR for VideoEncodeH265SessionCreateInfoEXT<'_> {} impl<'a> VideoEncodeH265SessionCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn use_max_level_idc(mut self, use_max_level_idc: bool) -> Self { self.use_max_level_idc = use_max_level_idc.into(); self } #[inline] + #[must_use] pub fn max_level_idc(mut self, max_level_idc: StdVideoH265LevelIdc) -> Self { self.max_level_idc = max_level_idc; self @@ -40655,18 +43365,21 @@ unsafe impl ExtendsVideoSessionParametersUpdateInfoKHR } impl<'a> VideoEncodeH265SessionParametersAddInfoEXT<'a> { #[inline] + #[must_use] pub fn std_vp_ss(mut self, std_vp_ss: &'a [StdVideoH265VideoParameterSet]) -> Self { self.std_vps_count = std_vp_ss.len() as _; self.p_std_vp_ss = std_vp_ss.as_ptr(); self } #[inline] + #[must_use] pub fn std_sp_ss(mut self, std_sp_ss: &'a [StdVideoH265SequenceParameterSet]) -> Self { self.std_sps_count = std_sp_ss.len() as _; self.p_std_sp_ss = std_sp_ss.as_ptr(); self } #[inline] + #[must_use] pub fn std_pp_ss(mut self, std_pp_ss: &'a [StdVideoH265PictureParameterSet]) -> Self { self.std_pps_count = std_pp_ss.len() as _; self.p_std_pp_ss = std_pp_ss.as_ptr(); @@ -40710,21 +43423,25 @@ unsafe impl ExtendsVideoSessionParametersCreateInfoKHR } impl<'a> VideoEncodeH265SessionParametersCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn max_std_vps_count(mut self, max_std_vps_count: u32) -> Self { self.max_std_vps_count = max_std_vps_count; self } #[inline] + #[must_use] pub fn max_std_sps_count(mut self, max_std_sps_count: u32) -> Self { self.max_std_sps_count = max_std_sps_count; self } #[inline] + #[must_use] pub fn max_std_pps_count(mut self, max_std_pps_count: u32) -> Self { self.max_std_pps_count = max_std_pps_count; self } #[inline] + #[must_use] pub fn parameters_add_info( mut self, parameters_add_info: &'a VideoEncodeH265SessionParametersAddInfoEXT<'a>, @@ -40774,31 +43491,37 @@ unsafe impl ExtendsVideoEncodeSessionParametersGetInfoKHR } impl<'a> VideoEncodeH265SessionParametersGetInfoEXT<'a> { #[inline] + #[must_use] pub fn write_std_vps(mut self, write_std_vps: bool) -> Self { self.write_std_vps = write_std_vps.into(); self } #[inline] + #[must_use] pub fn write_std_sps(mut self, write_std_sps: bool) -> Self { self.write_std_sps = write_std_sps.into(); self } #[inline] + #[must_use] pub fn write_std_pps(mut self, write_std_pps: bool) -> Self { self.write_std_pps = write_std_pps.into(); self } #[inline] + #[must_use] pub fn std_vps_id(mut self, std_vps_id: u32) -> Self { self.std_vps_id = std_vps_id; self } #[inline] + #[must_use] pub fn std_sps_id(mut self, std_sps_id: u32) -> Self { self.std_sps_id = std_sps_id; self } #[inline] + #[must_use] pub fn std_pps_id(mut self, std_pps_id: u32) -> Self { self.std_pps_id = std_pps_id; self @@ -40839,16 +43562,19 @@ unsafe impl ExtendsVideoEncodeSessionParametersFeedbackInfoKHR } impl<'a> VideoEncodeH265SessionParametersFeedbackInfoEXT<'a> { #[inline] + #[must_use] pub fn has_std_vps_overrides(mut self, has_std_vps_overrides: bool) -> Self { self.has_std_vps_overrides = has_std_vps_overrides.into(); self } #[inline] + #[must_use] pub fn has_std_sps_overrides(mut self, has_std_sps_overrides: bool) -> Self { self.has_std_sps_overrides = has_std_sps_overrides.into(); self } #[inline] + #[must_use] pub fn has_std_pps_overrides(mut self, has_std_pps_overrides: bool) -> Self { self.has_std_pps_overrides = has_std_pps_overrides.into(); self @@ -40885,6 +43611,7 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH265PictureInfoEXT<'a> { unsafe impl ExtendsVideoEncodeInfoKHR for VideoEncodeH265PictureInfoEXT<'_> {} impl<'a> VideoEncodeH265PictureInfoEXT<'a> { #[inline] + #[must_use] pub fn nalu_slice_segment_entries( mut self, nalu_slice_segment_entries: &'a [VideoEncodeH265NaluSliceSegmentInfoEXT<'a>], @@ -40894,6 +43621,7 @@ impl<'a> VideoEncodeH265PictureInfoEXT<'a> { self } #[inline] + #[must_use] pub fn std_picture_info(mut self, std_picture_info: &'a StdVideoEncodeH265PictureInfo) -> Self { self.p_std_picture_info = std_picture_info; self @@ -40928,11 +43656,13 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH265NaluSliceSegmentInfoEXT<'a> { } impl<'a> VideoEncodeH265NaluSliceSegmentInfoEXT<'a> { #[inline] + #[must_use] pub fn constant_qp(mut self, constant_qp: i32) -> Self { self.constant_qp = constant_qp; self } #[inline] + #[must_use] pub fn std_slice_segment_header( mut self, std_slice_segment_header: &'a StdVideoEncodeH265SliceSegmentHeader, @@ -40977,26 +43707,31 @@ unsafe impl ExtendsVideoCodingControlInfoKHR for VideoEncodeH265RateControlInfoE unsafe impl ExtendsVideoBeginCodingInfoKHR for VideoEncodeH265RateControlInfoEXT<'_> {} impl<'a> VideoEncodeH265RateControlInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: VideoEncodeH265RateControlFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn gop_frame_count(mut self, gop_frame_count: u32) -> Self { self.gop_frame_count = gop_frame_count; self } #[inline] + #[must_use] pub fn idr_period(mut self, idr_period: u32) -> Self { self.idr_period = idr_period; self } #[inline] + #[must_use] pub fn consecutive_b_frame_count(mut self, consecutive_b_frame_count: u32) -> Self { self.consecutive_b_frame_count = consecutive_b_frame_count; self } #[inline] + #[must_use] pub fn sub_layer_count(mut self, sub_layer_count: u32) -> Self { self.sub_layer_count = sub_layer_count; self @@ -41013,16 +43748,19 @@ pub struct VideoEncodeH265QpEXT { } impl VideoEncodeH265QpEXT { #[inline] + #[must_use] pub fn qp_i(mut self, qp_i: i32) -> Self { self.qp_i = qp_i; self } #[inline] + #[must_use] pub fn qp_p(mut self, qp_p: i32) -> Self { self.qp_p = qp_p; self } #[inline] + #[must_use] pub fn qp_b(mut self, qp_b: i32) -> Self { self.qp_b = qp_b; self @@ -41039,16 +43777,19 @@ pub struct VideoEncodeH265FrameSizeEXT { } impl VideoEncodeH265FrameSizeEXT { #[inline] + #[must_use] pub fn frame_i_size(mut self, frame_i_size: u32) -> Self { self.frame_i_size = frame_i_size; self } #[inline] + #[must_use] pub fn frame_p_size(mut self, frame_p_size: u32) -> Self { self.frame_p_size = frame_p_size; self } #[inline] + #[must_use] pub fn frame_b_size(mut self, frame_b_size: u32) -> Self { self.frame_b_size = frame_b_size; self @@ -41088,21 +43829,25 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH265GopRemainingFrameInfoEXT<'a> unsafe impl ExtendsVideoBeginCodingInfoKHR for VideoEncodeH265GopRemainingFrameInfoEXT<'_> {} impl<'a> VideoEncodeH265GopRemainingFrameInfoEXT<'a> { #[inline] + #[must_use] pub fn use_gop_remaining_frames(mut self, use_gop_remaining_frames: bool) -> Self { self.use_gop_remaining_frames = use_gop_remaining_frames.into(); self } #[inline] + #[must_use] pub fn gop_remaining_i(mut self, gop_remaining_i: u32) -> Self { self.gop_remaining_i = gop_remaining_i; self } #[inline] + #[must_use] pub fn gop_remaining_p(mut self, gop_remaining_p: u32) -> Self { self.gop_remaining_p = gop_remaining_p; self } #[inline] + #[must_use] pub fn gop_remaining_b(mut self, gop_remaining_b: u32) -> Self { self.gop_remaining_b = gop_remaining_b; self @@ -41149,31 +43894,37 @@ unsafe impl ExtendsVideoEncodeRateControlLayerInfoKHR } impl<'a> VideoEncodeH265RateControlLayerInfoEXT<'a> { #[inline] + #[must_use] pub fn use_min_qp(mut self, use_min_qp: bool) -> Self { self.use_min_qp = use_min_qp.into(); self } #[inline] + #[must_use] pub fn min_qp(mut self, min_qp: VideoEncodeH265QpEXT) -> Self { self.min_qp = min_qp; self } #[inline] + #[must_use] pub fn use_max_qp(mut self, use_max_qp: bool) -> Self { self.use_max_qp = use_max_qp.into(); self } #[inline] + #[must_use] pub fn max_qp(mut self, max_qp: VideoEncodeH265QpEXT) -> Self { self.max_qp = max_qp; self } #[inline] + #[must_use] pub fn use_max_frame_size(mut self, use_max_frame_size: bool) -> Self { self.use_max_frame_size = use_max_frame_size.into(); self } #[inline] + #[must_use] pub fn max_frame_size(mut self, max_frame_size: VideoEncodeH265FrameSizeEXT) -> Self { self.max_frame_size = max_frame_size; self @@ -41207,6 +43958,7 @@ unsafe impl ExtendsVideoProfileInfoKHR for VideoEncodeH265ProfileInfoEXT<'_> {} unsafe impl ExtendsQueryPoolCreateInfo for VideoEncodeH265ProfileInfoEXT<'_> {} impl<'a> VideoEncodeH265ProfileInfoEXT<'a> { #[inline] + #[must_use] pub fn std_profile_idc(mut self, std_profile_idc: StdVideoH265ProfileIdc) -> Self { self.std_profile_idc = std_profile_idc; self @@ -41239,6 +43991,7 @@ unsafe impl<'a> TaggedStructure for VideoEncodeH265DpbSlotInfoEXT<'a> { unsafe impl ExtendsVideoReferenceSlotInfoKHR for VideoEncodeH265DpbSlotInfoEXT<'_> {} impl<'a> VideoEncodeH265DpbSlotInfoEXT<'a> { #[inline] + #[must_use] pub fn std_reference_info( mut self, std_reference_info: &'a StdVideoEncodeH265ReferenceInfo, @@ -41279,6 +44032,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceInheritedViewportScissorFeaturesNV<'_> {} impl<'a> PhysicalDeviceInheritedViewportScissorFeaturesNV<'a> { #[inline] + #[must_use] pub fn inherited_viewport_scissor2_d(mut self, inherited_viewport_scissor2_d: bool) -> Self { self.inherited_viewport_scissor2_d = inherited_viewport_scissor2_d.into(); self @@ -41319,16 +44073,19 @@ unsafe impl ExtendsCommandBufferInheritanceInfo } impl<'a> CommandBufferInheritanceViewportScissorInfoNV<'a> { #[inline] + #[must_use] pub fn viewport_scissor2_d(mut self, viewport_scissor2_d: bool) -> Self { self.viewport_scissor2_d = viewport_scissor2_d.into(); self } #[inline] + #[must_use] pub fn viewport_depth_count(mut self, viewport_depth_count: u32) -> Self { self.viewport_depth_count = viewport_depth_count; self } #[inline] + #[must_use] pub fn viewport_depths(mut self, viewport_depths: &'a Viewport) -> Self { self.p_viewport_depths = viewport_depths; self @@ -41363,6 +44120,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceYcbcr2Plane444Forma unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT<'_> {} impl<'a> PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT<'a> { #[inline] + #[must_use] pub fn ycbcr2plane444_formats(mut self, ycbcr2plane444_formats: bool) -> Self { self.ycbcr2plane444_formats = ycbcr2plane444_formats.into(); self @@ -41399,11 +44157,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceProvokingVertexFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceProvokingVertexFeaturesEXT<'_> {} impl<'a> PhysicalDeviceProvokingVertexFeaturesEXT<'a> { #[inline] + #[must_use] pub fn provoking_vertex_last(mut self, provoking_vertex_last: bool) -> Self { self.provoking_vertex_last = provoking_vertex_last.into(); self } #[inline] + #[must_use] pub fn transform_feedback_preserves_provoking_vertex( mut self, transform_feedback_preserves_provoking_vertex: bool, @@ -41443,6 +44203,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceProvokingVertexPropertiesEXT<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceProvokingVertexPropertiesEXT<'_> {} impl<'a> PhysicalDeviceProvokingVertexPropertiesEXT<'a> { #[inline] + #[must_use] pub fn provoking_vertex_mode_per_pipeline( mut self, provoking_vertex_mode_per_pipeline: bool, @@ -41451,6 +44212,7 @@ impl<'a> PhysicalDeviceProvokingVertexPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn transform_feedback_preserves_triangle_fan_provoking_vertex( mut self, transform_feedback_preserves_triangle_fan_provoking_vertex: bool, @@ -41491,6 +44253,7 @@ unsafe impl ExtendsPipelineRasterizationStateCreateInfo } impl<'a> PipelineRasterizationProvokingVertexStateCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn provoking_vertex_mode(mut self, provoking_vertex_mode: ProvokingVertexModeEXT) -> Self { self.provoking_vertex_mode = provoking_vertex_mode; self @@ -41524,6 +44287,7 @@ unsafe impl<'a> TaggedStructure for CuModuleCreateInfoNVX<'a> { } impl<'a> CuModuleCreateInfoNVX<'a> { #[inline] + #[must_use] pub fn data(mut self, data: &'a [u8]) -> Self { self.data_size = data.len(); self.p_data = data.as_ptr().cast(); @@ -41558,16 +44322,19 @@ unsafe impl<'a> TaggedStructure for CuFunctionCreateInfoNVX<'a> { } impl<'a> CuFunctionCreateInfoNVX<'a> { #[inline] + #[must_use] pub fn module(mut self, module: CuModuleNVX) -> Self { self.module = module; self } #[inline] + #[must_use] pub fn name(mut self, name: &'a core::ffi::CStr) -> Self { self.p_name = name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_name) } @@ -41620,52 +44387,62 @@ unsafe impl<'a> TaggedStructure for CuLaunchInfoNVX<'a> { } impl<'a> CuLaunchInfoNVX<'a> { #[inline] + #[must_use] pub fn function(mut self, function: CuFunctionNVX) -> Self { self.function = function; self } #[inline] + #[must_use] pub fn grid_dim_x(mut self, grid_dim_x: u32) -> Self { self.grid_dim_x = grid_dim_x; self } #[inline] + #[must_use] pub fn grid_dim_y(mut self, grid_dim_y: u32) -> Self { self.grid_dim_y = grid_dim_y; self } #[inline] + #[must_use] pub fn grid_dim_z(mut self, grid_dim_z: u32) -> Self { self.grid_dim_z = grid_dim_z; self } #[inline] + #[must_use] pub fn block_dim_x(mut self, block_dim_x: u32) -> Self { self.block_dim_x = block_dim_x; self } #[inline] + #[must_use] pub fn block_dim_y(mut self, block_dim_y: u32) -> Self { self.block_dim_y = block_dim_y; self } #[inline] + #[must_use] pub fn block_dim_z(mut self, block_dim_z: u32) -> Self { self.block_dim_z = block_dim_z; self } #[inline] + #[must_use] pub fn shared_mem_bytes(mut self, shared_mem_bytes: u32) -> Self { self.shared_mem_bytes = shared_mem_bytes; self } #[inline] + #[must_use] pub fn params(mut self, params: &'a [*const c_void]) -> Self { self.param_count = params.len(); self.p_params = params.as_ptr(); self } #[inline] + #[must_use] pub fn extras(mut self, extras: &'a [*const c_void]) -> Self { self.extra_count = extras.len(); self.p_extras = extras.as_ptr(); @@ -41707,11 +44484,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDescriptorBufferFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDescriptorBufferFeaturesEXT<'_> {} impl<'a> PhysicalDeviceDescriptorBufferFeaturesEXT<'a> { #[inline] + #[must_use] pub fn descriptor_buffer(mut self, descriptor_buffer: bool) -> Self { self.descriptor_buffer = descriptor_buffer.into(); self } #[inline] + #[must_use] pub fn descriptor_buffer_capture_replay( mut self, descriptor_buffer_capture_replay: bool, @@ -41720,6 +44499,7 @@ impl<'a> PhysicalDeviceDescriptorBufferFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn descriptor_buffer_image_layout_ignored( mut self, descriptor_buffer_image_layout_ignored: bool, @@ -41728,6 +44508,7 @@ impl<'a> PhysicalDeviceDescriptorBufferFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn descriptor_buffer_push_descriptors( mut self, descriptor_buffer_push_descriptors: bool, @@ -41828,6 +44609,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceDescriptorBufferPropertiesEXT< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceDescriptorBufferPropertiesEXT<'_> {} impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { #[inline] + #[must_use] pub fn combined_image_sampler_descriptor_single_array( mut self, combined_image_sampler_descriptor_single_array: bool, @@ -41837,11 +44619,13 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn bufferless_push_descriptors(mut self, bufferless_push_descriptors: bool) -> Self { self.bufferless_push_descriptors = bufferless_push_descriptors.into(); self } #[inline] + #[must_use] pub fn allow_sampler_image_view_post_submit_creation( mut self, allow_sampler_image_view_post_submit_creation: bool, @@ -41851,6 +44635,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn descriptor_buffer_offset_alignment( mut self, descriptor_buffer_offset_alignment: DeviceSize, @@ -41859,11 +44644,13 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_descriptor_buffer_bindings(mut self, max_descriptor_buffer_bindings: u32) -> Self { self.max_descriptor_buffer_bindings = max_descriptor_buffer_bindings; self } #[inline] + #[must_use] pub fn max_resource_descriptor_buffer_bindings( mut self, max_resource_descriptor_buffer_bindings: u32, @@ -41872,6 +44659,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_sampler_descriptor_buffer_bindings( mut self, max_sampler_descriptor_buffer_bindings: u32, @@ -41880,6 +44668,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_embedded_immutable_sampler_bindings( mut self, max_embedded_immutable_sampler_bindings: u32, @@ -41888,11 +44677,13 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_embedded_immutable_samplers(mut self, max_embedded_immutable_samplers: u32) -> Self { self.max_embedded_immutable_samplers = max_embedded_immutable_samplers; self } #[inline] + #[must_use] pub fn buffer_capture_replay_descriptor_data_size( mut self, buffer_capture_replay_descriptor_data_size: usize, @@ -41902,6 +44693,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn image_capture_replay_descriptor_data_size( mut self, image_capture_replay_descriptor_data_size: usize, @@ -41910,6 +44702,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn image_view_capture_replay_descriptor_data_size( mut self, image_view_capture_replay_descriptor_data_size: usize, @@ -41919,6 +44712,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn sampler_capture_replay_descriptor_data_size( mut self, sampler_capture_replay_descriptor_data_size: usize, @@ -41928,6 +44722,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn acceleration_structure_capture_replay_descriptor_data_size( mut self, acceleration_structure_capture_replay_descriptor_data_size: usize, @@ -41937,11 +44732,13 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn sampler_descriptor_size(mut self, sampler_descriptor_size: usize) -> Self { self.sampler_descriptor_size = sampler_descriptor_size; self } #[inline] + #[must_use] pub fn combined_image_sampler_descriptor_size( mut self, combined_image_sampler_descriptor_size: usize, @@ -41950,16 +44747,19 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn sampled_image_descriptor_size(mut self, sampled_image_descriptor_size: usize) -> Self { self.sampled_image_descriptor_size = sampled_image_descriptor_size; self } #[inline] + #[must_use] pub fn storage_image_descriptor_size(mut self, storage_image_descriptor_size: usize) -> Self { self.storage_image_descriptor_size = storage_image_descriptor_size; self } #[inline] + #[must_use] pub fn uniform_texel_buffer_descriptor_size( mut self, uniform_texel_buffer_descriptor_size: usize, @@ -41968,6 +44768,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn robust_uniform_texel_buffer_descriptor_size( mut self, robust_uniform_texel_buffer_descriptor_size: usize, @@ -41977,6 +44778,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn storage_texel_buffer_descriptor_size( mut self, storage_texel_buffer_descriptor_size: usize, @@ -41985,6 +44787,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn robust_storage_texel_buffer_descriptor_size( mut self, robust_storage_texel_buffer_descriptor_size: usize, @@ -41994,11 +44797,13 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn uniform_buffer_descriptor_size(mut self, uniform_buffer_descriptor_size: usize) -> Self { self.uniform_buffer_descriptor_size = uniform_buffer_descriptor_size; self } #[inline] + #[must_use] pub fn robust_uniform_buffer_descriptor_size( mut self, robust_uniform_buffer_descriptor_size: usize, @@ -42007,11 +44812,13 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn storage_buffer_descriptor_size(mut self, storage_buffer_descriptor_size: usize) -> Self { self.storage_buffer_descriptor_size = storage_buffer_descriptor_size; self } #[inline] + #[must_use] pub fn robust_storage_buffer_descriptor_size( mut self, robust_storage_buffer_descriptor_size: usize, @@ -42020,6 +44827,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn input_attachment_descriptor_size( mut self, input_attachment_descriptor_size: usize, @@ -42028,6 +44836,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn acceleration_structure_descriptor_size( mut self, acceleration_structure_descriptor_size: usize, @@ -42036,6 +44845,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_sampler_descriptor_buffer_range( mut self, max_sampler_descriptor_buffer_range: DeviceSize, @@ -42044,6 +44854,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_resource_descriptor_buffer_range( mut self, max_resource_descriptor_buffer_range: DeviceSize, @@ -42052,6 +44863,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn sampler_descriptor_buffer_address_space_size( mut self, sampler_descriptor_buffer_address_space_size: DeviceSize, @@ -42061,6 +44873,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn resource_descriptor_buffer_address_space_size( mut self, resource_descriptor_buffer_address_space_size: DeviceSize, @@ -42070,6 +44883,7 @@ impl<'a> PhysicalDeviceDescriptorBufferPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn descriptor_buffer_address_space_size( mut self, descriptor_buffer_address_space_size: DeviceSize, @@ -42109,6 +44923,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT<'a> { #[inline] + #[must_use] pub fn combined_image_sampler_density_map_descriptor_size( mut self, combined_image_sampler_density_map_descriptor_size: usize, @@ -42148,16 +44963,19 @@ unsafe impl<'a> TaggedStructure for DescriptorAddressInfoEXT<'a> { } impl<'a> DescriptorAddressInfoEXT<'a> { #[inline] + #[must_use] pub fn address(mut self, address: DeviceAddress) -> Self { self.address = address; self } #[inline] + #[must_use] pub fn range(mut self, range: DeviceSize) -> Self { self.range = range; self } #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self @@ -42192,15 +45010,18 @@ unsafe impl<'a> TaggedStructure for DescriptorBufferBindingInfoEXT<'a> { pub unsafe trait ExtendsDescriptorBufferBindingInfoEXT {} impl<'a> DescriptorBufferBindingInfoEXT<'a> { #[inline] + #[must_use] pub fn address(mut self, address: DeviceAddress) -> Self { self.address = address; self } #[inline] + #[must_use] pub fn usage(mut self, usage: BufferUsageFlags) -> Self { self.usage = usage; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -42247,6 +45068,7 @@ unsafe impl ExtendsDescriptorBufferBindingInfoEXT } impl<'a> DescriptorBufferBindingPushDescriptorBufferHandleEXT<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self @@ -42311,11 +45133,13 @@ unsafe impl<'a> TaggedStructure for DescriptorGetInfoEXT<'a> { } impl<'a> DescriptorGetInfoEXT<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: DescriptorType) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn data(mut self, data: DescriptorDataEXT<'a>) -> Self { self.data = data; self @@ -42347,6 +45171,7 @@ unsafe impl<'a> TaggedStructure for BufferCaptureDescriptorDataInfoEXT<'a> { } impl<'a> BufferCaptureDescriptorDataInfoEXT<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self @@ -42378,6 +45203,7 @@ unsafe impl<'a> TaggedStructure for ImageCaptureDescriptorDataInfoEXT<'a> { } impl<'a> ImageCaptureDescriptorDataInfoEXT<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self @@ -42410,6 +45236,7 @@ unsafe impl<'a> TaggedStructure for ImageViewCaptureDescriptorDataInfoEXT<'a> { } impl<'a> ImageViewCaptureDescriptorDataInfoEXT<'a> { #[inline] + #[must_use] pub fn image_view(mut self, image_view: ImageView) -> Self { self.image_view = image_view; self @@ -42441,6 +45268,7 @@ unsafe impl<'a> TaggedStructure for SamplerCaptureDescriptorDataInfoEXT<'a> { } impl<'a> SamplerCaptureDescriptorDataInfoEXT<'a> { #[inline] + #[must_use] pub fn sampler(mut self, sampler: Sampler) -> Self { self.sampler = sampler; self @@ -42475,6 +45303,7 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureCaptureDescriptorDataIn } impl<'a> AccelerationStructureCaptureDescriptorDataInfoEXT<'a> { #[inline] + #[must_use] pub fn acceleration_structure( mut self, acceleration_structure: AccelerationStructureKHR, @@ -42483,6 +45312,7 @@ impl<'a> AccelerationStructureCaptureDescriptorDataInfoEXT<'a> { self } #[inline] + #[must_use] pub fn acceleration_structure_nv( mut self, acceleration_structure_nv: AccelerationStructureNV, @@ -42530,6 +45360,7 @@ unsafe impl ExtendsAccelerationStructureCreateInfoNV } impl<'a> OpaqueCaptureDescriptorDataCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn opaque_capture_descriptor_data( mut self, opaque_capture_descriptor_data: *const c_void, @@ -42567,6 +45398,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderIntegerDotPro unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderIntegerDotProductFeatures<'_> {} impl<'a> PhysicalDeviceShaderIntegerDotProductFeatures<'a> { #[inline] + #[must_use] pub fn shader_integer_dot_product(mut self, shader_integer_dot_product: bool) -> Self { self.shader_integer_dot_product = shader_integer_dot_product.into(); self @@ -42628,6 +45460,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { #[inline] + #[must_use] pub fn integer_dot_product8_bit_unsigned_accelerated( mut self, integer_dot_product8_bit_unsigned_accelerated: bool, @@ -42637,6 +45470,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product8_bit_signed_accelerated( mut self, integer_dot_product8_bit_signed_accelerated: bool, @@ -42646,6 +45480,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product8_bit_mixed_signedness_accelerated( mut self, integer_dot_product8_bit_mixed_signedness_accelerated: bool, @@ -42655,6 +45490,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product4x8_bit_packed_unsigned_accelerated( mut self, integer_dot_product4x8_bit_packed_unsigned_accelerated: bool, @@ -42664,6 +45500,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product4x8_bit_packed_signed_accelerated( mut self, integer_dot_product4x8_bit_packed_signed_accelerated: bool, @@ -42673,6 +45510,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product4x8_bit_packed_mixed_signedness_accelerated( mut self, integer_dot_product4x8_bit_packed_mixed_signedness_accelerated: bool, @@ -42682,6 +45520,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product16_bit_unsigned_accelerated( mut self, integer_dot_product16_bit_unsigned_accelerated: bool, @@ -42691,6 +45530,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product16_bit_signed_accelerated( mut self, integer_dot_product16_bit_signed_accelerated: bool, @@ -42700,6 +45540,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product16_bit_mixed_signedness_accelerated( mut self, integer_dot_product16_bit_mixed_signedness_accelerated: bool, @@ -42709,6 +45550,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product32_bit_unsigned_accelerated( mut self, integer_dot_product32_bit_unsigned_accelerated: bool, @@ -42718,6 +45560,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product32_bit_signed_accelerated( mut self, integer_dot_product32_bit_signed_accelerated: bool, @@ -42727,6 +45570,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product32_bit_mixed_signedness_accelerated( mut self, integer_dot_product32_bit_mixed_signedness_accelerated: bool, @@ -42736,6 +45580,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product64_bit_unsigned_accelerated( mut self, integer_dot_product64_bit_unsigned_accelerated: bool, @@ -42745,6 +45590,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product64_bit_signed_accelerated( mut self, integer_dot_product64_bit_signed_accelerated: bool, @@ -42754,6 +45600,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product64_bit_mixed_signedness_accelerated( mut self, integer_dot_product64_bit_mixed_signedness_accelerated: bool, @@ -42763,6 +45610,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating8_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating8_bit_unsigned_accelerated: bool, @@ -42772,6 +45620,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating8_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating8_bit_signed_accelerated: bool, @@ -42781,6 +45630,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating8_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating8_bit_mixed_signedness_accelerated: bool, @@ -42790,6 +45640,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating4x8_bit_packed_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating4x8_bit_packed_unsigned_accelerated: bool, @@ -42799,6 +45650,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating4x8_bit_packed_signed_accelerated( mut self, integer_dot_product_accumulating_saturating4x8_bit_packed_signed_accelerated: bool, @@ -42808,6 +45660,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating4x8_bit_packed_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating4x8_bit_packed_mixed_signedness_accelerated : bool, @@ -42816,6 +45669,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating16_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating16_bit_unsigned_accelerated: bool, @@ -42825,6 +45679,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating16_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating16_bit_signed_accelerated: bool, @@ -42834,6 +45689,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating16_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating16_bit_mixed_signedness_accelerated: bool, @@ -42843,6 +45699,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating32_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating32_bit_unsigned_accelerated: bool, @@ -42852,6 +45709,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating32_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating32_bit_signed_accelerated: bool, @@ -42861,6 +45719,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating32_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating32_bit_mixed_signedness_accelerated: bool, @@ -42870,6 +45729,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating64_bit_unsigned_accelerated( mut self, integer_dot_product_accumulating_saturating64_bit_unsigned_accelerated: bool, @@ -42879,6 +45739,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating64_bit_signed_accelerated( mut self, integer_dot_product_accumulating_saturating64_bit_signed_accelerated: bool, @@ -42888,6 +45749,7 @@ impl<'a> PhysicalDeviceShaderIntegerDotProductProperties<'a> { self } #[inline] + #[must_use] pub fn integer_dot_product_accumulating_saturating64_bit_mixed_signedness_accelerated( mut self, integer_dot_product_accumulating_saturating64_bit_mixed_signedness_accelerated: bool, @@ -42934,31 +45796,37 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceDrmPropertiesEXT<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceDrmPropertiesEXT<'_> {} impl<'a> PhysicalDeviceDrmPropertiesEXT<'a> { #[inline] + #[must_use] pub fn has_primary(mut self, has_primary: bool) -> Self { self.has_primary = has_primary.into(); self } #[inline] + #[must_use] pub fn has_render(mut self, has_render: bool) -> Self { self.has_render = has_render.into(); self } #[inline] + #[must_use] pub fn primary_major(mut self, primary_major: i64) -> Self { self.primary_major = primary_major; self } #[inline] + #[must_use] pub fn primary_minor(mut self, primary_minor: i64) -> Self { self.primary_minor = primary_minor; self } #[inline] + #[must_use] pub fn render_major(mut self, render_major: i64) -> Self { self.render_major = render_major; self } #[inline] + #[must_use] pub fn render_minor(mut self, render_minor: i64) -> Self { self.render_minor = render_minor; self @@ -42996,6 +45864,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFragmentShaderBarycentricFeaturesKHR<'_> {} impl<'a> PhysicalDeviceFragmentShaderBarycentricFeaturesKHR<'a> { #[inline] + #[must_use] pub fn fragment_shader_barycentric(mut self, fragment_shader_barycentric: bool) -> Self { self.fragment_shader_barycentric = fragment_shader_barycentric.into(); self @@ -43032,6 +45901,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceFragmentShaderBarycentricPropertiesKHR<'a> { #[inline] + #[must_use] pub fn tri_strip_vertex_order_independent_of_provoking_vertex( mut self, tri_strip_vertex_order_independent_of_provoking_vertex: bool, @@ -43072,11 +45942,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceRayTracingMotionBlu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRayTracingMotionBlurFeaturesNV<'_> {} impl<'a> PhysicalDeviceRayTracingMotionBlurFeaturesNV<'a> { #[inline] + #[must_use] pub fn ray_tracing_motion_blur(mut self, ray_tracing_motion_blur: bool) -> Self { self.ray_tracing_motion_blur = ray_tracing_motion_blur.into(); self } #[inline] + #[must_use] pub fn ray_tracing_motion_blur_pipeline_trace_rays_indirect( mut self, ray_tracing_motion_blur_pipeline_trace_rays_indirect: bool, @@ -43126,6 +45998,7 @@ unsafe impl ExtendsAccelerationStructureGeometryTrianglesDataKHR } impl<'a> AccelerationStructureGeometryMotionTrianglesDataNV<'a> { #[inline] + #[must_use] pub fn vertex_data(mut self, vertex_data: DeviceOrHostAddressConstKHR) -> Self { self.vertex_data = vertex_data; self @@ -43160,11 +46033,13 @@ unsafe impl<'a> TaggedStructure for AccelerationStructureMotionInfoNV<'a> { unsafe impl ExtendsAccelerationStructureCreateInfoKHR for AccelerationStructureMotionInfoNV<'_> {} impl<'a> AccelerationStructureMotionInfoNV<'a> { #[inline] + #[must_use] pub fn max_instances(mut self, max_instances: u32) -> Self { self.max_instances = max_instances; self } #[inline] + #[must_use] pub fn flags(mut self, flags: AccelerationStructureMotionInfoFlagsNV) -> Self { self.flags = flags; self @@ -43194,81 +46069,97 @@ pub struct SRTDataNV { } impl SRTDataNV { #[inline] + #[must_use] pub fn sx(mut self, sx: f32) -> Self { self.sx = sx; self } #[inline] + #[must_use] pub fn a(mut self, a: f32) -> Self { self.a = a; self } #[inline] + #[must_use] pub fn b(mut self, b: f32) -> Self { self.b = b; self } #[inline] + #[must_use] pub fn pvx(mut self, pvx: f32) -> Self { self.pvx = pvx; self } #[inline] + #[must_use] pub fn sy(mut self, sy: f32) -> Self { self.sy = sy; self } #[inline] + #[must_use] pub fn c(mut self, c: f32) -> Self { self.c = c; self } #[inline] + #[must_use] pub fn pvy(mut self, pvy: f32) -> Self { self.pvy = pvy; self } #[inline] + #[must_use] pub fn sz(mut self, sz: f32) -> Self { self.sz = sz; self } #[inline] + #[must_use] pub fn pvz(mut self, pvz: f32) -> Self { self.pvz = pvz; self } #[inline] + #[must_use] pub fn qx(mut self, qx: f32) -> Self { self.qx = qx; self } #[inline] + #[must_use] pub fn qy(mut self, qy: f32) -> Self { self.qy = qy; self } #[inline] + #[must_use] pub fn qz(mut self, qz: f32) -> Self { self.qz = qz; self } #[inline] + #[must_use] pub fn qw(mut self, qw: f32) -> Self { self.qw = qw; self } #[inline] + #[must_use] pub fn tx(mut self, tx: f32) -> Self { self.tx = tx; self } #[inline] + #[must_use] pub fn ty(mut self, ty: f32) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn tz(mut self, tz: f32) -> Self { self.tz = tz; self @@ -43332,16 +46223,19 @@ impl fmt::Debug for AccelerationStructureMotionInstanceNV { } impl AccelerationStructureMotionInstanceNV { #[inline] + #[must_use] pub fn ty(mut self, ty: AccelerationStructureMotionInstanceTypeNV) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn flags(mut self, flags: AccelerationStructureMotionInstanceFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn data(mut self, data: AccelerationStructureMotionInstanceDataNV) -> Self { self.data = data; self @@ -43377,11 +46271,13 @@ unsafe impl<'a> TaggedStructure for MemoryGetRemoteAddressInfoNV<'a> { } impl<'a> MemoryGetRemoteAddressInfoNV<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn handle_type(mut self, handle_type: ExternalMemoryHandleTypeFlags) -> Self { self.handle_type = handle_type; self @@ -43416,11 +46312,13 @@ unsafe impl<'a> TaggedStructure for ImportMemoryBufferCollectionFUCHSIA<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportMemoryBufferCollectionFUCHSIA<'_> {} impl<'a> ImportMemoryBufferCollectionFUCHSIA<'a> { #[inline] + #[must_use] pub fn collection(mut self, collection: BufferCollectionFUCHSIA) -> Self { self.collection = collection; self } #[inline] + #[must_use] pub fn index(mut self, index: u32) -> Self { self.index = index; self @@ -43456,11 +46354,13 @@ unsafe impl<'a> TaggedStructure for BufferCollectionImageCreateInfoFUCHSIA<'a> { unsafe impl ExtendsImageCreateInfo for BufferCollectionImageCreateInfoFUCHSIA<'_> {} impl<'a> BufferCollectionImageCreateInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn collection(mut self, collection: BufferCollectionFUCHSIA) -> Self { self.collection = collection; self } #[inline] + #[must_use] pub fn index(mut self, index: u32) -> Self { self.index = index; self @@ -43496,11 +46396,13 @@ unsafe impl<'a> TaggedStructure for BufferCollectionBufferCreateInfoFUCHSIA<'a> unsafe impl ExtendsBufferCreateInfo for BufferCollectionBufferCreateInfoFUCHSIA<'_> {} impl<'a> BufferCollectionBufferCreateInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn collection(mut self, collection: BufferCollectionFUCHSIA) -> Self { self.collection = collection; self } #[inline] + #[must_use] pub fn index(mut self, index: u32) -> Self { self.index = index; self @@ -43532,6 +46434,7 @@ unsafe impl<'a> TaggedStructure for BufferCollectionCreateInfoFUCHSIA<'a> { } impl<'a> BufferCollectionCreateInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn collection_token(mut self, collection_token: zx_handle_t) -> Self { self.collection_token = collection_token; self @@ -43583,31 +46486,37 @@ unsafe impl<'a> TaggedStructure for BufferCollectionPropertiesFUCHSIA<'a> { } impl<'a> BufferCollectionPropertiesFUCHSIA<'a> { #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self } #[inline] + #[must_use] pub fn buffer_count(mut self, buffer_count: u32) -> Self { self.buffer_count = buffer_count; self } #[inline] + #[must_use] pub fn create_info_index(mut self, create_info_index: u32) -> Self { self.create_info_index = create_info_index; self } #[inline] + #[must_use] pub fn sysmem_pixel_format(mut self, sysmem_pixel_format: u64) -> Self { self.sysmem_pixel_format = sysmem_pixel_format; self } #[inline] + #[must_use] pub fn format_features(mut self, format_features: FormatFeatureFlags) -> Self { self.format_features = format_features; self } #[inline] + #[must_use] pub fn sysmem_color_space_index( mut self, sysmem_color_space_index: SysmemColorSpaceFUCHSIA<'a>, @@ -43616,6 +46525,7 @@ impl<'a> BufferCollectionPropertiesFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn sampler_ycbcr_conversion_components( mut self, sampler_ycbcr_conversion_components: ComponentMapping, @@ -43624,6 +46534,7 @@ impl<'a> BufferCollectionPropertiesFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_model( mut self, suggested_ycbcr_model: SamplerYcbcrModelConversion, @@ -43632,16 +46543,19 @@ impl<'a> BufferCollectionPropertiesFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_range(mut self, suggested_ycbcr_range: SamplerYcbcrRange) -> Self { self.suggested_ycbcr_range = suggested_ycbcr_range; self } #[inline] + #[must_use] pub fn suggested_x_chroma_offset(mut self, suggested_x_chroma_offset: ChromaLocation) -> Self { self.suggested_x_chroma_offset = suggested_x_chroma_offset; self } #[inline] + #[must_use] pub fn suggested_y_chroma_offset(mut self, suggested_y_chroma_offset: ChromaLocation) -> Self { self.suggested_y_chroma_offset = suggested_y_chroma_offset; self @@ -43677,11 +46591,13 @@ unsafe impl<'a> TaggedStructure for BufferConstraintsInfoFUCHSIA<'a> { } impl<'a> BufferConstraintsInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn create_info(mut self, create_info: BufferCreateInfo<'a>) -> Self { self.create_info = create_info; self } #[inline] + #[must_use] pub fn required_format_features( mut self, required_format_features: FormatFeatureFlags, @@ -43690,6 +46606,7 @@ impl<'a> BufferConstraintsInfoFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn buffer_collection_constraints( mut self, buffer_collection_constraints: BufferCollectionConstraintsInfoFUCHSIA<'a>, @@ -43724,6 +46641,7 @@ unsafe impl<'a> TaggedStructure for SysmemColorSpaceFUCHSIA<'a> { } impl<'a> SysmemColorSpaceFUCHSIA<'a> { #[inline] + #[must_use] pub fn color_space(mut self, color_space: u32) -> Self { self.color_space = color_space; self @@ -43765,11 +46683,13 @@ unsafe impl<'a> TaggedStructure for ImageFormatConstraintsInfoFUCHSIA<'a> { } impl<'a> ImageFormatConstraintsInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn image_create_info(mut self, image_create_info: ImageCreateInfo<'a>) -> Self { self.image_create_info = image_create_info; self } #[inline] + #[must_use] pub fn required_format_features( mut self, required_format_features: FormatFeatureFlags, @@ -43778,16 +46698,19 @@ impl<'a> ImageFormatConstraintsInfoFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn flags(mut self, flags: ImageFormatConstraintsFlagsFUCHSIA) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn sysmem_pixel_format(mut self, sysmem_pixel_format: u64) -> Self { self.sysmem_pixel_format = sysmem_pixel_format; self } #[inline] + #[must_use] pub fn color_spaces(mut self, color_spaces: &'a [SysmemColorSpaceFUCHSIA<'a>]) -> Self { self.color_space_count = color_spaces.len() as _; self.p_color_spaces = color_spaces.as_ptr(); @@ -43826,6 +46749,7 @@ unsafe impl<'a> TaggedStructure for ImageConstraintsInfoFUCHSIA<'a> { } impl<'a> ImageConstraintsInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn format_constraints( mut self, format_constraints: &'a [ImageFormatConstraintsInfoFUCHSIA<'a>], @@ -43835,6 +46759,7 @@ impl<'a> ImageConstraintsInfoFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn buffer_collection_constraints( mut self, buffer_collection_constraints: BufferCollectionConstraintsInfoFUCHSIA<'a>, @@ -43843,6 +46768,7 @@ impl<'a> ImageConstraintsInfoFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn flags(mut self, flags: ImageConstraintsInfoFlagsFUCHSIA) -> Self { self.flags = flags; self @@ -43882,21 +46808,25 @@ unsafe impl<'a> TaggedStructure for BufferCollectionConstraintsInfoFUCHSIA<'a> { } impl<'a> BufferCollectionConstraintsInfoFUCHSIA<'a> { #[inline] + #[must_use] pub fn min_buffer_count(mut self, min_buffer_count: u32) -> Self { self.min_buffer_count = min_buffer_count; self } #[inline] + #[must_use] pub fn max_buffer_count(mut self, max_buffer_count: u32) -> Self { self.max_buffer_count = max_buffer_count; self } #[inline] + #[must_use] pub fn min_buffer_count_for_camping(mut self, min_buffer_count_for_camping: u32) -> Self { self.min_buffer_count_for_camping = min_buffer_count_for_camping; self } #[inline] + #[must_use] pub fn min_buffer_count_for_dedicated_slack( mut self, min_buffer_count_for_dedicated_slack: u32, @@ -43905,6 +46835,7 @@ impl<'a> BufferCollectionConstraintsInfoFUCHSIA<'a> { self } #[inline] + #[must_use] pub fn min_buffer_count_for_shared_slack( mut self, min_buffer_count_for_shared_slack: u32, @@ -43943,6 +46874,7 @@ unsafe impl<'a> TaggedStructure for CudaModuleCreateInfoNV<'a> { } impl<'a> CudaModuleCreateInfoNV<'a> { #[inline] + #[must_use] pub fn data(mut self, data: &'a [u8]) -> Self { self.data_size = data.len(); self.p_data = data.as_ptr().cast(); @@ -43977,16 +46909,19 @@ unsafe impl<'a> TaggedStructure for CudaFunctionCreateInfoNV<'a> { } impl<'a> CudaFunctionCreateInfoNV<'a> { #[inline] + #[must_use] pub fn module(mut self, module: CudaModuleNV) -> Self { self.module = module; self } #[inline] + #[must_use] pub fn name(mut self, name: &'a core::ffi::CStr) -> Self { self.p_name = name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_name) } @@ -44039,52 +46974,62 @@ unsafe impl<'a> TaggedStructure for CudaLaunchInfoNV<'a> { } impl<'a> CudaLaunchInfoNV<'a> { #[inline] + #[must_use] pub fn function(mut self, function: CudaFunctionNV) -> Self { self.function = function; self } #[inline] + #[must_use] pub fn grid_dim_x(mut self, grid_dim_x: u32) -> Self { self.grid_dim_x = grid_dim_x; self } #[inline] + #[must_use] pub fn grid_dim_y(mut self, grid_dim_y: u32) -> Self { self.grid_dim_y = grid_dim_y; self } #[inline] + #[must_use] pub fn grid_dim_z(mut self, grid_dim_z: u32) -> Self { self.grid_dim_z = grid_dim_z; self } #[inline] + #[must_use] pub fn block_dim_x(mut self, block_dim_x: u32) -> Self { self.block_dim_x = block_dim_x; self } #[inline] + #[must_use] pub fn block_dim_y(mut self, block_dim_y: u32) -> Self { self.block_dim_y = block_dim_y; self } #[inline] + #[must_use] pub fn block_dim_z(mut self, block_dim_z: u32) -> Self { self.block_dim_z = block_dim_z; self } #[inline] + #[must_use] pub fn shared_mem_bytes(mut self, shared_mem_bytes: u32) -> Self { self.shared_mem_bytes = shared_mem_bytes; self } #[inline] + #[must_use] pub fn params(mut self, params: &'a [*const c_void]) -> Self { self.param_count = params.len(); self.p_params = params.as_ptr(); self } #[inline] + #[must_use] pub fn extras(mut self, extras: &'a [*const c_void]) -> Self { self.extra_count = extras.len(); self.p_extras = extras.as_ptr(); @@ -44120,6 +47065,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceRGBA10X6FormatsFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRGBA10X6FormatsFeaturesEXT<'_> {} impl<'a> PhysicalDeviceRGBA10X6FormatsFeaturesEXT<'a> { #[inline] + #[must_use] pub fn format_rgba10x6_without_y_cb_cr_sampler( mut self, format_rgba10x6_without_y_cb_cr_sampler: bool, @@ -44160,16 +47106,19 @@ unsafe impl<'a> TaggedStructure for FormatProperties3<'a> { unsafe impl ExtendsFormatProperties2 for FormatProperties3<'_> {} impl<'a> FormatProperties3<'a> { #[inline] + #[must_use] pub fn linear_tiling_features(mut self, linear_tiling_features: FormatFeatureFlags2) -> Self { self.linear_tiling_features = linear_tiling_features; self } #[inline] + #[must_use] pub fn optimal_tiling_features(mut self, optimal_tiling_features: FormatFeatureFlags2) -> Self { self.optimal_tiling_features = optimal_tiling_features; self } #[inline] + #[must_use] pub fn buffer_features(mut self, buffer_features: FormatFeatureFlags2) -> Self { self.buffer_features = buffer_features; self @@ -44204,6 +47153,7 @@ unsafe impl<'a> TaggedStructure for DrmFormatModifierPropertiesList2EXT<'a> { unsafe impl ExtendsFormatProperties2 for DrmFormatModifierPropertiesList2EXT<'_> {} impl<'a> DrmFormatModifierPropertiesList2EXT<'a> { #[inline] + #[must_use] pub fn drm_format_modifier_properties( mut self, drm_format_modifier_properties: &'a mut [DrmFormatModifierProperties2EXT], @@ -44224,16 +47174,19 @@ pub struct DrmFormatModifierProperties2EXT { } impl DrmFormatModifierProperties2EXT { #[inline] + #[must_use] pub fn drm_format_modifier(mut self, drm_format_modifier: u64) -> Self { self.drm_format_modifier = drm_format_modifier; self } #[inline] + #[must_use] pub fn drm_format_modifier_plane_count(mut self, drm_format_modifier_plane_count: u32) -> Self { self.drm_format_modifier_plane_count = drm_format_modifier_plane_count; self } #[inline] + #[must_use] pub fn drm_format_modifier_tiling_features( mut self, drm_format_modifier_tiling_features: FormatFeatureFlags2, @@ -44287,21 +47240,25 @@ unsafe impl ExtendsAndroidHardwareBufferPropertiesANDROID } impl<'a> AndroidHardwareBufferFormatProperties2ANDROID<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn external_format(mut self, external_format: u64) -> Self { self.external_format = external_format; self } #[inline] + #[must_use] pub fn format_features(mut self, format_features: FormatFeatureFlags2) -> Self { self.format_features = format_features; self } #[inline] + #[must_use] pub fn sampler_ycbcr_conversion_components( mut self, sampler_ycbcr_conversion_components: ComponentMapping, @@ -44310,6 +47267,7 @@ impl<'a> AndroidHardwareBufferFormatProperties2ANDROID<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_model( mut self, suggested_ycbcr_model: SamplerYcbcrModelConversion, @@ -44318,16 +47276,19 @@ impl<'a> AndroidHardwareBufferFormatProperties2ANDROID<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_range(mut self, suggested_ycbcr_range: SamplerYcbcrRange) -> Self { self.suggested_ycbcr_range = suggested_ycbcr_range; self } #[inline] + #[must_use] pub fn suggested_x_chroma_offset(mut self, suggested_x_chroma_offset: ChromaLocation) -> Self { self.suggested_x_chroma_offset = suggested_x_chroma_offset; self } #[inline] + #[must_use] pub fn suggested_y_chroma_offset(mut self, suggested_y_chroma_offset: ChromaLocation) -> Self { self.suggested_y_chroma_offset = suggested_y_chroma_offset; self @@ -44368,22 +47329,26 @@ unsafe impl<'a> TaggedStructure for PipelineRenderingCreateInfo<'a> { unsafe impl ExtendsGraphicsPipelineCreateInfo for PipelineRenderingCreateInfo<'_> {} impl<'a> PipelineRenderingCreateInfo<'a> { #[inline] + #[must_use] pub fn view_mask(mut self, view_mask: u32) -> Self { self.view_mask = view_mask; self } #[inline] + #[must_use] pub fn color_attachment_formats(mut self, color_attachment_formats: &'a [Format]) -> Self { self.color_attachment_count = color_attachment_formats.len() as _; self.p_color_attachment_formats = color_attachment_formats.as_ptr(); self } #[inline] + #[must_use] pub fn depth_attachment_format(mut self, depth_attachment_format: Format) -> Self { self.depth_attachment_format = depth_attachment_format; self } #[inline] + #[must_use] pub fn stencil_attachment_format(mut self, stencil_attachment_format: Format) -> Self { self.stencil_attachment_format = stencil_attachment_format; self @@ -44430,26 +47395,31 @@ unsafe impl<'a> TaggedStructure for RenderingInfo<'a> { pub unsafe trait ExtendsRenderingInfo {} impl<'a> RenderingInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: RenderingFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn render_area(mut self, render_area: Rect2D) -> Self { self.render_area = render_area; self } #[inline] + #[must_use] pub fn layer_count(mut self, layer_count: u32) -> Self { self.layer_count = layer_count; self } #[inline] + #[must_use] pub fn view_mask(mut self, view_mask: u32) -> Self { self.view_mask = view_mask; self } #[inline] + #[must_use] pub fn color_attachments( mut self, color_attachments: &'a [RenderingAttachmentInfo<'a>], @@ -44459,11 +47429,13 @@ impl<'a> RenderingInfo<'a> { self } #[inline] + #[must_use] pub fn depth_attachment(mut self, depth_attachment: &'a RenderingAttachmentInfo<'a>) -> Self { self.p_depth_attachment = depth_attachment; self } #[inline] + #[must_use] pub fn stencil_attachment( mut self, stencil_attachment: &'a RenderingAttachmentInfo<'a>, @@ -44471,6 +47443,7 @@ impl<'a> RenderingInfo<'a> { self.p_stencil_attachment = stencil_attachment; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -44542,41 +47515,49 @@ unsafe impl<'a> TaggedStructure for RenderingAttachmentInfo<'a> { } impl<'a> RenderingAttachmentInfo<'a> { #[inline] + #[must_use] pub fn image_view(mut self, image_view: ImageView) -> Self { self.image_view = image_view; self } #[inline] + #[must_use] pub fn image_layout(mut self, image_layout: ImageLayout) -> Self { self.image_layout = image_layout; self } #[inline] + #[must_use] pub fn resolve_mode(mut self, resolve_mode: ResolveModeFlags) -> Self { self.resolve_mode = resolve_mode; self } #[inline] + #[must_use] pub fn resolve_image_view(mut self, resolve_image_view: ImageView) -> Self { self.resolve_image_view = resolve_image_view; self } #[inline] + #[must_use] pub fn resolve_image_layout(mut self, resolve_image_layout: ImageLayout) -> Self { self.resolve_image_layout = resolve_image_layout; self } #[inline] + #[must_use] pub fn load_op(mut self, load_op: AttachmentLoadOp) -> Self { self.load_op = load_op; self } #[inline] + #[must_use] pub fn store_op(mut self, store_op: AttachmentStoreOp) -> Self { self.store_op = store_op; self } #[inline] + #[must_use] pub fn clear_value(mut self, clear_value: ClearValue) -> Self { self.clear_value = clear_value; self @@ -44614,16 +47595,19 @@ unsafe impl<'a> TaggedStructure for RenderingFragmentShadingRateAttachmentInfoKH unsafe impl ExtendsRenderingInfo for RenderingFragmentShadingRateAttachmentInfoKHR<'_> {} impl<'a> RenderingFragmentShadingRateAttachmentInfoKHR<'a> { #[inline] + #[must_use] pub fn image_view(mut self, image_view: ImageView) -> Self { self.image_view = image_view; self } #[inline] + #[must_use] pub fn image_layout(mut self, image_layout: ImageLayout) -> Self { self.image_layout = image_layout; self } #[inline] + #[must_use] pub fn shading_rate_attachment_texel_size( mut self, shading_rate_attachment_texel_size: Extent2D, @@ -44662,11 +47646,13 @@ unsafe impl<'a> TaggedStructure for RenderingFragmentDensityMapAttachmentInfoEXT unsafe impl ExtendsRenderingInfo for RenderingFragmentDensityMapAttachmentInfoEXT<'_> {} impl<'a> RenderingFragmentDensityMapAttachmentInfoEXT<'a> { #[inline] + #[must_use] pub fn image_view(mut self, image_view: ImageView) -> Self { self.image_view = image_view; self } #[inline] + #[must_use] pub fn image_layout(mut self, image_layout: ImageLayout) -> Self { self.image_layout = image_layout; self @@ -44700,6 +47686,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDynamicRenderingFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDynamicRenderingFeatures<'_> {} impl<'a> PhysicalDeviceDynamicRenderingFeatures<'a> { #[inline] + #[must_use] pub fn dynamic_rendering(mut self, dynamic_rendering: bool) -> Self { self.dynamic_rendering = dynamic_rendering.into(); self @@ -44744,32 +47731,38 @@ unsafe impl<'a> TaggedStructure for CommandBufferInheritanceRenderingInfo<'a> { unsafe impl ExtendsCommandBufferInheritanceInfo for CommandBufferInheritanceRenderingInfo<'_> {} impl<'a> CommandBufferInheritanceRenderingInfo<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: RenderingFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn view_mask(mut self, view_mask: u32) -> Self { self.view_mask = view_mask; self } #[inline] + #[must_use] pub fn color_attachment_formats(mut self, color_attachment_formats: &'a [Format]) -> Self { self.color_attachment_count = color_attachment_formats.len() as _; self.p_color_attachment_formats = color_attachment_formats.as_ptr(); self } #[inline] + #[must_use] pub fn depth_attachment_format(mut self, depth_attachment_format: Format) -> Self { self.depth_attachment_format = depth_attachment_format; self } #[inline] + #[must_use] pub fn stencil_attachment_format(mut self, stencil_attachment_format: Format) -> Self { self.stencil_attachment_format = stencil_attachment_format; self } #[inline] + #[must_use] pub fn rasterization_samples(mut self, rasterization_samples: SampleCountFlags) -> Self { self.rasterization_samples = rasterization_samples; self @@ -44807,6 +47800,7 @@ unsafe impl ExtendsCommandBufferInheritanceInfo for AttachmentSampleCountInfoAMD unsafe impl ExtendsGraphicsPipelineCreateInfo for AttachmentSampleCountInfoAMD<'_> {} impl<'a> AttachmentSampleCountInfoAMD<'a> { #[inline] + #[must_use] pub fn color_attachment_samples( mut self, color_attachment_samples: &'a [SampleCountFlags], @@ -44816,6 +47810,7 @@ impl<'a> AttachmentSampleCountInfoAMD<'a> { self } #[inline] + #[must_use] pub fn depth_stencil_attachment_samples( mut self, depth_stencil_attachment_samples: SampleCountFlags, @@ -44855,11 +47850,13 @@ unsafe impl ExtendsGraphicsPipelineCreateInfo for MultiviewPerViewAttributesInfo unsafe impl ExtendsRenderingInfo for MultiviewPerViewAttributesInfoNVX<'_> {} impl<'a> MultiviewPerViewAttributesInfoNVX<'a> { #[inline] + #[must_use] pub fn per_view_attributes(mut self, per_view_attributes: bool) -> Self { self.per_view_attributes = per_view_attributes.into(); self } #[inline] + #[must_use] pub fn per_view_attributes_position_x_only( mut self, per_view_attributes_position_x_only: bool, @@ -44897,6 +47894,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceImageViewMinLodFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImageViewMinLodFeaturesEXT<'_> {} impl<'a> PhysicalDeviceImageViewMinLodFeaturesEXT<'a> { #[inline] + #[must_use] pub fn min_lod(mut self, min_lod: bool) -> Self { self.min_lod = min_lod.into(); self @@ -44929,6 +47927,7 @@ unsafe impl<'a> TaggedStructure for ImageViewMinLodCreateInfoEXT<'a> { unsafe impl ExtendsImageViewCreateInfo for ImageViewMinLodCreateInfoEXT<'_> {} impl<'a> ImageViewMinLodCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn min_lod(mut self, min_lod: f32) -> Self { self.min_lod = min_lod; self @@ -44975,6 +47974,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT<'a> { #[inline] + #[must_use] pub fn rasterization_order_color_attachment_access( mut self, rasterization_order_color_attachment_access: bool, @@ -44984,6 +47984,7 @@ impl<'a> PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn rasterization_order_depth_attachment_access( mut self, rasterization_order_depth_attachment_access: bool, @@ -44993,6 +47994,7 @@ impl<'a> PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn rasterization_order_stencil_attachment_access( mut self, rasterization_order_stencil_attachment_access: bool, @@ -45031,6 +48033,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceLinearColorAttachme unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceLinearColorAttachmentFeaturesNV<'_> {} impl<'a> PhysicalDeviceLinearColorAttachmentFeaturesNV<'a> { #[inline] + #[must_use] pub fn linear_color_attachment(mut self, linear_color_attachment: bool) -> Self { self.linear_color_attachment = linear_color_attachment.into(); self @@ -45068,6 +48071,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT<'_> {} impl<'a> PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT<'a> { #[inline] + #[must_use] pub fn graphics_pipeline_library(mut self, graphics_pipeline_library: bool) -> Self { self.graphics_pipeline_library = graphics_pipeline_library.into(); self @@ -45106,6 +48110,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT<'a> { #[inline] + #[must_use] pub fn graphics_pipeline_library_fast_linking( mut self, graphics_pipeline_library_fast_linking: bool, @@ -45114,6 +48119,7 @@ impl<'a> PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn graphics_pipeline_library_independent_interpolation_decoration( mut self, graphics_pipeline_library_independent_interpolation_decoration: bool, @@ -45150,6 +48156,7 @@ unsafe impl<'a> TaggedStructure for GraphicsPipelineLibraryCreateInfoEXT<'a> { unsafe impl ExtendsGraphicsPipelineCreateInfo for GraphicsPipelineLibraryCreateInfoEXT<'_> {} impl<'a> GraphicsPipelineLibraryCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: GraphicsPipelineLibraryFlagsEXT) -> Self { self.flags = flags; self @@ -45187,6 +48194,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE<'_> {} impl<'a> PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE<'a> { #[inline] + #[must_use] pub fn descriptor_set_host_mapping(mut self, descriptor_set_host_mapping: bool) -> Self { self.descriptor_set_host_mapping = descriptor_set_host_mapping.into(); self @@ -45220,11 +48228,13 @@ unsafe impl<'a> TaggedStructure for DescriptorSetBindingReferenceVALVE<'a> { } impl<'a> DescriptorSetBindingReferenceVALVE<'a> { #[inline] + #[must_use] pub fn descriptor_set_layout(mut self, descriptor_set_layout: DescriptorSetLayout) -> Self { self.descriptor_set_layout = descriptor_set_layout; self } #[inline] + #[must_use] pub fn binding(mut self, binding: u32) -> Self { self.binding = binding; self @@ -45259,11 +48269,13 @@ unsafe impl<'a> TaggedStructure for DescriptorSetLayoutHostMappingInfoVALVE<'a> } impl<'a> DescriptorSetLayoutHostMappingInfoVALVE<'a> { #[inline] + #[must_use] pub fn descriptor_offset(mut self, descriptor_offset: usize) -> Self { self.descriptor_offset = descriptor_offset; self } #[inline] + #[must_use] pub fn descriptor_size(mut self, descriptor_size: u32) -> Self { self.descriptor_size = descriptor_size; self @@ -45302,11 +48314,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceNestedCommandBuffer unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceNestedCommandBufferFeaturesEXT<'_> {} impl<'a> PhysicalDeviceNestedCommandBufferFeaturesEXT<'a> { #[inline] + #[must_use] pub fn nested_command_buffer(mut self, nested_command_buffer: bool) -> Self { self.nested_command_buffer = nested_command_buffer.into(); self } #[inline] + #[must_use] pub fn nested_command_buffer_rendering( mut self, nested_command_buffer_rendering: bool, @@ -45315,6 +48329,7 @@ impl<'a> PhysicalDeviceNestedCommandBufferFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn nested_command_buffer_simultaneous_use( mut self, nested_command_buffer_simultaneous_use: bool, @@ -45354,6 +48369,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceNestedCommandBufferPropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_command_buffer_nesting_level( mut self, max_command_buffer_nesting_level: u32, @@ -45391,6 +48407,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderModuleIdentif unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderModuleIdentifierFeaturesEXT<'_> {} impl<'a> PhysicalDeviceShaderModuleIdentifierFeaturesEXT<'a> { #[inline] + #[must_use] pub fn shader_module_identifier(mut self, shader_module_identifier: bool) -> Self { self.shader_module_identifier = shader_module_identifier.into(); self @@ -45427,6 +48444,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceShaderModuleIdentifierPropertiesEXT<'a> { #[inline] + #[must_use] pub fn shader_module_identifier_algorithm_uuid( mut self, shader_module_identifier_algorithm_uuid: [u8; UUID_SIZE], @@ -45468,6 +48486,7 @@ unsafe impl ExtendsPipelineShaderStageCreateInfo } impl<'a> PipelineShaderStageModuleIdentifierCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn identifier(mut self, identifier: &'a [u8]) -> Self { self.identifier_size = identifier.len() as _; self.p_identifier = identifier.as_ptr(); @@ -45502,11 +48521,13 @@ unsafe impl<'a> TaggedStructure for ShaderModuleIdentifierEXT<'a> { } impl<'a> ShaderModuleIdentifierEXT<'a> { #[inline] + #[must_use] pub fn identifier_size(mut self, identifier_size: u32) -> Self { self.identifier_size = identifier_size; self } #[inline] + #[must_use] pub fn identifier(mut self, identifier: [u8; MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT]) -> Self { self.identifier = identifier; self @@ -45545,11 +48566,13 @@ unsafe impl ExtendsSwapchainCreateInfoKHR for ImageCompressionControlEXT<'_> {} unsafe impl ExtendsPhysicalDeviceImageFormatInfo2 for ImageCompressionControlEXT<'_> {} impl<'a> ImageCompressionControlEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ImageCompressionFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn fixed_rate_flags( mut self, fixed_rate_flags: &'a mut [ImageCompressionFixedRateFlagsEXT], @@ -45591,6 +48614,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImageCompressionControlFeaturesEXT<'_> {} impl<'a> PhysicalDeviceImageCompressionControlFeaturesEXT<'a> { #[inline] + #[must_use] pub fn image_compression_control(mut self, image_compression_control: bool) -> Self { self.image_compression_control = image_compression_control.into(); self @@ -45627,6 +48651,7 @@ unsafe impl ExtendsSurfaceFormat2KHR for ImageCompressionPropertiesEXT<'_> {} unsafe impl ExtendsSubresourceLayout2KHR for ImageCompressionPropertiesEXT<'_> {} impl<'a> ImageCompressionPropertiesEXT<'a> { #[inline] + #[must_use] pub fn image_compression_flags( mut self, image_compression_flags: ImageCompressionFlagsEXT, @@ -45635,6 +48660,7 @@ impl<'a> ImageCompressionPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn image_compression_fixed_rate_flags( mut self, image_compression_fixed_rate_flags: ImageCompressionFixedRateFlagsEXT, @@ -45678,6 +48704,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT<'a> { #[inline] + #[must_use] pub fn image_compression_control_swapchain( mut self, image_compression_control_swapchain: bool, @@ -45712,6 +48739,7 @@ unsafe impl<'a> TaggedStructure for ImageSubresource2KHR<'a> { } impl<'a> ImageSubresource2KHR<'a> { #[inline] + #[must_use] pub fn image_subresource(mut self, image_subresource: ImageSubresource) -> Self { self.image_subresource = image_subresource; self @@ -45744,10 +48772,12 @@ unsafe impl<'a> TaggedStructure for SubresourceLayout2KHR<'a> { pub unsafe trait ExtendsSubresourceLayout2KHR {} impl<'a> SubresourceLayout2KHR<'a> { #[inline] + #[must_use] pub fn subresource_layout(mut self, subresource_layout: SubresourceLayout) -> Self { self.subresource_layout = subresource_layout; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -45791,6 +48821,7 @@ unsafe impl ExtendsRenderPassCreateInfo2 for RenderPassCreationControlEXT<'_> {} unsafe impl ExtendsSubpassDescription2 for RenderPassCreationControlEXT<'_> {} impl<'a> RenderPassCreationControlEXT<'a> { #[inline] + #[must_use] pub fn disallow_merging(mut self, disallow_merging: bool) -> Self { self.disallow_merging = disallow_merging.into(); self @@ -45805,6 +48836,7 @@ pub struct RenderPassCreationFeedbackInfoEXT { } impl RenderPassCreationFeedbackInfoEXT { #[inline] + #[must_use] pub fn post_merge_subpass_count(mut self, post_merge_subpass_count: u32) -> Self { self.post_merge_subpass_count = post_merge_subpass_count; self @@ -45838,6 +48870,7 @@ unsafe impl<'a> TaggedStructure for RenderPassCreationFeedbackCreateInfoEXT<'a> unsafe impl ExtendsRenderPassCreateInfo2 for RenderPassCreationFeedbackCreateInfoEXT<'_> {} impl<'a> RenderPassCreationFeedbackCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn render_pass_feedback( mut self, render_pass_feedback: &'a mut RenderPassCreationFeedbackInfoEXT, @@ -45876,6 +48909,7 @@ impl ::std::default::Default for RenderPassSubpassFeedbackInfoEXT { } impl RenderPassSubpassFeedbackInfoEXT { #[inline] + #[must_use] pub fn subpass_merge_status(mut self, subpass_merge_status: SubpassMergeStatusEXT) -> Self { self.subpass_merge_status = subpass_merge_status; self @@ -45894,6 +48928,7 @@ impl RenderPassSubpassFeedbackInfoEXT { wrap_c_str_slice_until_nul(&self.description) } #[inline] + #[must_use] pub fn post_merge_index(mut self, post_merge_index: u32) -> Self { self.post_merge_index = post_merge_index; self @@ -45927,6 +48962,7 @@ unsafe impl<'a> TaggedStructure for RenderPassSubpassFeedbackCreateInfoEXT<'a> { unsafe impl ExtendsSubpassDescription2 for RenderPassSubpassFeedbackCreateInfoEXT<'_> {} impl<'a> RenderPassSubpassFeedbackCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn subpass_feedback( mut self, subpass_feedback: &'a mut RenderPassSubpassFeedbackInfoEXT, @@ -45964,6 +49000,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceSubpassMergeFeedbac unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSubpassMergeFeedbackFeaturesEXT<'_> {} impl<'a> PhysicalDeviceSubpassMergeFeedbackFeaturesEXT<'a> { #[inline] + #[must_use] pub fn subpass_merge_feedback(mut self, subpass_merge_feedback: bool) -> Self { self.subpass_merge_feedback = subpass_merge_feedback.into(); self @@ -46034,53 +49071,63 @@ unsafe impl<'a> TaggedStructure for MicromapBuildInfoEXT<'a> { } impl<'a> MicromapBuildInfoEXT<'a> { #[inline] + #[must_use] pub fn ty(mut self, ty: MicromapTypeEXT) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn flags(mut self, flags: BuildMicromapFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn mode(mut self, mode: BuildMicromapModeEXT) -> Self { self.mode = mode; self } #[inline] + #[must_use] pub fn dst_micromap(mut self, dst_micromap: MicromapEXT) -> Self { self.dst_micromap = dst_micromap; self } #[inline] + #[must_use] pub fn usage_counts(mut self, usage_counts: &'a [MicromapUsageEXT]) -> Self { self.usage_counts_count = usage_counts.len() as _; self.p_usage_counts = usage_counts.as_ptr(); self } #[inline] + #[must_use] pub fn usage_counts_ptrs(mut self, usage_counts_ptrs: &'a [&'a MicromapUsageEXT]) -> Self { self.usage_counts_count = usage_counts_ptrs.len() as _; self.pp_usage_counts = usage_counts_ptrs.as_ptr().cast(); self } #[inline] + #[must_use] pub fn data(mut self, data: DeviceOrHostAddressConstKHR) -> Self { self.data = data; self } #[inline] + #[must_use] pub fn scratch_data(mut self, scratch_data: DeviceOrHostAddressKHR) -> Self { self.scratch_data = scratch_data; self } #[inline] + #[must_use] pub fn triangle_array(mut self, triangle_array: DeviceOrHostAddressConstKHR) -> Self { self.triangle_array = triangle_array; self } #[inline] + #[must_use] pub fn triangle_array_stride(mut self, triangle_array_stride: DeviceSize) -> Self { self.triangle_array_stride = triangle_array_stride; self @@ -46122,31 +49169,37 @@ unsafe impl<'a> TaggedStructure for MicromapCreateInfoEXT<'a> { } impl<'a> MicromapCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn create_flags(mut self, create_flags: MicromapCreateFlagsEXT) -> Self { self.create_flags = create_flags; self } #[inline] + #[must_use] pub fn buffer(mut self, buffer: Buffer) -> Self { self.buffer = buffer; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn ty(mut self, ty: MicromapTypeEXT) -> Self { self.ty = ty; self } #[inline] + #[must_use] pub fn device_address(mut self, device_address: DeviceAddress) -> Self { self.device_address = device_address; self @@ -46178,6 +49231,7 @@ unsafe impl<'a> TaggedStructure for MicromapVersionInfoEXT<'a> { } impl<'a> MicromapVersionInfoEXT<'a> { #[inline] + #[must_use] pub fn version_data(mut self, version_data: &'a [u8; 2 * UUID_SIZE]) -> Self { self.p_version_data = version_data; self @@ -46213,16 +49267,19 @@ unsafe impl<'a> TaggedStructure for CopyMicromapInfoEXT<'a> { } impl<'a> CopyMicromapInfoEXT<'a> { #[inline] + #[must_use] pub fn src(mut self, src: MicromapEXT) -> Self { self.src = src; self } #[inline] + #[must_use] pub fn dst(mut self, dst: MicromapEXT) -> Self { self.dst = dst; self } #[inline] + #[must_use] pub fn mode(mut self, mode: CopyMicromapModeEXT) -> Self { self.mode = mode; self @@ -46269,16 +49326,19 @@ unsafe impl<'a> TaggedStructure for CopyMicromapToMemoryInfoEXT<'a> { } impl<'a> CopyMicromapToMemoryInfoEXT<'a> { #[inline] + #[must_use] pub fn src(mut self, src: MicromapEXT) -> Self { self.src = src; self } #[inline] + #[must_use] pub fn dst(mut self, dst: DeviceOrHostAddressKHR) -> Self { self.dst = dst; self } #[inline] + #[must_use] pub fn mode(mut self, mode: CopyMicromapModeEXT) -> Self { self.mode = mode; self @@ -46325,16 +49385,19 @@ unsafe impl<'a> TaggedStructure for CopyMemoryToMicromapInfoEXT<'a> { } impl<'a> CopyMemoryToMicromapInfoEXT<'a> { #[inline] + #[must_use] pub fn src(mut self, src: DeviceOrHostAddressConstKHR) -> Self { self.src = src; self } #[inline] + #[must_use] pub fn dst(mut self, dst: MicromapEXT) -> Self { self.dst = dst; self } #[inline] + #[must_use] pub fn mode(mut self, mode: CopyMicromapModeEXT) -> Self { self.mode = mode; self @@ -46370,16 +49433,19 @@ unsafe impl<'a> TaggedStructure for MicromapBuildSizesInfoEXT<'a> { } impl<'a> MicromapBuildSizesInfoEXT<'a> { #[inline] + #[must_use] pub fn micromap_size(mut self, micromap_size: DeviceSize) -> Self { self.micromap_size = micromap_size; self } #[inline] + #[must_use] pub fn build_scratch_size(mut self, build_scratch_size: DeviceSize) -> Self { self.build_scratch_size = build_scratch_size; self } #[inline] + #[must_use] pub fn discardable(mut self, discardable: bool) -> Self { self.discardable = discardable.into(); self @@ -46396,16 +49462,19 @@ pub struct MicromapUsageEXT { } impl MicromapUsageEXT { #[inline] + #[must_use] pub fn count(mut self, count: u32) -> Self { self.count = count; self } #[inline] + #[must_use] pub fn subdivision_level(mut self, subdivision_level: u32) -> Self { self.subdivision_level = subdivision_level; self } #[inline] + #[must_use] pub fn format(mut self, format: u32) -> Self { self.format = format; self @@ -46422,16 +49491,19 @@ pub struct MicromapTriangleEXT { } impl MicromapTriangleEXT { #[inline] + #[must_use] pub fn data_offset(mut self, data_offset: u32) -> Self { self.data_offset = data_offset; self } #[inline] + #[must_use] pub fn subdivision_level(mut self, subdivision_level: u16) -> Self { self.subdivision_level = subdivision_level; self } #[inline] + #[must_use] pub fn format(mut self, format: u16) -> Self { self.format = format; self @@ -46470,16 +49542,19 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceOpacityMicromapFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceOpacityMicromapFeaturesEXT<'_> {} impl<'a> PhysicalDeviceOpacityMicromapFeaturesEXT<'a> { #[inline] + #[must_use] pub fn micromap(mut self, micromap: bool) -> Self { self.micromap = micromap.into(); self } #[inline] + #[must_use] pub fn micromap_capture_replay(mut self, micromap_capture_replay: bool) -> Self { self.micromap_capture_replay = micromap_capture_replay.into(); self } #[inline] + #[must_use] pub fn micromap_host_commands(mut self, micromap_host_commands: bool) -> Self { self.micromap_host_commands = micromap_host_commands.into(); self @@ -46515,6 +49590,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceOpacityMicromapPropertiesEXT<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceOpacityMicromapPropertiesEXT<'_> {} impl<'a> PhysicalDeviceOpacityMicromapPropertiesEXT<'a> { #[inline] + #[must_use] pub fn max_opacity2_state_subdivision_level( mut self, max_opacity2_state_subdivision_level: u32, @@ -46523,6 +49599,7 @@ impl<'a> PhysicalDeviceOpacityMicromapPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn max_opacity4_state_subdivision_level( mut self, max_opacity4_state_subdivision_level: u32, @@ -46592,38 +49669,45 @@ unsafe impl ExtendsAccelerationStructureGeometryTrianglesDataKHR } impl<'a> AccelerationStructureTrianglesOpacityMicromapEXT<'a> { #[inline] + #[must_use] pub fn index_type(mut self, index_type: IndexType) -> Self { self.index_type = index_type; self } #[inline] + #[must_use] pub fn index_buffer(mut self, index_buffer: DeviceOrHostAddressConstKHR) -> Self { self.index_buffer = index_buffer; self } #[inline] + #[must_use] pub fn index_stride(mut self, index_stride: DeviceSize) -> Self { self.index_stride = index_stride; self } #[inline] + #[must_use] pub fn base_triangle(mut self, base_triangle: u32) -> Self { self.base_triangle = base_triangle; self } #[inline] + #[must_use] pub fn usage_counts(mut self, usage_counts: &'a [MicromapUsageEXT]) -> Self { self.usage_counts_count = usage_counts.len() as _; self.p_usage_counts = usage_counts.as_ptr(); self } #[inline] + #[must_use] pub fn usage_counts_ptrs(mut self, usage_counts_ptrs: &'a [&'a MicromapUsageEXT]) -> Self { self.usage_counts_count = usage_counts_ptrs.len() as _; self.pp_usage_counts = usage_counts_ptrs.as_ptr().cast(); self } #[inline] + #[must_use] pub fn micromap(mut self, micromap: MicromapEXT) -> Self { self.micromap = micromap; self @@ -46658,6 +49742,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDisplacementMicroma unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDisplacementMicromapFeaturesNV<'_> {} impl<'a> PhysicalDeviceDisplacementMicromapFeaturesNV<'a> { #[inline] + #[must_use] pub fn displacement_micromap(mut self, displacement_micromap: bool) -> Self { self.displacement_micromap = displacement_micromap.into(); self @@ -46694,6 +49779,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceDisplacementMicromapPropertiesNV<'a> { #[inline] + #[must_use] pub fn max_displacement_micromap_subdivision_level( mut self, max_displacement_micromap_subdivision_level: u32, @@ -46803,6 +49889,7 @@ unsafe impl ExtendsAccelerationStructureGeometryTrianglesDataKHR } impl<'a> AccelerationStructureTrianglesDisplacementMicromapNV<'a> { #[inline] + #[must_use] pub fn displacement_bias_and_scale_format( mut self, displacement_bias_and_scale_format: Format, @@ -46811,11 +49898,13 @@ impl<'a> AccelerationStructureTrianglesDisplacementMicromapNV<'a> { self } #[inline] + #[must_use] pub fn displacement_vector_format(mut self, displacement_vector_format: Format) -> Self { self.displacement_vector_format = displacement_vector_format; self } #[inline] + #[must_use] pub fn displacement_bias_and_scale_buffer( mut self, displacement_bias_and_scale_buffer: DeviceOrHostAddressConstKHR, @@ -46824,6 +49913,7 @@ impl<'a> AccelerationStructureTrianglesDisplacementMicromapNV<'a> { self } #[inline] + #[must_use] pub fn displacement_bias_and_scale_stride( mut self, displacement_bias_and_scale_stride: DeviceSize, @@ -46832,6 +49922,7 @@ impl<'a> AccelerationStructureTrianglesDisplacementMicromapNV<'a> { self } #[inline] + #[must_use] pub fn displacement_vector_buffer( mut self, displacement_vector_buffer: DeviceOrHostAddressConstKHR, @@ -46840,11 +49931,13 @@ impl<'a> AccelerationStructureTrianglesDisplacementMicromapNV<'a> { self } #[inline] + #[must_use] pub fn displacement_vector_stride(mut self, displacement_vector_stride: DeviceSize) -> Self { self.displacement_vector_stride = displacement_vector_stride; self } #[inline] + #[must_use] pub fn displaced_micromap_primitive_flags( mut self, displaced_micromap_primitive_flags: DeviceOrHostAddressConstKHR, @@ -46853,6 +49946,7 @@ impl<'a> AccelerationStructureTrianglesDisplacementMicromapNV<'a> { self } #[inline] + #[must_use] pub fn displaced_micromap_primitive_flags_stride( mut self, displaced_micromap_primitive_flags_stride: DeviceSize, @@ -46861,38 +49955,45 @@ impl<'a> AccelerationStructureTrianglesDisplacementMicromapNV<'a> { self } #[inline] + #[must_use] pub fn index_type(mut self, index_type: IndexType) -> Self { self.index_type = index_type; self } #[inline] + #[must_use] pub fn index_buffer(mut self, index_buffer: DeviceOrHostAddressConstKHR) -> Self { self.index_buffer = index_buffer; self } #[inline] + #[must_use] pub fn index_stride(mut self, index_stride: DeviceSize) -> Self { self.index_stride = index_stride; self } #[inline] + #[must_use] pub fn base_triangle(mut self, base_triangle: u32) -> Self { self.base_triangle = base_triangle; self } #[inline] + #[must_use] pub fn usage_counts(mut self, usage_counts: &'a [MicromapUsageEXT]) -> Self { self.usage_counts_count = usage_counts.len() as _; self.p_usage_counts = usage_counts.as_ptr(); self } #[inline] + #[must_use] pub fn usage_counts_ptrs(mut self, usage_counts_ptrs: &'a [&'a MicromapUsageEXT]) -> Self { self.usage_counts_count = usage_counts_ptrs.len() as _; self.pp_usage_counts = usage_counts_ptrs.as_ptr().cast(); self } #[inline] + #[must_use] pub fn micromap(mut self, micromap: MicromapEXT) -> Self { self.micromap = micromap; self @@ -46924,6 +50025,7 @@ unsafe impl<'a> TaggedStructure for PipelinePropertiesIdentifierEXT<'a> { } impl<'a> PipelinePropertiesIdentifierEXT<'a> { #[inline] + #[must_use] pub fn pipeline_identifier(mut self, pipeline_identifier: [u8; UUID_SIZE]) -> Self { self.pipeline_identifier = pipeline_identifier; self @@ -46958,6 +50060,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePipelinePropertiesF unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePipelinePropertiesFeaturesEXT<'_> {} impl<'a> PhysicalDevicePipelinePropertiesFeaturesEXT<'a> { #[inline] + #[must_use] pub fn pipeline_properties_identifier(mut self, pipeline_properties_identifier: bool) -> Self { self.pipeline_properties_identifier = pipeline_properties_identifier.into(); self @@ -46998,6 +50101,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD<'a> { #[inline] + #[must_use] pub fn shader_early_and_late_fragment_tests( mut self, shader_early_and_late_fragment_tests: bool, @@ -47036,6 +50140,7 @@ unsafe impl ExtendsImageMemoryBarrier for ExternalMemoryAcquireUnmodifiedEXT<'_> unsafe impl ExtendsImageMemoryBarrier2 for ExternalMemoryAcquireUnmodifiedEXT<'_> {} impl<'a> ExternalMemoryAcquireUnmodifiedEXT<'a> { #[inline] + #[must_use] pub fn acquire_unmodified_memory(mut self, acquire_unmodified_memory: bool) -> Self { self.acquire_unmodified_memory = acquire_unmodified_memory.into(); self @@ -47074,6 +50179,7 @@ unsafe impl ExtendsSemaphoreCreateInfo for ExportMetalObjectCreateInfoEXT<'_> {} unsafe impl ExtendsEventCreateInfo for ExportMetalObjectCreateInfoEXT<'_> {} impl<'a> ExportMetalObjectCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn export_object_type(mut self, export_object_type: ExportMetalObjectTypeFlagsEXT) -> Self { self.export_object_type = export_object_type; self @@ -47103,6 +50209,7 @@ unsafe impl<'a> TaggedStructure for ExportMetalObjectsInfoEXT<'a> { } pub unsafe trait ExtendsExportMetalObjectsInfoEXT {} impl<'a> ExportMetalObjectsInfoEXT<'a> { + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -47145,6 +50252,7 @@ unsafe impl<'a> TaggedStructure for ExportMetalDeviceInfoEXT<'a> { unsafe impl ExtendsExportMetalObjectsInfoEXT for ExportMetalDeviceInfoEXT<'_> {} impl<'a> ExportMetalDeviceInfoEXT<'a> { #[inline] + #[must_use] pub fn mtl_device(mut self, mtl_device: MTLDevice_id) -> Self { self.mtl_device = mtl_device; self @@ -47179,11 +50287,13 @@ unsafe impl<'a> TaggedStructure for ExportMetalCommandQueueInfoEXT<'a> { unsafe impl ExtendsExportMetalObjectsInfoEXT for ExportMetalCommandQueueInfoEXT<'_> {} impl<'a> ExportMetalCommandQueueInfoEXT<'a> { #[inline] + #[must_use] pub fn queue(mut self, queue: Queue) -> Self { self.queue = queue; self } #[inline] + #[must_use] pub fn mtl_command_queue(mut self, mtl_command_queue: MTLCommandQueue_id) -> Self { self.mtl_command_queue = mtl_command_queue; self @@ -47218,11 +50328,13 @@ unsafe impl<'a> TaggedStructure for ExportMetalBufferInfoEXT<'a> { unsafe impl ExtendsExportMetalObjectsInfoEXT for ExportMetalBufferInfoEXT<'_> {} impl<'a> ExportMetalBufferInfoEXT<'a> { #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn mtl_buffer(mut self, mtl_buffer: MTLBuffer_id) -> Self { self.mtl_buffer = mtl_buffer; self @@ -47255,6 +50367,7 @@ unsafe impl<'a> TaggedStructure for ImportMetalBufferInfoEXT<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportMetalBufferInfoEXT<'_> {} impl<'a> ImportMetalBufferInfoEXT<'a> { #[inline] + #[must_use] pub fn mtl_buffer(mut self, mtl_buffer: MTLBuffer_id) -> Self { self.mtl_buffer = mtl_buffer; self @@ -47295,26 +50408,31 @@ unsafe impl<'a> TaggedStructure for ExportMetalTextureInfoEXT<'a> { unsafe impl ExtendsExportMetalObjectsInfoEXT for ExportMetalTextureInfoEXT<'_> {} impl<'a> ExportMetalTextureInfoEXT<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn image_view(mut self, image_view: ImageView) -> Self { self.image_view = image_view; self } #[inline] + #[must_use] pub fn buffer_view(mut self, buffer_view: BufferView) -> Self { self.buffer_view = buffer_view; self } #[inline] + #[must_use] pub fn plane(mut self, plane: ImageAspectFlags) -> Self { self.plane = plane; self } #[inline] + #[must_use] pub fn mtl_texture(mut self, mtl_texture: MTLTexture_id) -> Self { self.mtl_texture = mtl_texture; self @@ -47349,11 +50467,13 @@ unsafe impl<'a> TaggedStructure for ImportMetalTextureInfoEXT<'a> { unsafe impl ExtendsImageCreateInfo for ImportMetalTextureInfoEXT<'_> {} impl<'a> ImportMetalTextureInfoEXT<'a> { #[inline] + #[must_use] pub fn plane(mut self, plane: ImageAspectFlags) -> Self { self.plane = plane; self } #[inline] + #[must_use] pub fn mtl_texture(mut self, mtl_texture: MTLTexture_id) -> Self { self.mtl_texture = mtl_texture; self @@ -47388,11 +50508,13 @@ unsafe impl<'a> TaggedStructure for ExportMetalIOSurfaceInfoEXT<'a> { unsafe impl ExtendsExportMetalObjectsInfoEXT for ExportMetalIOSurfaceInfoEXT<'_> {} impl<'a> ExportMetalIOSurfaceInfoEXT<'a> { #[inline] + #[must_use] pub fn image(mut self, image: Image) -> Self { self.image = image; self } #[inline] + #[must_use] pub fn io_surface(mut self, io_surface: IOSurfaceRef) -> Self { self.io_surface = io_surface; self @@ -47425,6 +50547,7 @@ unsafe impl<'a> TaggedStructure for ImportMetalIOSurfaceInfoEXT<'a> { unsafe impl ExtendsImageCreateInfo for ImportMetalIOSurfaceInfoEXT<'_> {} impl<'a> ImportMetalIOSurfaceInfoEXT<'a> { #[inline] + #[must_use] pub fn io_surface(mut self, io_surface: IOSurfaceRef) -> Self { self.io_surface = io_surface; self @@ -47461,16 +50584,19 @@ unsafe impl<'a> TaggedStructure for ExportMetalSharedEventInfoEXT<'a> { unsafe impl ExtendsExportMetalObjectsInfoEXT for ExportMetalSharedEventInfoEXT<'_> {} impl<'a> ExportMetalSharedEventInfoEXT<'a> { #[inline] + #[must_use] pub fn semaphore(mut self, semaphore: Semaphore) -> Self { self.semaphore = semaphore; self } #[inline] + #[must_use] pub fn event(mut self, event: Event) -> Self { self.event = event; self } #[inline] + #[must_use] pub fn mtl_shared_event(mut self, mtl_shared_event: MTLSharedEvent_id) -> Self { self.mtl_shared_event = mtl_shared_event; self @@ -47504,6 +50630,7 @@ unsafe impl ExtendsSemaphoreCreateInfo for ImportMetalSharedEventInfoEXT<'_> {} unsafe impl ExtendsEventCreateInfo for ImportMetalSharedEventInfoEXT<'_> {} impl<'a> ImportMetalSharedEventInfoEXT<'a> { #[inline] + #[must_use] pub fn mtl_shared_event(mut self, mtl_shared_event: MTLSharedEvent_id) -> Self { self.mtl_shared_event = mtl_shared_event; self @@ -47538,6 +50665,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceNonSeamlessCubeMapF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceNonSeamlessCubeMapFeaturesEXT<'_> {} impl<'a> PhysicalDeviceNonSeamlessCubeMapFeaturesEXT<'a> { #[inline] + #[must_use] pub fn non_seamless_cube_map(mut self, non_seamless_cube_map: bool) -> Self { self.non_seamless_cube_map = non_seamless_cube_map.into(); self @@ -47572,6 +50700,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDevicePipelineRobustnessF unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePipelineRobustnessFeaturesEXT<'_> {} impl<'a> PhysicalDevicePipelineRobustnessFeaturesEXT<'a> { #[inline] + #[must_use] pub fn pipeline_robustness(mut self, pipeline_robustness: bool) -> Self { self.pipeline_robustness = pipeline_robustness.into(); self @@ -47613,21 +50742,25 @@ unsafe impl ExtendsPipelineShaderStageCreateInfo for PipelineRobustnessCreateInf unsafe impl ExtendsRayTracingPipelineCreateInfoKHR for PipelineRobustnessCreateInfoEXT<'_> {} impl<'a> PipelineRobustnessCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn storage_buffers(mut self, storage_buffers: PipelineRobustnessBufferBehaviorEXT) -> Self { self.storage_buffers = storage_buffers; self } #[inline] + #[must_use] pub fn uniform_buffers(mut self, uniform_buffers: PipelineRobustnessBufferBehaviorEXT) -> Self { self.uniform_buffers = uniform_buffers; self } #[inline] + #[must_use] pub fn vertex_inputs(mut self, vertex_inputs: PipelineRobustnessBufferBehaviorEXT) -> Self { self.vertex_inputs = vertex_inputs; self } #[inline] + #[must_use] pub fn images(mut self, images: PipelineRobustnessImageBehaviorEXT) -> Self { self.images = images; self @@ -47667,6 +50800,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDevicePipelineRobustnessPropertiesEX unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDevicePipelineRobustnessPropertiesEXT<'_> {} impl<'a> PhysicalDevicePipelineRobustnessPropertiesEXT<'a> { #[inline] + #[must_use] pub fn default_robustness_storage_buffers( mut self, default_robustness_storage_buffers: PipelineRobustnessBufferBehaviorEXT, @@ -47675,6 +50809,7 @@ impl<'a> PhysicalDevicePipelineRobustnessPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn default_robustness_uniform_buffers( mut self, default_robustness_uniform_buffers: PipelineRobustnessBufferBehaviorEXT, @@ -47683,6 +50818,7 @@ impl<'a> PhysicalDevicePipelineRobustnessPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn default_robustness_vertex_inputs( mut self, default_robustness_vertex_inputs: PipelineRobustnessBufferBehaviorEXT, @@ -47691,6 +50827,7 @@ impl<'a> PhysicalDevicePipelineRobustnessPropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn default_robustness_images( mut self, default_robustness_images: PipelineRobustnessImageBehaviorEXT, @@ -47730,16 +50867,19 @@ unsafe impl<'a> TaggedStructure for ImageViewSampleWeightCreateInfoQCOM<'a> { unsafe impl ExtendsImageViewCreateInfo for ImageViewSampleWeightCreateInfoQCOM<'_> {} impl<'a> ImageViewSampleWeightCreateInfoQCOM<'a> { #[inline] + #[must_use] pub fn filter_center(mut self, filter_center: Offset2D) -> Self { self.filter_center = filter_center; self } #[inline] + #[must_use] pub fn filter_size(mut self, filter_size: Extent2D) -> Self { self.filter_size = filter_size; self } #[inline] + #[must_use] pub fn num_phases(mut self, num_phases: u32) -> Self { self.num_phases = num_phases; self @@ -47778,16 +50918,19 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceImageProcessingFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImageProcessingFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceImageProcessingFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn texture_sample_weighted(mut self, texture_sample_weighted: bool) -> Self { self.texture_sample_weighted = texture_sample_weighted.into(); self } #[inline] + #[must_use] pub fn texture_box_filter(mut self, texture_box_filter: bool) -> Self { self.texture_box_filter = texture_box_filter.into(); self } #[inline] + #[must_use] pub fn texture_block_match(mut self, texture_block_match: bool) -> Self { self.texture_block_match = texture_block_match.into(); self @@ -47827,21 +50970,25 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceImageProcessingPropertiesQCOM< unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceImageProcessingPropertiesQCOM<'_> {} impl<'a> PhysicalDeviceImageProcessingPropertiesQCOM<'a> { #[inline] + #[must_use] pub fn max_weight_filter_phases(mut self, max_weight_filter_phases: u32) -> Self { self.max_weight_filter_phases = max_weight_filter_phases; self } #[inline] + #[must_use] pub fn max_weight_filter_dimension(mut self, max_weight_filter_dimension: Extent2D) -> Self { self.max_weight_filter_dimension = max_weight_filter_dimension; self } #[inline] + #[must_use] pub fn max_block_match_region(mut self, max_block_match_region: Extent2D) -> Self { self.max_block_match_region = max_block_match_region; self } #[inline] + #[must_use] pub fn max_box_filter_block_size(mut self, max_box_filter_block_size: Extent2D) -> Self { self.max_box_filter_block_size = max_box_filter_block_size; self @@ -47876,6 +51023,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceTilePropertiesFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceTilePropertiesFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceTilePropertiesFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn tile_properties(mut self, tile_properties: bool) -> Self { self.tile_properties = tile_properties.into(); self @@ -47911,16 +51059,19 @@ unsafe impl<'a> TaggedStructure for TilePropertiesQCOM<'a> { } impl<'a> TilePropertiesQCOM<'a> { #[inline] + #[must_use] pub fn tile_size(mut self, tile_size: Extent3D) -> Self { self.tile_size = tile_size; self } #[inline] + #[must_use] pub fn apron_size(mut self, apron_size: Extent2D) -> Self { self.apron_size = apron_size; self } #[inline] + #[must_use] pub fn origin(mut self, origin: Offset2D) -> Self { self.origin = origin; self @@ -47955,6 +51106,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceAmigoProfilingFeatu unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceAmigoProfilingFeaturesSEC<'_> {} impl<'a> PhysicalDeviceAmigoProfilingFeaturesSEC<'a> { #[inline] + #[must_use] pub fn amigo_profiling(mut self, amigo_profiling: bool) -> Self { self.amigo_profiling = amigo_profiling.into(); self @@ -47989,11 +51141,13 @@ unsafe impl<'a> TaggedStructure for AmigoProfilingSubmitInfoSEC<'a> { unsafe impl ExtendsSubmitInfo for AmigoProfilingSubmitInfoSEC<'_> {} impl<'a> AmigoProfilingSubmitInfoSEC<'a> { #[inline] + #[must_use] pub fn first_draw_timestamp(mut self, first_draw_timestamp: u64) -> Self { self.first_draw_timestamp = first_draw_timestamp; self } #[inline] + #[must_use] pub fn swap_buffer_timestamp(mut self, swap_buffer_timestamp: u64) -> Self { self.swap_buffer_timestamp = swap_buffer_timestamp; self @@ -48031,6 +51185,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT<'_> {} impl<'a> PhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT<'a> { #[inline] + #[must_use] pub fn attachment_feedback_loop_layout( mut self, attachment_feedback_loop_layout: bool, @@ -48068,6 +51223,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDepthClampZeroOneFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDepthClampZeroOneFeaturesEXT<'_> {} impl<'a> PhysicalDeviceDepthClampZeroOneFeaturesEXT<'a> { #[inline] + #[must_use] pub fn depth_clamp_zero_one(mut self, depth_clamp_zero_one: bool) -> Self { self.depth_clamp_zero_one = depth_clamp_zero_one.into(); self @@ -48102,6 +51258,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceAddressBindingRepor unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceAddressBindingReportFeaturesEXT<'_> {} impl<'a> PhysicalDeviceAddressBindingReportFeaturesEXT<'a> { #[inline] + #[must_use] pub fn report_address_binding(mut self, report_address_binding: bool) -> Self { self.report_address_binding = report_address_binding.into(); self @@ -48140,21 +51297,25 @@ unsafe impl<'a> TaggedStructure for DeviceAddressBindingCallbackDataEXT<'a> { unsafe impl ExtendsDebugUtilsMessengerCallbackDataEXT for DeviceAddressBindingCallbackDataEXT<'_> {} impl<'a> DeviceAddressBindingCallbackDataEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DeviceAddressBindingFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn base_address(mut self, base_address: DeviceAddress) -> Self { self.base_address = base_address; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn binding_type(mut self, binding_type: DeviceAddressBindingTypeEXT) -> Self { self.binding_type = binding_type; self @@ -48188,6 +51349,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceOpticalFlowFeatures unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceOpticalFlowFeaturesNV<'_> {} impl<'a> PhysicalDeviceOpticalFlowFeaturesNV<'a> { #[inline] + #[must_use] pub fn optical_flow(mut self, optical_flow: bool) -> Self { self.optical_flow = optical_flow.into(); self @@ -48240,6 +51402,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceOpticalFlowPropertiesNV<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceOpticalFlowPropertiesNV<'_> {} impl<'a> PhysicalDeviceOpticalFlowPropertiesNV<'a> { #[inline] + #[must_use] pub fn supported_output_grid_sizes( mut self, supported_output_grid_sizes: OpticalFlowGridSizeFlagsNV, @@ -48248,6 +51411,7 @@ impl<'a> PhysicalDeviceOpticalFlowPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn supported_hint_grid_sizes( mut self, supported_hint_grid_sizes: OpticalFlowGridSizeFlagsNV, @@ -48256,46 +51420,55 @@ impl<'a> PhysicalDeviceOpticalFlowPropertiesNV<'a> { self } #[inline] + #[must_use] pub fn hint_supported(mut self, hint_supported: bool) -> Self { self.hint_supported = hint_supported.into(); self } #[inline] + #[must_use] pub fn cost_supported(mut self, cost_supported: bool) -> Self { self.cost_supported = cost_supported.into(); self } #[inline] + #[must_use] pub fn bidirectional_flow_supported(mut self, bidirectional_flow_supported: bool) -> Self { self.bidirectional_flow_supported = bidirectional_flow_supported.into(); self } #[inline] + #[must_use] pub fn global_flow_supported(mut self, global_flow_supported: bool) -> Self { self.global_flow_supported = global_flow_supported.into(); self } #[inline] + #[must_use] pub fn min_width(mut self, min_width: u32) -> Self { self.min_width = min_width; self } #[inline] + #[must_use] pub fn min_height(mut self, min_height: u32) -> Self { self.min_height = min_height; self } #[inline] + #[must_use] pub fn max_width(mut self, max_width: u32) -> Self { self.max_width = max_width; self } #[inline] + #[must_use] pub fn max_height(mut self, max_height: u32) -> Self { self.max_height = max_height; self } #[inline] + #[must_use] pub fn max_num_regions_of_interest(mut self, max_num_regions_of_interest: u32) -> Self { self.max_num_regions_of_interest = max_num_regions_of_interest; self @@ -48329,6 +51502,7 @@ unsafe impl ExtendsPhysicalDeviceImageFormatInfo2 for OpticalFlowImageFormatInfo unsafe impl ExtendsImageCreateInfo for OpticalFlowImageFormatInfoNV<'_> {} impl<'a> OpticalFlowImageFormatInfoNV<'a> { #[inline] + #[must_use] pub fn usage(mut self, usage: OpticalFlowUsageFlagsNV) -> Self { self.usage = usage; self @@ -48360,6 +51534,7 @@ unsafe impl<'a> TaggedStructure for OpticalFlowImageFormatPropertiesNV<'a> { } impl<'a> OpticalFlowImageFormatPropertiesNV<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self @@ -48408,50 +51583,60 @@ unsafe impl<'a> TaggedStructure for OpticalFlowSessionCreateInfoNV<'a> { pub unsafe trait ExtendsOpticalFlowSessionCreateInfoNV {} impl<'a> OpticalFlowSessionCreateInfoNV<'a> { #[inline] + #[must_use] pub fn width(mut self, width: u32) -> Self { self.width = width; self } #[inline] + #[must_use] pub fn height(mut self, height: u32) -> Self { self.height = height; self } #[inline] + #[must_use] pub fn image_format(mut self, image_format: Format) -> Self { self.image_format = image_format; self } #[inline] + #[must_use] pub fn flow_vector_format(mut self, flow_vector_format: Format) -> Self { self.flow_vector_format = flow_vector_format; self } #[inline] + #[must_use] pub fn cost_format(mut self, cost_format: Format) -> Self { self.cost_format = cost_format; self } #[inline] + #[must_use] pub fn output_grid_size(mut self, output_grid_size: OpticalFlowGridSizeFlagsNV) -> Self { self.output_grid_size = output_grid_size; self } #[inline] + #[must_use] pub fn hint_grid_size(mut self, hint_grid_size: OpticalFlowGridSizeFlagsNV) -> Self { self.hint_grid_size = hint_grid_size; self } #[inline] + #[must_use] pub fn performance_level(mut self, performance_level: OpticalFlowPerformanceLevelNV) -> Self { self.performance_level = performance_level; self } #[inline] + #[must_use] pub fn flags(mut self, flags: OpticalFlowSessionCreateFlagsNV) -> Self { self.flags = flags; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -48502,16 +51687,19 @@ unsafe impl ExtendsOpticalFlowSessionCreateInfoNV } impl<'a> OpticalFlowSessionCreatePrivateDataInfoNV<'a> { #[inline] + #[must_use] pub fn id(mut self, id: u32) -> Self { self.id = id; self } #[inline] + #[must_use] pub fn size(mut self, size: u32) -> Self { self.size = size; self } #[inline] + #[must_use] pub fn private_data(mut self, private_data: *const c_void) -> Self { self.p_private_data = private_data; self @@ -48547,11 +51735,13 @@ unsafe impl<'a> TaggedStructure for OpticalFlowExecuteInfoNV<'a> { } impl<'a> OpticalFlowExecuteInfoNV<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: OpticalFlowExecuteFlagsNV) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn regions(mut self, regions: &'a [Rect2D]) -> Self { self.region_count = regions.len() as _; self.p_regions = regions.as_ptr(); @@ -48588,11 +51778,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceFaultFeaturesEXT<'_ unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFaultFeaturesEXT<'_> {} impl<'a> PhysicalDeviceFaultFeaturesEXT<'a> { #[inline] + #[must_use] pub fn device_fault(mut self, device_fault: bool) -> Self { self.device_fault = device_fault.into(); self } #[inline] + #[must_use] pub fn device_fault_vendor_binary(mut self, device_fault_vendor_binary: bool) -> Self { self.device_fault_vendor_binary = device_fault_vendor_binary.into(); self @@ -48609,16 +51801,19 @@ pub struct DeviceFaultAddressInfoEXT { } impl DeviceFaultAddressInfoEXT { #[inline] + #[must_use] pub fn address_type(mut self, address_type: DeviceFaultAddressTypeEXT) -> Self { self.address_type = address_type; self } #[inline] + #[must_use] pub fn reported_address(mut self, reported_address: DeviceAddress) -> Self { self.reported_address = reported_address; self } #[inline] + #[must_use] pub fn address_precision(mut self, address_precision: DeviceSize) -> Self { self.address_precision = address_precision; self @@ -48667,11 +51862,13 @@ impl DeviceFaultVendorInfoEXT { wrap_c_str_slice_until_nul(&self.description) } #[inline] + #[must_use] pub fn vendor_fault_code(mut self, vendor_fault_code: u64) -> Self { self.vendor_fault_code = vendor_fault_code; self } #[inline] + #[must_use] pub fn vendor_fault_data(mut self, vendor_fault_data: u64) -> Self { self.vendor_fault_data = vendor_fault_data; self @@ -48707,16 +51904,19 @@ unsafe impl<'a> TaggedStructure for DeviceFaultCountsEXT<'a> { } impl<'a> DeviceFaultCountsEXT<'a> { #[inline] + #[must_use] pub fn address_info_count(mut self, address_info_count: u32) -> Self { self.address_info_count = address_info_count; self } #[inline] + #[must_use] pub fn vendor_info_count(mut self, vendor_info_count: u32) -> Self { self.vendor_info_count = vendor_info_count; self } #[inline] + #[must_use] pub fn vendor_binary_size(mut self, vendor_binary_size: DeviceSize) -> Self { self.vendor_binary_size = vendor_binary_size; self @@ -48779,16 +51979,19 @@ impl<'a> DeviceFaultInfoEXT<'a> { wrap_c_str_slice_until_nul(&self.description) } #[inline] + #[must_use] pub fn address_infos(mut self, address_infos: &'a mut DeviceFaultAddressInfoEXT) -> Self { self.p_address_infos = address_infos; self } #[inline] + #[must_use] pub fn vendor_infos(mut self, vendor_infos: &'a mut DeviceFaultVendorInfoEXT) -> Self { self.p_vendor_infos = vendor_infos; self } #[inline] + #[must_use] pub fn vendor_binary_data(mut self, vendor_binary_data: *mut c_void) -> Self { self.p_vendor_binary_data = vendor_binary_data; self @@ -48831,11 +52034,13 @@ impl ::std::default::Default for DeviceFaultVendorBinaryHeaderVersionOneEXT { } impl DeviceFaultVendorBinaryHeaderVersionOneEXT { #[inline] + #[must_use] pub fn header_size(mut self, header_size: u32) -> Self { self.header_size = header_size; self } #[inline] + #[must_use] pub fn header_version( mut self, header_version: DeviceFaultVendorBinaryHeaderVersionEXT, @@ -48844,46 +52049,55 @@ impl DeviceFaultVendorBinaryHeaderVersionOneEXT { self } #[inline] + #[must_use] pub fn vendor_id(mut self, vendor_id: u32) -> Self { self.vendor_id = vendor_id; self } #[inline] + #[must_use] pub fn device_id(mut self, device_id: u32) -> Self { self.device_id = device_id; self } #[inline] + #[must_use] pub fn driver_version(mut self, driver_version: u32) -> Self { self.driver_version = driver_version; self } #[inline] + #[must_use] pub fn pipeline_cache_uuid(mut self, pipeline_cache_uuid: [u8; UUID_SIZE]) -> Self { self.pipeline_cache_uuid = pipeline_cache_uuid; self } #[inline] + #[must_use] pub fn application_name_offset(mut self, application_name_offset: u32) -> Self { self.application_name_offset = application_name_offset; self } #[inline] + #[must_use] pub fn application_version(mut self, application_version: u32) -> Self { self.application_version = application_version; self } #[inline] + #[must_use] pub fn engine_name_offset(mut self, engine_name_offset: u32) -> Self { self.engine_name_offset = engine_name_offset; self } #[inline] + #[must_use] pub fn engine_version(mut self, engine_version: u32) -> Self { self.engine_version = engine_version; self } #[inline] + #[must_use] pub fn api_version(mut self, api_version: u32) -> Self { self.api_version = api_version; self @@ -48921,6 +52135,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT<'_> {} impl<'a> PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT<'a> { #[inline] + #[must_use] pub fn pipeline_library_group_handles(mut self, pipeline_library_group_handles: bool) -> Self { self.pipeline_library_group_handles = pipeline_library_group_handles.into(); self @@ -48957,20 +52172,24 @@ unsafe impl<'a> TaggedStructure for DepthBiasInfoEXT<'a> { pub unsafe trait ExtendsDepthBiasInfoEXT {} impl<'a> DepthBiasInfoEXT<'a> { #[inline] + #[must_use] pub fn depth_bias_constant_factor(mut self, depth_bias_constant_factor: f32) -> Self { self.depth_bias_constant_factor = depth_bias_constant_factor; self } #[inline] + #[must_use] pub fn depth_bias_clamp(mut self, depth_bias_clamp: f32) -> Self { self.depth_bias_clamp = depth_bias_clamp; self } #[inline] + #[must_use] pub fn depth_bias_slope_factor(mut self, depth_bias_slope_factor: f32) -> Self { self.depth_bias_slope_factor = depth_bias_slope_factor; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -49016,6 +52235,7 @@ unsafe impl ExtendsDepthBiasInfoEXT for DepthBiasRepresentationInfoEXT<'_> {} unsafe impl ExtendsPipelineRasterizationStateCreateInfo for DepthBiasRepresentationInfoEXT<'_> {} impl<'a> DepthBiasRepresentationInfoEXT<'a> { #[inline] + #[must_use] pub fn depth_bias_representation( mut self, depth_bias_representation: DepthBiasRepresentationEXT, @@ -49024,6 +52244,7 @@ impl<'a> DepthBiasRepresentationInfoEXT<'a> { self } #[inline] + #[must_use] pub fn depth_bias_exact(mut self, depth_bias_exact: bool) -> Self { self.depth_bias_exact = depth_bias_exact.into(); self @@ -49042,26 +52263,31 @@ pub struct DecompressMemoryRegionNV { } impl DecompressMemoryRegionNV { #[inline] + #[must_use] pub fn src_address(mut self, src_address: DeviceAddress) -> Self { self.src_address = src_address; self } #[inline] + #[must_use] pub fn dst_address(mut self, dst_address: DeviceAddress) -> Self { self.dst_address = dst_address; self } #[inline] + #[must_use] pub fn compressed_size(mut self, compressed_size: DeviceSize) -> Self { self.compressed_size = compressed_size; self } #[inline] + #[must_use] pub fn decompressed_size(mut self, decompressed_size: DeviceSize) -> Self { self.decompressed_size = decompressed_size; self } #[inline] + #[must_use] pub fn decompression_method( mut self, decompression_method: MemoryDecompressionMethodFlagsNV, @@ -49102,16 +52328,19 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderCoreBuiltinsPropertiesAR unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderCoreBuiltinsPropertiesARM<'_> {} impl<'a> PhysicalDeviceShaderCoreBuiltinsPropertiesARM<'a> { #[inline] + #[must_use] pub fn shader_core_mask(mut self, shader_core_mask: u64) -> Self { self.shader_core_mask = shader_core_mask; self } #[inline] + #[must_use] pub fn shader_core_count(mut self, shader_core_count: u32) -> Self { self.shader_core_count = shader_core_count; self } #[inline] + #[must_use] pub fn shader_warps_per_core(mut self, shader_warps_per_core: u32) -> Self { self.shader_warps_per_core = shader_warps_per_core; self @@ -49146,6 +52375,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderCoreBuiltinsF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderCoreBuiltinsFeaturesARM<'_> {} impl<'a> PhysicalDeviceShaderCoreBuiltinsFeaturesARM<'a> { #[inline] + #[must_use] pub fn shader_core_builtins(mut self, shader_core_builtins: bool) -> Self { self.shader_core_builtins = shader_core_builtins.into(); self @@ -49197,33 +52427,39 @@ unsafe impl ExtendsPresentInfoKHR for FrameBoundaryEXT<'_> {} unsafe impl ExtendsBindSparseInfo for FrameBoundaryEXT<'_> {} impl<'a> FrameBoundaryEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: FrameBoundaryFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn frame_id(mut self, frame_id: u64) -> Self { self.frame_id = frame_id; self } #[inline] + #[must_use] pub fn images(mut self, images: &'a [Image]) -> Self { self.image_count = images.len() as _; self.p_images = images.as_ptr(); self } #[inline] + #[must_use] pub fn buffers(mut self, buffers: &'a [Buffer]) -> Self { self.buffer_count = buffers.len() as _; self.p_buffers = buffers.as_ptr(); self } #[inline] + #[must_use] pub fn tag_name(mut self, tag_name: u64) -> Self { self.tag_name = tag_name; self } #[inline] + #[must_use] pub fn tag(mut self, tag: &'a [u8]) -> Self { self.tag_size = tag.len(); self.p_tag = tag.as_ptr().cast(); @@ -49259,6 +52495,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceFrameBoundaryFeatur unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceFrameBoundaryFeaturesEXT<'_> {} impl<'a> PhysicalDeviceFrameBoundaryFeaturesEXT<'a> { #[inline] + #[must_use] pub fn frame_boundary(mut self, frame_boundary: bool) -> Self { self.frame_boundary = frame_boundary.into(); self @@ -49299,6 +52536,7 @@ unsafe impl ExtendsDeviceCreateInfo } impl<'a> PhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT<'a> { #[inline] + #[must_use] pub fn dynamic_rendering_unused_attachments( mut self, dynamic_rendering_unused_attachments: bool, @@ -49334,6 +52572,7 @@ unsafe impl<'a> TaggedStructure for SurfacePresentModeEXT<'a> { unsafe impl ExtendsPhysicalDeviceSurfaceInfo2KHR for SurfacePresentModeEXT<'_> {} impl<'a> SurfacePresentModeEXT<'a> { #[inline] + #[must_use] pub fn present_mode(mut self, present_mode: PresentModeKHR) -> Self { self.present_mode = present_mode; self @@ -49374,6 +52613,7 @@ unsafe impl<'a> TaggedStructure for SurfacePresentScalingCapabilitiesEXT<'a> { unsafe impl ExtendsSurfaceCapabilities2KHR for SurfacePresentScalingCapabilitiesEXT<'_> {} impl<'a> SurfacePresentScalingCapabilitiesEXT<'a> { #[inline] + #[must_use] pub fn supported_present_scaling( mut self, supported_present_scaling: PresentScalingFlagsEXT, @@ -49382,6 +52622,7 @@ impl<'a> SurfacePresentScalingCapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn supported_present_gravity_x( mut self, supported_present_gravity_x: PresentGravityFlagsEXT, @@ -49390,6 +52631,7 @@ impl<'a> SurfacePresentScalingCapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn supported_present_gravity_y( mut self, supported_present_gravity_y: PresentGravityFlagsEXT, @@ -49398,11 +52640,13 @@ impl<'a> SurfacePresentScalingCapabilitiesEXT<'a> { self } #[inline] + #[must_use] pub fn min_scaled_image_extent(mut self, min_scaled_image_extent: Extent2D) -> Self { self.min_scaled_image_extent = min_scaled_image_extent; self } #[inline] + #[must_use] pub fn max_scaled_image_extent(mut self, max_scaled_image_extent: Extent2D) -> Self { self.max_scaled_image_extent = max_scaled_image_extent; self @@ -49437,6 +52681,7 @@ unsafe impl<'a> TaggedStructure for SurfacePresentModeCompatibilityEXT<'a> { unsafe impl ExtendsSurfaceCapabilities2KHR for SurfacePresentModeCompatibilityEXT<'_> {} impl<'a> SurfacePresentModeCompatibilityEXT<'a> { #[inline] + #[must_use] pub fn present_modes(mut self, present_modes: &'a mut [PresentModeKHR]) -> Self { self.present_mode_count = present_modes.len() as _; self.p_present_modes = present_modes.as_mut_ptr(); @@ -49472,6 +52717,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceSwapchainMaintenanc unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSwapchainMaintenance1FeaturesEXT<'_> {} impl<'a> PhysicalDeviceSwapchainMaintenance1FeaturesEXT<'a> { #[inline] + #[must_use] pub fn swapchain_maintenance1(mut self, swapchain_maintenance1: bool) -> Self { self.swapchain_maintenance1 = swapchain_maintenance1.into(); self @@ -49506,6 +52752,7 @@ unsafe impl<'a> TaggedStructure for SwapchainPresentFenceInfoEXT<'a> { unsafe impl ExtendsPresentInfoKHR for SwapchainPresentFenceInfoEXT<'_> {} impl<'a> SwapchainPresentFenceInfoEXT<'a> { #[inline] + #[must_use] pub fn fences(mut self, fences: &'a [Fence]) -> Self { self.swapchain_count = fences.len() as _; self.p_fences = fences.as_ptr(); @@ -49541,6 +52788,7 @@ unsafe impl<'a> TaggedStructure for SwapchainPresentModesCreateInfoEXT<'a> { unsafe impl ExtendsSwapchainCreateInfoKHR for SwapchainPresentModesCreateInfoEXT<'_> {} impl<'a> SwapchainPresentModesCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn present_modes(mut self, present_modes: &'a [PresentModeKHR]) -> Self { self.present_mode_count = present_modes.len() as _; self.p_present_modes = present_modes.as_ptr(); @@ -49576,6 +52824,7 @@ unsafe impl<'a> TaggedStructure for SwapchainPresentModeInfoEXT<'a> { unsafe impl ExtendsPresentInfoKHR for SwapchainPresentModeInfoEXT<'_> {} impl<'a> SwapchainPresentModeInfoEXT<'a> { #[inline] + #[must_use] pub fn present_modes(mut self, present_modes: &'a [PresentModeKHR]) -> Self { self.swapchain_count = present_modes.len() as _; self.p_present_modes = present_modes.as_ptr(); @@ -49613,16 +52862,19 @@ unsafe impl<'a> TaggedStructure for SwapchainPresentScalingCreateInfoEXT<'a> { unsafe impl ExtendsSwapchainCreateInfoKHR for SwapchainPresentScalingCreateInfoEXT<'_> {} impl<'a> SwapchainPresentScalingCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn scaling_behavior(mut self, scaling_behavior: PresentScalingFlagsEXT) -> Self { self.scaling_behavior = scaling_behavior; self } #[inline] + #[must_use] pub fn present_gravity_x(mut self, present_gravity_x: PresentGravityFlagsEXT) -> Self { self.present_gravity_x = present_gravity_x; self } #[inline] + #[must_use] pub fn present_gravity_y(mut self, present_gravity_y: PresentGravityFlagsEXT) -> Self { self.present_gravity_y = present_gravity_y; self @@ -49658,11 +52910,13 @@ unsafe impl<'a> TaggedStructure for ReleaseSwapchainImagesInfoEXT<'a> { } impl<'a> ReleaseSwapchainImagesInfoEXT<'a> { #[inline] + #[must_use] pub fn swapchain(mut self, swapchain: SwapchainKHR) -> Self { self.swapchain = swapchain; self } #[inline] + #[must_use] pub fn image_indices(mut self, image_indices: &'a [u32]) -> Self { self.image_index_count = image_indices.len() as _; self.p_image_indices = image_indices.as_ptr(); @@ -49704,11 +52958,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceDepthBiasControlFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDepthBiasControlFeaturesEXT<'_> {} impl<'a> PhysicalDeviceDepthBiasControlFeaturesEXT<'a> { #[inline] + #[must_use] pub fn depth_bias_control(mut self, depth_bias_control: bool) -> Self { self.depth_bias_control = depth_bias_control.into(); self } #[inline] + #[must_use] pub fn least_representable_value_force_unorm_representation( mut self, least_representable_value_force_unorm_representation: bool, @@ -49718,11 +52974,13 @@ impl<'a> PhysicalDeviceDepthBiasControlFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn float_representation(mut self, float_representation: bool) -> Self { self.float_representation = float_representation.into(); self } #[inline] + #[must_use] pub fn depth_bias_exact(mut self, depth_bias_exact: bool) -> Self { self.depth_bias_exact = depth_bias_exact.into(); self @@ -49760,6 +53018,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRayTracingInvocationReorderFeaturesNV<'_> {} impl<'a> PhysicalDeviceRayTracingInvocationReorderFeaturesNV<'a> { #[inline] + #[must_use] pub fn ray_tracing_invocation_reorder(mut self, ray_tracing_invocation_reorder: bool) -> Self { self.ray_tracing_invocation_reorder = ray_tracing_invocation_reorder.into(); self @@ -49797,6 +53056,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceRayTracingInvocationReorderPropertiesNV<'a> { #[inline] + #[must_use] pub fn ray_tracing_invocation_reorder_reordering_hint( mut self, ray_tracing_invocation_reorder_reordering_hint: RayTracingInvocationReorderModeNV, @@ -49838,6 +53098,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExtendedSparseAddressSpaceFeaturesNV<'_> {} impl<'a> PhysicalDeviceExtendedSparseAddressSpaceFeaturesNV<'a> { #[inline] + #[must_use] pub fn extended_sparse_address_space(mut self, extended_sparse_address_space: bool) -> Self { self.extended_sparse_address_space = extended_sparse_address_space.into(); self @@ -49878,6 +53139,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceExtendedSparseAddressSpacePropertiesNV<'a> { #[inline] + #[must_use] pub fn extended_sparse_address_space_size( mut self, extended_sparse_address_space_size: DeviceSize, @@ -49886,6 +53148,7 @@ impl<'a> PhysicalDeviceExtendedSparseAddressSpacePropertiesNV<'a> { self } #[inline] + #[must_use] pub fn extended_sparse_image_usage_flags( mut self, extended_sparse_image_usage_flags: ImageUsageFlags, @@ -49894,6 +53157,7 @@ impl<'a> PhysicalDeviceExtendedSparseAddressSpacePropertiesNV<'a> { self } #[inline] + #[must_use] pub fn extended_sparse_buffer_usage_flags( mut self, extended_sparse_buffer_usage_flags: BufferUsageFlags, @@ -49943,11 +53207,13 @@ unsafe impl<'a> TaggedStructure for DirectDriverLoadingInfoLUNARG<'a> { } impl<'a> DirectDriverLoadingInfoLUNARG<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: DirectDriverLoadingFlagsLUNARG) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn pfn_get_instance_proc_addr( mut self, pfn_get_instance_proc_addr: PFN_vkGetInstanceProcAddrLUNARG, @@ -49987,11 +53253,13 @@ unsafe impl<'a> TaggedStructure for DirectDriverLoadingListLUNARG<'a> { unsafe impl ExtendsInstanceCreateInfo for DirectDriverLoadingListLUNARG<'_> {} impl<'a> DirectDriverLoadingListLUNARG<'a> { #[inline] + #[must_use] pub fn mode(mut self, mode: DirectDriverLoadingModeLUNARG) -> Self { self.mode = mode; self } #[inline] + #[must_use] pub fn drivers(mut self, drivers: &'a [DirectDriverLoadingInfoLUNARG<'a>]) -> Self { self.driver_count = drivers.len() as _; self.p_drivers = drivers.as_ptr(); @@ -50030,6 +53298,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn multiview_per_view_viewports(mut self, multiview_per_view_viewports: bool) -> Self { self.multiview_per_view_viewports = multiview_per_view_viewports.into(); self @@ -50067,6 +53336,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRayTracingPositionFetchFeaturesKHR<'_> {} impl<'a> PhysicalDeviceRayTracingPositionFetchFeaturesKHR<'a> { #[inline] + #[must_use] pub fn ray_tracing_position_fetch(mut self, ray_tracing_position_fetch: bool) -> Self { self.ray_tracing_position_fetch = ray_tracing_position_fetch.into(); self @@ -50100,11 +53370,13 @@ unsafe impl<'a> TaggedStructure for DeviceImageSubresourceInfoKHR<'a> { } impl<'a> DeviceImageSubresourceInfoKHR<'a> { #[inline] + #[must_use] pub fn create_info(mut self, create_info: &'a ImageCreateInfo<'a>) -> Self { self.p_create_info = create_info; self } #[inline] + #[must_use] pub fn subresource(mut self, subresource: &'a ImageSubresource2KHR<'a>) -> Self { self.p_subresource = subresource; self @@ -50141,16 +53413,19 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderCorePropertiesARM<'a> { unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderCorePropertiesARM<'_> {} impl<'a> PhysicalDeviceShaderCorePropertiesARM<'a> { #[inline] + #[must_use] pub fn pixel_rate(mut self, pixel_rate: u32) -> Self { self.pixel_rate = pixel_rate; self } #[inline] + #[must_use] pub fn texel_rate(mut self, texel_rate: u32) -> Self { self.texel_rate = texel_rate; self } #[inline] + #[must_use] pub fn fma_rate(mut self, fma_rate: u32) -> Self { self.fma_rate = fma_rate; self @@ -50188,6 +53463,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn multiview_per_view_render_areas( mut self, multiview_per_view_render_areas: bool, @@ -50227,6 +53503,7 @@ unsafe impl ExtendsRenderPassBeginInfo for MultiviewPerViewRenderAreasRenderPass unsafe impl ExtendsRenderingInfo for MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM<'_> {} impl<'a> MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM<'a> { #[inline] + #[must_use] pub fn per_view_render_areas(mut self, per_view_render_areas: &'a [Rect2D]) -> Self { self.per_view_render_area_count = per_view_render_areas.len() as _; self.p_per_view_render_areas = per_view_render_areas.as_ptr(); @@ -50260,6 +53537,7 @@ unsafe impl<'a> TaggedStructure for QueryLowLatencySupportNV<'a> { unsafe impl ExtendsSemaphoreCreateInfo for QueryLowLatencySupportNV<'_> {} impl<'a> QueryLowLatencySupportNV<'a> { #[inline] + #[must_use] pub fn queried_low_latency_data(mut self, queried_low_latency_data: *mut c_void) -> Self { self.p_queried_low_latency_data = queried_low_latency_data; self @@ -50297,21 +53575,25 @@ unsafe impl<'a> TaggedStructure for MemoryMapInfoKHR<'a> { } impl<'a> MemoryMapInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: MemoryMapFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self } #[inline] + #[must_use] pub fn offset(mut self, offset: DeviceSize) -> Self { self.offset = offset; self } #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -50345,11 +53627,13 @@ unsafe impl<'a> TaggedStructure for MemoryUnmapInfoKHR<'a> { } impl<'a> MemoryUnmapInfoKHR<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: MemoryUnmapFlagsKHR) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn memory(mut self, memory: DeviceMemory) -> Self { self.memory = memory; self @@ -50383,6 +53667,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderObjectFeature unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderObjectFeaturesEXT<'_> {} impl<'a> PhysicalDeviceShaderObjectFeaturesEXT<'a> { #[inline] + #[must_use] pub fn shader_object(mut self, shader_object: bool) -> Self { self.shader_object = shader_object.into(); self @@ -50418,11 +53703,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderObjectPropertiesEXT<'a> unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderObjectPropertiesEXT<'_> {} impl<'a> PhysicalDeviceShaderObjectPropertiesEXT<'a> { #[inline] + #[must_use] pub fn shader_binary_uuid(mut self, shader_binary_uuid: [u8; UUID_SIZE]) -> Self { self.shader_binary_uuid = shader_binary_uuid; self } #[inline] + #[must_use] pub fn shader_binary_version(mut self, shader_binary_version: u32) -> Self { self.shader_binary_version = shader_binary_version; self @@ -50477,57 +53764,68 @@ unsafe impl<'a> TaggedStructure for ShaderCreateInfoEXT<'a> { pub unsafe trait ExtendsShaderCreateInfoEXT {} impl<'a> ShaderCreateInfoEXT<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: ShaderCreateFlagsEXT) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stage(mut self, stage: ShaderStageFlags) -> Self { self.stage = stage; self } #[inline] + #[must_use] pub fn next_stage(mut self, next_stage: ShaderStageFlags) -> Self { self.next_stage = next_stage; self } #[inline] + #[must_use] pub fn code_type(mut self, code_type: ShaderCodeTypeEXT) -> Self { self.code_type = code_type; self } #[inline] + #[must_use] pub fn code(mut self, code: &'a [u8]) -> Self { self.code_size = code.len(); self.p_code = code.as_ptr().cast(); self } #[inline] + #[must_use] pub fn name(mut self, name: &'a core::ffi::CStr) -> Self { self.p_name = name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_name) } #[inline] + #[must_use] pub fn set_layouts(mut self, set_layouts: &'a [DescriptorSetLayout]) -> Self { self.set_layout_count = set_layouts.len() as _; self.p_set_layouts = set_layouts.as_ptr(); self } #[inline] + #[must_use] pub fn push_constant_ranges(mut self, push_constant_ranges: &'a [PushConstantRange]) -> Self { self.push_constant_range_count = push_constant_ranges.len() as _; self.p_push_constant_ranges = push_constant_ranges.as_ptr(); self } #[inline] + #[must_use] pub fn specialization_info(mut self, specialization_info: &'a SpecializationInfo<'a>) -> Self { self.p_specialization_info = specialization_info; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -50576,6 +53874,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderTileImageFeat unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderTileImageFeaturesEXT<'_> {} impl<'a> PhysicalDeviceShaderTileImageFeaturesEXT<'a> { #[inline] + #[must_use] pub fn shader_tile_image_color_read_access( mut self, shader_tile_image_color_read_access: bool, @@ -50584,6 +53883,7 @@ impl<'a> PhysicalDeviceShaderTileImageFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_tile_image_depth_read_access( mut self, shader_tile_image_depth_read_access: bool, @@ -50592,6 +53892,7 @@ impl<'a> PhysicalDeviceShaderTileImageFeaturesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_tile_image_stencil_read_access( mut self, shader_tile_image_stencil_read_access: bool, @@ -50632,6 +53933,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderTileImagePropertiesEXT<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderTileImagePropertiesEXT<'_> {} impl<'a> PhysicalDeviceShaderTileImagePropertiesEXT<'a> { #[inline] + #[must_use] pub fn shader_tile_image_coherent_read_accelerated( mut self, shader_tile_image_coherent_read_accelerated: bool, @@ -50641,6 +53943,7 @@ impl<'a> PhysicalDeviceShaderTileImagePropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_tile_image_read_sample_from_pixel_rate_invocation( mut self, shader_tile_image_read_sample_from_pixel_rate_invocation: bool, @@ -50650,6 +53953,7 @@ impl<'a> PhysicalDeviceShaderTileImagePropertiesEXT<'a> { self } #[inline] + #[must_use] pub fn shader_tile_image_read_from_helper_invocation( mut self, shader_tile_image_read_from_helper_invocation: bool, @@ -50686,6 +53990,7 @@ unsafe impl<'a> TaggedStructure for ImportScreenBufferInfoQNX<'a> { unsafe impl ExtendsMemoryAllocateInfo for ImportScreenBufferInfoQNX<'_> {} impl<'a> ImportScreenBufferInfoQNX<'a> { #[inline] + #[must_use] pub fn buffer(mut self, buffer: &'a mut _screen_buffer) -> Self { self.buffer = buffer; self @@ -50720,15 +54025,18 @@ unsafe impl<'a> TaggedStructure for ScreenBufferPropertiesQNX<'a> { pub unsafe trait ExtendsScreenBufferPropertiesQNX {} impl<'a> ScreenBufferPropertiesQNX<'a> { #[inline] + #[must_use] pub fn allocation_size(mut self, allocation_size: DeviceSize) -> Self { self.allocation_size = allocation_size; self } #[inline] + #[must_use] pub fn memory_type_bits(mut self, memory_type_bits: u32) -> Self { self.memory_type_bits = memory_type_bits; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -50787,26 +54095,31 @@ unsafe impl<'a> TaggedStructure for ScreenBufferFormatPropertiesQNX<'a> { unsafe impl ExtendsScreenBufferPropertiesQNX for ScreenBufferFormatPropertiesQNX<'_> {} impl<'a> ScreenBufferFormatPropertiesQNX<'a> { #[inline] + #[must_use] pub fn format(mut self, format: Format) -> Self { self.format = format; self } #[inline] + #[must_use] pub fn external_format(mut self, external_format: u64) -> Self { self.external_format = external_format; self } #[inline] + #[must_use] pub fn screen_usage(mut self, screen_usage: u64) -> Self { self.screen_usage = screen_usage; self } #[inline] + #[must_use] pub fn format_features(mut self, format_features: FormatFeatureFlags) -> Self { self.format_features = format_features; self } #[inline] + #[must_use] pub fn sampler_ycbcr_conversion_components( mut self, sampler_ycbcr_conversion_components: ComponentMapping, @@ -50815,6 +54128,7 @@ impl<'a> ScreenBufferFormatPropertiesQNX<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_model( mut self, suggested_ycbcr_model: SamplerYcbcrModelConversion, @@ -50823,16 +54137,19 @@ impl<'a> ScreenBufferFormatPropertiesQNX<'a> { self } #[inline] + #[must_use] pub fn suggested_ycbcr_range(mut self, suggested_ycbcr_range: SamplerYcbcrRange) -> Self { self.suggested_ycbcr_range = suggested_ycbcr_range; self } #[inline] + #[must_use] pub fn suggested_x_chroma_offset(mut self, suggested_x_chroma_offset: ChromaLocation) -> Self { self.suggested_x_chroma_offset = suggested_x_chroma_offset; self } #[inline] + #[must_use] pub fn suggested_y_chroma_offset(mut self, suggested_y_chroma_offset: ChromaLocation) -> Self { self.suggested_y_chroma_offset = suggested_y_chroma_offset; self @@ -50866,6 +54183,7 @@ unsafe impl ExtendsImageCreateInfo for ExternalFormatQNX<'_> {} unsafe impl ExtendsSamplerYcbcrConversionCreateInfo for ExternalFormatQNX<'_> {} impl<'a> ExternalFormatQNX<'a> { #[inline] + #[must_use] pub fn external_format(mut self, external_format: u64) -> Self { self.external_format = external_format; self @@ -50903,6 +54221,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExternalMemoryScreenBufferFeaturesQNX<'_> {} impl<'a> PhysicalDeviceExternalMemoryScreenBufferFeaturesQNX<'a> { #[inline] + #[must_use] pub fn screen_buffer_import(mut self, screen_buffer_import: bool) -> Self { self.screen_buffer_import = screen_buffer_import.into(); self @@ -50939,11 +54258,13 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCooperativeMatrixFe unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCooperativeMatrixFeaturesKHR<'_> {} impl<'a> PhysicalDeviceCooperativeMatrixFeaturesKHR<'a> { #[inline] + #[must_use] pub fn cooperative_matrix(mut self, cooperative_matrix: bool) -> Self { self.cooperative_matrix = cooperative_matrix.into(); self } #[inline] + #[must_use] pub fn cooperative_matrix_robust_buffer_access( mut self, cooperative_matrix_robust_buffer_access: bool, @@ -50995,46 +54316,55 @@ unsafe impl<'a> TaggedStructure for CooperativeMatrixPropertiesKHR<'a> { } impl<'a> CooperativeMatrixPropertiesKHR<'a> { #[inline] + #[must_use] pub fn m_size(mut self, m_size: u32) -> Self { self.m_size = m_size; self } #[inline] + #[must_use] pub fn n_size(mut self, n_size: u32) -> Self { self.n_size = n_size; self } #[inline] + #[must_use] pub fn k_size(mut self, k_size: u32) -> Self { self.k_size = k_size; self } #[inline] + #[must_use] pub fn a_type(mut self, a_type: ComponentTypeKHR) -> Self { self.a_type = a_type; self } #[inline] + #[must_use] pub fn b_type(mut self, b_type: ComponentTypeKHR) -> Self { self.b_type = b_type; self } #[inline] + #[must_use] pub fn c_type(mut self, c_type: ComponentTypeKHR) -> Self { self.c_type = c_type; self } #[inline] + #[must_use] pub fn result_type(mut self, result_type: ComponentTypeKHR) -> Self { self.result_type = result_type; self } #[inline] + #[must_use] pub fn saturating_accumulation(mut self, saturating_accumulation: bool) -> Self { self.saturating_accumulation = saturating_accumulation.into(); self } #[inline] + #[must_use] pub fn scope(mut self, scope: ScopeKHR) -> Self { self.scope = scope; self @@ -51068,6 +54398,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceCooperativeMatrixPropertiesKHR unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceCooperativeMatrixPropertiesKHR<'_> {} impl<'a> PhysicalDeviceCooperativeMatrixPropertiesKHR<'a> { #[inline] + #[must_use] pub fn cooperative_matrix_supported_stages( mut self, cooperative_matrix_supported_stages: ShaderStageFlags, @@ -51112,11 +54443,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceShaderEnqueuePropertiesAMDX<'a unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceShaderEnqueuePropertiesAMDX<'_> {} impl<'a> PhysicalDeviceShaderEnqueuePropertiesAMDX<'a> { #[inline] + #[must_use] pub fn max_execution_graph_depth(mut self, max_execution_graph_depth: u32) -> Self { self.max_execution_graph_depth = max_execution_graph_depth; self } #[inline] + #[must_use] pub fn max_execution_graph_shader_output_nodes( mut self, max_execution_graph_shader_output_nodes: u32, @@ -51125,6 +54458,7 @@ impl<'a> PhysicalDeviceShaderEnqueuePropertiesAMDX<'a> { self } #[inline] + #[must_use] pub fn max_execution_graph_shader_payload_size( mut self, max_execution_graph_shader_payload_size: u32, @@ -51133,6 +54467,7 @@ impl<'a> PhysicalDeviceShaderEnqueuePropertiesAMDX<'a> { self } #[inline] + #[must_use] pub fn max_execution_graph_shader_payload_count( mut self, max_execution_graph_shader_payload_count: u32, @@ -51141,6 +54476,7 @@ impl<'a> PhysicalDeviceShaderEnqueuePropertiesAMDX<'a> { self } #[inline] + #[must_use] pub fn execution_graph_dispatch_address_alignment( mut self, execution_graph_dispatch_address_alignment: u32, @@ -51179,6 +54515,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceShaderEnqueueFeatur unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceShaderEnqueueFeaturesAMDX<'_> {} impl<'a> PhysicalDeviceShaderEnqueueFeaturesAMDX<'a> { #[inline] + #[must_use] pub fn shader_enqueue(mut self, shader_enqueue: bool) -> Self { self.shader_enqueue = shader_enqueue.into(); self @@ -51223,36 +54560,43 @@ unsafe impl<'a> TaggedStructure for ExecutionGraphPipelineCreateInfoAMDX<'a> { pub unsafe trait ExtendsExecutionGraphPipelineCreateInfoAMDX {} impl<'a> ExecutionGraphPipelineCreateInfoAMDX<'a> { #[inline] + #[must_use] pub fn flags(mut self, flags: PipelineCreateFlags) -> Self { self.flags = flags; self } #[inline] + #[must_use] pub fn stages(mut self, stages: &'a [PipelineShaderStageCreateInfo<'a>]) -> Self { self.stage_count = stages.len() as _; self.p_stages = stages.as_ptr(); self } #[inline] + #[must_use] pub fn library_info(mut self, library_info: &'a PipelineLibraryCreateInfoKHR<'a>) -> Self { self.p_library_info = library_info; self } #[inline] + #[must_use] pub fn layout(mut self, layout: PipelineLayout) -> Self { self.layout = layout; self } #[inline] + #[must_use] pub fn base_pipeline_handle(mut self, base_pipeline_handle: Pipeline) -> Self { self.base_pipeline_handle = base_pipeline_handle; self } #[inline] + #[must_use] pub fn base_pipeline_index(mut self, base_pipeline_index: i32) -> Self { self.base_pipeline_index = base_pipeline_index; self } + #[must_use] #[doc = r" Prepends the given extension struct between the root and the first pointer. This"] #[doc = r" method only exists on structs that can be passed to a function directly. Only"] #[doc = r" valid extension structs can be pushed into the chain."] @@ -51301,15 +54645,18 @@ unsafe impl<'a> TaggedStructure for PipelineShaderStageNodeCreateInfoAMDX<'a> { unsafe impl ExtendsPipelineShaderStageCreateInfo for PipelineShaderStageNodeCreateInfoAMDX<'_> {} impl<'a> PipelineShaderStageNodeCreateInfoAMDX<'a> { #[inline] + #[must_use] pub fn name(mut self, name: &'a core::ffi::CStr) -> Self { self.p_name = name.as_ptr(); self } #[inline] + #[must_use] pub unsafe fn name_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.p_name) } #[inline] + #[must_use] pub fn index(mut self, index: u32) -> Self { self.index = index; self @@ -51341,6 +54688,7 @@ unsafe impl<'a> TaggedStructure for ExecutionGraphPipelineScratchSizeAMDX<'a> { } impl<'a> ExecutionGraphPipelineScratchSizeAMDX<'a> { #[inline] + #[must_use] pub fn size(mut self, size: DeviceSize) -> Self { self.size = size; self @@ -51368,21 +54716,25 @@ impl fmt::Debug for DispatchGraphInfoAMDX { } impl DispatchGraphInfoAMDX { #[inline] + #[must_use] pub fn node_index(mut self, node_index: u32) -> Self { self.node_index = node_index; self } #[inline] + #[must_use] pub fn payload_count(mut self, payload_count: u32) -> Self { self.payload_count = payload_count; self } #[inline] + #[must_use] pub fn payloads(mut self, payloads: DeviceOrHostAddressConstAMDX) -> Self { self.payloads = payloads; self } #[inline] + #[must_use] pub fn payload_stride(mut self, payload_stride: u64) -> Self { self.payload_stride = payload_stride; self @@ -51408,16 +54760,19 @@ impl fmt::Debug for DispatchGraphCountInfoAMDX { } impl DispatchGraphCountInfoAMDX { #[inline] + #[must_use] pub fn count(mut self, count: u32) -> Self { self.count = count; self } #[inline] + #[must_use] pub fn infos(mut self, infos: DeviceOrHostAddressConstAMDX) -> Self { self.infos = infos; self } #[inline] + #[must_use] pub fn stride(mut self, stride: u64) -> Self { self.stride = stride; self @@ -51451,6 +54806,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCubicClampFeaturesQ unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCubicClampFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceCubicClampFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn cubic_range_clamp(mut self, cubic_range_clamp: bool) -> Self { self.cubic_range_clamp = cubic_range_clamp.into(); self @@ -51485,6 +54841,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceYcbcrDegammaFeature unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceYcbcrDegammaFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceYcbcrDegammaFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn ycbcr_degamma(mut self, ycbcr_degamma: bool) -> Self { self.ycbcr_degamma = ycbcr_degamma.into(); self @@ -51523,11 +54880,13 @@ unsafe impl ExtendsSamplerYcbcrConversionCreateInfo } impl<'a> SamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM<'a> { #[inline] + #[must_use] pub fn enable_y_degamma(mut self, enable_y_degamma: bool) -> Self { self.enable_y_degamma = enable_y_degamma.into(); self } #[inline] + #[must_use] pub fn enable_cb_cr_degamma(mut self, enable_cb_cr_degamma: bool) -> Self { self.enable_cb_cr_degamma = enable_cb_cr_degamma.into(); self @@ -51562,6 +54921,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCubicWeightsFeature unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCubicWeightsFeaturesQCOM<'_> {} impl<'a> PhysicalDeviceCubicWeightsFeaturesQCOM<'a> { #[inline] + #[must_use] pub fn selectable_cubic_weights(mut self, selectable_cubic_weights: bool) -> Self { self.selectable_cubic_weights = selectable_cubic_weights.into(); self @@ -51594,6 +54954,7 @@ unsafe impl<'a> TaggedStructure for SamplerCubicWeightsCreateInfoQCOM<'a> { unsafe impl ExtendsSamplerCreateInfo for SamplerCubicWeightsCreateInfoQCOM<'_> {} impl<'a> SamplerCubicWeightsCreateInfoQCOM<'a> { #[inline] + #[must_use] pub fn cubic_weights(mut self, cubic_weights: CubicFilterWeightsQCOM) -> Self { self.cubic_weights = cubic_weights; self @@ -51626,6 +54987,7 @@ unsafe impl<'a> TaggedStructure for BlitImageCubicWeightsInfoQCOM<'a> { unsafe impl ExtendsBlitImageInfo2 for BlitImageCubicWeightsInfoQCOM<'_> {} impl<'a> BlitImageCubicWeightsInfoQCOM<'a> { #[inline] + #[must_use] pub fn cubic_weights(mut self, cubic_weights: CubicFilterWeightsQCOM) -> Self { self.cubic_weights = cubic_weights; self @@ -51660,6 +55022,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceImageProcessing2Fea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceImageProcessing2FeaturesQCOM<'_> {} impl<'a> PhysicalDeviceImageProcessing2FeaturesQCOM<'a> { #[inline] + #[must_use] pub fn texture_block_match2(mut self, texture_block_match2: bool) -> Self { self.texture_block_match2 = texture_block_match2.into(); self @@ -51693,6 +55056,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceImageProcessing2PropertiesQCOM unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceImageProcessing2PropertiesQCOM<'_> {} impl<'a> PhysicalDeviceImageProcessing2PropertiesQCOM<'a> { #[inline] + #[must_use] pub fn max_block_match_window(mut self, max_block_match_window: Extent2D) -> Self { self.max_block_match_window = max_block_match_window; self @@ -51728,11 +55092,13 @@ unsafe impl<'a> TaggedStructure for SamplerBlockMatchWindowCreateInfoQCOM<'a> { unsafe impl ExtendsSamplerCreateInfo for SamplerBlockMatchWindowCreateInfoQCOM<'_> {} impl<'a> SamplerBlockMatchWindowCreateInfoQCOM<'a> { #[inline] + #[must_use] pub fn window_extent(mut self, window_extent: Extent2D) -> Self { self.window_extent = window_extent; self } #[inline] + #[must_use] pub fn window_compare_mode( mut self, window_compare_mode: BlockMatchWindowCompareModeQCOM, @@ -51773,6 +55139,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceDescriptorPoolOverallocationFeaturesNV<'_> {} impl<'a> PhysicalDeviceDescriptorPoolOverallocationFeaturesNV<'a> { #[inline] + #[must_use] pub fn descriptor_pool_overallocation(mut self, descriptor_pool_overallocation: bool) -> Self { self.descriptor_pool_overallocation = descriptor_pool_overallocation.into(); self @@ -51806,6 +55173,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceLayeredDriverPropertiesMSFT<'a unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceLayeredDriverPropertiesMSFT<'_> {} impl<'a> PhysicalDeviceLayeredDriverPropertiesMSFT<'a> { #[inline] + #[must_use] pub fn underlying_api(mut self, underlying_api: LayeredDriverUnderlyingApiMSFT) -> Self { self.underlying_api = underlying_api; self @@ -51843,6 +55211,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceExternalFormatResolveFeaturesANDROID<'_> {} impl<'a> PhysicalDeviceExternalFormatResolveFeaturesANDROID<'a> { #[inline] + #[must_use] pub fn external_format_resolve(mut self, external_format_resolve: bool) -> Self { self.external_format_resolve = external_format_resolve.into(); self @@ -51883,6 +55252,7 @@ unsafe impl ExtendsPhysicalDeviceProperties2 } impl<'a> PhysicalDeviceExternalFormatResolvePropertiesANDROID<'a> { #[inline] + #[must_use] pub fn null_color_attachment_with_external_format_resolve( mut self, null_color_attachment_with_external_format_resolve: bool, @@ -51892,6 +55262,7 @@ impl<'a> PhysicalDeviceExternalFormatResolvePropertiesANDROID<'a> { self } #[inline] + #[must_use] pub fn external_format_resolve_chroma_offset_x( mut self, external_format_resolve_chroma_offset_x: ChromaLocation, @@ -51900,6 +55271,7 @@ impl<'a> PhysicalDeviceExternalFormatResolvePropertiesANDROID<'a> { self } #[inline] + #[must_use] pub fn external_format_resolve_chroma_offset_y( mut self, external_format_resolve_chroma_offset_y: ChromaLocation, @@ -51939,6 +55311,7 @@ unsafe impl ExtendsAndroidHardwareBufferPropertiesANDROID } impl<'a> AndroidHardwareBufferFormatResolvePropertiesANDROID<'a> { #[inline] + #[must_use] pub fn color_attachment_format(mut self, color_attachment_format: Format) -> Self { self.color_attachment_format = color_attachment_format; self @@ -51974,16 +55347,19 @@ unsafe impl<'a> TaggedStructure for LatencySleepModeInfoNV<'a> { } impl<'a> LatencySleepModeInfoNV<'a> { #[inline] + #[must_use] pub fn low_latency_mode(mut self, low_latency_mode: bool) -> Self { self.low_latency_mode = low_latency_mode.into(); self } #[inline] + #[must_use] pub fn low_latency_boost(mut self, low_latency_boost: bool) -> Self { self.low_latency_boost = low_latency_boost.into(); self } #[inline] + #[must_use] pub fn minimum_interval_us(mut self, minimum_interval_us: u32) -> Self { self.minimum_interval_us = minimum_interval_us; self @@ -52017,11 +55393,13 @@ unsafe impl<'a> TaggedStructure for LatencySleepInfoNV<'a> { } impl<'a> LatencySleepInfoNV<'a> { #[inline] + #[must_use] pub fn signal_semaphore(mut self, signal_semaphore: Semaphore) -> Self { self.signal_semaphore = signal_semaphore; self } #[inline] + #[must_use] pub fn value(mut self, value: u64) -> Self { self.value = value; self @@ -52055,11 +55433,13 @@ unsafe impl<'a> TaggedStructure for SetLatencyMarkerInfoNV<'a> { } impl<'a> SetLatencyMarkerInfoNV<'a> { #[inline] + #[must_use] pub fn present_id(mut self, present_id: u64) -> Self { self.present_id = present_id; self } #[inline] + #[must_use] pub fn marker(mut self, marker: LatencyMarkerNV) -> Self { self.marker = marker; self @@ -52093,6 +55473,7 @@ unsafe impl<'a> TaggedStructure for GetLatencyMarkerInfoNV<'a> { } impl<'a> GetLatencyMarkerInfoNV<'a> { #[inline] + #[must_use] pub fn timings(mut self, timings: &'a mut [LatencyTimingsFrameReportNV<'_>]) -> Self { self.timing_count = timings.len() as _; self.p_timings = timings.as_mut_ptr().cast(); @@ -52151,71 +55532,85 @@ unsafe impl<'a> TaggedStructure for LatencyTimingsFrameReportNV<'a> { } impl<'a> LatencyTimingsFrameReportNV<'a> { #[inline] + #[must_use] pub fn present_id(mut self, present_id: u64) -> Self { self.present_id = present_id; self } #[inline] + #[must_use] pub fn input_sample_time_us(mut self, input_sample_time_us: u64) -> Self { self.input_sample_time_us = input_sample_time_us; self } #[inline] + #[must_use] pub fn sim_start_time_us(mut self, sim_start_time_us: u64) -> Self { self.sim_start_time_us = sim_start_time_us; self } #[inline] + #[must_use] pub fn sim_end_time_us(mut self, sim_end_time_us: u64) -> Self { self.sim_end_time_us = sim_end_time_us; self } #[inline] + #[must_use] pub fn render_submit_start_time_us(mut self, render_submit_start_time_us: u64) -> Self { self.render_submit_start_time_us = render_submit_start_time_us; self } #[inline] + #[must_use] pub fn render_submit_end_time_us(mut self, render_submit_end_time_us: u64) -> Self { self.render_submit_end_time_us = render_submit_end_time_us; self } #[inline] + #[must_use] pub fn present_start_time_us(mut self, present_start_time_us: u64) -> Self { self.present_start_time_us = present_start_time_us; self } #[inline] + #[must_use] pub fn present_end_time_us(mut self, present_end_time_us: u64) -> Self { self.present_end_time_us = present_end_time_us; self } #[inline] + #[must_use] pub fn driver_start_time_us(mut self, driver_start_time_us: u64) -> Self { self.driver_start_time_us = driver_start_time_us; self } #[inline] + #[must_use] pub fn driver_end_time_us(mut self, driver_end_time_us: u64) -> Self { self.driver_end_time_us = driver_end_time_us; self } #[inline] + #[must_use] pub fn os_render_queue_start_time_us(mut self, os_render_queue_start_time_us: u64) -> Self { self.os_render_queue_start_time_us = os_render_queue_start_time_us; self } #[inline] + #[must_use] pub fn os_render_queue_end_time_us(mut self, os_render_queue_end_time_us: u64) -> Self { self.os_render_queue_end_time_us = os_render_queue_end_time_us; self } #[inline] + #[must_use] pub fn gpu_render_start_time_us(mut self, gpu_render_start_time_us: u64) -> Self { self.gpu_render_start_time_us = gpu_render_start_time_us; self } #[inline] + #[must_use] pub fn gpu_render_end_time_us(mut self, gpu_render_end_time_us: u64) -> Self { self.gpu_render_end_time_us = gpu_render_end_time_us; self @@ -52247,6 +55642,7 @@ unsafe impl<'a> TaggedStructure for OutOfBandQueueTypeInfoNV<'a> { } impl<'a> OutOfBandQueueTypeInfoNV<'a> { #[inline] + #[must_use] pub fn queue_type(mut self, queue_type: OutOfBandQueueTypeNV) -> Self { self.queue_type = queue_type; self @@ -52280,6 +55676,7 @@ unsafe impl ExtendsSubmitInfo for LatencySubmissionPresentIdNV<'_> {} unsafe impl ExtendsSubmitInfo2 for LatencySubmissionPresentIdNV<'_> {} impl<'a> LatencySubmissionPresentIdNV<'a> { #[inline] + #[must_use] pub fn present_id(mut self, present_id: u64) -> Self { self.present_id = present_id; self @@ -52312,6 +55709,7 @@ unsafe impl<'a> TaggedStructure for SwapchainLatencyCreateInfoNV<'a> { unsafe impl ExtendsSwapchainCreateInfoKHR for SwapchainLatencyCreateInfoNV<'_> {} impl<'a> SwapchainLatencyCreateInfoNV<'a> { #[inline] + #[must_use] pub fn latency_mode_enable(mut self, latency_mode_enable: bool) -> Self { self.latency_mode_enable = latency_mode_enable.into(); self @@ -52346,6 +55744,7 @@ unsafe impl<'a> TaggedStructure for LatencySurfaceCapabilitiesNV<'a> { unsafe impl ExtendsSurfaceCapabilities2KHR for LatencySurfaceCapabilitiesNV<'_> {} impl<'a> LatencySurfaceCapabilitiesNV<'a> { #[inline] + #[must_use] pub fn present_modes(mut self, present_modes: &'a mut [PresentModeKHR]) -> Self { self.present_mode_count = present_modes.len() as _; self.p_present_modes = present_modes.as_mut_ptr(); @@ -52381,6 +55780,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceCudaKernelLaunchFea unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceCudaKernelLaunchFeaturesNV<'_> {} impl<'a> PhysicalDeviceCudaKernelLaunchFeaturesNV<'a> { #[inline] + #[must_use] pub fn cuda_kernel_launch_features(mut self, cuda_kernel_launch_features: bool) -> Self { self.cuda_kernel_launch_features = cuda_kernel_launch_features.into(); self @@ -52416,11 +55816,13 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceCudaKernelLaunchPropertiesNV<' unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceCudaKernelLaunchPropertiesNV<'_> {} impl<'a> PhysicalDeviceCudaKernelLaunchPropertiesNV<'a> { #[inline] + #[must_use] pub fn compute_capability_minor(mut self, compute_capability_minor: u32) -> Self { self.compute_capability_minor = compute_capability_minor; self } #[inline] + #[must_use] pub fn compute_capability_major(mut self, compute_capability_major: u32) -> Self { self.compute_capability_major = compute_capability_major; self @@ -52455,6 +55857,7 @@ unsafe impl ExtendsDeviceQueueCreateInfo for DeviceQueueShaderCoreControlCreateI unsafe impl ExtendsDeviceCreateInfo for DeviceQueueShaderCoreControlCreateInfoARM<'_> {} impl<'a> DeviceQueueShaderCoreControlCreateInfoARM<'a> { #[inline] + #[must_use] pub fn shader_core_count(mut self, shader_core_count: u32) -> Self { self.shader_core_count = shader_core_count; self @@ -52489,6 +55892,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 for PhysicalDeviceSchedulingControlsF unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceSchedulingControlsFeaturesARM<'_> {} impl<'a> PhysicalDeviceSchedulingControlsFeaturesARM<'a> { #[inline] + #[must_use] pub fn scheduling_controls(mut self, scheduling_controls: bool) -> Self { self.scheduling_controls = scheduling_controls.into(); self @@ -52522,6 +55926,7 @@ unsafe impl<'a> TaggedStructure for PhysicalDeviceSchedulingControlsPropertiesAR unsafe impl ExtendsPhysicalDeviceProperties2 for PhysicalDeviceSchedulingControlsPropertiesARM<'_> {} impl<'a> PhysicalDeviceSchedulingControlsPropertiesARM<'a> { #[inline] + #[must_use] pub fn scheduling_controls_flags( mut self, scheduling_controls_flags: PhysicalDeviceSchedulingControlsFlagsARM, @@ -52562,6 +55967,7 @@ unsafe impl ExtendsPhysicalDeviceFeatures2 unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceRelaxedLineRasterizationFeaturesIMG<'_> {} impl<'a> PhysicalDeviceRelaxedLineRasterizationFeaturesIMG<'a> { #[inline] + #[must_use] pub fn relaxed_line_rasterization(mut self, relaxed_line_rasterization: bool) -> Self { self.relaxed_line_rasterization = relaxed_line_rasterization.into(); self diff --git a/generator/src/lib.rs b/generator/src/lib.rs index de9a36782..2496b8ba7 100644 --- a/generator/src/lib.rs +++ b/generator/src/lib.rs @@ -1953,6 +1953,7 @@ fn derive_setters( if struct_.name == "VkShaderModuleCreateInfo" && name == "pCode" { return Some(quote! { #[inline] + #[must_use] pub fn code(mut self, code: &'a [u32]) -> Self { self.code_size = code.len() * 4; self.p_code = code.as_ptr(); @@ -1969,6 +1970,7 @@ fn derive_setters( /// See /// for more details. #[inline] + #[must_use] pub fn sample_mask(mut self, sample_mask: &'a [SampleMask]) -> Self { self.p_sample_mask = if sample_mask.is_empty() { std::ptr::null() @@ -1986,14 +1988,16 @@ fn derive_setters( assert!(field.null_terminate); assert_eq!(field.size, None); return Some(quote! { - #[inline] #deprecated + #[inline] + #[must_use] pub fn #param_ident_short(mut self, #param_ident_short: &'a core::ffi::CStr) -> Self { self.#param_ident = #param_ident_short.as_ptr(); self } - #[inline] #deprecated + #[inline] + #[must_use] pub unsafe fn #param_ident_as_c_str(&self) -> &core::ffi::CStr { core::ffi::CStr::from_ptr(self.#param_ident) } @@ -2001,13 +2005,13 @@ fn derive_setters( } else if is_static_array(field) { assert_eq!(field.size, None); return Some(quote! { - #[inline] #deprecated + #[inline] pub fn #param_ident_short(mut self, #param_ident_short: &core::ffi::CStr) -> core::result::Result { write_c_str_slice_with_nul(&mut self.#param_ident, #param_ident_short).map(|()| self) } - #[inline] #deprecated + #[inline] pub fn #param_ident_as_c_str(&self) -> core::result::Result<&core::ffi::CStr, core::ffi::FromBytesUntilNulError> { wrap_c_str_slice_until_nul(&self.#param_ident) } @@ -2075,8 +2079,9 @@ fn derive_setters( let mutable = if field.is_const { quote!() } else { quote!(mut) }; return Some(quote! { - #[inline] #deprecated + #[inline] + #[must_use] pub fn #param_ident_short(mut self, #param_ident_short: &'a #mutable #slice_param_ty_tokens) -> Self { #set_size_stmt self.#param_ident = #param_ident_short #ptr; @@ -2088,8 +2093,9 @@ fn derive_setters( if field.basetype == "VkBool32" { return Some(quote!{ - #[inline] #deprecated + #[inline] + #[must_use] pub fn #param_ident_short(mut self, #param_ident_short: bool) -> Self { self.#param_ident = #param_ident_short.into(); self @@ -2109,8 +2115,9 @@ fn derive_setters( let objecttype_ident = format_ident!("{}", objecttype.to_snake_case()); return Some(quote!{ - #[inline] #deprecated + #[inline] + #[must_use] pub fn #param_ident_short(mut self, #param_ident_short: T) -> Self { self.#param_ident = #param_ident_short.as_raw(); self.#objecttype_ident = T::TYPE; @@ -2128,8 +2135,9 @@ fn derive_setters( }; Some(quote!{ - #[inline] #deprecated + #[inline] + #[must_use] pub fn #param_ident_short(mut self, #param_ident_short: #param_ty_tokens) -> Self { self.#param_ident = #param_ident_short; self @@ -2152,6 +2160,7 @@ fn derive_setters( quote!(mut) }; quote! { + #[must_use] /// Prepends the given extension struct between the root and the first pointer. This /// method only exists on structs that can be passed to a function directly. Only /// valid extension structs can be pushed into the chain.