erupt/generated/extensions/
ext_robustness2.rs1#[doc(alias = "VK_EXT_ROBUSTNESS_2_SPEC_VERSION")]
4pub const EXT_ROBUSTNESS_2_SPEC_VERSION: u32 = 1;
5#[doc(alias = "VK_EXT_ROBUSTNESS_2_EXTENSION_NAME")]
7pub const EXT_ROBUSTNESS_2_EXTENSION_NAME: *const std::os::raw::c_char = crate::cstr!(
8 "VK_EXT_robustness2"
9);
10impl crate::vk1_0::StructureType {
12 pub const PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT: Self = Self(1000286000);
13 pub const PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT: Self = Self(1000286001);
14}
15impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceRobustness2FeaturesEXT>
16for crate::vk1_0::DeviceCreateInfoBuilder<'a> {}
17impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceRobustness2FeaturesEXTBuilder<'_>>
18for crate::vk1_0::DeviceCreateInfoBuilder<'a> {}
19impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceRobustness2FeaturesEXT>
20for crate::vk1_1::PhysicalDeviceFeatures2Builder<'a> {}
21impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceRobustness2FeaturesEXTBuilder<'_>>
22for crate::vk1_1::PhysicalDeviceFeatures2Builder<'a> {}
23impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceRobustness2PropertiesEXT>
24for crate::vk1_1::PhysicalDeviceProperties2Builder<'a> {}
25impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceRobustness2PropertiesEXTBuilder<'_>>
26for crate::vk1_1::PhysicalDeviceProperties2Builder<'a> {}
27#[doc(alias = "VkPhysicalDeviceRobustness2FeaturesEXT")]
29#[derive(Copy, Clone)]
30#[repr(C)]
31pub struct PhysicalDeviceRobustness2FeaturesEXT {
32 pub s_type: crate::vk1_0::StructureType,
33 pub p_next: *mut std::ffi::c_void,
34 pub robust_buffer_access2: crate::vk1_0::Bool32,
35 pub robust_image_access2: crate::vk1_0::Bool32,
36 pub null_descriptor: crate::vk1_0::Bool32,
37}
38impl PhysicalDeviceRobustness2FeaturesEXT {
39 pub const STRUCTURE_TYPE: crate::vk1_0::StructureType = crate::vk1_0::StructureType::PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT;
40}
41impl Default for PhysicalDeviceRobustness2FeaturesEXT {
42 fn default() -> Self {
43 Self {
44 s_type: Self::STRUCTURE_TYPE,
45 p_next: std::ptr::null_mut(),
46 robust_buffer_access2: Default::default(),
47 robust_image_access2: Default::default(),
48 null_descriptor: Default::default(),
49 }
50 }
51}
52impl std::fmt::Debug for PhysicalDeviceRobustness2FeaturesEXT {
53 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
54 f.debug_struct("PhysicalDeviceRobustness2FeaturesEXT")
55 .field("s_type", &self.s_type)
56 .field("p_next", &self.p_next)
57 .field("robust_buffer_access2", &(self.robust_buffer_access2 != 0))
58 .field("robust_image_access2", &(self.robust_image_access2 != 0))
59 .field("null_descriptor", &(self.null_descriptor != 0))
60 .finish()
61 }
62}
63impl PhysicalDeviceRobustness2FeaturesEXT {
64 #[inline]
65 pub fn into_builder<'a>(self) -> PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
66 PhysicalDeviceRobustness2FeaturesEXTBuilder(self, std::marker::PhantomData)
67 }
68}
69#[derive(Copy, Clone)]
70#[repr(transparent)]
72pub struct PhysicalDeviceRobustness2FeaturesEXTBuilder<'a>(
73 PhysicalDeviceRobustness2FeaturesEXT,
74 std::marker::PhantomData<&'a ()>,
75);
76impl<'a> PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
77 #[inline]
78 pub fn new() -> PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
79 PhysicalDeviceRobustness2FeaturesEXTBuilder(
80 Default::default(),
81 std::marker::PhantomData,
82 )
83 }
84 #[inline]
85 #[must_use]
86 pub fn robust_buffer_access2(mut self, robust_buffer_access2: bool) -> Self {
87 self.0.robust_buffer_access2 = robust_buffer_access2 as _;
88 self
89 }
90 #[inline]
91 #[must_use]
92 pub fn robust_image_access2(mut self, robust_image_access2: bool) -> Self {
93 self.0.robust_image_access2 = robust_image_access2 as _;
94 self
95 }
96 #[inline]
97 #[must_use]
98 pub fn null_descriptor(mut self, null_descriptor: bool) -> Self {
99 self.0.null_descriptor = null_descriptor as _;
100 self
101 }
102 #[inline]
103 pub fn build_dangling(self) -> PhysicalDeviceRobustness2FeaturesEXT {
106 self.0
107 }
108}
109impl<'a> std::default::Default for PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
110 fn default() -> PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
111 Self::new()
112 }
113}
114impl<'a> std::fmt::Debug for PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
115 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
116 std::fmt::Debug::fmt(&self.0, f)
117 }
118}
119impl<'a> std::ops::Deref for PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
120 type Target = PhysicalDeviceRobustness2FeaturesEXT;
121 fn deref(&self) -> &Self::Target {
122 &self.0
123 }
124}
125impl<'a> std::ops::DerefMut for PhysicalDeviceRobustness2FeaturesEXTBuilder<'a> {
126 fn deref_mut(&mut self) -> &mut Self::Target {
127 &mut self.0
128 }
129}
130#[doc(alias = "VkPhysicalDeviceRobustness2PropertiesEXT")]
132#[derive(Copy, Clone)]
133#[repr(C)]
134pub struct PhysicalDeviceRobustness2PropertiesEXT {
135 pub s_type: crate::vk1_0::StructureType,
136 pub p_next: *mut std::ffi::c_void,
137 pub robust_storage_buffer_access_size_alignment: crate::vk1_0::DeviceSize,
138 pub robust_uniform_buffer_access_size_alignment: crate::vk1_0::DeviceSize,
139}
140impl PhysicalDeviceRobustness2PropertiesEXT {
141 pub const STRUCTURE_TYPE: crate::vk1_0::StructureType = crate::vk1_0::StructureType::PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT;
142}
143impl Default for PhysicalDeviceRobustness2PropertiesEXT {
144 fn default() -> Self {
145 Self {
146 s_type: Self::STRUCTURE_TYPE,
147 p_next: std::ptr::null_mut(),
148 robust_storage_buffer_access_size_alignment: Default::default(),
149 robust_uniform_buffer_access_size_alignment: Default::default(),
150 }
151 }
152}
153impl std::fmt::Debug for PhysicalDeviceRobustness2PropertiesEXT {
154 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
155 f.debug_struct("PhysicalDeviceRobustness2PropertiesEXT")
156 .field("s_type", &self.s_type)
157 .field("p_next", &self.p_next)
158 .field(
159 "robust_storage_buffer_access_size_alignment",
160 &self.robust_storage_buffer_access_size_alignment,
161 )
162 .field(
163 "robust_uniform_buffer_access_size_alignment",
164 &self.robust_uniform_buffer_access_size_alignment,
165 )
166 .finish()
167 }
168}
169impl PhysicalDeviceRobustness2PropertiesEXT {
170 #[inline]
171 pub fn into_builder<'a>(self) -> PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
172 PhysicalDeviceRobustness2PropertiesEXTBuilder(self, std::marker::PhantomData)
173 }
174}
175#[derive(Copy, Clone)]
176#[repr(transparent)]
178pub struct PhysicalDeviceRobustness2PropertiesEXTBuilder<'a>(
179 PhysicalDeviceRobustness2PropertiesEXT,
180 std::marker::PhantomData<&'a ()>,
181);
182impl<'a> PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
183 #[inline]
184 pub fn new() -> PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
185 PhysicalDeviceRobustness2PropertiesEXTBuilder(
186 Default::default(),
187 std::marker::PhantomData,
188 )
189 }
190 #[inline]
191 #[must_use]
192 pub fn robust_storage_buffer_access_size_alignment(
193 mut self,
194 robust_storage_buffer_access_size_alignment: crate::vk1_0::DeviceSize,
195 ) -> Self {
196 self
197 .0
198 .robust_storage_buffer_access_size_alignment = robust_storage_buffer_access_size_alignment
199 as _;
200 self
201 }
202 #[inline]
203 #[must_use]
204 pub fn robust_uniform_buffer_access_size_alignment(
205 mut self,
206 robust_uniform_buffer_access_size_alignment: crate::vk1_0::DeviceSize,
207 ) -> Self {
208 self
209 .0
210 .robust_uniform_buffer_access_size_alignment = robust_uniform_buffer_access_size_alignment
211 as _;
212 self
213 }
214 #[inline]
215 pub fn build_dangling(self) -> PhysicalDeviceRobustness2PropertiesEXT {
218 self.0
219 }
220}
221impl<'a> std::default::Default for PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
222 fn default() -> PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
223 Self::new()
224 }
225}
226impl<'a> std::fmt::Debug for PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
227 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
228 std::fmt::Debug::fmt(&self.0, f)
229 }
230}
231impl<'a> std::ops::Deref for PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
232 type Target = PhysicalDeviceRobustness2PropertiesEXT;
233 fn deref(&self) -> &Self::Target {
234 &self.0
235 }
236}
237impl<'a> std::ops::DerefMut for PhysicalDeviceRobustness2PropertiesEXTBuilder<'a> {
238 fn deref_mut(&mut self) -> &mut Self::Target {
239 &mut self.0
240 }
241}