xref: /aosp_15_r20/external/swiftshader/include/vulkan/vulkan_to_string.hpp (revision 03ce13f70fcc45d86ee91b7ee4cab1936a95046e)
1 // Copyright 2015-2024 The Khronos Group Inc.
2 //
3 // SPDX-License-Identifier: Apache-2.0 OR MIT
4 //
5 
6 // This header is generated from the Khronos Vulkan XML API Registry.
7 
8 #ifndef VULKAN_TO_STRING_HPP
9 #define VULKAN_TO_STRING_HPP
10 
11 #include <vulkan/vulkan_enums.hpp>
12 
13 #if __cpp_lib_format
14 #  include <format>  // std::format
15 #else
16 #  include <sstream>  // std::stringstream
17 #endif
18 
19 namespace VULKAN_HPP_NAMESPACE
20 {
21 
22   //==========================
23   //=== BITMASKs to_string ===
24   //==========================
25 
26   //=== VK_VERSION_1_0 ===
27 
to_string(FormatFeatureFlags value)28   VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlags value )
29   {
30     if ( !value )
31       return "{}";
32 
33     std::string result;
34     if ( value & FormatFeatureFlagBits::eSampledImage )
35       result += "SampledImage | ";
36     if ( value & FormatFeatureFlagBits::eStorageImage )
37       result += "StorageImage | ";
38     if ( value & FormatFeatureFlagBits::eStorageImageAtomic )
39       result += "StorageImageAtomic | ";
40     if ( value & FormatFeatureFlagBits::eUniformTexelBuffer )
41       result += "UniformTexelBuffer | ";
42     if ( value & FormatFeatureFlagBits::eStorageTexelBuffer )
43       result += "StorageTexelBuffer | ";
44     if ( value & FormatFeatureFlagBits::eStorageTexelBufferAtomic )
45       result += "StorageTexelBufferAtomic | ";
46     if ( value & FormatFeatureFlagBits::eVertexBuffer )
47       result += "VertexBuffer | ";
48     if ( value & FormatFeatureFlagBits::eColorAttachment )
49       result += "ColorAttachment | ";
50     if ( value & FormatFeatureFlagBits::eColorAttachmentBlend )
51       result += "ColorAttachmentBlend | ";
52     if ( value & FormatFeatureFlagBits::eDepthStencilAttachment )
53       result += "DepthStencilAttachment | ";
54     if ( value & FormatFeatureFlagBits::eBlitSrc )
55       result += "BlitSrc | ";
56     if ( value & FormatFeatureFlagBits::eBlitDst )
57       result += "BlitDst | ";
58     if ( value & FormatFeatureFlagBits::eSampledImageFilterLinear )
59       result += "SampledImageFilterLinear | ";
60     if ( value & FormatFeatureFlagBits::eTransferSrc )
61       result += "TransferSrc | ";
62     if ( value & FormatFeatureFlagBits::eTransferDst )
63       result += "TransferDst | ";
64     if ( value & FormatFeatureFlagBits::eMidpointChromaSamples )
65       result += "MidpointChromaSamples | ";
66     if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter )
67       result += "SampledImageYcbcrConversionLinearFilter | ";
68     if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter )
69       result += "SampledImageYcbcrConversionSeparateReconstructionFilter | ";
70     if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit )
71       result += "SampledImageYcbcrConversionChromaReconstructionExplicit | ";
72     if ( value & FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable )
73       result += "SampledImageYcbcrConversionChromaReconstructionExplicitForceable | ";
74     if ( value & FormatFeatureFlagBits::eDisjoint )
75       result += "Disjoint | ";
76     if ( value & FormatFeatureFlagBits::eCositedChromaSamples )
77       result += "CositedChromaSamples | ";
78     if ( value & FormatFeatureFlagBits::eSampledImageFilterMinmax )
79       result += "SampledImageFilterMinmax | ";
80     if ( value & FormatFeatureFlagBits::eVideoDecodeOutputKHR )
81       result += "VideoDecodeOutputKHR | ";
82     if ( value & FormatFeatureFlagBits::eVideoDecodeDpbKHR )
83       result += "VideoDecodeDpbKHR | ";
84     if ( value & FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR )
85       result += "AccelerationStructureVertexBufferKHR | ";
86     if ( value & FormatFeatureFlagBits::eSampledImageFilterCubicEXT )
87       result += "SampledImageFilterCubicEXT | ";
88     if ( value & FormatFeatureFlagBits::eFragmentDensityMapEXT )
89       result += "FragmentDensityMapEXT | ";
90     if ( value & FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR )
91       result += "FragmentShadingRateAttachmentKHR | ";
92     if ( value & FormatFeatureFlagBits::eVideoEncodeInputKHR )
93       result += "VideoEncodeInputKHR | ";
94     if ( value & FormatFeatureFlagBits::eVideoEncodeDpbKHR )
95       result += "VideoEncodeDpbKHR | ";
96 
97     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
98   }
99 
to_string(ImageCreateFlags value)100   VULKAN_HPP_INLINE std::string to_string( ImageCreateFlags value )
101   {
102     if ( !value )
103       return "{}";
104 
105     std::string result;
106     if ( value & ImageCreateFlagBits::eSparseBinding )
107       result += "SparseBinding | ";
108     if ( value & ImageCreateFlagBits::eSparseResidency )
109       result += "SparseResidency | ";
110     if ( value & ImageCreateFlagBits::eSparseAliased )
111       result += "SparseAliased | ";
112     if ( value & ImageCreateFlagBits::eMutableFormat )
113       result += "MutableFormat | ";
114     if ( value & ImageCreateFlagBits::eCubeCompatible )
115       result += "CubeCompatible | ";
116     if ( value & ImageCreateFlagBits::eAlias )
117       result += "Alias | ";
118     if ( value & ImageCreateFlagBits::eSplitInstanceBindRegions )
119       result += "SplitInstanceBindRegions | ";
120     if ( value & ImageCreateFlagBits::e2DArrayCompatible )
121       result += "2DArrayCompatible | ";
122     if ( value & ImageCreateFlagBits::eBlockTexelViewCompatible )
123       result += "BlockTexelViewCompatible | ";
124     if ( value & ImageCreateFlagBits::eExtendedUsage )
125       result += "ExtendedUsage | ";
126     if ( value & ImageCreateFlagBits::eProtected )
127       result += "Protected | ";
128     if ( value & ImageCreateFlagBits::eDisjoint )
129       result += "Disjoint | ";
130     if ( value & ImageCreateFlagBits::eCornerSampledNV )
131       result += "CornerSampledNV | ";
132     if ( value & ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT )
133       result += "SampleLocationsCompatibleDepthEXT | ";
134     if ( value & ImageCreateFlagBits::eSubsampledEXT )
135       result += "SubsampledEXT | ";
136     if ( value & ImageCreateFlagBits::eDescriptorBufferCaptureReplayEXT )
137       result += "DescriptorBufferCaptureReplayEXT | ";
138     if ( value & ImageCreateFlagBits::eMultisampledRenderToSingleSampledEXT )
139       result += "MultisampledRenderToSingleSampledEXT | ";
140     if ( value & ImageCreateFlagBits::e2DViewCompatibleEXT )
141       result += "2DViewCompatibleEXT | ";
142     if ( value & ImageCreateFlagBits::eFragmentDensityMapOffsetQCOM )
143       result += "FragmentDensityMapOffsetQCOM | ";
144     if ( value & ImageCreateFlagBits::eVideoProfileIndependentKHR )
145       result += "VideoProfileIndependentKHR | ";
146 
147     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
148   }
149 
to_string(ImageUsageFlags value)150   VULKAN_HPP_INLINE std::string to_string( ImageUsageFlags value )
151   {
152     if ( !value )
153       return "{}";
154 
155     std::string result;
156     if ( value & ImageUsageFlagBits::eTransferSrc )
157       result += "TransferSrc | ";
158     if ( value & ImageUsageFlagBits::eTransferDst )
159       result += "TransferDst | ";
160     if ( value & ImageUsageFlagBits::eSampled )
161       result += "Sampled | ";
162     if ( value & ImageUsageFlagBits::eStorage )
163       result += "Storage | ";
164     if ( value & ImageUsageFlagBits::eColorAttachment )
165       result += "ColorAttachment | ";
166     if ( value & ImageUsageFlagBits::eDepthStencilAttachment )
167       result += "DepthStencilAttachment | ";
168     if ( value & ImageUsageFlagBits::eTransientAttachment )
169       result += "TransientAttachment | ";
170     if ( value & ImageUsageFlagBits::eInputAttachment )
171       result += "InputAttachment | ";
172     if ( value & ImageUsageFlagBits::eVideoDecodeDstKHR )
173       result += "VideoDecodeDstKHR | ";
174     if ( value & ImageUsageFlagBits::eVideoDecodeSrcKHR )
175       result += "VideoDecodeSrcKHR | ";
176     if ( value & ImageUsageFlagBits::eVideoDecodeDpbKHR )
177       result += "VideoDecodeDpbKHR | ";
178     if ( value & ImageUsageFlagBits::eFragmentDensityMapEXT )
179       result += "FragmentDensityMapEXT | ";
180     if ( value & ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR )
181       result += "FragmentShadingRateAttachmentKHR | ";
182     if ( value & ImageUsageFlagBits::eHostTransferEXT )
183       result += "HostTransferEXT | ";
184     if ( value & ImageUsageFlagBits::eVideoEncodeDstKHR )
185       result += "VideoEncodeDstKHR | ";
186     if ( value & ImageUsageFlagBits::eVideoEncodeSrcKHR )
187       result += "VideoEncodeSrcKHR | ";
188     if ( value & ImageUsageFlagBits::eVideoEncodeDpbKHR )
189       result += "VideoEncodeDpbKHR | ";
190     if ( value & ImageUsageFlagBits::eAttachmentFeedbackLoopEXT )
191       result += "AttachmentFeedbackLoopEXT | ";
192     if ( value & ImageUsageFlagBits::eInvocationMaskHUAWEI )
193       result += "InvocationMaskHUAWEI | ";
194     if ( value & ImageUsageFlagBits::eSampleWeightQCOM )
195       result += "SampleWeightQCOM | ";
196     if ( value & ImageUsageFlagBits::eSampleBlockMatchQCOM )
197       result += "SampleBlockMatchQCOM | ";
198 
199     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
200   }
201 
to_string(InstanceCreateFlags value)202   VULKAN_HPP_INLINE std::string to_string( InstanceCreateFlags value )
203   {
204     if ( !value )
205       return "{}";
206 
207     std::string result;
208     if ( value & InstanceCreateFlagBits::eEnumeratePortabilityKHR )
209       result += "EnumeratePortabilityKHR | ";
210 
211     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
212   }
213 
to_string(MemoryHeapFlags value)214   VULKAN_HPP_INLINE std::string to_string( MemoryHeapFlags value )
215   {
216     if ( !value )
217       return "{}";
218 
219     std::string result;
220     if ( value & MemoryHeapFlagBits::eDeviceLocal )
221       result += "DeviceLocal | ";
222     if ( value & MemoryHeapFlagBits::eMultiInstance )
223       result += "MultiInstance | ";
224 
225     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
226   }
227 
to_string(MemoryPropertyFlags value)228   VULKAN_HPP_INLINE std::string to_string( MemoryPropertyFlags value )
229   {
230     if ( !value )
231       return "{}";
232 
233     std::string result;
234     if ( value & MemoryPropertyFlagBits::eDeviceLocal )
235       result += "DeviceLocal | ";
236     if ( value & MemoryPropertyFlagBits::eHostVisible )
237       result += "HostVisible | ";
238     if ( value & MemoryPropertyFlagBits::eHostCoherent )
239       result += "HostCoherent | ";
240     if ( value & MemoryPropertyFlagBits::eHostCached )
241       result += "HostCached | ";
242     if ( value & MemoryPropertyFlagBits::eLazilyAllocated )
243       result += "LazilyAllocated | ";
244     if ( value & MemoryPropertyFlagBits::eProtected )
245       result += "Protected | ";
246     if ( value & MemoryPropertyFlagBits::eDeviceCoherentAMD )
247       result += "DeviceCoherentAMD | ";
248     if ( value & MemoryPropertyFlagBits::eDeviceUncachedAMD )
249       result += "DeviceUncachedAMD | ";
250     if ( value & MemoryPropertyFlagBits::eRdmaCapableNV )
251       result += "RdmaCapableNV | ";
252 
253     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
254   }
255 
to_string(QueueFlags value)256   VULKAN_HPP_INLINE std::string to_string( QueueFlags value )
257   {
258     if ( !value )
259       return "{}";
260 
261     std::string result;
262     if ( value & QueueFlagBits::eGraphics )
263       result += "Graphics | ";
264     if ( value & QueueFlagBits::eCompute )
265       result += "Compute | ";
266     if ( value & QueueFlagBits::eTransfer )
267       result += "Transfer | ";
268     if ( value & QueueFlagBits::eSparseBinding )
269       result += "SparseBinding | ";
270     if ( value & QueueFlagBits::eProtected )
271       result += "Protected | ";
272     if ( value & QueueFlagBits::eVideoDecodeKHR )
273       result += "VideoDecodeKHR | ";
274     if ( value & QueueFlagBits::eVideoEncodeKHR )
275       result += "VideoEncodeKHR | ";
276     if ( value & QueueFlagBits::eOpticalFlowNV )
277       result += "OpticalFlowNV | ";
278 
279     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
280   }
281 
to_string(SampleCountFlags value)282   VULKAN_HPP_INLINE std::string to_string( SampleCountFlags value )
283   {
284     if ( !value )
285       return "{}";
286 
287     std::string result;
288     if ( value & SampleCountFlagBits::e1 )
289       result += "1 | ";
290     if ( value & SampleCountFlagBits::e2 )
291       result += "2 | ";
292     if ( value & SampleCountFlagBits::e4 )
293       result += "4 | ";
294     if ( value & SampleCountFlagBits::e8 )
295       result += "8 | ";
296     if ( value & SampleCountFlagBits::e16 )
297       result += "16 | ";
298     if ( value & SampleCountFlagBits::e32 )
299       result += "32 | ";
300     if ( value & SampleCountFlagBits::e64 )
301       result += "64 | ";
302 
303     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
304   }
305 
to_string(DeviceCreateFlags)306   VULKAN_HPP_INLINE std::string to_string( DeviceCreateFlags )
307   {
308     return "{}";
309   }
310 
to_string(DeviceQueueCreateFlags value)311   VULKAN_HPP_INLINE std::string to_string( DeviceQueueCreateFlags value )
312   {
313     if ( !value )
314       return "{}";
315 
316     std::string result;
317     if ( value & DeviceQueueCreateFlagBits::eProtected )
318       result += "Protected | ";
319 
320     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
321   }
322 
to_string(PipelineStageFlags value)323   VULKAN_HPP_INLINE std::string to_string( PipelineStageFlags value )
324   {
325     if ( !value )
326       return "None";
327 
328     std::string result;
329     if ( value & PipelineStageFlagBits::eTopOfPipe )
330       result += "TopOfPipe | ";
331     if ( value & PipelineStageFlagBits::eDrawIndirect )
332       result += "DrawIndirect | ";
333     if ( value & PipelineStageFlagBits::eVertexInput )
334       result += "VertexInput | ";
335     if ( value & PipelineStageFlagBits::eVertexShader )
336       result += "VertexShader | ";
337     if ( value & PipelineStageFlagBits::eTessellationControlShader )
338       result += "TessellationControlShader | ";
339     if ( value & PipelineStageFlagBits::eTessellationEvaluationShader )
340       result += "TessellationEvaluationShader | ";
341     if ( value & PipelineStageFlagBits::eGeometryShader )
342       result += "GeometryShader | ";
343     if ( value & PipelineStageFlagBits::eFragmentShader )
344       result += "FragmentShader | ";
345     if ( value & PipelineStageFlagBits::eEarlyFragmentTests )
346       result += "EarlyFragmentTests | ";
347     if ( value & PipelineStageFlagBits::eLateFragmentTests )
348       result += "LateFragmentTests | ";
349     if ( value & PipelineStageFlagBits::eColorAttachmentOutput )
350       result += "ColorAttachmentOutput | ";
351     if ( value & PipelineStageFlagBits::eComputeShader )
352       result += "ComputeShader | ";
353     if ( value & PipelineStageFlagBits::eTransfer )
354       result += "Transfer | ";
355     if ( value & PipelineStageFlagBits::eBottomOfPipe )
356       result += "BottomOfPipe | ";
357     if ( value & PipelineStageFlagBits::eHost )
358       result += "Host | ";
359     if ( value & PipelineStageFlagBits::eAllGraphics )
360       result += "AllGraphics | ";
361     if ( value & PipelineStageFlagBits::eAllCommands )
362       result += "AllCommands | ";
363     if ( value & PipelineStageFlagBits::eTransformFeedbackEXT )
364       result += "TransformFeedbackEXT | ";
365     if ( value & PipelineStageFlagBits::eConditionalRenderingEXT )
366       result += "ConditionalRenderingEXT | ";
367     if ( value & PipelineStageFlagBits::eAccelerationStructureBuildKHR )
368       result += "AccelerationStructureBuildKHR | ";
369     if ( value & PipelineStageFlagBits::eRayTracingShaderKHR )
370       result += "RayTracingShaderKHR | ";
371     if ( value & PipelineStageFlagBits::eFragmentDensityProcessEXT )
372       result += "FragmentDensityProcessEXT | ";
373     if ( value & PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR )
374       result += "FragmentShadingRateAttachmentKHR | ";
375     if ( value & PipelineStageFlagBits::eCommandPreprocessNV )
376       result += "CommandPreprocessNV | ";
377     if ( value & PipelineStageFlagBits::eTaskShaderEXT )
378       result += "TaskShaderEXT | ";
379     if ( value & PipelineStageFlagBits::eMeshShaderEXT )
380       result += "MeshShaderEXT | ";
381 
382     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
383   }
384 
to_string(MemoryMapFlags value)385   VULKAN_HPP_INLINE std::string to_string( MemoryMapFlags value )
386   {
387     if ( !value )
388       return "{}";
389 
390     std::string result;
391     if ( value & MemoryMapFlagBits::ePlacedEXT )
392       result += "PlacedEXT | ";
393 
394     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
395   }
396 
to_string(ImageAspectFlags value)397   VULKAN_HPP_INLINE std::string to_string( ImageAspectFlags value )
398   {
399     if ( !value )
400       return "None";
401 
402     std::string result;
403     if ( value & ImageAspectFlagBits::eColor )
404       result += "Color | ";
405     if ( value & ImageAspectFlagBits::eDepth )
406       result += "Depth | ";
407     if ( value & ImageAspectFlagBits::eStencil )
408       result += "Stencil | ";
409     if ( value & ImageAspectFlagBits::eMetadata )
410       result += "Metadata | ";
411     if ( value & ImageAspectFlagBits::ePlane0 )
412       result += "Plane0 | ";
413     if ( value & ImageAspectFlagBits::ePlane1 )
414       result += "Plane1 | ";
415     if ( value & ImageAspectFlagBits::ePlane2 )
416       result += "Plane2 | ";
417     if ( value & ImageAspectFlagBits::eMemoryPlane0EXT )
418       result += "MemoryPlane0EXT | ";
419     if ( value & ImageAspectFlagBits::eMemoryPlane1EXT )
420       result += "MemoryPlane1EXT | ";
421     if ( value & ImageAspectFlagBits::eMemoryPlane2EXT )
422       result += "MemoryPlane2EXT | ";
423     if ( value & ImageAspectFlagBits::eMemoryPlane3EXT )
424       result += "MemoryPlane3EXT | ";
425 
426     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
427   }
428 
to_string(SparseImageFormatFlags value)429   VULKAN_HPP_INLINE std::string to_string( SparseImageFormatFlags value )
430   {
431     if ( !value )
432       return "{}";
433 
434     std::string result;
435     if ( value & SparseImageFormatFlagBits::eSingleMiptail )
436       result += "SingleMiptail | ";
437     if ( value & SparseImageFormatFlagBits::eAlignedMipSize )
438       result += "AlignedMipSize | ";
439     if ( value & SparseImageFormatFlagBits::eNonstandardBlockSize )
440       result += "NonstandardBlockSize | ";
441 
442     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
443   }
444 
to_string(SparseMemoryBindFlags value)445   VULKAN_HPP_INLINE std::string to_string( SparseMemoryBindFlags value )
446   {
447     if ( !value )
448       return "{}";
449 
450     std::string result;
451     if ( value & SparseMemoryBindFlagBits::eMetadata )
452       result += "Metadata | ";
453 
454     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
455   }
456 
to_string(FenceCreateFlags value)457   VULKAN_HPP_INLINE std::string to_string( FenceCreateFlags value )
458   {
459     if ( !value )
460       return "{}";
461 
462     std::string result;
463     if ( value & FenceCreateFlagBits::eSignaled )
464       result += "Signaled | ";
465 
466     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
467   }
468 
to_string(SemaphoreCreateFlags)469   VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlags )
470   {
471     return "{}";
472   }
473 
to_string(EventCreateFlags value)474   VULKAN_HPP_INLINE std::string to_string( EventCreateFlags value )
475   {
476     if ( !value )
477       return "{}";
478 
479     std::string result;
480     if ( value & EventCreateFlagBits::eDeviceOnly )
481       result += "DeviceOnly | ";
482 
483     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
484   }
485 
to_string(QueryPipelineStatisticFlags value)486   VULKAN_HPP_INLINE std::string to_string( QueryPipelineStatisticFlags value )
487   {
488     if ( !value )
489       return "{}";
490 
491     std::string result;
492     if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyVertices )
493       result += "InputAssemblyVertices | ";
494     if ( value & QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives )
495       result += "InputAssemblyPrimitives | ";
496     if ( value & QueryPipelineStatisticFlagBits::eVertexShaderInvocations )
497       result += "VertexShaderInvocations | ";
498     if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderInvocations )
499       result += "GeometryShaderInvocations | ";
500     if ( value & QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives )
501       result += "GeometryShaderPrimitives | ";
502     if ( value & QueryPipelineStatisticFlagBits::eClippingInvocations )
503       result += "ClippingInvocations | ";
504     if ( value & QueryPipelineStatisticFlagBits::eClippingPrimitives )
505       result += "ClippingPrimitives | ";
506     if ( value & QueryPipelineStatisticFlagBits::eFragmentShaderInvocations )
507       result += "FragmentShaderInvocations | ";
508     if ( value & QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches )
509       result += "TessellationControlShaderPatches | ";
510     if ( value & QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations )
511       result += "TessellationEvaluationShaderInvocations | ";
512     if ( value & QueryPipelineStatisticFlagBits::eComputeShaderInvocations )
513       result += "ComputeShaderInvocations | ";
514     if ( value & QueryPipelineStatisticFlagBits::eTaskShaderInvocationsEXT )
515       result += "TaskShaderInvocationsEXT | ";
516     if ( value & QueryPipelineStatisticFlagBits::eMeshShaderInvocationsEXT )
517       result += "MeshShaderInvocationsEXT | ";
518     if ( value & QueryPipelineStatisticFlagBits::eClusterCullingShaderInvocationsHUAWEI )
519       result += "ClusterCullingShaderInvocationsHUAWEI | ";
520 
521     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
522   }
523 
to_string(QueryPoolCreateFlags)524   VULKAN_HPP_INLINE std::string to_string( QueryPoolCreateFlags )
525   {
526     return "{}";
527   }
528 
to_string(QueryResultFlags value)529   VULKAN_HPP_INLINE std::string to_string( QueryResultFlags value )
530   {
531     if ( !value )
532       return "{}";
533 
534     std::string result;
535     if ( value & QueryResultFlagBits::e64 )
536       result += "64 | ";
537     if ( value & QueryResultFlagBits::eWait )
538       result += "Wait | ";
539     if ( value & QueryResultFlagBits::eWithAvailability )
540       result += "WithAvailability | ";
541     if ( value & QueryResultFlagBits::ePartial )
542       result += "Partial | ";
543     if ( value & QueryResultFlagBits::eWithStatusKHR )
544       result += "WithStatusKHR | ";
545 
546     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
547   }
548 
to_string(BufferCreateFlags value)549   VULKAN_HPP_INLINE std::string to_string( BufferCreateFlags value )
550   {
551     if ( !value )
552       return "{}";
553 
554     std::string result;
555     if ( value & BufferCreateFlagBits::eSparseBinding )
556       result += "SparseBinding | ";
557     if ( value & BufferCreateFlagBits::eSparseResidency )
558       result += "SparseResidency | ";
559     if ( value & BufferCreateFlagBits::eSparseAliased )
560       result += "SparseAliased | ";
561     if ( value & BufferCreateFlagBits::eProtected )
562       result += "Protected | ";
563     if ( value & BufferCreateFlagBits::eDeviceAddressCaptureReplay )
564       result += "DeviceAddressCaptureReplay | ";
565     if ( value & BufferCreateFlagBits::eDescriptorBufferCaptureReplayEXT )
566       result += "DescriptorBufferCaptureReplayEXT | ";
567     if ( value & BufferCreateFlagBits::eVideoProfileIndependentKHR )
568       result += "VideoProfileIndependentKHR | ";
569 
570     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
571   }
572 
to_string(BufferUsageFlags value)573   VULKAN_HPP_INLINE std::string to_string( BufferUsageFlags value )
574   {
575     if ( !value )
576       return "{}";
577 
578     std::string result;
579     if ( value & BufferUsageFlagBits::eTransferSrc )
580       result += "TransferSrc | ";
581     if ( value & BufferUsageFlagBits::eTransferDst )
582       result += "TransferDst | ";
583     if ( value & BufferUsageFlagBits::eUniformTexelBuffer )
584       result += "UniformTexelBuffer | ";
585     if ( value & BufferUsageFlagBits::eStorageTexelBuffer )
586       result += "StorageTexelBuffer | ";
587     if ( value & BufferUsageFlagBits::eUniformBuffer )
588       result += "UniformBuffer | ";
589     if ( value & BufferUsageFlagBits::eStorageBuffer )
590       result += "StorageBuffer | ";
591     if ( value & BufferUsageFlagBits::eIndexBuffer )
592       result += "IndexBuffer | ";
593     if ( value & BufferUsageFlagBits::eVertexBuffer )
594       result += "VertexBuffer | ";
595     if ( value & BufferUsageFlagBits::eIndirectBuffer )
596       result += "IndirectBuffer | ";
597     if ( value & BufferUsageFlagBits::eShaderDeviceAddress )
598       result += "ShaderDeviceAddress | ";
599     if ( value & BufferUsageFlagBits::eVideoDecodeSrcKHR )
600       result += "VideoDecodeSrcKHR | ";
601     if ( value & BufferUsageFlagBits::eVideoDecodeDstKHR )
602       result += "VideoDecodeDstKHR | ";
603     if ( value & BufferUsageFlagBits::eTransformFeedbackBufferEXT )
604       result += "TransformFeedbackBufferEXT | ";
605     if ( value & BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT )
606       result += "TransformFeedbackCounterBufferEXT | ";
607     if ( value & BufferUsageFlagBits::eConditionalRenderingEXT )
608       result += "ConditionalRenderingEXT | ";
609 #if defined( VK_ENABLE_BETA_EXTENSIONS )
610     if ( value & BufferUsageFlagBits::eExecutionGraphScratchAMDX )
611       result += "ExecutionGraphScratchAMDX | ";
612 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
613     if ( value & BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR )
614       result += "AccelerationStructureBuildInputReadOnlyKHR | ";
615     if ( value & BufferUsageFlagBits::eAccelerationStructureStorageKHR )
616       result += "AccelerationStructureStorageKHR | ";
617     if ( value & BufferUsageFlagBits::eShaderBindingTableKHR )
618       result += "ShaderBindingTableKHR | ";
619     if ( value & BufferUsageFlagBits::eVideoEncodeDstKHR )
620       result += "VideoEncodeDstKHR | ";
621     if ( value & BufferUsageFlagBits::eVideoEncodeSrcKHR )
622       result += "VideoEncodeSrcKHR | ";
623     if ( value & BufferUsageFlagBits::eSamplerDescriptorBufferEXT )
624       result += "SamplerDescriptorBufferEXT | ";
625     if ( value & BufferUsageFlagBits::eResourceDescriptorBufferEXT )
626       result += "ResourceDescriptorBufferEXT | ";
627     if ( value & BufferUsageFlagBits::ePushDescriptorsDescriptorBufferEXT )
628       result += "PushDescriptorsDescriptorBufferEXT | ";
629     if ( value & BufferUsageFlagBits::eMicromapBuildInputReadOnlyEXT )
630       result += "MicromapBuildInputReadOnlyEXT | ";
631     if ( value & BufferUsageFlagBits::eMicromapStorageEXT )
632       result += "MicromapStorageEXT | ";
633 
634     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
635   }
636 
to_string(BufferViewCreateFlags)637   VULKAN_HPP_INLINE std::string to_string( BufferViewCreateFlags )
638   {
639     return "{}";
640   }
641 
to_string(ImageViewCreateFlags value)642   VULKAN_HPP_INLINE std::string to_string( ImageViewCreateFlags value )
643   {
644     if ( !value )
645       return "{}";
646 
647     std::string result;
648     if ( value & ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT )
649       result += "FragmentDensityMapDynamicEXT | ";
650     if ( value & ImageViewCreateFlagBits::eDescriptorBufferCaptureReplayEXT )
651       result += "DescriptorBufferCaptureReplayEXT | ";
652     if ( value & ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT )
653       result += "FragmentDensityMapDeferredEXT | ";
654 
655     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
656   }
657 
to_string(ShaderModuleCreateFlags)658   VULKAN_HPP_INLINE std::string to_string( ShaderModuleCreateFlags )
659   {
660     return "{}";
661   }
662 
to_string(PipelineCacheCreateFlags value)663   VULKAN_HPP_INLINE std::string to_string( PipelineCacheCreateFlags value )
664   {
665     if ( !value )
666       return "{}";
667 
668     std::string result;
669     if ( value & PipelineCacheCreateFlagBits::eExternallySynchronized )
670       result += "ExternallySynchronized | ";
671 
672     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
673   }
674 
to_string(ColorComponentFlags value)675   VULKAN_HPP_INLINE std::string to_string( ColorComponentFlags value )
676   {
677     if ( !value )
678       return "{}";
679 
680     std::string result;
681     if ( value & ColorComponentFlagBits::eR )
682       result += "R | ";
683     if ( value & ColorComponentFlagBits::eG )
684       result += "G | ";
685     if ( value & ColorComponentFlagBits::eB )
686       result += "B | ";
687     if ( value & ColorComponentFlagBits::eA )
688       result += "A | ";
689 
690     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
691   }
692 
to_string(CullModeFlags value)693   VULKAN_HPP_INLINE std::string to_string( CullModeFlags value )
694   {
695     if ( !value )
696       return "None";
697 
698     std::string result;
699     if ( value & CullModeFlagBits::eFront )
700       result += "Front | ";
701     if ( value & CullModeFlagBits::eBack )
702       result += "Back | ";
703 
704     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
705   }
706 
to_string(PipelineColorBlendStateCreateFlags value)707   VULKAN_HPP_INLINE std::string to_string( PipelineColorBlendStateCreateFlags value )
708   {
709     if ( !value )
710       return "{}";
711 
712     std::string result;
713     if ( value & PipelineColorBlendStateCreateFlagBits::eRasterizationOrderAttachmentAccessEXT )
714       result += "RasterizationOrderAttachmentAccessEXT | ";
715 
716     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
717   }
718 
to_string(PipelineCreateFlags value)719   VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlags value )
720   {
721     if ( !value )
722       return "{}";
723 
724     std::string result;
725     if ( value & PipelineCreateFlagBits::eDisableOptimization )
726       result += "DisableOptimization | ";
727     if ( value & PipelineCreateFlagBits::eAllowDerivatives )
728       result += "AllowDerivatives | ";
729     if ( value & PipelineCreateFlagBits::eDerivative )
730       result += "Derivative | ";
731     if ( value & PipelineCreateFlagBits::eViewIndexFromDeviceIndex )
732       result += "ViewIndexFromDeviceIndex | ";
733     if ( value & PipelineCreateFlagBits::eDispatchBase )
734       result += "DispatchBase | ";
735     if ( value & PipelineCreateFlagBits::eFailOnPipelineCompileRequired )
736       result += "FailOnPipelineCompileRequired | ";
737     if ( value & PipelineCreateFlagBits::eEarlyReturnOnFailure )
738       result += "EarlyReturnOnFailure | ";
739     if ( value & PipelineCreateFlagBits::eRenderingFragmentShadingRateAttachmentKHR )
740       result += "RenderingFragmentShadingRateAttachmentKHR | ";
741     if ( value & PipelineCreateFlagBits::eRenderingFragmentDensityMapAttachmentEXT )
742       result += "RenderingFragmentDensityMapAttachmentEXT | ";
743     if ( value & PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR )
744       result += "RayTracingNoNullAnyHitShadersKHR | ";
745     if ( value & PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR )
746       result += "RayTracingNoNullClosestHitShadersKHR | ";
747     if ( value & PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR )
748       result += "RayTracingNoNullMissShadersKHR | ";
749     if ( value & PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR )
750       result += "RayTracingNoNullIntersectionShadersKHR | ";
751     if ( value & PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR )
752       result += "RayTracingSkipTrianglesKHR | ";
753     if ( value & PipelineCreateFlagBits::eRayTracingSkipAabbsKHR )
754       result += "RayTracingSkipAabbsKHR | ";
755     if ( value & PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR )
756       result += "RayTracingShaderGroupHandleCaptureReplayKHR | ";
757     if ( value & PipelineCreateFlagBits::eDeferCompileNV )
758       result += "DeferCompileNV | ";
759     if ( value & PipelineCreateFlagBits::eCaptureStatisticsKHR )
760       result += "CaptureStatisticsKHR | ";
761     if ( value & PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR )
762       result += "CaptureInternalRepresentationsKHR | ";
763     if ( value & PipelineCreateFlagBits::eIndirectBindableNV )
764       result += "IndirectBindableNV | ";
765     if ( value & PipelineCreateFlagBits::eLibraryKHR )
766       result += "LibraryKHR | ";
767     if ( value & PipelineCreateFlagBits::eDescriptorBufferEXT )
768       result += "DescriptorBufferEXT | ";
769     if ( value & PipelineCreateFlagBits::eRetainLinkTimeOptimizationInfoEXT )
770       result += "RetainLinkTimeOptimizationInfoEXT | ";
771     if ( value & PipelineCreateFlagBits::eLinkTimeOptimizationEXT )
772       result += "LinkTimeOptimizationEXT | ";
773     if ( value & PipelineCreateFlagBits::eRayTracingAllowMotionNV )
774       result += "RayTracingAllowMotionNV | ";
775     if ( value & PipelineCreateFlagBits::eColorAttachmentFeedbackLoopEXT )
776       result += "ColorAttachmentFeedbackLoopEXT | ";
777     if ( value & PipelineCreateFlagBits::eDepthStencilAttachmentFeedbackLoopEXT )
778       result += "DepthStencilAttachmentFeedbackLoopEXT | ";
779     if ( value & PipelineCreateFlagBits::eRayTracingOpacityMicromapEXT )
780       result += "RayTracingOpacityMicromapEXT | ";
781 #if defined( VK_ENABLE_BETA_EXTENSIONS )
782     if ( value & PipelineCreateFlagBits::eRayTracingDisplacementMicromapNV )
783       result += "RayTracingDisplacementMicromapNV | ";
784 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
785     if ( value & PipelineCreateFlagBits::eNoProtectedAccessEXT )
786       result += "NoProtectedAccessEXT | ";
787     if ( value & PipelineCreateFlagBits::eProtectedAccessOnlyEXT )
788       result += "ProtectedAccessOnlyEXT | ";
789 
790     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
791   }
792 
to_string(PipelineDepthStencilStateCreateFlags value)793   VULKAN_HPP_INLINE std::string to_string( PipelineDepthStencilStateCreateFlags value )
794   {
795     if ( !value )
796       return "{}";
797 
798     std::string result;
799     if ( value & PipelineDepthStencilStateCreateFlagBits::eRasterizationOrderAttachmentDepthAccessEXT )
800       result += "RasterizationOrderAttachmentDepthAccessEXT | ";
801     if ( value & PipelineDepthStencilStateCreateFlagBits::eRasterizationOrderAttachmentStencilAccessEXT )
802       result += "RasterizationOrderAttachmentStencilAccessEXT | ";
803 
804     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
805   }
806 
to_string(PipelineDynamicStateCreateFlags)807   VULKAN_HPP_INLINE std::string to_string( PipelineDynamicStateCreateFlags )
808   {
809     return "{}";
810   }
811 
to_string(PipelineInputAssemblyStateCreateFlags)812   VULKAN_HPP_INLINE std::string to_string( PipelineInputAssemblyStateCreateFlags )
813   {
814     return "{}";
815   }
816 
to_string(PipelineLayoutCreateFlags value)817   VULKAN_HPP_INLINE std::string to_string( PipelineLayoutCreateFlags value )
818   {
819     if ( !value )
820       return "{}";
821 
822     std::string result;
823     if ( value & PipelineLayoutCreateFlagBits::eIndependentSetsEXT )
824       result += "IndependentSetsEXT | ";
825 
826     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
827   }
828 
to_string(PipelineMultisampleStateCreateFlags)829   VULKAN_HPP_INLINE std::string to_string( PipelineMultisampleStateCreateFlags )
830   {
831     return "{}";
832   }
833 
to_string(PipelineRasterizationStateCreateFlags)834   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateCreateFlags )
835   {
836     return "{}";
837   }
838 
to_string(PipelineShaderStageCreateFlags value)839   VULKAN_HPP_INLINE std::string to_string( PipelineShaderStageCreateFlags value )
840   {
841     if ( !value )
842       return "{}";
843 
844     std::string result;
845     if ( value & PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSize )
846       result += "AllowVaryingSubgroupSize | ";
847     if ( value & PipelineShaderStageCreateFlagBits::eRequireFullSubgroups )
848       result += "RequireFullSubgroups | ";
849 
850     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
851   }
852 
to_string(PipelineTessellationStateCreateFlags)853   VULKAN_HPP_INLINE std::string to_string( PipelineTessellationStateCreateFlags )
854   {
855     return "{}";
856   }
857 
to_string(PipelineVertexInputStateCreateFlags)858   VULKAN_HPP_INLINE std::string to_string( PipelineVertexInputStateCreateFlags )
859   {
860     return "{}";
861   }
862 
to_string(PipelineViewportStateCreateFlags)863   VULKAN_HPP_INLINE std::string to_string( PipelineViewportStateCreateFlags )
864   {
865     return "{}";
866   }
867 
to_string(ShaderStageFlags value)868   VULKAN_HPP_INLINE std::string to_string( ShaderStageFlags value )
869   {
870     if ( !value )
871       return "{}";
872 
873     std::string result;
874     if ( value & ShaderStageFlagBits::eVertex )
875       result += "Vertex | ";
876     if ( value & ShaderStageFlagBits::eTessellationControl )
877       result += "TessellationControl | ";
878     if ( value & ShaderStageFlagBits::eTessellationEvaluation )
879       result += "TessellationEvaluation | ";
880     if ( value & ShaderStageFlagBits::eGeometry )
881       result += "Geometry | ";
882     if ( value & ShaderStageFlagBits::eFragment )
883       result += "Fragment | ";
884     if ( value & ShaderStageFlagBits::eCompute )
885       result += "Compute | ";
886     if ( value & ShaderStageFlagBits::eRaygenKHR )
887       result += "RaygenKHR | ";
888     if ( value & ShaderStageFlagBits::eAnyHitKHR )
889       result += "AnyHitKHR | ";
890     if ( value & ShaderStageFlagBits::eClosestHitKHR )
891       result += "ClosestHitKHR | ";
892     if ( value & ShaderStageFlagBits::eMissKHR )
893       result += "MissKHR | ";
894     if ( value & ShaderStageFlagBits::eIntersectionKHR )
895       result += "IntersectionKHR | ";
896     if ( value & ShaderStageFlagBits::eCallableKHR )
897       result += "CallableKHR | ";
898     if ( value & ShaderStageFlagBits::eTaskEXT )
899       result += "TaskEXT | ";
900     if ( value & ShaderStageFlagBits::eMeshEXT )
901       result += "MeshEXT | ";
902     if ( value & ShaderStageFlagBits::eSubpassShadingHUAWEI )
903       result += "SubpassShadingHUAWEI | ";
904     if ( value & ShaderStageFlagBits::eClusterCullingHUAWEI )
905       result += "ClusterCullingHUAWEI | ";
906 
907     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
908   }
909 
to_string(SamplerCreateFlags value)910   VULKAN_HPP_INLINE std::string to_string( SamplerCreateFlags value )
911   {
912     if ( !value )
913       return "{}";
914 
915     std::string result;
916     if ( value & SamplerCreateFlagBits::eSubsampledEXT )
917       result += "SubsampledEXT | ";
918     if ( value & SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT )
919       result += "SubsampledCoarseReconstructionEXT | ";
920     if ( value & SamplerCreateFlagBits::eDescriptorBufferCaptureReplayEXT )
921       result += "DescriptorBufferCaptureReplayEXT | ";
922     if ( value & SamplerCreateFlagBits::eNonSeamlessCubeMapEXT )
923       result += "NonSeamlessCubeMapEXT | ";
924     if ( value & SamplerCreateFlagBits::eImageProcessingQCOM )
925       result += "ImageProcessingQCOM | ";
926 
927     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
928   }
929 
to_string(DescriptorPoolCreateFlags value)930   VULKAN_HPP_INLINE std::string to_string( DescriptorPoolCreateFlags value )
931   {
932     if ( !value )
933       return "{}";
934 
935     std::string result;
936     if ( value & DescriptorPoolCreateFlagBits::eFreeDescriptorSet )
937       result += "FreeDescriptorSet | ";
938     if ( value & DescriptorPoolCreateFlagBits::eUpdateAfterBind )
939       result += "UpdateAfterBind | ";
940     if ( value & DescriptorPoolCreateFlagBits::eHostOnlyEXT )
941       result += "HostOnlyEXT | ";
942     if ( value & DescriptorPoolCreateFlagBits::eAllowOverallocationSetsNV )
943       result += "AllowOverallocationSetsNV | ";
944     if ( value & DescriptorPoolCreateFlagBits::eAllowOverallocationPoolsNV )
945       result += "AllowOverallocationPoolsNV | ";
946 
947     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
948   }
949 
to_string(DescriptorPoolResetFlags)950   VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlags )
951   {
952     return "{}";
953   }
954 
to_string(DescriptorSetLayoutCreateFlags value)955   VULKAN_HPP_INLINE std::string to_string( DescriptorSetLayoutCreateFlags value )
956   {
957     if ( !value )
958       return "{}";
959 
960     std::string result;
961     if ( value & DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool )
962       result += "UpdateAfterBindPool | ";
963     if ( value & DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR )
964       result += "PushDescriptorKHR | ";
965     if ( value & DescriptorSetLayoutCreateFlagBits::eDescriptorBufferEXT )
966       result += "DescriptorBufferEXT | ";
967     if ( value & DescriptorSetLayoutCreateFlagBits::eEmbeddedImmutableSamplersEXT )
968       result += "EmbeddedImmutableSamplersEXT | ";
969     if ( value & DescriptorSetLayoutCreateFlagBits::eIndirectBindableNV )
970       result += "IndirectBindableNV | ";
971     if ( value & DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT )
972       result += "HostOnlyPoolEXT | ";
973     if ( value & DescriptorSetLayoutCreateFlagBits::ePerStageNV )
974       result += "PerStageNV | ";
975 
976     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
977   }
978 
to_string(AccessFlags value)979   VULKAN_HPP_INLINE std::string to_string( AccessFlags value )
980   {
981     if ( !value )
982       return "None";
983 
984     std::string result;
985     if ( value & AccessFlagBits::eIndirectCommandRead )
986       result += "IndirectCommandRead | ";
987     if ( value & AccessFlagBits::eIndexRead )
988       result += "IndexRead | ";
989     if ( value & AccessFlagBits::eVertexAttributeRead )
990       result += "VertexAttributeRead | ";
991     if ( value & AccessFlagBits::eUniformRead )
992       result += "UniformRead | ";
993     if ( value & AccessFlagBits::eInputAttachmentRead )
994       result += "InputAttachmentRead | ";
995     if ( value & AccessFlagBits::eShaderRead )
996       result += "ShaderRead | ";
997     if ( value & AccessFlagBits::eShaderWrite )
998       result += "ShaderWrite | ";
999     if ( value & AccessFlagBits::eColorAttachmentRead )
1000       result += "ColorAttachmentRead | ";
1001     if ( value & AccessFlagBits::eColorAttachmentWrite )
1002       result += "ColorAttachmentWrite | ";
1003     if ( value & AccessFlagBits::eDepthStencilAttachmentRead )
1004       result += "DepthStencilAttachmentRead | ";
1005     if ( value & AccessFlagBits::eDepthStencilAttachmentWrite )
1006       result += "DepthStencilAttachmentWrite | ";
1007     if ( value & AccessFlagBits::eTransferRead )
1008       result += "TransferRead | ";
1009     if ( value & AccessFlagBits::eTransferWrite )
1010       result += "TransferWrite | ";
1011     if ( value & AccessFlagBits::eHostRead )
1012       result += "HostRead | ";
1013     if ( value & AccessFlagBits::eHostWrite )
1014       result += "HostWrite | ";
1015     if ( value & AccessFlagBits::eMemoryRead )
1016       result += "MemoryRead | ";
1017     if ( value & AccessFlagBits::eMemoryWrite )
1018       result += "MemoryWrite | ";
1019     if ( value & AccessFlagBits::eTransformFeedbackWriteEXT )
1020       result += "TransformFeedbackWriteEXT | ";
1021     if ( value & AccessFlagBits::eTransformFeedbackCounterReadEXT )
1022       result += "TransformFeedbackCounterReadEXT | ";
1023     if ( value & AccessFlagBits::eTransformFeedbackCounterWriteEXT )
1024       result += "TransformFeedbackCounterWriteEXT | ";
1025     if ( value & AccessFlagBits::eConditionalRenderingReadEXT )
1026       result += "ConditionalRenderingReadEXT | ";
1027     if ( value & AccessFlagBits::eColorAttachmentReadNoncoherentEXT )
1028       result += "ColorAttachmentReadNoncoherentEXT | ";
1029     if ( value & AccessFlagBits::eAccelerationStructureReadKHR )
1030       result += "AccelerationStructureReadKHR | ";
1031     if ( value & AccessFlagBits::eAccelerationStructureWriteKHR )
1032       result += "AccelerationStructureWriteKHR | ";
1033     if ( value & AccessFlagBits::eFragmentDensityMapReadEXT )
1034       result += "FragmentDensityMapReadEXT | ";
1035     if ( value & AccessFlagBits::eFragmentShadingRateAttachmentReadKHR )
1036       result += "FragmentShadingRateAttachmentReadKHR | ";
1037     if ( value & AccessFlagBits::eCommandPreprocessReadNV )
1038       result += "CommandPreprocessReadNV | ";
1039     if ( value & AccessFlagBits::eCommandPreprocessWriteNV )
1040       result += "CommandPreprocessWriteNV | ";
1041 
1042     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1043   }
1044 
to_string(AttachmentDescriptionFlags value)1045   VULKAN_HPP_INLINE std::string to_string( AttachmentDescriptionFlags value )
1046   {
1047     if ( !value )
1048       return "{}";
1049 
1050     std::string result;
1051     if ( value & AttachmentDescriptionFlagBits::eMayAlias )
1052       result += "MayAlias | ";
1053 
1054     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1055   }
1056 
to_string(DependencyFlags value)1057   VULKAN_HPP_INLINE std::string to_string( DependencyFlags value )
1058   {
1059     if ( !value )
1060       return "{}";
1061 
1062     std::string result;
1063     if ( value & DependencyFlagBits::eByRegion )
1064       result += "ByRegion | ";
1065     if ( value & DependencyFlagBits::eDeviceGroup )
1066       result += "DeviceGroup | ";
1067     if ( value & DependencyFlagBits::eViewLocal )
1068       result += "ViewLocal | ";
1069     if ( value & DependencyFlagBits::eFeedbackLoopEXT )
1070       result += "FeedbackLoopEXT | ";
1071 
1072     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1073   }
1074 
to_string(FramebufferCreateFlags value)1075   VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlags value )
1076   {
1077     if ( !value )
1078       return "{}";
1079 
1080     std::string result;
1081     if ( value & FramebufferCreateFlagBits::eImageless )
1082       result += "Imageless | ";
1083 
1084     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1085   }
1086 
to_string(RenderPassCreateFlags value)1087   VULKAN_HPP_INLINE std::string to_string( RenderPassCreateFlags value )
1088   {
1089     if ( !value )
1090       return "{}";
1091 
1092     std::string result;
1093     if ( value & RenderPassCreateFlagBits::eTransformQCOM )
1094       result += "TransformQCOM | ";
1095 
1096     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1097   }
1098 
to_string(SubpassDescriptionFlags value)1099   VULKAN_HPP_INLINE std::string to_string( SubpassDescriptionFlags value )
1100   {
1101     if ( !value )
1102       return "{}";
1103 
1104     std::string result;
1105     if ( value & SubpassDescriptionFlagBits::ePerViewAttributesNVX )
1106       result += "PerViewAttributesNVX | ";
1107     if ( value & SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX )
1108       result += "PerViewPositionXOnlyNVX | ";
1109     if ( value & SubpassDescriptionFlagBits::eFragmentRegionQCOM )
1110       result += "FragmentRegionQCOM | ";
1111     if ( value & SubpassDescriptionFlagBits::eShaderResolveQCOM )
1112       result += "ShaderResolveQCOM | ";
1113     if ( value & SubpassDescriptionFlagBits::eRasterizationOrderAttachmentColorAccessEXT )
1114       result += "RasterizationOrderAttachmentColorAccessEXT | ";
1115     if ( value & SubpassDescriptionFlagBits::eRasterizationOrderAttachmentDepthAccessEXT )
1116       result += "RasterizationOrderAttachmentDepthAccessEXT | ";
1117     if ( value & SubpassDescriptionFlagBits::eRasterizationOrderAttachmentStencilAccessEXT )
1118       result += "RasterizationOrderAttachmentStencilAccessEXT | ";
1119     if ( value & SubpassDescriptionFlagBits::eEnableLegacyDitheringEXT )
1120       result += "EnableLegacyDitheringEXT | ";
1121 
1122     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1123   }
1124 
to_string(CommandPoolCreateFlags value)1125   VULKAN_HPP_INLINE std::string to_string( CommandPoolCreateFlags value )
1126   {
1127     if ( !value )
1128       return "{}";
1129 
1130     std::string result;
1131     if ( value & CommandPoolCreateFlagBits::eTransient )
1132       result += "Transient | ";
1133     if ( value & CommandPoolCreateFlagBits::eResetCommandBuffer )
1134       result += "ResetCommandBuffer | ";
1135     if ( value & CommandPoolCreateFlagBits::eProtected )
1136       result += "Protected | ";
1137 
1138     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1139   }
1140 
to_string(CommandPoolResetFlags value)1141   VULKAN_HPP_INLINE std::string to_string( CommandPoolResetFlags value )
1142   {
1143     if ( !value )
1144       return "{}";
1145 
1146     std::string result;
1147     if ( value & CommandPoolResetFlagBits::eReleaseResources )
1148       result += "ReleaseResources | ";
1149 
1150     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1151   }
1152 
to_string(CommandBufferResetFlags value)1153   VULKAN_HPP_INLINE std::string to_string( CommandBufferResetFlags value )
1154   {
1155     if ( !value )
1156       return "{}";
1157 
1158     std::string result;
1159     if ( value & CommandBufferResetFlagBits::eReleaseResources )
1160       result += "ReleaseResources | ";
1161 
1162     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1163   }
1164 
to_string(CommandBufferUsageFlags value)1165   VULKAN_HPP_INLINE std::string to_string( CommandBufferUsageFlags value )
1166   {
1167     if ( !value )
1168       return "{}";
1169 
1170     std::string result;
1171     if ( value & CommandBufferUsageFlagBits::eOneTimeSubmit )
1172       result += "OneTimeSubmit | ";
1173     if ( value & CommandBufferUsageFlagBits::eRenderPassContinue )
1174       result += "RenderPassContinue | ";
1175     if ( value & CommandBufferUsageFlagBits::eSimultaneousUse )
1176       result += "SimultaneousUse | ";
1177 
1178     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1179   }
1180 
to_string(QueryControlFlags value)1181   VULKAN_HPP_INLINE std::string to_string( QueryControlFlags value )
1182   {
1183     if ( !value )
1184       return "{}";
1185 
1186     std::string result;
1187     if ( value & QueryControlFlagBits::ePrecise )
1188       result += "Precise | ";
1189 
1190     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1191   }
1192 
to_string(StencilFaceFlags value)1193   VULKAN_HPP_INLINE std::string to_string( StencilFaceFlags value )
1194   {
1195     if ( !value )
1196       return "{}";
1197 
1198     std::string result;
1199     if ( value & StencilFaceFlagBits::eFront )
1200       result += "Front | ";
1201     if ( value & StencilFaceFlagBits::eBack )
1202       result += "Back | ";
1203 
1204     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1205   }
1206 
1207   //=== VK_VERSION_1_1 ===
1208 
to_string(SubgroupFeatureFlags value)1209   VULKAN_HPP_INLINE std::string to_string( SubgroupFeatureFlags value )
1210   {
1211     if ( !value )
1212       return "{}";
1213 
1214     std::string result;
1215     if ( value & SubgroupFeatureFlagBits::eBasic )
1216       result += "Basic | ";
1217     if ( value & SubgroupFeatureFlagBits::eVote )
1218       result += "Vote | ";
1219     if ( value & SubgroupFeatureFlagBits::eArithmetic )
1220       result += "Arithmetic | ";
1221     if ( value & SubgroupFeatureFlagBits::eBallot )
1222       result += "Ballot | ";
1223     if ( value & SubgroupFeatureFlagBits::eShuffle )
1224       result += "Shuffle | ";
1225     if ( value & SubgroupFeatureFlagBits::eShuffleRelative )
1226       result += "ShuffleRelative | ";
1227     if ( value & SubgroupFeatureFlagBits::eClustered )
1228       result += "Clustered | ";
1229     if ( value & SubgroupFeatureFlagBits::eQuad )
1230       result += "Quad | ";
1231     if ( value & SubgroupFeatureFlagBits::ePartitionedNV )
1232       result += "PartitionedNV | ";
1233     if ( value & SubgroupFeatureFlagBits::eRotateKHR )
1234       result += "RotateKHR | ";
1235     if ( value & SubgroupFeatureFlagBits::eRotateClusteredKHR )
1236       result += "RotateClusteredKHR | ";
1237 
1238     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1239   }
1240 
to_string(PeerMemoryFeatureFlags value)1241   VULKAN_HPP_INLINE std::string to_string( PeerMemoryFeatureFlags value )
1242   {
1243     if ( !value )
1244       return "{}";
1245 
1246     std::string result;
1247     if ( value & PeerMemoryFeatureFlagBits::eCopySrc )
1248       result += "CopySrc | ";
1249     if ( value & PeerMemoryFeatureFlagBits::eCopyDst )
1250       result += "CopyDst | ";
1251     if ( value & PeerMemoryFeatureFlagBits::eGenericSrc )
1252       result += "GenericSrc | ";
1253     if ( value & PeerMemoryFeatureFlagBits::eGenericDst )
1254       result += "GenericDst | ";
1255 
1256     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1257   }
1258 
to_string(MemoryAllocateFlags value)1259   VULKAN_HPP_INLINE std::string to_string( MemoryAllocateFlags value )
1260   {
1261     if ( !value )
1262       return "{}";
1263 
1264     std::string result;
1265     if ( value & MemoryAllocateFlagBits::eDeviceMask )
1266       result += "DeviceMask | ";
1267     if ( value & MemoryAllocateFlagBits::eDeviceAddress )
1268       result += "DeviceAddress | ";
1269     if ( value & MemoryAllocateFlagBits::eDeviceAddressCaptureReplay )
1270       result += "DeviceAddressCaptureReplay | ";
1271 
1272     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1273   }
1274 
to_string(CommandPoolTrimFlags)1275   VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlags )
1276   {
1277     return "{}";
1278   }
1279 
to_string(DescriptorUpdateTemplateCreateFlags)1280   VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlags )
1281   {
1282     return "{}";
1283   }
1284 
to_string(ExternalMemoryHandleTypeFlags value)1285   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlags value )
1286   {
1287     if ( !value )
1288       return "{}";
1289 
1290     std::string result;
1291     if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueFd )
1292       result += "OpaqueFd | ";
1293     if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32 )
1294       result += "OpaqueWin32 | ";
1295     if ( value & ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt )
1296       result += "OpaqueWin32Kmt | ";
1297     if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11Texture )
1298       result += "D3D11Texture | ";
1299     if ( value & ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt )
1300       result += "D3D11TextureKmt | ";
1301     if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Heap )
1302       result += "D3D12Heap | ";
1303     if ( value & ExternalMemoryHandleTypeFlagBits::eD3D12Resource )
1304       result += "D3D12Resource | ";
1305     if ( value & ExternalMemoryHandleTypeFlagBits::eDmaBufEXT )
1306       result += "DmaBufEXT | ";
1307 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
1308     if ( value & ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID )
1309       result += "AndroidHardwareBufferANDROID | ";
1310 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
1311     if ( value & ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT )
1312       result += "HostAllocationEXT | ";
1313     if ( value & ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT )
1314       result += "HostMappedForeignMemoryEXT | ";
1315 #if defined( VK_USE_PLATFORM_FUCHSIA )
1316     if ( value & ExternalMemoryHandleTypeFlagBits::eZirconVmoFUCHSIA )
1317       result += "ZirconVmoFUCHSIA | ";
1318 #endif /*VK_USE_PLATFORM_FUCHSIA*/
1319     if ( value & ExternalMemoryHandleTypeFlagBits::eRdmaAddressNV )
1320       result += "RdmaAddressNV | ";
1321 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
1322     if ( value & ExternalMemoryHandleTypeFlagBits::eScreenBufferQNX )
1323       result += "ScreenBufferQNX | ";
1324 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
1325 
1326     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1327   }
1328 
to_string(ExternalMemoryFeatureFlags value)1329   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlags value )
1330   {
1331     if ( !value )
1332       return "{}";
1333 
1334     std::string result;
1335     if ( value & ExternalMemoryFeatureFlagBits::eDedicatedOnly )
1336       result += "DedicatedOnly | ";
1337     if ( value & ExternalMemoryFeatureFlagBits::eExportable )
1338       result += "Exportable | ";
1339     if ( value & ExternalMemoryFeatureFlagBits::eImportable )
1340       result += "Importable | ";
1341 
1342     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1343   }
1344 
to_string(ExternalFenceHandleTypeFlags value)1345   VULKAN_HPP_INLINE std::string to_string( ExternalFenceHandleTypeFlags value )
1346   {
1347     if ( !value )
1348       return "{}";
1349 
1350     std::string result;
1351     if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueFd )
1352       result += "OpaqueFd | ";
1353     if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32 )
1354       result += "OpaqueWin32 | ";
1355     if ( value & ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt )
1356       result += "OpaqueWin32Kmt | ";
1357     if ( value & ExternalFenceHandleTypeFlagBits::eSyncFd )
1358       result += "SyncFd | ";
1359 
1360     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1361   }
1362 
to_string(ExternalFenceFeatureFlags value)1363   VULKAN_HPP_INLINE std::string to_string( ExternalFenceFeatureFlags value )
1364   {
1365     if ( !value )
1366       return "{}";
1367 
1368     std::string result;
1369     if ( value & ExternalFenceFeatureFlagBits::eExportable )
1370       result += "Exportable | ";
1371     if ( value & ExternalFenceFeatureFlagBits::eImportable )
1372       result += "Importable | ";
1373 
1374     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1375   }
1376 
to_string(FenceImportFlags value)1377   VULKAN_HPP_INLINE std::string to_string( FenceImportFlags value )
1378   {
1379     if ( !value )
1380       return "{}";
1381 
1382     std::string result;
1383     if ( value & FenceImportFlagBits::eTemporary )
1384       result += "Temporary | ";
1385 
1386     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1387   }
1388 
to_string(SemaphoreImportFlags value)1389   VULKAN_HPP_INLINE std::string to_string( SemaphoreImportFlags value )
1390   {
1391     if ( !value )
1392       return "{}";
1393 
1394     std::string result;
1395     if ( value & SemaphoreImportFlagBits::eTemporary )
1396       result += "Temporary | ";
1397 
1398     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1399   }
1400 
to_string(ExternalSemaphoreHandleTypeFlags value)1401   VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreHandleTypeFlags value )
1402   {
1403     if ( !value )
1404       return "{}";
1405 
1406     std::string result;
1407     if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd )
1408       result += "OpaqueFd | ";
1409     if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32 )
1410       result += "OpaqueWin32 | ";
1411     if ( value & ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt )
1412       result += "OpaqueWin32Kmt | ";
1413     if ( value & ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence )
1414       result += "D3D12Fence | ";
1415     if ( value & ExternalSemaphoreHandleTypeFlagBits::eSyncFd )
1416       result += "SyncFd | ";
1417 #if defined( VK_USE_PLATFORM_FUCHSIA )
1418     if ( value & ExternalSemaphoreHandleTypeFlagBits::eZirconEventFUCHSIA )
1419       result += "ZirconEventFUCHSIA | ";
1420 #endif /*VK_USE_PLATFORM_FUCHSIA*/
1421 
1422     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1423   }
1424 
to_string(ExternalSemaphoreFeatureFlags value)1425   VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreFeatureFlags value )
1426   {
1427     if ( !value )
1428       return "{}";
1429 
1430     std::string result;
1431     if ( value & ExternalSemaphoreFeatureFlagBits::eExportable )
1432       result += "Exportable | ";
1433     if ( value & ExternalSemaphoreFeatureFlagBits::eImportable )
1434       result += "Importable | ";
1435 
1436     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1437   }
1438 
1439   //=== VK_VERSION_1_2 ===
1440 
to_string(DescriptorBindingFlags value)1441   VULKAN_HPP_INLINE std::string to_string( DescriptorBindingFlags value )
1442   {
1443     if ( !value )
1444       return "{}";
1445 
1446     std::string result;
1447     if ( value & DescriptorBindingFlagBits::eUpdateAfterBind )
1448       result += "UpdateAfterBind | ";
1449     if ( value & DescriptorBindingFlagBits::eUpdateUnusedWhilePending )
1450       result += "UpdateUnusedWhilePending | ";
1451     if ( value & DescriptorBindingFlagBits::ePartiallyBound )
1452       result += "PartiallyBound | ";
1453     if ( value & DescriptorBindingFlagBits::eVariableDescriptorCount )
1454       result += "VariableDescriptorCount | ";
1455 
1456     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1457   }
1458 
to_string(ResolveModeFlags value)1459   VULKAN_HPP_INLINE std::string to_string( ResolveModeFlags value )
1460   {
1461     if ( !value )
1462       return "None";
1463 
1464     std::string result;
1465     if ( value & ResolveModeFlagBits::eSampleZero )
1466       result += "SampleZero | ";
1467     if ( value & ResolveModeFlagBits::eAverage )
1468       result += "Average | ";
1469     if ( value & ResolveModeFlagBits::eMin )
1470       result += "Min | ";
1471     if ( value & ResolveModeFlagBits::eMax )
1472       result += "Max | ";
1473 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
1474     if ( value & ResolveModeFlagBits::eExternalFormatDownsampleANDROID )
1475       result += "ExternalFormatDownsampleANDROID | ";
1476 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
1477 
1478     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1479   }
1480 
to_string(SemaphoreWaitFlags value)1481   VULKAN_HPP_INLINE std::string to_string( SemaphoreWaitFlags value )
1482   {
1483     if ( !value )
1484       return "{}";
1485 
1486     std::string result;
1487     if ( value & SemaphoreWaitFlagBits::eAny )
1488       result += "Any | ";
1489 
1490     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1491   }
1492 
1493   //=== VK_VERSION_1_3 ===
1494 
to_string(PipelineCreationFeedbackFlags value)1495   VULKAN_HPP_INLINE std::string to_string( PipelineCreationFeedbackFlags value )
1496   {
1497     if ( !value )
1498       return "{}";
1499 
1500     std::string result;
1501     if ( value & PipelineCreationFeedbackFlagBits::eValid )
1502       result += "Valid | ";
1503     if ( value & PipelineCreationFeedbackFlagBits::eApplicationPipelineCacheHit )
1504       result += "ApplicationPipelineCacheHit | ";
1505     if ( value & PipelineCreationFeedbackFlagBits::eBasePipelineAcceleration )
1506       result += "BasePipelineAcceleration | ";
1507 
1508     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1509   }
1510 
to_string(ToolPurposeFlags value)1511   VULKAN_HPP_INLINE std::string to_string( ToolPurposeFlags value )
1512   {
1513     if ( !value )
1514       return "{}";
1515 
1516     std::string result;
1517     if ( value & ToolPurposeFlagBits::eValidation )
1518       result += "Validation | ";
1519     if ( value & ToolPurposeFlagBits::eProfiling )
1520       result += "Profiling | ";
1521     if ( value & ToolPurposeFlagBits::eTracing )
1522       result += "Tracing | ";
1523     if ( value & ToolPurposeFlagBits::eAdditionalFeatures )
1524       result += "AdditionalFeatures | ";
1525     if ( value & ToolPurposeFlagBits::eModifyingFeatures )
1526       result += "ModifyingFeatures | ";
1527     if ( value & ToolPurposeFlagBits::eDebugReportingEXT )
1528       result += "DebugReportingEXT | ";
1529     if ( value & ToolPurposeFlagBits::eDebugMarkersEXT )
1530       result += "DebugMarkersEXT | ";
1531 
1532     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1533   }
1534 
to_string(PrivateDataSlotCreateFlags)1535   VULKAN_HPP_INLINE std::string to_string( PrivateDataSlotCreateFlags )
1536   {
1537     return "{}";
1538   }
1539 
to_string(PipelineStageFlags2 value)1540   VULKAN_HPP_INLINE std::string to_string( PipelineStageFlags2 value )
1541   {
1542     if ( !value )
1543       return "None";
1544 
1545     std::string result;
1546     if ( value & PipelineStageFlagBits2::eTopOfPipe )
1547       result += "TopOfPipe | ";
1548     if ( value & PipelineStageFlagBits2::eDrawIndirect )
1549       result += "DrawIndirect | ";
1550     if ( value & PipelineStageFlagBits2::eVertexInput )
1551       result += "VertexInput | ";
1552     if ( value & PipelineStageFlagBits2::eVertexShader )
1553       result += "VertexShader | ";
1554     if ( value & PipelineStageFlagBits2::eTessellationControlShader )
1555       result += "TessellationControlShader | ";
1556     if ( value & PipelineStageFlagBits2::eTessellationEvaluationShader )
1557       result += "TessellationEvaluationShader | ";
1558     if ( value & PipelineStageFlagBits2::eGeometryShader )
1559       result += "GeometryShader | ";
1560     if ( value & PipelineStageFlagBits2::eFragmentShader )
1561       result += "FragmentShader | ";
1562     if ( value & PipelineStageFlagBits2::eEarlyFragmentTests )
1563       result += "EarlyFragmentTests | ";
1564     if ( value & PipelineStageFlagBits2::eLateFragmentTests )
1565       result += "LateFragmentTests | ";
1566     if ( value & PipelineStageFlagBits2::eColorAttachmentOutput )
1567       result += "ColorAttachmentOutput | ";
1568     if ( value & PipelineStageFlagBits2::eComputeShader )
1569       result += "ComputeShader | ";
1570     if ( value & PipelineStageFlagBits2::eAllTransfer )
1571       result += "AllTransfer | ";
1572     if ( value & PipelineStageFlagBits2::eBottomOfPipe )
1573       result += "BottomOfPipe | ";
1574     if ( value & PipelineStageFlagBits2::eHost )
1575       result += "Host | ";
1576     if ( value & PipelineStageFlagBits2::eAllGraphics )
1577       result += "AllGraphics | ";
1578     if ( value & PipelineStageFlagBits2::eAllCommands )
1579       result += "AllCommands | ";
1580     if ( value & PipelineStageFlagBits2::eCopy )
1581       result += "Copy | ";
1582     if ( value & PipelineStageFlagBits2::eResolve )
1583       result += "Resolve | ";
1584     if ( value & PipelineStageFlagBits2::eBlit )
1585       result += "Blit | ";
1586     if ( value & PipelineStageFlagBits2::eClear )
1587       result += "Clear | ";
1588     if ( value & PipelineStageFlagBits2::eIndexInput )
1589       result += "IndexInput | ";
1590     if ( value & PipelineStageFlagBits2::eVertexAttributeInput )
1591       result += "VertexAttributeInput | ";
1592     if ( value & PipelineStageFlagBits2::ePreRasterizationShaders )
1593       result += "PreRasterizationShaders | ";
1594     if ( value & PipelineStageFlagBits2::eVideoDecodeKHR )
1595       result += "VideoDecodeKHR | ";
1596     if ( value & PipelineStageFlagBits2::eVideoEncodeKHR )
1597       result += "VideoEncodeKHR | ";
1598     if ( value & PipelineStageFlagBits2::eTransformFeedbackEXT )
1599       result += "TransformFeedbackEXT | ";
1600     if ( value & PipelineStageFlagBits2::eConditionalRenderingEXT )
1601       result += "ConditionalRenderingEXT | ";
1602     if ( value & PipelineStageFlagBits2::eCommandPreprocessNV )
1603       result += "CommandPreprocessNV | ";
1604     if ( value & PipelineStageFlagBits2::eFragmentShadingRateAttachmentKHR )
1605       result += "FragmentShadingRateAttachmentKHR | ";
1606     if ( value & PipelineStageFlagBits2::eAccelerationStructureBuildKHR )
1607       result += "AccelerationStructureBuildKHR | ";
1608     if ( value & PipelineStageFlagBits2::eRayTracingShaderKHR )
1609       result += "RayTracingShaderKHR | ";
1610     if ( value & PipelineStageFlagBits2::eFragmentDensityProcessEXT )
1611       result += "FragmentDensityProcessEXT | ";
1612     if ( value & PipelineStageFlagBits2::eTaskShaderEXT )
1613       result += "TaskShaderEXT | ";
1614     if ( value & PipelineStageFlagBits2::eMeshShaderEXT )
1615       result += "MeshShaderEXT | ";
1616     if ( value & PipelineStageFlagBits2::eSubpassShaderHUAWEI )
1617       result += "SubpassShaderHUAWEI | ";
1618     if ( value & PipelineStageFlagBits2::eInvocationMaskHUAWEI )
1619       result += "InvocationMaskHUAWEI | ";
1620     if ( value & PipelineStageFlagBits2::eAccelerationStructureCopyKHR )
1621       result += "AccelerationStructureCopyKHR | ";
1622     if ( value & PipelineStageFlagBits2::eMicromapBuildEXT )
1623       result += "MicromapBuildEXT | ";
1624     if ( value & PipelineStageFlagBits2::eClusterCullingShaderHUAWEI )
1625       result += "ClusterCullingShaderHUAWEI | ";
1626     if ( value & PipelineStageFlagBits2::eOpticalFlowNV )
1627       result += "OpticalFlowNV | ";
1628 
1629     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1630   }
1631 
to_string(AccessFlags2 value)1632   VULKAN_HPP_INLINE std::string to_string( AccessFlags2 value )
1633   {
1634     if ( !value )
1635       return "None";
1636 
1637     std::string result;
1638     if ( value & AccessFlagBits2::eIndirectCommandRead )
1639       result += "IndirectCommandRead | ";
1640     if ( value & AccessFlagBits2::eIndexRead )
1641       result += "IndexRead | ";
1642     if ( value & AccessFlagBits2::eVertexAttributeRead )
1643       result += "VertexAttributeRead | ";
1644     if ( value & AccessFlagBits2::eUniformRead )
1645       result += "UniformRead | ";
1646     if ( value & AccessFlagBits2::eInputAttachmentRead )
1647       result += "InputAttachmentRead | ";
1648     if ( value & AccessFlagBits2::eShaderRead )
1649       result += "ShaderRead | ";
1650     if ( value & AccessFlagBits2::eShaderWrite )
1651       result += "ShaderWrite | ";
1652     if ( value & AccessFlagBits2::eColorAttachmentRead )
1653       result += "ColorAttachmentRead | ";
1654     if ( value & AccessFlagBits2::eColorAttachmentWrite )
1655       result += "ColorAttachmentWrite | ";
1656     if ( value & AccessFlagBits2::eDepthStencilAttachmentRead )
1657       result += "DepthStencilAttachmentRead | ";
1658     if ( value & AccessFlagBits2::eDepthStencilAttachmentWrite )
1659       result += "DepthStencilAttachmentWrite | ";
1660     if ( value & AccessFlagBits2::eTransferRead )
1661       result += "TransferRead | ";
1662     if ( value & AccessFlagBits2::eTransferWrite )
1663       result += "TransferWrite | ";
1664     if ( value & AccessFlagBits2::eHostRead )
1665       result += "HostRead | ";
1666     if ( value & AccessFlagBits2::eHostWrite )
1667       result += "HostWrite | ";
1668     if ( value & AccessFlagBits2::eMemoryRead )
1669       result += "MemoryRead | ";
1670     if ( value & AccessFlagBits2::eMemoryWrite )
1671       result += "MemoryWrite | ";
1672     if ( value & AccessFlagBits2::eShaderSampledRead )
1673       result += "ShaderSampledRead | ";
1674     if ( value & AccessFlagBits2::eShaderStorageRead )
1675       result += "ShaderStorageRead | ";
1676     if ( value & AccessFlagBits2::eShaderStorageWrite )
1677       result += "ShaderStorageWrite | ";
1678     if ( value & AccessFlagBits2::eVideoDecodeReadKHR )
1679       result += "VideoDecodeReadKHR | ";
1680     if ( value & AccessFlagBits2::eVideoDecodeWriteKHR )
1681       result += "VideoDecodeWriteKHR | ";
1682     if ( value & AccessFlagBits2::eVideoEncodeReadKHR )
1683       result += "VideoEncodeReadKHR | ";
1684     if ( value & AccessFlagBits2::eVideoEncodeWriteKHR )
1685       result += "VideoEncodeWriteKHR | ";
1686     if ( value & AccessFlagBits2::eTransformFeedbackWriteEXT )
1687       result += "TransformFeedbackWriteEXT | ";
1688     if ( value & AccessFlagBits2::eTransformFeedbackCounterReadEXT )
1689       result += "TransformFeedbackCounterReadEXT | ";
1690     if ( value & AccessFlagBits2::eTransformFeedbackCounterWriteEXT )
1691       result += "TransformFeedbackCounterWriteEXT | ";
1692     if ( value & AccessFlagBits2::eConditionalRenderingReadEXT )
1693       result += "ConditionalRenderingReadEXT | ";
1694     if ( value & AccessFlagBits2::eCommandPreprocessReadNV )
1695       result += "CommandPreprocessReadNV | ";
1696     if ( value & AccessFlagBits2::eCommandPreprocessWriteNV )
1697       result += "CommandPreprocessWriteNV | ";
1698     if ( value & AccessFlagBits2::eFragmentShadingRateAttachmentReadKHR )
1699       result += "FragmentShadingRateAttachmentReadKHR | ";
1700     if ( value & AccessFlagBits2::eAccelerationStructureReadKHR )
1701       result += "AccelerationStructureReadKHR | ";
1702     if ( value & AccessFlagBits2::eAccelerationStructureWriteKHR )
1703       result += "AccelerationStructureWriteKHR | ";
1704     if ( value & AccessFlagBits2::eFragmentDensityMapReadEXT )
1705       result += "FragmentDensityMapReadEXT | ";
1706     if ( value & AccessFlagBits2::eColorAttachmentReadNoncoherentEXT )
1707       result += "ColorAttachmentReadNoncoherentEXT | ";
1708     if ( value & AccessFlagBits2::eDescriptorBufferReadEXT )
1709       result += "DescriptorBufferReadEXT | ";
1710     if ( value & AccessFlagBits2::eInvocationMaskReadHUAWEI )
1711       result += "InvocationMaskReadHUAWEI | ";
1712     if ( value & AccessFlagBits2::eShaderBindingTableReadKHR )
1713       result += "ShaderBindingTableReadKHR | ";
1714     if ( value & AccessFlagBits2::eMicromapReadEXT )
1715       result += "MicromapReadEXT | ";
1716     if ( value & AccessFlagBits2::eMicromapWriteEXT )
1717       result += "MicromapWriteEXT | ";
1718     if ( value & AccessFlagBits2::eOpticalFlowReadNV )
1719       result += "OpticalFlowReadNV | ";
1720     if ( value & AccessFlagBits2::eOpticalFlowWriteNV )
1721       result += "OpticalFlowWriteNV | ";
1722 
1723     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1724   }
1725 
to_string(SubmitFlags value)1726   VULKAN_HPP_INLINE std::string to_string( SubmitFlags value )
1727   {
1728     if ( !value )
1729       return "{}";
1730 
1731     std::string result;
1732     if ( value & SubmitFlagBits::eProtected )
1733       result += "Protected | ";
1734 
1735     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1736   }
1737 
to_string(RenderingFlags value)1738   VULKAN_HPP_INLINE std::string to_string( RenderingFlags value )
1739   {
1740     if ( !value )
1741       return "{}";
1742 
1743     std::string result;
1744     if ( value & RenderingFlagBits::eContentsSecondaryCommandBuffers )
1745       result += "ContentsSecondaryCommandBuffers | ";
1746     if ( value & RenderingFlagBits::eSuspending )
1747       result += "Suspending | ";
1748     if ( value & RenderingFlagBits::eResuming )
1749       result += "Resuming | ";
1750     if ( value & RenderingFlagBits::eContentsInlineEXT )
1751       result += "ContentsInlineEXT | ";
1752     if ( value & RenderingFlagBits::eEnableLegacyDitheringEXT )
1753       result += "EnableLegacyDitheringEXT | ";
1754 
1755     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1756   }
1757 
to_string(FormatFeatureFlags2 value)1758   VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlags2 value )
1759   {
1760     if ( !value )
1761       return "{}";
1762 
1763     std::string result;
1764     if ( value & FormatFeatureFlagBits2::eSampledImage )
1765       result += "SampledImage | ";
1766     if ( value & FormatFeatureFlagBits2::eStorageImage )
1767       result += "StorageImage | ";
1768     if ( value & FormatFeatureFlagBits2::eStorageImageAtomic )
1769       result += "StorageImageAtomic | ";
1770     if ( value & FormatFeatureFlagBits2::eUniformTexelBuffer )
1771       result += "UniformTexelBuffer | ";
1772     if ( value & FormatFeatureFlagBits2::eStorageTexelBuffer )
1773       result += "StorageTexelBuffer | ";
1774     if ( value & FormatFeatureFlagBits2::eStorageTexelBufferAtomic )
1775       result += "StorageTexelBufferAtomic | ";
1776     if ( value & FormatFeatureFlagBits2::eVertexBuffer )
1777       result += "VertexBuffer | ";
1778     if ( value & FormatFeatureFlagBits2::eColorAttachment )
1779       result += "ColorAttachment | ";
1780     if ( value & FormatFeatureFlagBits2::eColorAttachmentBlend )
1781       result += "ColorAttachmentBlend | ";
1782     if ( value & FormatFeatureFlagBits2::eDepthStencilAttachment )
1783       result += "DepthStencilAttachment | ";
1784     if ( value & FormatFeatureFlagBits2::eBlitSrc )
1785       result += "BlitSrc | ";
1786     if ( value & FormatFeatureFlagBits2::eBlitDst )
1787       result += "BlitDst | ";
1788     if ( value & FormatFeatureFlagBits2::eSampledImageFilterLinear )
1789       result += "SampledImageFilterLinear | ";
1790     if ( value & FormatFeatureFlagBits2::eSampledImageFilterCubic )
1791       result += "SampledImageFilterCubic | ";
1792     if ( value & FormatFeatureFlagBits2::eTransferSrc )
1793       result += "TransferSrc | ";
1794     if ( value & FormatFeatureFlagBits2::eTransferDst )
1795       result += "TransferDst | ";
1796     if ( value & FormatFeatureFlagBits2::eSampledImageFilterMinmax )
1797       result += "SampledImageFilterMinmax | ";
1798     if ( value & FormatFeatureFlagBits2::eMidpointChromaSamples )
1799       result += "MidpointChromaSamples | ";
1800     if ( value & FormatFeatureFlagBits2::eSampledImageYcbcrConversionLinearFilter )
1801       result += "SampledImageYcbcrConversionLinearFilter | ";
1802     if ( value & FormatFeatureFlagBits2::eSampledImageYcbcrConversionSeparateReconstructionFilter )
1803       result += "SampledImageYcbcrConversionSeparateReconstructionFilter | ";
1804     if ( value & FormatFeatureFlagBits2::eSampledImageYcbcrConversionChromaReconstructionExplicit )
1805       result += "SampledImageYcbcrConversionChromaReconstructionExplicit | ";
1806     if ( value & FormatFeatureFlagBits2::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable )
1807       result += "SampledImageYcbcrConversionChromaReconstructionExplicitForceable | ";
1808     if ( value & FormatFeatureFlagBits2::eDisjoint )
1809       result += "Disjoint | ";
1810     if ( value & FormatFeatureFlagBits2::eCositedChromaSamples )
1811       result += "CositedChromaSamples | ";
1812     if ( value & FormatFeatureFlagBits2::eStorageReadWithoutFormat )
1813       result += "StorageReadWithoutFormat | ";
1814     if ( value & FormatFeatureFlagBits2::eStorageWriteWithoutFormat )
1815       result += "StorageWriteWithoutFormat | ";
1816     if ( value & FormatFeatureFlagBits2::eSampledImageDepthComparison )
1817       result += "SampledImageDepthComparison | ";
1818     if ( value & FormatFeatureFlagBits2::eVideoDecodeOutputKHR )
1819       result += "VideoDecodeOutputKHR | ";
1820     if ( value & FormatFeatureFlagBits2::eVideoDecodeDpbKHR )
1821       result += "VideoDecodeDpbKHR | ";
1822     if ( value & FormatFeatureFlagBits2::eAccelerationStructureVertexBufferKHR )
1823       result += "AccelerationStructureVertexBufferKHR | ";
1824     if ( value & FormatFeatureFlagBits2::eFragmentDensityMapEXT )
1825       result += "FragmentDensityMapEXT | ";
1826     if ( value & FormatFeatureFlagBits2::eFragmentShadingRateAttachmentKHR )
1827       result += "FragmentShadingRateAttachmentKHR | ";
1828     if ( value & FormatFeatureFlagBits2::eHostImageTransferEXT )
1829       result += "HostImageTransferEXT | ";
1830     if ( value & FormatFeatureFlagBits2::eVideoEncodeInputKHR )
1831       result += "VideoEncodeInputKHR | ";
1832     if ( value & FormatFeatureFlagBits2::eVideoEncodeDpbKHR )
1833       result += "VideoEncodeDpbKHR | ";
1834     if ( value & FormatFeatureFlagBits2::eLinearColorAttachmentNV )
1835       result += "LinearColorAttachmentNV | ";
1836     if ( value & FormatFeatureFlagBits2::eWeightImageQCOM )
1837       result += "WeightImageQCOM | ";
1838     if ( value & FormatFeatureFlagBits2::eWeightSampledImageQCOM )
1839       result += "WeightSampledImageQCOM | ";
1840     if ( value & FormatFeatureFlagBits2::eBlockMatchingQCOM )
1841       result += "BlockMatchingQCOM | ";
1842     if ( value & FormatFeatureFlagBits2::eBoxFilterSampledQCOM )
1843       result += "BoxFilterSampledQCOM | ";
1844     if ( value & FormatFeatureFlagBits2::eOpticalFlowImageNV )
1845       result += "OpticalFlowImageNV | ";
1846     if ( value & FormatFeatureFlagBits2::eOpticalFlowVectorNV )
1847       result += "OpticalFlowVectorNV | ";
1848     if ( value & FormatFeatureFlagBits2::eOpticalFlowCostNV )
1849       result += "OpticalFlowCostNV | ";
1850 
1851     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1852   }
1853 
1854   //=== VK_KHR_surface ===
1855 
to_string(CompositeAlphaFlagsKHR value)1856   VULKAN_HPP_INLINE std::string to_string( CompositeAlphaFlagsKHR value )
1857   {
1858     if ( !value )
1859       return "{}";
1860 
1861     std::string result;
1862     if ( value & CompositeAlphaFlagBitsKHR::eOpaque )
1863       result += "Opaque | ";
1864     if ( value & CompositeAlphaFlagBitsKHR::ePreMultiplied )
1865       result += "PreMultiplied | ";
1866     if ( value & CompositeAlphaFlagBitsKHR::ePostMultiplied )
1867       result += "PostMultiplied | ";
1868     if ( value & CompositeAlphaFlagBitsKHR::eInherit )
1869       result += "Inherit | ";
1870 
1871     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1872   }
1873 
1874   //=== VK_KHR_swapchain ===
1875 
to_string(SwapchainCreateFlagsKHR value)1876   VULKAN_HPP_INLINE std::string to_string( SwapchainCreateFlagsKHR value )
1877   {
1878     if ( !value )
1879       return "{}";
1880 
1881     std::string result;
1882     if ( value & SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions )
1883       result += "SplitInstanceBindRegions | ";
1884     if ( value & SwapchainCreateFlagBitsKHR::eProtected )
1885       result += "Protected | ";
1886     if ( value & SwapchainCreateFlagBitsKHR::eMutableFormat )
1887       result += "MutableFormat | ";
1888     if ( value & SwapchainCreateFlagBitsKHR::eDeferredMemoryAllocationEXT )
1889       result += "DeferredMemoryAllocationEXT | ";
1890 
1891     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1892   }
1893 
to_string(DeviceGroupPresentModeFlagsKHR value)1894   VULKAN_HPP_INLINE std::string to_string( DeviceGroupPresentModeFlagsKHR value )
1895   {
1896     if ( !value )
1897       return "{}";
1898 
1899     std::string result;
1900     if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocal )
1901       result += "Local | ";
1902     if ( value & DeviceGroupPresentModeFlagBitsKHR::eRemote )
1903       result += "Remote | ";
1904     if ( value & DeviceGroupPresentModeFlagBitsKHR::eSum )
1905       result += "Sum | ";
1906     if ( value & DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice )
1907       result += "LocalMultiDevice | ";
1908 
1909     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1910   }
1911 
1912   //=== VK_KHR_display ===
1913 
to_string(DisplayModeCreateFlagsKHR)1914   VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagsKHR )
1915   {
1916     return "{}";
1917   }
1918 
to_string(DisplayPlaneAlphaFlagsKHR value)1919   VULKAN_HPP_INLINE std::string to_string( DisplayPlaneAlphaFlagsKHR value )
1920   {
1921     if ( !value )
1922       return "{}";
1923 
1924     std::string result;
1925     if ( value & DisplayPlaneAlphaFlagBitsKHR::eOpaque )
1926       result += "Opaque | ";
1927     if ( value & DisplayPlaneAlphaFlagBitsKHR::eGlobal )
1928       result += "Global | ";
1929     if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixel )
1930       result += "PerPixel | ";
1931     if ( value & DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied )
1932       result += "PerPixelPremultiplied | ";
1933 
1934     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1935   }
1936 
to_string(DisplaySurfaceCreateFlagsKHR)1937   VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagsKHR )
1938   {
1939     return "{}";
1940   }
1941 
to_string(SurfaceTransformFlagsKHR value)1942   VULKAN_HPP_INLINE std::string to_string( SurfaceTransformFlagsKHR value )
1943   {
1944     if ( !value )
1945       return "{}";
1946 
1947     std::string result;
1948     if ( value & SurfaceTransformFlagBitsKHR::eIdentity )
1949       result += "Identity | ";
1950     if ( value & SurfaceTransformFlagBitsKHR::eRotate90 )
1951       result += "Rotate90 | ";
1952     if ( value & SurfaceTransformFlagBitsKHR::eRotate180 )
1953       result += "Rotate180 | ";
1954     if ( value & SurfaceTransformFlagBitsKHR::eRotate270 )
1955       result += "Rotate270 | ";
1956     if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirror )
1957       result += "HorizontalMirror | ";
1958     if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90 )
1959       result += "HorizontalMirrorRotate90 | ";
1960     if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180 )
1961       result += "HorizontalMirrorRotate180 | ";
1962     if ( value & SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270 )
1963       result += "HorizontalMirrorRotate270 | ";
1964     if ( value & SurfaceTransformFlagBitsKHR::eInherit )
1965       result += "Inherit | ";
1966 
1967     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
1968   }
1969 
1970 #if defined( VK_USE_PLATFORM_XLIB_KHR )
1971   //=== VK_KHR_xlib_surface ===
1972 
to_string(XlibSurfaceCreateFlagsKHR)1973   VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagsKHR )
1974   {
1975     return "{}";
1976   }
1977 #endif /*VK_USE_PLATFORM_XLIB_KHR*/
1978 
1979 #if defined( VK_USE_PLATFORM_XCB_KHR )
1980   //=== VK_KHR_xcb_surface ===
1981 
to_string(XcbSurfaceCreateFlagsKHR)1982   VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagsKHR )
1983   {
1984     return "{}";
1985   }
1986 #endif /*VK_USE_PLATFORM_XCB_KHR*/
1987 
1988 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
1989   //=== VK_KHR_wayland_surface ===
1990 
to_string(WaylandSurfaceCreateFlagsKHR)1991   VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagsKHR )
1992   {
1993     return "{}";
1994   }
1995 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
1996 
1997 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
1998   //=== VK_KHR_android_surface ===
1999 
to_string(AndroidSurfaceCreateFlagsKHR)2000   VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagsKHR )
2001   {
2002     return "{}";
2003   }
2004 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
2005 
2006 #if defined( VK_USE_PLATFORM_WIN32_KHR )
2007   //=== VK_KHR_win32_surface ===
2008 
to_string(Win32SurfaceCreateFlagsKHR)2009   VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagsKHR )
2010   {
2011     return "{}";
2012   }
2013 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
2014 
2015   //=== VK_EXT_debug_report ===
2016 
to_string(DebugReportFlagsEXT value)2017   VULKAN_HPP_INLINE std::string to_string( DebugReportFlagsEXT value )
2018   {
2019     if ( !value )
2020       return "{}";
2021 
2022     std::string result;
2023     if ( value & DebugReportFlagBitsEXT::eInformation )
2024       result += "Information | ";
2025     if ( value & DebugReportFlagBitsEXT::eWarning )
2026       result += "Warning | ";
2027     if ( value & DebugReportFlagBitsEXT::ePerformanceWarning )
2028       result += "PerformanceWarning | ";
2029     if ( value & DebugReportFlagBitsEXT::eError )
2030       result += "Error | ";
2031     if ( value & DebugReportFlagBitsEXT::eDebug )
2032       result += "Debug | ";
2033 
2034     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2035   }
2036 
2037   //=== VK_KHR_video_queue ===
2038 
to_string(VideoCodecOperationFlagsKHR value)2039   VULKAN_HPP_INLINE std::string to_string( VideoCodecOperationFlagsKHR value )
2040   {
2041     if ( !value )
2042       return "None";
2043 
2044     std::string result;
2045     if ( value & VideoCodecOperationFlagBitsKHR::eEncodeH264 )
2046       result += "EncodeH264 | ";
2047     if ( value & VideoCodecOperationFlagBitsKHR::eEncodeH265 )
2048       result += "EncodeH265 | ";
2049     if ( value & VideoCodecOperationFlagBitsKHR::eDecodeH264 )
2050       result += "DecodeH264 | ";
2051     if ( value & VideoCodecOperationFlagBitsKHR::eDecodeH265 )
2052       result += "DecodeH265 | ";
2053     if ( value & VideoCodecOperationFlagBitsKHR::eDecodeAv1 )
2054       result += "DecodeAv1 | ";
2055 
2056     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2057   }
2058 
to_string(VideoChromaSubsamplingFlagsKHR value)2059   VULKAN_HPP_INLINE std::string to_string( VideoChromaSubsamplingFlagsKHR value )
2060   {
2061     if ( !value )
2062       return "Invalid";
2063 
2064     std::string result;
2065     if ( value & VideoChromaSubsamplingFlagBitsKHR::eMonochrome )
2066       result += "Monochrome | ";
2067     if ( value & VideoChromaSubsamplingFlagBitsKHR::e420 )
2068       result += "420 | ";
2069     if ( value & VideoChromaSubsamplingFlagBitsKHR::e422 )
2070       result += "422 | ";
2071     if ( value & VideoChromaSubsamplingFlagBitsKHR::e444 )
2072       result += "444 | ";
2073 
2074     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2075   }
2076 
to_string(VideoComponentBitDepthFlagsKHR value)2077   VULKAN_HPP_INLINE std::string to_string( VideoComponentBitDepthFlagsKHR value )
2078   {
2079     if ( !value )
2080       return "Invalid";
2081 
2082     std::string result;
2083     if ( value & VideoComponentBitDepthFlagBitsKHR::e8 )
2084       result += "8 | ";
2085     if ( value & VideoComponentBitDepthFlagBitsKHR::e10 )
2086       result += "10 | ";
2087     if ( value & VideoComponentBitDepthFlagBitsKHR::e12 )
2088       result += "12 | ";
2089 
2090     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2091   }
2092 
to_string(VideoCapabilityFlagsKHR value)2093   VULKAN_HPP_INLINE std::string to_string( VideoCapabilityFlagsKHR value )
2094   {
2095     if ( !value )
2096       return "{}";
2097 
2098     std::string result;
2099     if ( value & VideoCapabilityFlagBitsKHR::eProtectedContent )
2100       result += "ProtectedContent | ";
2101     if ( value & VideoCapabilityFlagBitsKHR::eSeparateReferenceImages )
2102       result += "SeparateReferenceImages | ";
2103 
2104     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2105   }
2106 
to_string(VideoSessionCreateFlagsKHR value)2107   VULKAN_HPP_INLINE std::string to_string( VideoSessionCreateFlagsKHR value )
2108   {
2109     if ( !value )
2110       return "{}";
2111 
2112     std::string result;
2113     if ( value & VideoSessionCreateFlagBitsKHR::eProtectedContent )
2114       result += "ProtectedContent | ";
2115     if ( value & VideoSessionCreateFlagBitsKHR::eAllowEncodeParameterOptimizations )
2116       result += "AllowEncodeParameterOptimizations | ";
2117     if ( value & VideoSessionCreateFlagBitsKHR::eInlineQueries )
2118       result += "InlineQueries | ";
2119 
2120     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2121   }
2122 
to_string(VideoSessionParametersCreateFlagsKHR)2123   VULKAN_HPP_INLINE std::string to_string( VideoSessionParametersCreateFlagsKHR )
2124   {
2125     return "{}";
2126   }
2127 
to_string(VideoBeginCodingFlagsKHR)2128   VULKAN_HPP_INLINE std::string to_string( VideoBeginCodingFlagsKHR )
2129   {
2130     return "{}";
2131   }
2132 
to_string(VideoEndCodingFlagsKHR)2133   VULKAN_HPP_INLINE std::string to_string( VideoEndCodingFlagsKHR )
2134   {
2135     return "{}";
2136   }
2137 
to_string(VideoCodingControlFlagsKHR value)2138   VULKAN_HPP_INLINE std::string to_string( VideoCodingControlFlagsKHR value )
2139   {
2140     if ( !value )
2141       return "{}";
2142 
2143     std::string result;
2144     if ( value & VideoCodingControlFlagBitsKHR::eReset )
2145       result += "Reset | ";
2146     if ( value & VideoCodingControlFlagBitsKHR::eEncodeRateControl )
2147       result += "EncodeRateControl | ";
2148     if ( value & VideoCodingControlFlagBitsKHR::eEncodeQualityLevel )
2149       result += "EncodeQualityLevel | ";
2150 
2151     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2152   }
2153 
2154   //=== VK_KHR_video_decode_queue ===
2155 
to_string(VideoDecodeCapabilityFlagsKHR value)2156   VULKAN_HPP_INLINE std::string to_string( VideoDecodeCapabilityFlagsKHR value )
2157   {
2158     if ( !value )
2159       return "{}";
2160 
2161     std::string result;
2162     if ( value & VideoDecodeCapabilityFlagBitsKHR::eDpbAndOutputCoincide )
2163       result += "DpbAndOutputCoincide | ";
2164     if ( value & VideoDecodeCapabilityFlagBitsKHR::eDpbAndOutputDistinct )
2165       result += "DpbAndOutputDistinct | ";
2166 
2167     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2168   }
2169 
to_string(VideoDecodeUsageFlagsKHR value)2170   VULKAN_HPP_INLINE std::string to_string( VideoDecodeUsageFlagsKHR value )
2171   {
2172     if ( !value )
2173       return "Default";
2174 
2175     std::string result;
2176     if ( value & VideoDecodeUsageFlagBitsKHR::eTranscoding )
2177       result += "Transcoding | ";
2178     if ( value & VideoDecodeUsageFlagBitsKHR::eOffline )
2179       result += "Offline | ";
2180     if ( value & VideoDecodeUsageFlagBitsKHR::eStreaming )
2181       result += "Streaming | ";
2182 
2183     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2184   }
2185 
to_string(VideoDecodeFlagsKHR)2186   VULKAN_HPP_INLINE std::string to_string( VideoDecodeFlagsKHR )
2187   {
2188     return "{}";
2189   }
2190 
2191   //=== VK_EXT_transform_feedback ===
2192 
to_string(PipelineRasterizationStateStreamCreateFlagsEXT)2193   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagsEXT )
2194   {
2195     return "{}";
2196   }
2197 
2198   //=== VK_KHR_video_encode_h264 ===
2199 
to_string(VideoEncodeH264CapabilityFlagsKHR value)2200   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264CapabilityFlagsKHR value )
2201   {
2202     if ( !value )
2203       return "{}";
2204 
2205     std::string result;
2206     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::eHrdCompliance )
2207       result += "HrdCompliance | ";
2208     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::ePredictionWeightTableGenerated )
2209       result += "PredictionWeightTableGenerated | ";
2210     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::eRowUnalignedSlice )
2211       result += "RowUnalignedSlice | ";
2212     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::eDifferentSliceType )
2213       result += "DifferentSliceType | ";
2214     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::eBFrameInL0List )
2215       result += "BFrameInL0List | ";
2216     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::eBFrameInL1List )
2217       result += "BFrameInL1List | ";
2218     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::ePerPictureTypeMinMaxQp )
2219       result += "PerPictureTypeMinMaxQp | ";
2220     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::ePerSliceConstantQp )
2221       result += "PerSliceConstantQp | ";
2222     if ( value & VideoEncodeH264CapabilityFlagBitsKHR::eGeneratePrefixNalu )
2223       result += "GeneratePrefixNalu | ";
2224 
2225     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2226   }
2227 
to_string(VideoEncodeH264StdFlagsKHR value)2228   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264StdFlagsKHR value )
2229   {
2230     if ( !value )
2231       return "{}";
2232 
2233     std::string result;
2234     if ( value & VideoEncodeH264StdFlagBitsKHR::eSeparateColorPlaneFlagSet )
2235       result += "SeparateColorPlaneFlagSet | ";
2236     if ( value & VideoEncodeH264StdFlagBitsKHR::eQpprimeYZeroTransformBypassFlagSet )
2237       result += "QpprimeYZeroTransformBypassFlagSet | ";
2238     if ( value & VideoEncodeH264StdFlagBitsKHR::eScalingMatrixPresentFlagSet )
2239       result += "ScalingMatrixPresentFlagSet | ";
2240     if ( value & VideoEncodeH264StdFlagBitsKHR::eChromaQpIndexOffset )
2241       result += "ChromaQpIndexOffset | ";
2242     if ( value & VideoEncodeH264StdFlagBitsKHR::eSecondChromaQpIndexOffset )
2243       result += "SecondChromaQpIndexOffset | ";
2244     if ( value & VideoEncodeH264StdFlagBitsKHR::ePicInitQpMinus26 )
2245       result += "PicInitQpMinus26 | ";
2246     if ( value & VideoEncodeH264StdFlagBitsKHR::eWeightedPredFlagSet )
2247       result += "WeightedPredFlagSet | ";
2248     if ( value & VideoEncodeH264StdFlagBitsKHR::eWeightedBipredIdcExplicit )
2249       result += "WeightedBipredIdcExplicit | ";
2250     if ( value & VideoEncodeH264StdFlagBitsKHR::eWeightedBipredIdcImplicit )
2251       result += "WeightedBipredIdcImplicit | ";
2252     if ( value & VideoEncodeH264StdFlagBitsKHR::eTransform8X8ModeFlagSet )
2253       result += "Transform8X8ModeFlagSet | ";
2254     if ( value & VideoEncodeH264StdFlagBitsKHR::eDirectSpatialMvPredFlagUnset )
2255       result += "DirectSpatialMvPredFlagUnset | ";
2256     if ( value & VideoEncodeH264StdFlagBitsKHR::eEntropyCodingModeFlagUnset )
2257       result += "EntropyCodingModeFlagUnset | ";
2258     if ( value & VideoEncodeH264StdFlagBitsKHR::eEntropyCodingModeFlagSet )
2259       result += "EntropyCodingModeFlagSet | ";
2260     if ( value & VideoEncodeH264StdFlagBitsKHR::eDirect8X8InferenceFlagUnset )
2261       result += "Direct8X8InferenceFlagUnset | ";
2262     if ( value & VideoEncodeH264StdFlagBitsKHR::eConstrainedIntraPredFlagSet )
2263       result += "ConstrainedIntraPredFlagSet | ";
2264     if ( value & VideoEncodeH264StdFlagBitsKHR::eDeblockingFilterDisabled )
2265       result += "DeblockingFilterDisabled | ";
2266     if ( value & VideoEncodeH264StdFlagBitsKHR::eDeblockingFilterEnabled )
2267       result += "DeblockingFilterEnabled | ";
2268     if ( value & VideoEncodeH264StdFlagBitsKHR::eDeblockingFilterPartial )
2269       result += "DeblockingFilterPartial | ";
2270     if ( value & VideoEncodeH264StdFlagBitsKHR::eSliceQpDelta )
2271       result += "SliceQpDelta | ";
2272     if ( value & VideoEncodeH264StdFlagBitsKHR::eDifferentSliceQpDelta )
2273       result += "DifferentSliceQpDelta | ";
2274 
2275     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2276   }
2277 
to_string(VideoEncodeH264RateControlFlagsKHR value)2278   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264RateControlFlagsKHR value )
2279   {
2280     if ( !value )
2281       return "{}";
2282 
2283     std::string result;
2284     if ( value & VideoEncodeH264RateControlFlagBitsKHR::eAttemptHrdCompliance )
2285       result += "AttemptHrdCompliance | ";
2286     if ( value & VideoEncodeH264RateControlFlagBitsKHR::eRegularGop )
2287       result += "RegularGop | ";
2288     if ( value & VideoEncodeH264RateControlFlagBitsKHR::eReferencePatternFlat )
2289       result += "ReferencePatternFlat | ";
2290     if ( value & VideoEncodeH264RateControlFlagBitsKHR::eReferencePatternDyadic )
2291       result += "ReferencePatternDyadic | ";
2292     if ( value & VideoEncodeH264RateControlFlagBitsKHR::eTemporalLayerPatternDyadic )
2293       result += "TemporalLayerPatternDyadic | ";
2294 
2295     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2296   }
2297 
2298   //=== VK_KHR_video_encode_h265 ===
2299 
to_string(VideoEncodeH265CapabilityFlagsKHR value)2300   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265CapabilityFlagsKHR value )
2301   {
2302     if ( !value )
2303       return "{}";
2304 
2305     std::string result;
2306     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::eHrdCompliance )
2307       result += "HrdCompliance | ";
2308     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::ePredictionWeightTableGenerated )
2309       result += "PredictionWeightTableGenerated | ";
2310     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::eRowUnalignedSliceSegment )
2311       result += "RowUnalignedSliceSegment | ";
2312     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::eDifferentSliceSegmentType )
2313       result += "DifferentSliceSegmentType | ";
2314     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::eBFrameInL0List )
2315       result += "BFrameInL0List | ";
2316     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::eBFrameInL1List )
2317       result += "BFrameInL1List | ";
2318     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::ePerPictureTypeMinMaxQp )
2319       result += "PerPictureTypeMinMaxQp | ";
2320     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::ePerSliceSegmentConstantQp )
2321       result += "PerSliceSegmentConstantQp | ";
2322     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::eMultipleTilesPerSliceSegment )
2323       result += "MultipleTilesPerSliceSegment | ";
2324     if ( value & VideoEncodeH265CapabilityFlagBitsKHR::eMultipleSliceSegmentsPerTile )
2325       result += "MultipleSliceSegmentsPerTile | ";
2326 
2327     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2328   }
2329 
to_string(VideoEncodeH265StdFlagsKHR value)2330   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265StdFlagsKHR value )
2331   {
2332     if ( !value )
2333       return "{}";
2334 
2335     std::string result;
2336     if ( value & VideoEncodeH265StdFlagBitsKHR::eSeparateColorPlaneFlagSet )
2337       result += "SeparateColorPlaneFlagSet | ";
2338     if ( value & VideoEncodeH265StdFlagBitsKHR::eSampleAdaptiveOffsetEnabledFlagSet )
2339       result += "SampleAdaptiveOffsetEnabledFlagSet | ";
2340     if ( value & VideoEncodeH265StdFlagBitsKHR::eScalingListDataPresentFlagSet )
2341       result += "ScalingListDataPresentFlagSet | ";
2342     if ( value & VideoEncodeH265StdFlagBitsKHR::ePcmEnabledFlagSet )
2343       result += "PcmEnabledFlagSet | ";
2344     if ( value & VideoEncodeH265StdFlagBitsKHR::eSpsTemporalMvpEnabledFlagSet )
2345       result += "SpsTemporalMvpEnabledFlagSet | ";
2346     if ( value & VideoEncodeH265StdFlagBitsKHR::eInitQpMinus26 )
2347       result += "InitQpMinus26 | ";
2348     if ( value & VideoEncodeH265StdFlagBitsKHR::eWeightedPredFlagSet )
2349       result += "WeightedPredFlagSet | ";
2350     if ( value & VideoEncodeH265StdFlagBitsKHR::eWeightedBipredFlagSet )
2351       result += "WeightedBipredFlagSet | ";
2352     if ( value & VideoEncodeH265StdFlagBitsKHR::eLog2ParallelMergeLevelMinus2 )
2353       result += "Log2ParallelMergeLevelMinus2 | ";
2354     if ( value & VideoEncodeH265StdFlagBitsKHR::eSignDataHidingEnabledFlagSet )
2355       result += "SignDataHidingEnabledFlagSet | ";
2356     if ( value & VideoEncodeH265StdFlagBitsKHR::eTransformSkipEnabledFlagSet )
2357       result += "TransformSkipEnabledFlagSet | ";
2358     if ( value & VideoEncodeH265StdFlagBitsKHR::eTransformSkipEnabledFlagUnset )
2359       result += "TransformSkipEnabledFlagUnset | ";
2360     if ( value & VideoEncodeH265StdFlagBitsKHR::ePpsSliceChromaQpOffsetsPresentFlagSet )
2361       result += "PpsSliceChromaQpOffsetsPresentFlagSet | ";
2362     if ( value & VideoEncodeH265StdFlagBitsKHR::eTransquantBypassEnabledFlagSet )
2363       result += "TransquantBypassEnabledFlagSet | ";
2364     if ( value & VideoEncodeH265StdFlagBitsKHR::eConstrainedIntraPredFlagSet )
2365       result += "ConstrainedIntraPredFlagSet | ";
2366     if ( value & VideoEncodeH265StdFlagBitsKHR::eEntropyCodingSyncEnabledFlagSet )
2367       result += "EntropyCodingSyncEnabledFlagSet | ";
2368     if ( value & VideoEncodeH265StdFlagBitsKHR::eDeblockingFilterOverrideEnabledFlagSet )
2369       result += "DeblockingFilterOverrideEnabledFlagSet | ";
2370     if ( value & VideoEncodeH265StdFlagBitsKHR::eDependentSliceSegmentsEnabledFlagSet )
2371       result += "DependentSliceSegmentsEnabledFlagSet | ";
2372     if ( value & VideoEncodeH265StdFlagBitsKHR::eDependentSliceSegmentFlagSet )
2373       result += "DependentSliceSegmentFlagSet | ";
2374     if ( value & VideoEncodeH265StdFlagBitsKHR::eSliceQpDelta )
2375       result += "SliceQpDelta | ";
2376     if ( value & VideoEncodeH265StdFlagBitsKHR::eDifferentSliceQpDelta )
2377       result += "DifferentSliceQpDelta | ";
2378 
2379     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2380   }
2381 
to_string(VideoEncodeH265CtbSizeFlagsKHR value)2382   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265CtbSizeFlagsKHR value )
2383   {
2384     if ( !value )
2385       return "{}";
2386 
2387     std::string result;
2388     if ( value & VideoEncodeH265CtbSizeFlagBitsKHR::e16 )
2389       result += "16 | ";
2390     if ( value & VideoEncodeH265CtbSizeFlagBitsKHR::e32 )
2391       result += "32 | ";
2392     if ( value & VideoEncodeH265CtbSizeFlagBitsKHR::e64 )
2393       result += "64 | ";
2394 
2395     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2396   }
2397 
to_string(VideoEncodeH265TransformBlockSizeFlagsKHR value)2398   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265TransformBlockSizeFlagsKHR value )
2399   {
2400     if ( !value )
2401       return "{}";
2402 
2403     std::string result;
2404     if ( value & VideoEncodeH265TransformBlockSizeFlagBitsKHR::e4 )
2405       result += "4 | ";
2406     if ( value & VideoEncodeH265TransformBlockSizeFlagBitsKHR::e8 )
2407       result += "8 | ";
2408     if ( value & VideoEncodeH265TransformBlockSizeFlagBitsKHR::e16 )
2409       result += "16 | ";
2410     if ( value & VideoEncodeH265TransformBlockSizeFlagBitsKHR::e32 )
2411       result += "32 | ";
2412 
2413     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2414   }
2415 
to_string(VideoEncodeH265RateControlFlagsKHR value)2416   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265RateControlFlagsKHR value )
2417   {
2418     if ( !value )
2419       return "{}";
2420 
2421     std::string result;
2422     if ( value & VideoEncodeH265RateControlFlagBitsKHR::eAttemptHrdCompliance )
2423       result += "AttemptHrdCompliance | ";
2424     if ( value & VideoEncodeH265RateControlFlagBitsKHR::eRegularGop )
2425       result += "RegularGop | ";
2426     if ( value & VideoEncodeH265RateControlFlagBitsKHR::eReferencePatternFlat )
2427       result += "ReferencePatternFlat | ";
2428     if ( value & VideoEncodeH265RateControlFlagBitsKHR::eReferencePatternDyadic )
2429       result += "ReferencePatternDyadic | ";
2430     if ( value & VideoEncodeH265RateControlFlagBitsKHR::eTemporalSubLayerPatternDyadic )
2431       result += "TemporalSubLayerPatternDyadic | ";
2432 
2433     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2434   }
2435 
2436   //=== VK_KHR_video_decode_h264 ===
2437 
to_string(VideoDecodeH264PictureLayoutFlagsKHR value)2438   VULKAN_HPP_INLINE std::string to_string( VideoDecodeH264PictureLayoutFlagsKHR value )
2439   {
2440     if ( !value )
2441       return "Progressive";
2442 
2443     std::string result;
2444     if ( value & VideoDecodeH264PictureLayoutFlagBitsKHR::eInterlacedInterleavedLines )
2445       result += "InterlacedInterleavedLines | ";
2446     if ( value & VideoDecodeH264PictureLayoutFlagBitsKHR::eInterlacedSeparatePlanes )
2447       result += "InterlacedSeparatePlanes | ";
2448 
2449     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2450   }
2451 
2452 #if defined( VK_USE_PLATFORM_GGP )
2453   //=== VK_GGP_stream_descriptor_surface ===
2454 
to_string(StreamDescriptorSurfaceCreateFlagsGGP)2455   VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagsGGP )
2456   {
2457     return "{}";
2458   }
2459 #endif /*VK_USE_PLATFORM_GGP*/
2460 
2461   //=== VK_NV_external_memory_capabilities ===
2462 
to_string(ExternalMemoryHandleTypeFlagsNV value)2463   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagsNV value )
2464   {
2465     if ( !value )
2466       return "{}";
2467 
2468     std::string result;
2469     if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32 )
2470       result += "OpaqueWin32 | ";
2471     if ( value & ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt )
2472       result += "OpaqueWin32Kmt | ";
2473     if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image )
2474       result += "D3D11Image | ";
2475     if ( value & ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt )
2476       result += "D3D11ImageKmt | ";
2477 
2478     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2479   }
2480 
to_string(ExternalMemoryFeatureFlagsNV value)2481   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagsNV value )
2482   {
2483     if ( !value )
2484       return "{}";
2485 
2486     std::string result;
2487     if ( value & ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly )
2488       result += "DedicatedOnly | ";
2489     if ( value & ExternalMemoryFeatureFlagBitsNV::eExportable )
2490       result += "Exportable | ";
2491     if ( value & ExternalMemoryFeatureFlagBitsNV::eImportable )
2492       result += "Importable | ";
2493 
2494     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2495   }
2496 
2497 #if defined( VK_USE_PLATFORM_VI_NN )
2498   //=== VK_NN_vi_surface ===
2499 
to_string(ViSurfaceCreateFlagsNN)2500   VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagsNN )
2501   {
2502     return "{}";
2503   }
2504 #endif /*VK_USE_PLATFORM_VI_NN*/
2505 
2506   //=== VK_EXT_conditional_rendering ===
2507 
to_string(ConditionalRenderingFlagsEXT value)2508   VULKAN_HPP_INLINE std::string to_string( ConditionalRenderingFlagsEXT value )
2509   {
2510     if ( !value )
2511       return "{}";
2512 
2513     std::string result;
2514     if ( value & ConditionalRenderingFlagBitsEXT::eInverted )
2515       result += "Inverted | ";
2516 
2517     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2518   }
2519 
2520   //=== VK_EXT_display_surface_counter ===
2521 
to_string(SurfaceCounterFlagsEXT value)2522   VULKAN_HPP_INLINE std::string to_string( SurfaceCounterFlagsEXT value )
2523   {
2524     if ( !value )
2525       return "{}";
2526 
2527     std::string result;
2528     if ( value & SurfaceCounterFlagBitsEXT::eVblank )
2529       result += "Vblank | ";
2530 
2531     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2532   }
2533 
2534   //=== VK_NV_viewport_swizzle ===
2535 
to_string(PipelineViewportSwizzleStateCreateFlagsNV)2536   VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagsNV )
2537   {
2538     return "{}";
2539   }
2540 
2541   //=== VK_EXT_discard_rectangles ===
2542 
to_string(PipelineDiscardRectangleStateCreateFlagsEXT)2543   VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagsEXT )
2544   {
2545     return "{}";
2546   }
2547 
2548   //=== VK_EXT_conservative_rasterization ===
2549 
to_string(PipelineRasterizationConservativeStateCreateFlagsEXT)2550   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagsEXT )
2551   {
2552     return "{}";
2553   }
2554 
2555   //=== VK_EXT_depth_clip_enable ===
2556 
to_string(PipelineRasterizationDepthClipStateCreateFlagsEXT)2557   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagsEXT )
2558   {
2559     return "{}";
2560   }
2561 
2562   //=== VK_KHR_performance_query ===
2563 
to_string(PerformanceCounterDescriptionFlagsKHR value)2564   VULKAN_HPP_INLINE std::string to_string( PerformanceCounterDescriptionFlagsKHR value )
2565   {
2566     if ( !value )
2567       return "{}";
2568 
2569     std::string result;
2570     if ( value & PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting )
2571       result += "PerformanceImpacting | ";
2572     if ( value & PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted )
2573       result += "ConcurrentlyImpacted | ";
2574 
2575     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2576   }
2577 
to_string(AcquireProfilingLockFlagsKHR)2578   VULKAN_HPP_INLINE std::string to_string( AcquireProfilingLockFlagsKHR )
2579   {
2580     return "{}";
2581   }
2582 
2583 #if defined( VK_USE_PLATFORM_IOS_MVK )
2584   //=== VK_MVK_ios_surface ===
2585 
to_string(IOSSurfaceCreateFlagsMVK)2586   VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagsMVK )
2587   {
2588     return "{}";
2589   }
2590 #endif /*VK_USE_PLATFORM_IOS_MVK*/
2591 
2592 #if defined( VK_USE_PLATFORM_MACOS_MVK )
2593   //=== VK_MVK_macos_surface ===
2594 
to_string(MacOSSurfaceCreateFlagsMVK)2595   VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagsMVK )
2596   {
2597     return "{}";
2598   }
2599 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
2600 
2601   //=== VK_EXT_debug_utils ===
2602 
to_string(DebugUtilsMessageSeverityFlagsEXT value)2603   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageSeverityFlagsEXT value )
2604   {
2605     if ( !value )
2606       return "{}";
2607 
2608     std::string result;
2609     if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eVerbose )
2610       result += "Verbose | ";
2611     if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eInfo )
2612       result += "Info | ";
2613     if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eWarning )
2614       result += "Warning | ";
2615     if ( value & DebugUtilsMessageSeverityFlagBitsEXT::eError )
2616       result += "Error | ";
2617 
2618     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2619   }
2620 
to_string(DebugUtilsMessageTypeFlagsEXT value)2621   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageTypeFlagsEXT value )
2622   {
2623     if ( !value )
2624       return "{}";
2625 
2626     std::string result;
2627     if ( value & DebugUtilsMessageTypeFlagBitsEXT::eGeneral )
2628       result += "General | ";
2629     if ( value & DebugUtilsMessageTypeFlagBitsEXT::eValidation )
2630       result += "Validation | ";
2631     if ( value & DebugUtilsMessageTypeFlagBitsEXT::ePerformance )
2632       result += "Performance | ";
2633     if ( value & DebugUtilsMessageTypeFlagBitsEXT::eDeviceAddressBinding )
2634       result += "DeviceAddressBinding | ";
2635 
2636     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2637   }
2638 
to_string(DebugUtilsMessengerCallbackDataFlagsEXT)2639   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagsEXT )
2640   {
2641     return "{}";
2642   }
2643 
to_string(DebugUtilsMessengerCreateFlagsEXT)2644   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagsEXT )
2645   {
2646     return "{}";
2647   }
2648 
2649   //=== VK_NV_fragment_coverage_to_color ===
2650 
to_string(PipelineCoverageToColorStateCreateFlagsNV)2651   VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagsNV )
2652   {
2653     return "{}";
2654   }
2655 
2656   //=== VK_KHR_acceleration_structure ===
2657 
to_string(GeometryFlagsKHR value)2658   VULKAN_HPP_INLINE std::string to_string( GeometryFlagsKHR value )
2659   {
2660     if ( !value )
2661       return "{}";
2662 
2663     std::string result;
2664     if ( value & GeometryFlagBitsKHR::eOpaque )
2665       result += "Opaque | ";
2666     if ( value & GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation )
2667       result += "NoDuplicateAnyHitInvocation | ";
2668 
2669     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2670   }
2671 
to_string(GeometryInstanceFlagsKHR value)2672   VULKAN_HPP_INLINE std::string to_string( GeometryInstanceFlagsKHR value )
2673   {
2674     if ( !value )
2675       return "{}";
2676 
2677     std::string result;
2678     if ( value & GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable )
2679       result += "TriangleFacingCullDisable | ";
2680     if ( value & GeometryInstanceFlagBitsKHR::eTriangleFlipFacing )
2681       result += "TriangleFlipFacing | ";
2682     if ( value & GeometryInstanceFlagBitsKHR::eForceOpaque )
2683       result += "ForceOpaque | ";
2684     if ( value & GeometryInstanceFlagBitsKHR::eForceNoOpaque )
2685       result += "ForceNoOpaque | ";
2686     if ( value & GeometryInstanceFlagBitsKHR::eForceOpacityMicromap2StateEXT )
2687       result += "ForceOpacityMicromap2StateEXT | ";
2688     if ( value & GeometryInstanceFlagBitsKHR::eDisableOpacityMicromapsEXT )
2689       result += "DisableOpacityMicromapsEXT | ";
2690 
2691     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2692   }
2693 
to_string(BuildAccelerationStructureFlagsKHR value)2694   VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureFlagsKHR value )
2695   {
2696     if ( !value )
2697       return "{}";
2698 
2699     std::string result;
2700     if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowUpdate )
2701       result += "AllowUpdate | ";
2702     if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowCompaction )
2703       result += "AllowCompaction | ";
2704     if ( value & BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace )
2705       result += "PreferFastTrace | ";
2706     if ( value & BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild )
2707       result += "PreferFastBuild | ";
2708     if ( value & BuildAccelerationStructureFlagBitsKHR::eLowMemory )
2709       result += "LowMemory | ";
2710     if ( value & BuildAccelerationStructureFlagBitsKHR::eMotionNV )
2711       result += "MotionNV | ";
2712     if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowOpacityMicromapUpdateEXT )
2713       result += "AllowOpacityMicromapUpdateEXT | ";
2714     if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowDisableOpacityMicromapsEXT )
2715       result += "AllowDisableOpacityMicromapsEXT | ";
2716     if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowOpacityMicromapDataUpdateEXT )
2717       result += "AllowOpacityMicromapDataUpdateEXT | ";
2718 #if defined( VK_ENABLE_BETA_EXTENSIONS )
2719     if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowDisplacementMicromapUpdateNV )
2720       result += "AllowDisplacementMicromapUpdateNV | ";
2721 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
2722     if ( value & BuildAccelerationStructureFlagBitsKHR::eAllowDataAccess )
2723       result += "AllowDataAccess | ";
2724 
2725     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2726   }
2727 
to_string(AccelerationStructureCreateFlagsKHR value)2728   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCreateFlagsKHR value )
2729   {
2730     if ( !value )
2731       return "{}";
2732 
2733     std::string result;
2734     if ( value & AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay )
2735       result += "DeviceAddressCaptureReplay | ";
2736     if ( value & AccelerationStructureCreateFlagBitsKHR::eDescriptorBufferCaptureReplayEXT )
2737       result += "DescriptorBufferCaptureReplayEXT | ";
2738     if ( value & AccelerationStructureCreateFlagBitsKHR::eMotionNV )
2739       result += "MotionNV | ";
2740 
2741     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2742   }
2743 
2744   //=== VK_NV_framebuffer_mixed_samples ===
2745 
to_string(PipelineCoverageModulationStateCreateFlagsNV)2746   VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagsNV )
2747   {
2748     return "{}";
2749   }
2750 
2751   //=== VK_EXT_validation_cache ===
2752 
to_string(ValidationCacheCreateFlagsEXT)2753   VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagsEXT )
2754   {
2755     return "{}";
2756   }
2757 
2758   //=== VK_AMD_pipeline_compiler_control ===
2759 
to_string(PipelineCompilerControlFlagsAMD)2760   VULKAN_HPP_INLINE std::string to_string( PipelineCompilerControlFlagsAMD )
2761   {
2762     return "{}";
2763   }
2764 
2765 #if defined( VK_USE_PLATFORM_FUCHSIA )
2766   //=== VK_FUCHSIA_imagepipe_surface ===
2767 
to_string(ImagePipeSurfaceCreateFlagsFUCHSIA)2768   VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagsFUCHSIA )
2769   {
2770     return "{}";
2771   }
2772 #endif /*VK_USE_PLATFORM_FUCHSIA*/
2773 
2774 #if defined( VK_USE_PLATFORM_METAL_EXT )
2775   //=== VK_EXT_metal_surface ===
2776 
to_string(MetalSurfaceCreateFlagsEXT)2777   VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagsEXT )
2778   {
2779     return "{}";
2780   }
2781 #endif /*VK_USE_PLATFORM_METAL_EXT*/
2782 
2783   //=== VK_AMD_shader_core_properties2 ===
2784 
to_string(ShaderCorePropertiesFlagsAMD)2785   VULKAN_HPP_INLINE std::string to_string( ShaderCorePropertiesFlagsAMD )
2786   {
2787     return "{}";
2788   }
2789 
2790   //=== VK_NV_coverage_reduction_mode ===
2791 
to_string(PipelineCoverageReductionStateCreateFlagsNV)2792   VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagsNV )
2793   {
2794     return "{}";
2795   }
2796 
2797   //=== VK_EXT_headless_surface ===
2798 
to_string(HeadlessSurfaceCreateFlagsEXT)2799   VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagsEXT )
2800   {
2801     return "{}";
2802   }
2803 
2804   //=== VK_EXT_host_image_copy ===
2805 
to_string(HostImageCopyFlagsEXT value)2806   VULKAN_HPP_INLINE std::string to_string( HostImageCopyFlagsEXT value )
2807   {
2808     if ( !value )
2809       return "{}";
2810 
2811     std::string result;
2812     if ( value & HostImageCopyFlagBitsEXT::eMemcpy )
2813       result += "Memcpy | ";
2814 
2815     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2816   }
2817 
2818   //=== VK_KHR_map_memory2 ===
2819 
to_string(MemoryUnmapFlagsKHR value)2820   VULKAN_HPP_INLINE std::string to_string( MemoryUnmapFlagsKHR value )
2821   {
2822     if ( !value )
2823       return "{}";
2824 
2825     std::string result;
2826     if ( value & MemoryUnmapFlagBitsKHR::eReserveEXT )
2827       result += "ReserveEXT | ";
2828 
2829     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2830   }
2831 
2832   //=== VK_EXT_surface_maintenance1 ===
2833 
to_string(PresentScalingFlagsEXT value)2834   VULKAN_HPP_INLINE std::string to_string( PresentScalingFlagsEXT value )
2835   {
2836     if ( !value )
2837       return "{}";
2838 
2839     std::string result;
2840     if ( value & PresentScalingFlagBitsEXT::eOneToOne )
2841       result += "OneToOne | ";
2842     if ( value & PresentScalingFlagBitsEXT::eAspectRatioStretch )
2843       result += "AspectRatioStretch | ";
2844     if ( value & PresentScalingFlagBitsEXT::eStretch )
2845       result += "Stretch | ";
2846 
2847     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2848   }
2849 
to_string(PresentGravityFlagsEXT value)2850   VULKAN_HPP_INLINE std::string to_string( PresentGravityFlagsEXT value )
2851   {
2852     if ( !value )
2853       return "{}";
2854 
2855     std::string result;
2856     if ( value & PresentGravityFlagBitsEXT::eMin )
2857       result += "Min | ";
2858     if ( value & PresentGravityFlagBitsEXT::eMax )
2859       result += "Max | ";
2860     if ( value & PresentGravityFlagBitsEXT::eCentered )
2861       result += "Centered | ";
2862 
2863     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2864   }
2865 
2866   //=== VK_NV_device_generated_commands ===
2867 
to_string(IndirectStateFlagsNV value)2868   VULKAN_HPP_INLINE std::string to_string( IndirectStateFlagsNV value )
2869   {
2870     if ( !value )
2871       return "{}";
2872 
2873     std::string result;
2874     if ( value & IndirectStateFlagBitsNV::eFlagFrontface )
2875       result += "FlagFrontface | ";
2876 
2877     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2878   }
2879 
to_string(IndirectCommandsLayoutUsageFlagsNV value)2880   VULKAN_HPP_INLINE std::string to_string( IndirectCommandsLayoutUsageFlagsNV value )
2881   {
2882     if ( !value )
2883       return "{}";
2884 
2885     std::string result;
2886     if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess )
2887       result += "ExplicitPreprocess | ";
2888     if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences )
2889       result += "IndexedSequences | ";
2890     if ( value & IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences )
2891       result += "UnorderedSequences | ";
2892 
2893     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2894   }
2895 
2896   //=== VK_EXT_device_memory_report ===
2897 
to_string(DeviceMemoryReportFlagsEXT)2898   VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportFlagsEXT )
2899   {
2900     return "{}";
2901   }
2902 
2903   //=== VK_KHR_video_encode_queue ===
2904 
to_string(VideoEncodeFlagsKHR)2905   VULKAN_HPP_INLINE std::string to_string( VideoEncodeFlagsKHR )
2906   {
2907     return "{}";
2908   }
2909 
to_string(VideoEncodeCapabilityFlagsKHR value)2910   VULKAN_HPP_INLINE std::string to_string( VideoEncodeCapabilityFlagsKHR value )
2911   {
2912     if ( !value )
2913       return "{}";
2914 
2915     std::string result;
2916     if ( value & VideoEncodeCapabilityFlagBitsKHR::ePrecedingExternallyEncodedBytes )
2917       result += "PrecedingExternallyEncodedBytes | ";
2918     if ( value & VideoEncodeCapabilityFlagBitsKHR::eInsufficientBitstreamBufferRangeDetection )
2919       result += "InsufficientBitstreamBufferRangeDetection | ";
2920 
2921     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2922   }
2923 
to_string(VideoEncodeFeedbackFlagsKHR value)2924   VULKAN_HPP_INLINE std::string to_string( VideoEncodeFeedbackFlagsKHR value )
2925   {
2926     if ( !value )
2927       return "{}";
2928 
2929     std::string result;
2930     if ( value & VideoEncodeFeedbackFlagBitsKHR::eBitstreamBufferOffset )
2931       result += "BitstreamBufferOffset | ";
2932     if ( value & VideoEncodeFeedbackFlagBitsKHR::eBitstreamBytesWritten )
2933       result += "BitstreamBytesWritten | ";
2934     if ( value & VideoEncodeFeedbackFlagBitsKHR::eBitstreamHasOverrides )
2935       result += "BitstreamHasOverrides | ";
2936 
2937     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2938   }
2939 
to_string(VideoEncodeUsageFlagsKHR value)2940   VULKAN_HPP_INLINE std::string to_string( VideoEncodeUsageFlagsKHR value )
2941   {
2942     if ( !value )
2943       return "Default";
2944 
2945     std::string result;
2946     if ( value & VideoEncodeUsageFlagBitsKHR::eTranscoding )
2947       result += "Transcoding | ";
2948     if ( value & VideoEncodeUsageFlagBitsKHR::eStreaming )
2949       result += "Streaming | ";
2950     if ( value & VideoEncodeUsageFlagBitsKHR::eRecording )
2951       result += "Recording | ";
2952     if ( value & VideoEncodeUsageFlagBitsKHR::eConferencing )
2953       result += "Conferencing | ";
2954 
2955     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2956   }
2957 
to_string(VideoEncodeContentFlagsKHR value)2958   VULKAN_HPP_INLINE std::string to_string( VideoEncodeContentFlagsKHR value )
2959   {
2960     if ( !value )
2961       return "Default";
2962 
2963     std::string result;
2964     if ( value & VideoEncodeContentFlagBitsKHR::eCamera )
2965       result += "Camera | ";
2966     if ( value & VideoEncodeContentFlagBitsKHR::eDesktop )
2967       result += "Desktop | ";
2968     if ( value & VideoEncodeContentFlagBitsKHR::eRendered )
2969       result += "Rendered | ";
2970 
2971     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2972   }
2973 
to_string(VideoEncodeRateControlFlagsKHR)2974   VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlFlagsKHR )
2975   {
2976     return "{}";
2977   }
2978 
to_string(VideoEncodeRateControlModeFlagsKHR value)2979   VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlModeFlagsKHR value )
2980   {
2981     if ( !value )
2982       return "Default";
2983 
2984     std::string result;
2985     if ( value & VideoEncodeRateControlModeFlagBitsKHR::eDisabled )
2986       result += "Disabled | ";
2987     if ( value & VideoEncodeRateControlModeFlagBitsKHR::eCbr )
2988       result += "Cbr | ";
2989     if ( value & VideoEncodeRateControlModeFlagBitsKHR::eVbr )
2990       result += "Vbr | ";
2991 
2992     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
2993   }
2994 
2995   //=== VK_NV_device_diagnostics_config ===
2996 
to_string(DeviceDiagnosticsConfigFlagsNV value)2997   VULKAN_HPP_INLINE std::string to_string( DeviceDiagnosticsConfigFlagsNV value )
2998   {
2999     if ( !value )
3000       return "{}";
3001 
3002     std::string result;
3003     if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo )
3004       result += "EnableShaderDebugInfo | ";
3005     if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking )
3006       result += "EnableResourceTracking | ";
3007     if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints )
3008       result += "EnableAutomaticCheckpoints | ";
3009     if ( value & DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderErrorReporting )
3010       result += "EnableShaderErrorReporting | ";
3011 
3012     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3013   }
3014 
3015 #if defined( VK_USE_PLATFORM_METAL_EXT )
3016   //=== VK_EXT_metal_objects ===
3017 
to_string(ExportMetalObjectTypeFlagsEXT value)3018   VULKAN_HPP_INLINE std::string to_string( ExportMetalObjectTypeFlagsEXT value )
3019   {
3020     if ( !value )
3021       return "{}";
3022 
3023     std::string result;
3024     if ( value & ExportMetalObjectTypeFlagBitsEXT::eMetalDevice )
3025       result += "MetalDevice | ";
3026     if ( value & ExportMetalObjectTypeFlagBitsEXT::eMetalCommandQueue )
3027       result += "MetalCommandQueue | ";
3028     if ( value & ExportMetalObjectTypeFlagBitsEXT::eMetalBuffer )
3029       result += "MetalBuffer | ";
3030     if ( value & ExportMetalObjectTypeFlagBitsEXT::eMetalTexture )
3031       result += "MetalTexture | ";
3032     if ( value & ExportMetalObjectTypeFlagBitsEXT::eMetalIosurface )
3033       result += "MetalIosurface | ";
3034     if ( value & ExportMetalObjectTypeFlagBitsEXT::eMetalSharedEvent )
3035       result += "MetalSharedEvent | ";
3036 
3037     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3038   }
3039 #endif /*VK_USE_PLATFORM_METAL_EXT*/
3040 
3041   //=== VK_EXT_graphics_pipeline_library ===
3042 
to_string(GraphicsPipelineLibraryFlagsEXT value)3043   VULKAN_HPP_INLINE std::string to_string( GraphicsPipelineLibraryFlagsEXT value )
3044   {
3045     if ( !value )
3046       return "{}";
3047 
3048     std::string result;
3049     if ( value & GraphicsPipelineLibraryFlagBitsEXT::eVertexInputInterface )
3050       result += "VertexInputInterface | ";
3051     if ( value & GraphicsPipelineLibraryFlagBitsEXT::ePreRasterizationShaders )
3052       result += "PreRasterizationShaders | ";
3053     if ( value & GraphicsPipelineLibraryFlagBitsEXT::eFragmentShader )
3054       result += "FragmentShader | ";
3055     if ( value & GraphicsPipelineLibraryFlagBitsEXT::eFragmentOutputInterface )
3056       result += "FragmentOutputInterface | ";
3057 
3058     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3059   }
3060 
3061   //=== VK_NV_ray_tracing_motion_blur ===
3062 
to_string(AccelerationStructureMotionInfoFlagsNV)3063   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInfoFlagsNV )
3064   {
3065     return "{}";
3066   }
3067 
to_string(AccelerationStructureMotionInstanceFlagsNV)3068   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInstanceFlagsNV )
3069   {
3070     return "{}";
3071   }
3072 
3073   //=== VK_EXT_image_compression_control ===
3074 
to_string(ImageCompressionFlagsEXT value)3075   VULKAN_HPP_INLINE std::string to_string( ImageCompressionFlagsEXT value )
3076   {
3077     if ( !value )
3078       return "Default";
3079 
3080     std::string result;
3081     if ( value & ImageCompressionFlagBitsEXT::eFixedRateDefault )
3082       result += "FixedRateDefault | ";
3083     if ( value & ImageCompressionFlagBitsEXT::eFixedRateExplicit )
3084       result += "FixedRateExplicit | ";
3085     if ( value & ImageCompressionFlagBitsEXT::eDisabled )
3086       result += "Disabled | ";
3087 
3088     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3089   }
3090 
to_string(ImageCompressionFixedRateFlagsEXT value)3091   VULKAN_HPP_INLINE std::string to_string( ImageCompressionFixedRateFlagsEXT value )
3092   {
3093     if ( !value )
3094       return "None";
3095 
3096     std::string result;
3097     if ( value & ImageCompressionFixedRateFlagBitsEXT::e1Bpc )
3098       result += "1Bpc | ";
3099     if ( value & ImageCompressionFixedRateFlagBitsEXT::e2Bpc )
3100       result += "2Bpc | ";
3101     if ( value & ImageCompressionFixedRateFlagBitsEXT::e3Bpc )
3102       result += "3Bpc | ";
3103     if ( value & ImageCompressionFixedRateFlagBitsEXT::e4Bpc )
3104       result += "4Bpc | ";
3105     if ( value & ImageCompressionFixedRateFlagBitsEXT::e5Bpc )
3106       result += "5Bpc | ";
3107     if ( value & ImageCompressionFixedRateFlagBitsEXT::e6Bpc )
3108       result += "6Bpc | ";
3109     if ( value & ImageCompressionFixedRateFlagBitsEXT::e7Bpc )
3110       result += "7Bpc | ";
3111     if ( value & ImageCompressionFixedRateFlagBitsEXT::e8Bpc )
3112       result += "8Bpc | ";
3113     if ( value & ImageCompressionFixedRateFlagBitsEXT::e9Bpc )
3114       result += "9Bpc | ";
3115     if ( value & ImageCompressionFixedRateFlagBitsEXT::e10Bpc )
3116       result += "10Bpc | ";
3117     if ( value & ImageCompressionFixedRateFlagBitsEXT::e11Bpc )
3118       result += "11Bpc | ";
3119     if ( value & ImageCompressionFixedRateFlagBitsEXT::e12Bpc )
3120       result += "12Bpc | ";
3121     if ( value & ImageCompressionFixedRateFlagBitsEXT::e13Bpc )
3122       result += "13Bpc | ";
3123     if ( value & ImageCompressionFixedRateFlagBitsEXT::e14Bpc )
3124       result += "14Bpc | ";
3125     if ( value & ImageCompressionFixedRateFlagBitsEXT::e15Bpc )
3126       result += "15Bpc | ";
3127     if ( value & ImageCompressionFixedRateFlagBitsEXT::e16Bpc )
3128       result += "16Bpc | ";
3129     if ( value & ImageCompressionFixedRateFlagBitsEXT::e17Bpc )
3130       result += "17Bpc | ";
3131     if ( value & ImageCompressionFixedRateFlagBitsEXT::e18Bpc )
3132       result += "18Bpc | ";
3133     if ( value & ImageCompressionFixedRateFlagBitsEXT::e19Bpc )
3134       result += "19Bpc | ";
3135     if ( value & ImageCompressionFixedRateFlagBitsEXT::e20Bpc )
3136       result += "20Bpc | ";
3137     if ( value & ImageCompressionFixedRateFlagBitsEXT::e21Bpc )
3138       result += "21Bpc | ";
3139     if ( value & ImageCompressionFixedRateFlagBitsEXT::e22Bpc )
3140       result += "22Bpc | ";
3141     if ( value & ImageCompressionFixedRateFlagBitsEXT::e23Bpc )
3142       result += "23Bpc | ";
3143     if ( value & ImageCompressionFixedRateFlagBitsEXT::e24Bpc )
3144       result += "24Bpc | ";
3145 
3146     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3147   }
3148 
3149 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
3150   //=== VK_EXT_directfb_surface ===
3151 
to_string(DirectFBSurfaceCreateFlagsEXT)3152   VULKAN_HPP_INLINE std::string to_string( DirectFBSurfaceCreateFlagsEXT )
3153   {
3154     return "{}";
3155   }
3156 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
3157 
3158   //=== VK_EXT_device_address_binding_report ===
3159 
to_string(DeviceAddressBindingFlagsEXT value)3160   VULKAN_HPP_INLINE std::string to_string( DeviceAddressBindingFlagsEXT value )
3161   {
3162     if ( !value )
3163       return "{}";
3164 
3165     std::string result;
3166     if ( value & DeviceAddressBindingFlagBitsEXT::eInternalObject )
3167       result += "InternalObject | ";
3168 
3169     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3170   }
3171 
3172 #if defined( VK_USE_PLATFORM_FUCHSIA )
3173   //=== VK_FUCHSIA_buffer_collection ===
3174 
to_string(ImageFormatConstraintsFlagsFUCHSIA)3175   VULKAN_HPP_INLINE std::string to_string( ImageFormatConstraintsFlagsFUCHSIA )
3176   {
3177     return "{}";
3178   }
3179 
to_string(ImageConstraintsInfoFlagsFUCHSIA value)3180   VULKAN_HPP_INLINE std::string to_string( ImageConstraintsInfoFlagsFUCHSIA value )
3181   {
3182     if ( !value )
3183       return "{}";
3184 
3185     std::string result;
3186     if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadRarely )
3187       result += "CpuReadRarely | ";
3188     if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadOften )
3189       result += "CpuReadOften | ";
3190     if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteRarely )
3191       result += "CpuWriteRarely | ";
3192     if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteOften )
3193       result += "CpuWriteOften | ";
3194     if ( value & ImageConstraintsInfoFlagBitsFUCHSIA::eProtectedOptional )
3195       result += "ProtectedOptional | ";
3196 
3197     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3198   }
3199 #endif /*VK_USE_PLATFORM_FUCHSIA*/
3200 
3201   //=== VK_EXT_frame_boundary ===
3202 
to_string(FrameBoundaryFlagsEXT value)3203   VULKAN_HPP_INLINE std::string to_string( FrameBoundaryFlagsEXT value )
3204   {
3205     if ( !value )
3206       return "{}";
3207 
3208     std::string result;
3209     if ( value & FrameBoundaryFlagBitsEXT::eFrameEnd )
3210       result += "FrameEnd | ";
3211 
3212     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3213   }
3214 
3215 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
3216   //=== VK_QNX_screen_surface ===
3217 
to_string(ScreenSurfaceCreateFlagsQNX)3218   VULKAN_HPP_INLINE std::string to_string( ScreenSurfaceCreateFlagsQNX )
3219   {
3220     return "{}";
3221   }
3222 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
3223 
3224   //=== VK_EXT_opacity_micromap ===
3225 
to_string(BuildMicromapFlagsEXT value)3226   VULKAN_HPP_INLINE std::string to_string( BuildMicromapFlagsEXT value )
3227   {
3228     if ( !value )
3229       return "{}";
3230 
3231     std::string result;
3232     if ( value & BuildMicromapFlagBitsEXT::ePreferFastTrace )
3233       result += "PreferFastTrace | ";
3234     if ( value & BuildMicromapFlagBitsEXT::ePreferFastBuild )
3235       result += "PreferFastBuild | ";
3236     if ( value & BuildMicromapFlagBitsEXT::eAllowCompaction )
3237       result += "AllowCompaction | ";
3238 
3239     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3240   }
3241 
to_string(MicromapCreateFlagsEXT value)3242   VULKAN_HPP_INLINE std::string to_string( MicromapCreateFlagsEXT value )
3243   {
3244     if ( !value )
3245       return "{}";
3246 
3247     std::string result;
3248     if ( value & MicromapCreateFlagBitsEXT::eDeviceAddressCaptureReplay )
3249       result += "DeviceAddressCaptureReplay | ";
3250 
3251     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3252   }
3253 
3254   //=== VK_ARM_scheduling_controls ===
3255 
to_string(PhysicalDeviceSchedulingControlsFlagsARM value)3256   VULKAN_HPP_INLINE std::string to_string( PhysicalDeviceSchedulingControlsFlagsARM value )
3257   {
3258     if ( !value )
3259       return "{}";
3260 
3261     std::string result;
3262     if ( value & PhysicalDeviceSchedulingControlsFlagBitsARM::eShaderCoreCount )
3263       result += "ShaderCoreCount | ";
3264 
3265     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3266   }
3267 
3268   //=== VK_NV_memory_decompression ===
3269 
to_string(MemoryDecompressionMethodFlagsNV value)3270   VULKAN_HPP_INLINE std::string to_string( MemoryDecompressionMethodFlagsNV value )
3271   {
3272     if ( !value )
3273       return "{}";
3274 
3275     std::string result;
3276     if ( value & MemoryDecompressionMethodFlagBitsNV::eGdeflate10 )
3277       result += "Gdeflate10 | ";
3278 
3279     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3280   }
3281 
3282   //=== VK_LUNARG_direct_driver_loading ===
3283 
to_string(DirectDriverLoadingFlagsLUNARG)3284   VULKAN_HPP_INLINE std::string to_string( DirectDriverLoadingFlagsLUNARG )
3285   {
3286     return "{}";
3287   }
3288 
3289   //=== VK_NV_optical_flow ===
3290 
to_string(OpticalFlowUsageFlagsNV value)3291   VULKAN_HPP_INLINE std::string to_string( OpticalFlowUsageFlagsNV value )
3292   {
3293     if ( !value )
3294       return "Unknown";
3295 
3296     std::string result;
3297     if ( value & OpticalFlowUsageFlagBitsNV::eInput )
3298       result += "Input | ";
3299     if ( value & OpticalFlowUsageFlagBitsNV::eOutput )
3300       result += "Output | ";
3301     if ( value & OpticalFlowUsageFlagBitsNV::eHint )
3302       result += "Hint | ";
3303     if ( value & OpticalFlowUsageFlagBitsNV::eCost )
3304       result += "Cost | ";
3305     if ( value & OpticalFlowUsageFlagBitsNV::eGlobalFlow )
3306       result += "GlobalFlow | ";
3307 
3308     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3309   }
3310 
to_string(OpticalFlowGridSizeFlagsNV value)3311   VULKAN_HPP_INLINE std::string to_string( OpticalFlowGridSizeFlagsNV value )
3312   {
3313     if ( !value )
3314       return "Unknown";
3315 
3316     std::string result;
3317     if ( value & OpticalFlowGridSizeFlagBitsNV::e1X1 )
3318       result += "1X1 | ";
3319     if ( value & OpticalFlowGridSizeFlagBitsNV::e2X2 )
3320       result += "2X2 | ";
3321     if ( value & OpticalFlowGridSizeFlagBitsNV::e4X4 )
3322       result += "4X4 | ";
3323     if ( value & OpticalFlowGridSizeFlagBitsNV::e8X8 )
3324       result += "8X8 | ";
3325 
3326     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3327   }
3328 
to_string(OpticalFlowSessionCreateFlagsNV value)3329   VULKAN_HPP_INLINE std::string to_string( OpticalFlowSessionCreateFlagsNV value )
3330   {
3331     if ( !value )
3332       return "{}";
3333 
3334     std::string result;
3335     if ( value & OpticalFlowSessionCreateFlagBitsNV::eEnableHint )
3336       result += "EnableHint | ";
3337     if ( value & OpticalFlowSessionCreateFlagBitsNV::eEnableCost )
3338       result += "EnableCost | ";
3339     if ( value & OpticalFlowSessionCreateFlagBitsNV::eEnableGlobalFlow )
3340       result += "EnableGlobalFlow | ";
3341     if ( value & OpticalFlowSessionCreateFlagBitsNV::eAllowRegions )
3342       result += "AllowRegions | ";
3343     if ( value & OpticalFlowSessionCreateFlagBitsNV::eBothDirections )
3344       result += "BothDirections | ";
3345 
3346     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3347   }
3348 
to_string(OpticalFlowExecuteFlagsNV value)3349   VULKAN_HPP_INLINE std::string to_string( OpticalFlowExecuteFlagsNV value )
3350   {
3351     if ( !value )
3352       return "{}";
3353 
3354     std::string result;
3355     if ( value & OpticalFlowExecuteFlagBitsNV::eDisableTemporalHints )
3356       result += "DisableTemporalHints | ";
3357 
3358     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3359   }
3360 
3361   //=== VK_KHR_maintenance5 ===
3362 
to_string(PipelineCreateFlags2KHR value)3363   VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlags2KHR value )
3364   {
3365     if ( !value )
3366       return "{}";
3367 
3368     std::string result;
3369     if ( value & PipelineCreateFlagBits2KHR::eDisableOptimization )
3370       result += "DisableOptimization | ";
3371     if ( value & PipelineCreateFlagBits2KHR::eAllowDerivatives )
3372       result += "AllowDerivatives | ";
3373     if ( value & PipelineCreateFlagBits2KHR::eDerivative )
3374       result += "Derivative | ";
3375     if ( value & PipelineCreateFlagBits2KHR::eEnableLegacyDitheringEXT )
3376       result += "EnableLegacyDitheringEXT | ";
3377     if ( value & PipelineCreateFlagBits2KHR::eViewIndexFromDeviceIndex )
3378       result += "ViewIndexFromDeviceIndex | ";
3379     if ( value & PipelineCreateFlagBits2KHR::eDispatchBase )
3380       result += "DispatchBase | ";
3381     if ( value & PipelineCreateFlagBits2KHR::eDeferCompileNV )
3382       result += "DeferCompileNV | ";
3383     if ( value & PipelineCreateFlagBits2KHR::eCaptureStatistics )
3384       result += "CaptureStatistics | ";
3385     if ( value & PipelineCreateFlagBits2KHR::eCaptureInternalRepresentations )
3386       result += "CaptureInternalRepresentations | ";
3387     if ( value & PipelineCreateFlagBits2KHR::eFailOnPipelineCompileRequired )
3388       result += "FailOnPipelineCompileRequired | ";
3389     if ( value & PipelineCreateFlagBits2KHR::eEarlyReturnOnFailure )
3390       result += "EarlyReturnOnFailure | ";
3391     if ( value & PipelineCreateFlagBits2KHR::eLinkTimeOptimizationEXT )
3392       result += "LinkTimeOptimizationEXT | ";
3393     if ( value & PipelineCreateFlagBits2KHR::eRetainLinkTimeOptimizationInfoEXT )
3394       result += "RetainLinkTimeOptimizationInfoEXT | ";
3395     if ( value & PipelineCreateFlagBits2KHR::eLibrary )
3396       result += "Library | ";
3397     if ( value & PipelineCreateFlagBits2KHR::eRayTracingSkipTriangles )
3398       result += "RayTracingSkipTriangles | ";
3399     if ( value & PipelineCreateFlagBits2KHR::eRayTracingSkipAabbs )
3400       result += "RayTracingSkipAabbs | ";
3401     if ( value & PipelineCreateFlagBits2KHR::eRayTracingNoNullAnyHitShaders )
3402       result += "RayTracingNoNullAnyHitShaders | ";
3403     if ( value & PipelineCreateFlagBits2KHR::eRayTracingNoNullClosestHitShaders )
3404       result += "RayTracingNoNullClosestHitShaders | ";
3405     if ( value & PipelineCreateFlagBits2KHR::eRayTracingNoNullMissShaders )
3406       result += "RayTracingNoNullMissShaders | ";
3407     if ( value & PipelineCreateFlagBits2KHR::eRayTracingNoNullIntersectionShaders )
3408       result += "RayTracingNoNullIntersectionShaders | ";
3409     if ( value & PipelineCreateFlagBits2KHR::eRayTracingShaderGroupHandleCaptureReplay )
3410       result += "RayTracingShaderGroupHandleCaptureReplay | ";
3411     if ( value & PipelineCreateFlagBits2KHR::eIndirectBindableNV )
3412       result += "IndirectBindableNV | ";
3413     if ( value & PipelineCreateFlagBits2KHR::eRayTracingAllowMotionNV )
3414       result += "RayTracingAllowMotionNV | ";
3415     if ( value & PipelineCreateFlagBits2KHR::eRenderingFragmentShadingRateAttachment )
3416       result += "RenderingFragmentShadingRateAttachment | ";
3417     if ( value & PipelineCreateFlagBits2KHR::eRenderingFragmentDensityMapAttachmentEXT )
3418       result += "RenderingFragmentDensityMapAttachmentEXT | ";
3419     if ( value & PipelineCreateFlagBits2KHR::eRayTracingOpacityMicromapEXT )
3420       result += "RayTracingOpacityMicromapEXT | ";
3421     if ( value & PipelineCreateFlagBits2KHR::eColorAttachmentFeedbackLoopEXT )
3422       result += "ColorAttachmentFeedbackLoopEXT | ";
3423     if ( value & PipelineCreateFlagBits2KHR::eDepthStencilAttachmentFeedbackLoopEXT )
3424       result += "DepthStencilAttachmentFeedbackLoopEXT | ";
3425     if ( value & PipelineCreateFlagBits2KHR::eNoProtectedAccessEXT )
3426       result += "NoProtectedAccessEXT | ";
3427     if ( value & PipelineCreateFlagBits2KHR::eProtectedAccessOnlyEXT )
3428       result += "ProtectedAccessOnlyEXT | ";
3429     if ( value & PipelineCreateFlagBits2KHR::eRayTracingDisplacementMicromapNV )
3430       result += "RayTracingDisplacementMicromapNV | ";
3431     if ( value & PipelineCreateFlagBits2KHR::eDescriptorBufferEXT )
3432       result += "DescriptorBufferEXT | ";
3433 
3434     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3435   }
3436 
to_string(BufferUsageFlags2KHR value)3437   VULKAN_HPP_INLINE std::string to_string( BufferUsageFlags2KHR value )
3438   {
3439     if ( !value )
3440       return "{}";
3441 
3442     std::string result;
3443     if ( value & BufferUsageFlagBits2KHR::eTransferSrc )
3444       result += "TransferSrc | ";
3445     if ( value & BufferUsageFlagBits2KHR::eTransferDst )
3446       result += "TransferDst | ";
3447     if ( value & BufferUsageFlagBits2KHR::eUniformTexelBuffer )
3448       result += "UniformTexelBuffer | ";
3449     if ( value & BufferUsageFlagBits2KHR::eStorageTexelBuffer )
3450       result += "StorageTexelBuffer | ";
3451     if ( value & BufferUsageFlagBits2KHR::eUniformBuffer )
3452       result += "UniformBuffer | ";
3453     if ( value & BufferUsageFlagBits2KHR::eStorageBuffer )
3454       result += "StorageBuffer | ";
3455     if ( value & BufferUsageFlagBits2KHR::eIndexBuffer )
3456       result += "IndexBuffer | ";
3457     if ( value & BufferUsageFlagBits2KHR::eVertexBuffer )
3458       result += "VertexBuffer | ";
3459     if ( value & BufferUsageFlagBits2KHR::eIndirectBuffer )
3460       result += "IndirectBuffer | ";
3461 #if defined( VK_ENABLE_BETA_EXTENSIONS )
3462     if ( value & BufferUsageFlagBits2KHR::eExecutionGraphScratchAMDX )
3463       result += "ExecutionGraphScratchAMDX | ";
3464 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
3465     if ( value & BufferUsageFlagBits2KHR::eConditionalRenderingEXT )
3466       result += "ConditionalRenderingEXT | ";
3467     if ( value & BufferUsageFlagBits2KHR::eShaderBindingTable )
3468       result += "ShaderBindingTable | ";
3469     if ( value & BufferUsageFlagBits2KHR::eTransformFeedbackBufferEXT )
3470       result += "TransformFeedbackBufferEXT | ";
3471     if ( value & BufferUsageFlagBits2KHR::eTransformFeedbackCounterBufferEXT )
3472       result += "TransformFeedbackCounterBufferEXT | ";
3473     if ( value & BufferUsageFlagBits2KHR::eVideoDecodeSrc )
3474       result += "VideoDecodeSrc | ";
3475     if ( value & BufferUsageFlagBits2KHR::eVideoDecodeDst )
3476       result += "VideoDecodeDst | ";
3477     if ( value & BufferUsageFlagBits2KHR::eVideoEncodeDst )
3478       result += "VideoEncodeDst | ";
3479     if ( value & BufferUsageFlagBits2KHR::eVideoEncodeSrc )
3480       result += "VideoEncodeSrc | ";
3481     if ( value & BufferUsageFlagBits2KHR::eShaderDeviceAddress )
3482       result += "ShaderDeviceAddress | ";
3483     if ( value & BufferUsageFlagBits2KHR::eAccelerationStructureBuildInputReadOnly )
3484       result += "AccelerationStructureBuildInputReadOnly | ";
3485     if ( value & BufferUsageFlagBits2KHR::eAccelerationStructureStorage )
3486       result += "AccelerationStructureStorage | ";
3487     if ( value & BufferUsageFlagBits2KHR::eSamplerDescriptorBufferEXT )
3488       result += "SamplerDescriptorBufferEXT | ";
3489     if ( value & BufferUsageFlagBits2KHR::eResourceDescriptorBufferEXT )
3490       result += "ResourceDescriptorBufferEXT | ";
3491     if ( value & BufferUsageFlagBits2KHR::ePushDescriptorsDescriptorBufferEXT )
3492       result += "PushDescriptorsDescriptorBufferEXT | ";
3493     if ( value & BufferUsageFlagBits2KHR::eMicromapBuildInputReadOnlyEXT )
3494       result += "MicromapBuildInputReadOnlyEXT | ";
3495     if ( value & BufferUsageFlagBits2KHR::eMicromapStorageEXT )
3496       result += "MicromapStorageEXT | ";
3497 
3498     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3499   }
3500 
3501   //=== VK_EXT_shader_object ===
3502 
to_string(ShaderCreateFlagsEXT value)3503   VULKAN_HPP_INLINE std::string to_string( ShaderCreateFlagsEXT value )
3504   {
3505     if ( !value )
3506       return "{}";
3507 
3508     std::string result;
3509     if ( value & ShaderCreateFlagBitsEXT::eLinkStage )
3510       result += "LinkStage | ";
3511     if ( value & ShaderCreateFlagBitsEXT::eAllowVaryingSubgroupSize )
3512       result += "AllowVaryingSubgroupSize | ";
3513     if ( value & ShaderCreateFlagBitsEXT::eRequireFullSubgroups )
3514       result += "RequireFullSubgroups | ";
3515     if ( value & ShaderCreateFlagBitsEXT::eNoTaskShader )
3516       result += "NoTaskShader | ";
3517     if ( value & ShaderCreateFlagBitsEXT::eDispatchBase )
3518       result += "DispatchBase | ";
3519     if ( value & ShaderCreateFlagBitsEXT::eFragmentShadingRateAttachment )
3520       result += "FragmentShadingRateAttachment | ";
3521     if ( value & ShaderCreateFlagBitsEXT::eFragmentDensityMapAttachment )
3522       result += "FragmentDensityMapAttachment | ";
3523 
3524     return "{ " + result.substr( 0, result.size() - 3 ) + " }";
3525   }
3526 
3527   //=======================
3528   //=== ENUMs to_string ===
3529   //=======================
3530 
toHexString(uint32_t value)3531   VULKAN_HPP_INLINE std::string toHexString( uint32_t value )
3532   {
3533 #if __cpp_lib_format
3534     return std::format( "{:x}", value );
3535 #else
3536     std::stringstream stream;
3537     stream << std::hex << value;
3538     return stream.str();
3539 #endif
3540   }
3541 
3542   //=== VK_VERSION_1_0 ===
3543 
to_string(Result value)3544   VULKAN_HPP_INLINE std::string to_string( Result value )
3545   {
3546     switch ( value )
3547     {
3548       case Result::eSuccess: return "Success";
3549       case Result::eNotReady: return "NotReady";
3550       case Result::eTimeout: return "Timeout";
3551       case Result::eEventSet: return "EventSet";
3552       case Result::eEventReset: return "EventReset";
3553       case Result::eIncomplete: return "Incomplete";
3554       case Result::eErrorOutOfHostMemory: return "ErrorOutOfHostMemory";
3555       case Result::eErrorOutOfDeviceMemory: return "ErrorOutOfDeviceMemory";
3556       case Result::eErrorInitializationFailed: return "ErrorInitializationFailed";
3557       case Result::eErrorDeviceLost: return "ErrorDeviceLost";
3558       case Result::eErrorMemoryMapFailed: return "ErrorMemoryMapFailed";
3559       case Result::eErrorLayerNotPresent: return "ErrorLayerNotPresent";
3560       case Result::eErrorExtensionNotPresent: return "ErrorExtensionNotPresent";
3561       case Result::eErrorFeatureNotPresent: return "ErrorFeatureNotPresent";
3562       case Result::eErrorIncompatibleDriver: return "ErrorIncompatibleDriver";
3563       case Result::eErrorTooManyObjects: return "ErrorTooManyObjects";
3564       case Result::eErrorFormatNotSupported: return "ErrorFormatNotSupported";
3565       case Result::eErrorFragmentedPool: return "ErrorFragmentedPool";
3566       case Result::eErrorUnknown: return "ErrorUnknown";
3567       case Result::eErrorOutOfPoolMemory: return "ErrorOutOfPoolMemory";
3568       case Result::eErrorInvalidExternalHandle: return "ErrorInvalidExternalHandle";
3569       case Result::eErrorFragmentation: return "ErrorFragmentation";
3570       case Result::eErrorInvalidOpaqueCaptureAddress: return "ErrorInvalidOpaqueCaptureAddress";
3571       case Result::ePipelineCompileRequired: return "PipelineCompileRequired";
3572       case Result::eErrorSurfaceLostKHR: return "ErrorSurfaceLostKHR";
3573       case Result::eErrorNativeWindowInUseKHR: return "ErrorNativeWindowInUseKHR";
3574       case Result::eSuboptimalKHR: return "SuboptimalKHR";
3575       case Result::eErrorOutOfDateKHR: return "ErrorOutOfDateKHR";
3576       case Result::eErrorIncompatibleDisplayKHR: return "ErrorIncompatibleDisplayKHR";
3577       case Result::eErrorValidationFailedEXT: return "ErrorValidationFailedEXT";
3578       case Result::eErrorInvalidShaderNV: return "ErrorInvalidShaderNV";
3579       case Result::eErrorImageUsageNotSupportedKHR: return "ErrorImageUsageNotSupportedKHR";
3580       case Result::eErrorVideoPictureLayoutNotSupportedKHR: return "ErrorVideoPictureLayoutNotSupportedKHR";
3581       case Result::eErrorVideoProfileOperationNotSupportedKHR: return "ErrorVideoProfileOperationNotSupportedKHR";
3582       case Result::eErrorVideoProfileFormatNotSupportedKHR: return "ErrorVideoProfileFormatNotSupportedKHR";
3583       case Result::eErrorVideoProfileCodecNotSupportedKHR: return "ErrorVideoProfileCodecNotSupportedKHR";
3584       case Result::eErrorVideoStdVersionNotSupportedKHR: return "ErrorVideoStdVersionNotSupportedKHR";
3585       case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT: return "ErrorInvalidDrmFormatModifierPlaneLayoutEXT";
3586       case Result::eErrorNotPermittedKHR: return "ErrorNotPermittedKHR";
3587 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3588       case Result::eErrorFullScreenExclusiveModeLostEXT: return "ErrorFullScreenExclusiveModeLostEXT";
3589 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3590       case Result::eThreadIdleKHR: return "ThreadIdleKHR";
3591       case Result::eThreadDoneKHR: return "ThreadDoneKHR";
3592       case Result::eOperationDeferredKHR: return "OperationDeferredKHR";
3593       case Result::eOperationNotDeferredKHR: return "OperationNotDeferredKHR";
3594       case Result::eErrorInvalidVideoStdParametersKHR: return "ErrorInvalidVideoStdParametersKHR";
3595       case Result::eErrorCompressionExhaustedEXT: return "ErrorCompressionExhaustedEXT";
3596       case Result::eIncompatibleShaderBinaryEXT: return "IncompatibleShaderBinaryEXT";
3597       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
3598     }
3599   }
3600 
to_string(StructureType value)3601   VULKAN_HPP_INLINE std::string to_string( StructureType value )
3602   {
3603     switch ( value )
3604     {
3605       case StructureType::eApplicationInfo: return "ApplicationInfo";
3606       case StructureType::eInstanceCreateInfo: return "InstanceCreateInfo";
3607       case StructureType::eDeviceQueueCreateInfo: return "DeviceQueueCreateInfo";
3608       case StructureType::eDeviceCreateInfo: return "DeviceCreateInfo";
3609       case StructureType::eSubmitInfo: return "SubmitInfo";
3610       case StructureType::eMemoryAllocateInfo: return "MemoryAllocateInfo";
3611       case StructureType::eMappedMemoryRange: return "MappedMemoryRange";
3612       case StructureType::eBindSparseInfo: return "BindSparseInfo";
3613       case StructureType::eFenceCreateInfo: return "FenceCreateInfo";
3614       case StructureType::eSemaphoreCreateInfo: return "SemaphoreCreateInfo";
3615       case StructureType::eEventCreateInfo: return "EventCreateInfo";
3616       case StructureType::eQueryPoolCreateInfo: return "QueryPoolCreateInfo";
3617       case StructureType::eBufferCreateInfo: return "BufferCreateInfo";
3618       case StructureType::eBufferViewCreateInfo: return "BufferViewCreateInfo";
3619       case StructureType::eImageCreateInfo: return "ImageCreateInfo";
3620       case StructureType::eImageViewCreateInfo: return "ImageViewCreateInfo";
3621       case StructureType::eShaderModuleCreateInfo: return "ShaderModuleCreateInfo";
3622       case StructureType::ePipelineCacheCreateInfo: return "PipelineCacheCreateInfo";
3623       case StructureType::ePipelineShaderStageCreateInfo: return "PipelineShaderStageCreateInfo";
3624       case StructureType::ePipelineVertexInputStateCreateInfo: return "PipelineVertexInputStateCreateInfo";
3625       case StructureType::ePipelineInputAssemblyStateCreateInfo: return "PipelineInputAssemblyStateCreateInfo";
3626       case StructureType::ePipelineTessellationStateCreateInfo: return "PipelineTessellationStateCreateInfo";
3627       case StructureType::ePipelineViewportStateCreateInfo: return "PipelineViewportStateCreateInfo";
3628       case StructureType::ePipelineRasterizationStateCreateInfo: return "PipelineRasterizationStateCreateInfo";
3629       case StructureType::ePipelineMultisampleStateCreateInfo: return "PipelineMultisampleStateCreateInfo";
3630       case StructureType::ePipelineDepthStencilStateCreateInfo: return "PipelineDepthStencilStateCreateInfo";
3631       case StructureType::ePipelineColorBlendStateCreateInfo: return "PipelineColorBlendStateCreateInfo";
3632       case StructureType::ePipelineDynamicStateCreateInfo: return "PipelineDynamicStateCreateInfo";
3633       case StructureType::eGraphicsPipelineCreateInfo: return "GraphicsPipelineCreateInfo";
3634       case StructureType::eComputePipelineCreateInfo: return "ComputePipelineCreateInfo";
3635       case StructureType::ePipelineLayoutCreateInfo: return "PipelineLayoutCreateInfo";
3636       case StructureType::eSamplerCreateInfo: return "SamplerCreateInfo";
3637       case StructureType::eDescriptorSetLayoutCreateInfo: return "DescriptorSetLayoutCreateInfo";
3638       case StructureType::eDescriptorPoolCreateInfo: return "DescriptorPoolCreateInfo";
3639       case StructureType::eDescriptorSetAllocateInfo: return "DescriptorSetAllocateInfo";
3640       case StructureType::eWriteDescriptorSet: return "WriteDescriptorSet";
3641       case StructureType::eCopyDescriptorSet: return "CopyDescriptorSet";
3642       case StructureType::eFramebufferCreateInfo: return "FramebufferCreateInfo";
3643       case StructureType::eRenderPassCreateInfo: return "RenderPassCreateInfo";
3644       case StructureType::eCommandPoolCreateInfo: return "CommandPoolCreateInfo";
3645       case StructureType::eCommandBufferAllocateInfo: return "CommandBufferAllocateInfo";
3646       case StructureType::eCommandBufferInheritanceInfo: return "CommandBufferInheritanceInfo";
3647       case StructureType::eCommandBufferBeginInfo: return "CommandBufferBeginInfo";
3648       case StructureType::eRenderPassBeginInfo: return "RenderPassBeginInfo";
3649       case StructureType::eBufferMemoryBarrier: return "BufferMemoryBarrier";
3650       case StructureType::eImageMemoryBarrier: return "ImageMemoryBarrier";
3651       case StructureType::eMemoryBarrier: return "MemoryBarrier";
3652       case StructureType::eLoaderInstanceCreateInfo: return "LoaderInstanceCreateInfo";
3653       case StructureType::eLoaderDeviceCreateInfo: return "LoaderDeviceCreateInfo";
3654       case StructureType::ePhysicalDeviceSubgroupProperties: return "PhysicalDeviceSubgroupProperties";
3655       case StructureType::eBindBufferMemoryInfo: return "BindBufferMemoryInfo";
3656       case StructureType::eBindImageMemoryInfo: return "BindImageMemoryInfo";
3657       case StructureType::ePhysicalDevice16BitStorageFeatures: return "PhysicalDevice16BitStorageFeatures";
3658       case StructureType::eMemoryDedicatedRequirements: return "MemoryDedicatedRequirements";
3659       case StructureType::eMemoryDedicatedAllocateInfo: return "MemoryDedicatedAllocateInfo";
3660       case StructureType::eMemoryAllocateFlagsInfo: return "MemoryAllocateFlagsInfo";
3661       case StructureType::eDeviceGroupRenderPassBeginInfo: return "DeviceGroupRenderPassBeginInfo";
3662       case StructureType::eDeviceGroupCommandBufferBeginInfo: return "DeviceGroupCommandBufferBeginInfo";
3663       case StructureType::eDeviceGroupSubmitInfo: return "DeviceGroupSubmitInfo";
3664       case StructureType::eDeviceGroupBindSparseInfo: return "DeviceGroupBindSparseInfo";
3665       case StructureType::eBindBufferMemoryDeviceGroupInfo: return "BindBufferMemoryDeviceGroupInfo";
3666       case StructureType::eBindImageMemoryDeviceGroupInfo: return "BindImageMemoryDeviceGroupInfo";
3667       case StructureType::ePhysicalDeviceGroupProperties: return "PhysicalDeviceGroupProperties";
3668       case StructureType::eDeviceGroupDeviceCreateInfo: return "DeviceGroupDeviceCreateInfo";
3669       case StructureType::eBufferMemoryRequirementsInfo2: return "BufferMemoryRequirementsInfo2";
3670       case StructureType::eImageMemoryRequirementsInfo2: return "ImageMemoryRequirementsInfo2";
3671       case StructureType::eImageSparseMemoryRequirementsInfo2: return "ImageSparseMemoryRequirementsInfo2";
3672       case StructureType::eMemoryRequirements2: return "MemoryRequirements2";
3673       case StructureType::eSparseImageMemoryRequirements2: return "SparseImageMemoryRequirements2";
3674       case StructureType::ePhysicalDeviceFeatures2: return "PhysicalDeviceFeatures2";
3675       case StructureType::ePhysicalDeviceProperties2: return "PhysicalDeviceProperties2";
3676       case StructureType::eFormatProperties2: return "FormatProperties2";
3677       case StructureType::eImageFormatProperties2: return "ImageFormatProperties2";
3678       case StructureType::ePhysicalDeviceImageFormatInfo2: return "PhysicalDeviceImageFormatInfo2";
3679       case StructureType::eQueueFamilyProperties2: return "QueueFamilyProperties2";
3680       case StructureType::ePhysicalDeviceMemoryProperties2: return "PhysicalDeviceMemoryProperties2";
3681       case StructureType::eSparseImageFormatProperties2: return "SparseImageFormatProperties2";
3682       case StructureType::ePhysicalDeviceSparseImageFormatInfo2: return "PhysicalDeviceSparseImageFormatInfo2";
3683       case StructureType::ePhysicalDevicePointClippingProperties: return "PhysicalDevicePointClippingProperties";
3684       case StructureType::eRenderPassInputAttachmentAspectCreateInfo: return "RenderPassInputAttachmentAspectCreateInfo";
3685       case StructureType::eImageViewUsageCreateInfo: return "ImageViewUsageCreateInfo";
3686       case StructureType::ePipelineTessellationDomainOriginStateCreateInfo: return "PipelineTessellationDomainOriginStateCreateInfo";
3687       case StructureType::eRenderPassMultiviewCreateInfo: return "RenderPassMultiviewCreateInfo";
3688       case StructureType::ePhysicalDeviceMultiviewFeatures: return "PhysicalDeviceMultiviewFeatures";
3689       case StructureType::ePhysicalDeviceMultiviewProperties: return "PhysicalDeviceMultiviewProperties";
3690       case StructureType::ePhysicalDeviceVariablePointersFeatures: return "PhysicalDeviceVariablePointersFeatures";
3691       case StructureType::eProtectedSubmitInfo: return "ProtectedSubmitInfo";
3692       case StructureType::ePhysicalDeviceProtectedMemoryFeatures: return "PhysicalDeviceProtectedMemoryFeatures";
3693       case StructureType::ePhysicalDeviceProtectedMemoryProperties: return "PhysicalDeviceProtectedMemoryProperties";
3694       case StructureType::eDeviceQueueInfo2: return "DeviceQueueInfo2";
3695       case StructureType::eSamplerYcbcrConversionCreateInfo: return "SamplerYcbcrConversionCreateInfo";
3696       case StructureType::eSamplerYcbcrConversionInfo: return "SamplerYcbcrConversionInfo";
3697       case StructureType::eBindImagePlaneMemoryInfo: return "BindImagePlaneMemoryInfo";
3698       case StructureType::eImagePlaneMemoryRequirementsInfo: return "ImagePlaneMemoryRequirementsInfo";
3699       case StructureType::ePhysicalDeviceSamplerYcbcrConversionFeatures: return "PhysicalDeviceSamplerYcbcrConversionFeatures";
3700       case StructureType::eSamplerYcbcrConversionImageFormatProperties: return "SamplerYcbcrConversionImageFormatProperties";
3701       case StructureType::eDescriptorUpdateTemplateCreateInfo: return "DescriptorUpdateTemplateCreateInfo";
3702       case StructureType::ePhysicalDeviceExternalImageFormatInfo: return "PhysicalDeviceExternalImageFormatInfo";
3703       case StructureType::eExternalImageFormatProperties: return "ExternalImageFormatProperties";
3704       case StructureType::ePhysicalDeviceExternalBufferInfo: return "PhysicalDeviceExternalBufferInfo";
3705       case StructureType::eExternalBufferProperties: return "ExternalBufferProperties";
3706       case StructureType::ePhysicalDeviceIdProperties: return "PhysicalDeviceIdProperties";
3707       case StructureType::eExternalMemoryBufferCreateInfo: return "ExternalMemoryBufferCreateInfo";
3708       case StructureType::eExternalMemoryImageCreateInfo: return "ExternalMemoryImageCreateInfo";
3709       case StructureType::eExportMemoryAllocateInfo: return "ExportMemoryAllocateInfo";
3710       case StructureType::ePhysicalDeviceExternalFenceInfo: return "PhysicalDeviceExternalFenceInfo";
3711       case StructureType::eExternalFenceProperties: return "ExternalFenceProperties";
3712       case StructureType::eExportFenceCreateInfo: return "ExportFenceCreateInfo";
3713       case StructureType::eExportSemaphoreCreateInfo: return "ExportSemaphoreCreateInfo";
3714       case StructureType::ePhysicalDeviceExternalSemaphoreInfo: return "PhysicalDeviceExternalSemaphoreInfo";
3715       case StructureType::eExternalSemaphoreProperties: return "ExternalSemaphoreProperties";
3716       case StructureType::ePhysicalDeviceMaintenance3Properties: return "PhysicalDeviceMaintenance3Properties";
3717       case StructureType::eDescriptorSetLayoutSupport: return "DescriptorSetLayoutSupport";
3718       case StructureType::ePhysicalDeviceShaderDrawParametersFeatures: return "PhysicalDeviceShaderDrawParametersFeatures";
3719       case StructureType::ePhysicalDeviceVulkan11Features: return "PhysicalDeviceVulkan11Features";
3720       case StructureType::ePhysicalDeviceVulkan11Properties: return "PhysicalDeviceVulkan11Properties";
3721       case StructureType::ePhysicalDeviceVulkan12Features: return "PhysicalDeviceVulkan12Features";
3722       case StructureType::ePhysicalDeviceVulkan12Properties: return "PhysicalDeviceVulkan12Properties";
3723       case StructureType::eImageFormatListCreateInfo: return "ImageFormatListCreateInfo";
3724       case StructureType::eAttachmentDescription2: return "AttachmentDescription2";
3725       case StructureType::eAttachmentReference2: return "AttachmentReference2";
3726       case StructureType::eSubpassDescription2: return "SubpassDescription2";
3727       case StructureType::eSubpassDependency2: return "SubpassDependency2";
3728       case StructureType::eRenderPassCreateInfo2: return "RenderPassCreateInfo2";
3729       case StructureType::eSubpassBeginInfo: return "SubpassBeginInfo";
3730       case StructureType::eSubpassEndInfo: return "SubpassEndInfo";
3731       case StructureType::ePhysicalDevice8BitStorageFeatures: return "PhysicalDevice8BitStorageFeatures";
3732       case StructureType::ePhysicalDeviceDriverProperties: return "PhysicalDeviceDriverProperties";
3733       case StructureType::ePhysicalDeviceShaderAtomicInt64Features: return "PhysicalDeviceShaderAtomicInt64Features";
3734       case StructureType::ePhysicalDeviceShaderFloat16Int8Features: return "PhysicalDeviceShaderFloat16Int8Features";
3735       case StructureType::ePhysicalDeviceFloatControlsProperties: return "PhysicalDeviceFloatControlsProperties";
3736       case StructureType::eDescriptorSetLayoutBindingFlagsCreateInfo: return "DescriptorSetLayoutBindingFlagsCreateInfo";
3737       case StructureType::ePhysicalDeviceDescriptorIndexingFeatures: return "PhysicalDeviceDescriptorIndexingFeatures";
3738       case StructureType::ePhysicalDeviceDescriptorIndexingProperties: return "PhysicalDeviceDescriptorIndexingProperties";
3739       case StructureType::eDescriptorSetVariableDescriptorCountAllocateInfo: return "DescriptorSetVariableDescriptorCountAllocateInfo";
3740       case StructureType::eDescriptorSetVariableDescriptorCountLayoutSupport: return "DescriptorSetVariableDescriptorCountLayoutSupport";
3741       case StructureType::ePhysicalDeviceDepthStencilResolveProperties: return "PhysicalDeviceDepthStencilResolveProperties";
3742       case StructureType::eSubpassDescriptionDepthStencilResolve: return "SubpassDescriptionDepthStencilResolve";
3743       case StructureType::ePhysicalDeviceScalarBlockLayoutFeatures: return "PhysicalDeviceScalarBlockLayoutFeatures";
3744       case StructureType::eImageStencilUsageCreateInfo: return "ImageStencilUsageCreateInfo";
3745       case StructureType::ePhysicalDeviceSamplerFilterMinmaxProperties: return "PhysicalDeviceSamplerFilterMinmaxProperties";
3746       case StructureType::eSamplerReductionModeCreateInfo: return "SamplerReductionModeCreateInfo";
3747       case StructureType::ePhysicalDeviceVulkanMemoryModelFeatures: return "PhysicalDeviceVulkanMemoryModelFeatures";
3748       case StructureType::ePhysicalDeviceImagelessFramebufferFeatures: return "PhysicalDeviceImagelessFramebufferFeatures";
3749       case StructureType::eFramebufferAttachmentsCreateInfo: return "FramebufferAttachmentsCreateInfo";
3750       case StructureType::eFramebufferAttachmentImageInfo: return "FramebufferAttachmentImageInfo";
3751       case StructureType::eRenderPassAttachmentBeginInfo: return "RenderPassAttachmentBeginInfo";
3752       case StructureType::ePhysicalDeviceUniformBufferStandardLayoutFeatures: return "PhysicalDeviceUniformBufferStandardLayoutFeatures";
3753       case StructureType::ePhysicalDeviceShaderSubgroupExtendedTypesFeatures: return "PhysicalDeviceShaderSubgroupExtendedTypesFeatures";
3754       case StructureType::ePhysicalDeviceSeparateDepthStencilLayoutsFeatures: return "PhysicalDeviceSeparateDepthStencilLayoutsFeatures";
3755       case StructureType::eAttachmentReferenceStencilLayout: return "AttachmentReferenceStencilLayout";
3756       case StructureType::eAttachmentDescriptionStencilLayout: return "AttachmentDescriptionStencilLayout";
3757       case StructureType::ePhysicalDeviceHostQueryResetFeatures: return "PhysicalDeviceHostQueryResetFeatures";
3758       case StructureType::ePhysicalDeviceTimelineSemaphoreFeatures: return "PhysicalDeviceTimelineSemaphoreFeatures";
3759       case StructureType::ePhysicalDeviceTimelineSemaphoreProperties: return "PhysicalDeviceTimelineSemaphoreProperties";
3760       case StructureType::eSemaphoreTypeCreateInfo: return "SemaphoreTypeCreateInfo";
3761       case StructureType::eTimelineSemaphoreSubmitInfo: return "TimelineSemaphoreSubmitInfo";
3762       case StructureType::eSemaphoreWaitInfo: return "SemaphoreWaitInfo";
3763       case StructureType::eSemaphoreSignalInfo: return "SemaphoreSignalInfo";
3764       case StructureType::ePhysicalDeviceBufferDeviceAddressFeatures: return "PhysicalDeviceBufferDeviceAddressFeatures";
3765       case StructureType::eBufferDeviceAddressInfo: return "BufferDeviceAddressInfo";
3766       case StructureType::eBufferOpaqueCaptureAddressCreateInfo: return "BufferOpaqueCaptureAddressCreateInfo";
3767       case StructureType::eMemoryOpaqueCaptureAddressAllocateInfo: return "MemoryOpaqueCaptureAddressAllocateInfo";
3768       case StructureType::eDeviceMemoryOpaqueCaptureAddressInfo: return "DeviceMemoryOpaqueCaptureAddressInfo";
3769       case StructureType::ePhysicalDeviceVulkan13Features: return "PhysicalDeviceVulkan13Features";
3770       case StructureType::ePhysicalDeviceVulkan13Properties: return "PhysicalDeviceVulkan13Properties";
3771       case StructureType::ePipelineCreationFeedbackCreateInfo: return "PipelineCreationFeedbackCreateInfo";
3772       case StructureType::ePhysicalDeviceShaderTerminateInvocationFeatures: return "PhysicalDeviceShaderTerminateInvocationFeatures";
3773       case StructureType::ePhysicalDeviceToolProperties: return "PhysicalDeviceToolProperties";
3774       case StructureType::ePhysicalDeviceShaderDemoteToHelperInvocationFeatures: return "PhysicalDeviceShaderDemoteToHelperInvocationFeatures";
3775       case StructureType::ePhysicalDevicePrivateDataFeatures: return "PhysicalDevicePrivateDataFeatures";
3776       case StructureType::eDevicePrivateDataCreateInfo: return "DevicePrivateDataCreateInfo";
3777       case StructureType::ePrivateDataSlotCreateInfo: return "PrivateDataSlotCreateInfo";
3778       case StructureType::ePhysicalDevicePipelineCreationCacheControlFeatures: return "PhysicalDevicePipelineCreationCacheControlFeatures";
3779       case StructureType::eMemoryBarrier2: return "MemoryBarrier2";
3780       case StructureType::eBufferMemoryBarrier2: return "BufferMemoryBarrier2";
3781       case StructureType::eImageMemoryBarrier2: return "ImageMemoryBarrier2";
3782       case StructureType::eDependencyInfo: return "DependencyInfo";
3783       case StructureType::eSubmitInfo2: return "SubmitInfo2";
3784       case StructureType::eSemaphoreSubmitInfo: return "SemaphoreSubmitInfo";
3785       case StructureType::eCommandBufferSubmitInfo: return "CommandBufferSubmitInfo";
3786       case StructureType::ePhysicalDeviceSynchronization2Features: return "PhysicalDeviceSynchronization2Features";
3787       case StructureType::ePhysicalDeviceZeroInitializeWorkgroupMemoryFeatures: return "PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures";
3788       case StructureType::ePhysicalDeviceImageRobustnessFeatures: return "PhysicalDeviceImageRobustnessFeatures";
3789       case StructureType::eCopyBufferInfo2: return "CopyBufferInfo2";
3790       case StructureType::eCopyImageInfo2: return "CopyImageInfo2";
3791       case StructureType::eCopyBufferToImageInfo2: return "CopyBufferToImageInfo2";
3792       case StructureType::eCopyImageToBufferInfo2: return "CopyImageToBufferInfo2";
3793       case StructureType::eBlitImageInfo2: return "BlitImageInfo2";
3794       case StructureType::eResolveImageInfo2: return "ResolveImageInfo2";
3795       case StructureType::eBufferCopy2: return "BufferCopy2";
3796       case StructureType::eImageCopy2: return "ImageCopy2";
3797       case StructureType::eImageBlit2: return "ImageBlit2";
3798       case StructureType::eBufferImageCopy2: return "BufferImageCopy2";
3799       case StructureType::eImageResolve2: return "ImageResolve2";
3800       case StructureType::ePhysicalDeviceSubgroupSizeControlProperties: return "PhysicalDeviceSubgroupSizeControlProperties";
3801       case StructureType::ePipelineShaderStageRequiredSubgroupSizeCreateInfo: return "PipelineShaderStageRequiredSubgroupSizeCreateInfo";
3802       case StructureType::ePhysicalDeviceSubgroupSizeControlFeatures: return "PhysicalDeviceSubgroupSizeControlFeatures";
3803       case StructureType::ePhysicalDeviceInlineUniformBlockFeatures: return "PhysicalDeviceInlineUniformBlockFeatures";
3804       case StructureType::ePhysicalDeviceInlineUniformBlockProperties: return "PhysicalDeviceInlineUniformBlockProperties";
3805       case StructureType::eWriteDescriptorSetInlineUniformBlock: return "WriteDescriptorSetInlineUniformBlock";
3806       case StructureType::eDescriptorPoolInlineUniformBlockCreateInfo: return "DescriptorPoolInlineUniformBlockCreateInfo";
3807       case StructureType::ePhysicalDeviceTextureCompressionAstcHdrFeatures: return "PhysicalDeviceTextureCompressionAstcHdrFeatures";
3808       case StructureType::eRenderingInfo: return "RenderingInfo";
3809       case StructureType::eRenderingAttachmentInfo: return "RenderingAttachmentInfo";
3810       case StructureType::ePipelineRenderingCreateInfo: return "PipelineRenderingCreateInfo";
3811       case StructureType::ePhysicalDeviceDynamicRenderingFeatures: return "PhysicalDeviceDynamicRenderingFeatures";
3812       case StructureType::eCommandBufferInheritanceRenderingInfo: return "CommandBufferInheritanceRenderingInfo";
3813       case StructureType::ePhysicalDeviceShaderIntegerDotProductFeatures: return "PhysicalDeviceShaderIntegerDotProductFeatures";
3814       case StructureType::ePhysicalDeviceShaderIntegerDotProductProperties: return "PhysicalDeviceShaderIntegerDotProductProperties";
3815       case StructureType::ePhysicalDeviceTexelBufferAlignmentProperties: return "PhysicalDeviceTexelBufferAlignmentProperties";
3816       case StructureType::eFormatProperties3: return "FormatProperties3";
3817       case StructureType::ePhysicalDeviceMaintenance4Features: return "PhysicalDeviceMaintenance4Features";
3818       case StructureType::ePhysicalDeviceMaintenance4Properties: return "PhysicalDeviceMaintenance4Properties";
3819       case StructureType::eDeviceBufferMemoryRequirements: return "DeviceBufferMemoryRequirements";
3820       case StructureType::eDeviceImageMemoryRequirements: return "DeviceImageMemoryRequirements";
3821       case StructureType::eSwapchainCreateInfoKHR: return "SwapchainCreateInfoKHR";
3822       case StructureType::ePresentInfoKHR: return "PresentInfoKHR";
3823       case StructureType::eDeviceGroupPresentCapabilitiesKHR: return "DeviceGroupPresentCapabilitiesKHR";
3824       case StructureType::eImageSwapchainCreateInfoKHR: return "ImageSwapchainCreateInfoKHR";
3825       case StructureType::eBindImageMemorySwapchainInfoKHR: return "BindImageMemorySwapchainInfoKHR";
3826       case StructureType::eAcquireNextImageInfoKHR: return "AcquireNextImageInfoKHR";
3827       case StructureType::eDeviceGroupPresentInfoKHR: return "DeviceGroupPresentInfoKHR";
3828       case StructureType::eDeviceGroupSwapchainCreateInfoKHR: return "DeviceGroupSwapchainCreateInfoKHR";
3829       case StructureType::eDisplayModeCreateInfoKHR: return "DisplayModeCreateInfoKHR";
3830       case StructureType::eDisplaySurfaceCreateInfoKHR: return "DisplaySurfaceCreateInfoKHR";
3831       case StructureType::eDisplayPresentInfoKHR: return "DisplayPresentInfoKHR";
3832 #if defined( VK_USE_PLATFORM_XLIB_KHR )
3833       case StructureType::eXlibSurfaceCreateInfoKHR: return "XlibSurfaceCreateInfoKHR";
3834 #endif /*VK_USE_PLATFORM_XLIB_KHR*/
3835 #if defined( VK_USE_PLATFORM_XCB_KHR )
3836       case StructureType::eXcbSurfaceCreateInfoKHR: return "XcbSurfaceCreateInfoKHR";
3837 #endif /*VK_USE_PLATFORM_XCB_KHR*/
3838 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
3839       case StructureType::eWaylandSurfaceCreateInfoKHR: return "WaylandSurfaceCreateInfoKHR";
3840 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
3841 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
3842       case StructureType::eAndroidSurfaceCreateInfoKHR: return "AndroidSurfaceCreateInfoKHR";
3843 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
3844 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3845       case StructureType::eWin32SurfaceCreateInfoKHR: return "Win32SurfaceCreateInfoKHR";
3846 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3847       case StructureType::eDebugReportCallbackCreateInfoEXT: return "DebugReportCallbackCreateInfoEXT";
3848       case StructureType::ePipelineRasterizationStateRasterizationOrderAMD: return "PipelineRasterizationStateRasterizationOrderAMD";
3849       case StructureType::eDebugMarkerObjectNameInfoEXT: return "DebugMarkerObjectNameInfoEXT";
3850       case StructureType::eDebugMarkerObjectTagInfoEXT: return "DebugMarkerObjectTagInfoEXT";
3851       case StructureType::eDebugMarkerMarkerInfoEXT: return "DebugMarkerMarkerInfoEXT";
3852       case StructureType::eVideoProfileInfoKHR: return "VideoProfileInfoKHR";
3853       case StructureType::eVideoCapabilitiesKHR: return "VideoCapabilitiesKHR";
3854       case StructureType::eVideoPictureResourceInfoKHR: return "VideoPictureResourceInfoKHR";
3855       case StructureType::eVideoSessionMemoryRequirementsKHR: return "VideoSessionMemoryRequirementsKHR";
3856       case StructureType::eBindVideoSessionMemoryInfoKHR: return "BindVideoSessionMemoryInfoKHR";
3857       case StructureType::eVideoSessionCreateInfoKHR: return "VideoSessionCreateInfoKHR";
3858       case StructureType::eVideoSessionParametersCreateInfoKHR: return "VideoSessionParametersCreateInfoKHR";
3859       case StructureType::eVideoSessionParametersUpdateInfoKHR: return "VideoSessionParametersUpdateInfoKHR";
3860       case StructureType::eVideoBeginCodingInfoKHR: return "VideoBeginCodingInfoKHR";
3861       case StructureType::eVideoEndCodingInfoKHR: return "VideoEndCodingInfoKHR";
3862       case StructureType::eVideoCodingControlInfoKHR: return "VideoCodingControlInfoKHR";
3863       case StructureType::eVideoReferenceSlotInfoKHR: return "VideoReferenceSlotInfoKHR";
3864       case StructureType::eQueueFamilyVideoPropertiesKHR: return "QueueFamilyVideoPropertiesKHR";
3865       case StructureType::eVideoProfileListInfoKHR: return "VideoProfileListInfoKHR";
3866       case StructureType::ePhysicalDeviceVideoFormatInfoKHR: return "PhysicalDeviceVideoFormatInfoKHR";
3867       case StructureType::eVideoFormatPropertiesKHR: return "VideoFormatPropertiesKHR";
3868       case StructureType::eQueueFamilyQueryResultStatusPropertiesKHR: return "QueueFamilyQueryResultStatusPropertiesKHR";
3869       case StructureType::eVideoDecodeInfoKHR: return "VideoDecodeInfoKHR";
3870       case StructureType::eVideoDecodeCapabilitiesKHR: return "VideoDecodeCapabilitiesKHR";
3871       case StructureType::eVideoDecodeUsageInfoKHR: return "VideoDecodeUsageInfoKHR";
3872       case StructureType::eDedicatedAllocationImageCreateInfoNV: return "DedicatedAllocationImageCreateInfoNV";
3873       case StructureType::eDedicatedAllocationBufferCreateInfoNV: return "DedicatedAllocationBufferCreateInfoNV";
3874       case StructureType::eDedicatedAllocationMemoryAllocateInfoNV: return "DedicatedAllocationMemoryAllocateInfoNV";
3875       case StructureType::ePhysicalDeviceTransformFeedbackFeaturesEXT: return "PhysicalDeviceTransformFeedbackFeaturesEXT";
3876       case StructureType::ePhysicalDeviceTransformFeedbackPropertiesEXT: return "PhysicalDeviceTransformFeedbackPropertiesEXT";
3877       case StructureType::ePipelineRasterizationStateStreamCreateInfoEXT: return "PipelineRasterizationStateStreamCreateInfoEXT";
3878       case StructureType::eCuModuleCreateInfoNVX: return "CuModuleCreateInfoNVX";
3879       case StructureType::eCuFunctionCreateInfoNVX: return "CuFunctionCreateInfoNVX";
3880       case StructureType::eCuLaunchInfoNVX: return "CuLaunchInfoNVX";
3881       case StructureType::eImageViewHandleInfoNVX: return "ImageViewHandleInfoNVX";
3882       case StructureType::eImageViewAddressPropertiesNVX: return "ImageViewAddressPropertiesNVX";
3883       case StructureType::eVideoEncodeH264CapabilitiesKHR: return "VideoEncodeH264CapabilitiesKHR";
3884       case StructureType::eVideoEncodeH264SessionParametersCreateInfoKHR: return "VideoEncodeH264SessionParametersCreateInfoKHR";
3885       case StructureType::eVideoEncodeH264SessionParametersAddInfoKHR: return "VideoEncodeH264SessionParametersAddInfoKHR";
3886       case StructureType::eVideoEncodeH264PictureInfoKHR: return "VideoEncodeH264PictureInfoKHR";
3887       case StructureType::eVideoEncodeH264DpbSlotInfoKHR: return "VideoEncodeH264DpbSlotInfoKHR";
3888       case StructureType::eVideoEncodeH264NaluSliceInfoKHR: return "VideoEncodeH264NaluSliceInfoKHR";
3889       case StructureType::eVideoEncodeH264GopRemainingFrameInfoKHR: return "VideoEncodeH264GopRemainingFrameInfoKHR";
3890       case StructureType::eVideoEncodeH264ProfileInfoKHR: return "VideoEncodeH264ProfileInfoKHR";
3891       case StructureType::eVideoEncodeH264RateControlInfoKHR: return "VideoEncodeH264RateControlInfoKHR";
3892       case StructureType::eVideoEncodeH264RateControlLayerInfoKHR: return "VideoEncodeH264RateControlLayerInfoKHR";
3893       case StructureType::eVideoEncodeH264SessionCreateInfoKHR: return "VideoEncodeH264SessionCreateInfoKHR";
3894       case StructureType::eVideoEncodeH264QualityLevelPropertiesKHR: return "VideoEncodeH264QualityLevelPropertiesKHR";
3895       case StructureType::eVideoEncodeH264SessionParametersGetInfoKHR: return "VideoEncodeH264SessionParametersGetInfoKHR";
3896       case StructureType::eVideoEncodeH264SessionParametersFeedbackInfoKHR: return "VideoEncodeH264SessionParametersFeedbackInfoKHR";
3897       case StructureType::eVideoEncodeH265CapabilitiesKHR: return "VideoEncodeH265CapabilitiesKHR";
3898       case StructureType::eVideoEncodeH265SessionParametersCreateInfoKHR: return "VideoEncodeH265SessionParametersCreateInfoKHR";
3899       case StructureType::eVideoEncodeH265SessionParametersAddInfoKHR: return "VideoEncodeH265SessionParametersAddInfoKHR";
3900       case StructureType::eVideoEncodeH265PictureInfoKHR: return "VideoEncodeH265PictureInfoKHR";
3901       case StructureType::eVideoEncodeH265DpbSlotInfoKHR: return "VideoEncodeH265DpbSlotInfoKHR";
3902       case StructureType::eVideoEncodeH265NaluSliceSegmentInfoKHR: return "VideoEncodeH265NaluSliceSegmentInfoKHR";
3903       case StructureType::eVideoEncodeH265GopRemainingFrameInfoKHR: return "VideoEncodeH265GopRemainingFrameInfoKHR";
3904       case StructureType::eVideoEncodeH265ProfileInfoKHR: return "VideoEncodeH265ProfileInfoKHR";
3905       case StructureType::eVideoEncodeH265RateControlInfoKHR: return "VideoEncodeH265RateControlInfoKHR";
3906       case StructureType::eVideoEncodeH265RateControlLayerInfoKHR: return "VideoEncodeH265RateControlLayerInfoKHR";
3907       case StructureType::eVideoEncodeH265SessionCreateInfoKHR: return "VideoEncodeH265SessionCreateInfoKHR";
3908       case StructureType::eVideoEncodeH265QualityLevelPropertiesKHR: return "VideoEncodeH265QualityLevelPropertiesKHR";
3909       case StructureType::eVideoEncodeH265SessionParametersGetInfoKHR: return "VideoEncodeH265SessionParametersGetInfoKHR";
3910       case StructureType::eVideoEncodeH265SessionParametersFeedbackInfoKHR: return "VideoEncodeH265SessionParametersFeedbackInfoKHR";
3911       case StructureType::eVideoDecodeH264CapabilitiesKHR: return "VideoDecodeH264CapabilitiesKHR";
3912       case StructureType::eVideoDecodeH264PictureInfoKHR: return "VideoDecodeH264PictureInfoKHR";
3913       case StructureType::eVideoDecodeH264ProfileInfoKHR: return "VideoDecodeH264ProfileInfoKHR";
3914       case StructureType::eVideoDecodeH264SessionParametersCreateInfoKHR: return "VideoDecodeH264SessionParametersCreateInfoKHR";
3915       case StructureType::eVideoDecodeH264SessionParametersAddInfoKHR: return "VideoDecodeH264SessionParametersAddInfoKHR";
3916       case StructureType::eVideoDecodeH264DpbSlotInfoKHR: return "VideoDecodeH264DpbSlotInfoKHR";
3917       case StructureType::eTextureLodGatherFormatPropertiesAMD: return "TextureLodGatherFormatPropertiesAMD";
3918       case StructureType::eRenderingFragmentShadingRateAttachmentInfoKHR: return "RenderingFragmentShadingRateAttachmentInfoKHR";
3919       case StructureType::eRenderingFragmentDensityMapAttachmentInfoEXT: return "RenderingFragmentDensityMapAttachmentInfoEXT";
3920       case StructureType::eAttachmentSampleCountInfoAMD: return "AttachmentSampleCountInfoAMD";
3921       case StructureType::eMultiviewPerViewAttributesInfoNVX: return "MultiviewPerViewAttributesInfoNVX";
3922 #if defined( VK_USE_PLATFORM_GGP )
3923       case StructureType::eStreamDescriptorSurfaceCreateInfoGGP: return "StreamDescriptorSurfaceCreateInfoGGP";
3924 #endif /*VK_USE_PLATFORM_GGP*/
3925       case StructureType::ePhysicalDeviceCornerSampledImageFeaturesNV: return "PhysicalDeviceCornerSampledImageFeaturesNV";
3926       case StructureType::eExternalMemoryImageCreateInfoNV: return "ExternalMemoryImageCreateInfoNV";
3927       case StructureType::eExportMemoryAllocateInfoNV: return "ExportMemoryAllocateInfoNV";
3928 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3929       case StructureType::eImportMemoryWin32HandleInfoNV: return "ImportMemoryWin32HandleInfoNV";
3930       case StructureType::eExportMemoryWin32HandleInfoNV: return "ExportMemoryWin32HandleInfoNV";
3931       case StructureType::eWin32KeyedMutexAcquireReleaseInfoNV: return "Win32KeyedMutexAcquireReleaseInfoNV";
3932 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3933       case StructureType::eValidationFlagsEXT: return "ValidationFlagsEXT";
3934 #if defined( VK_USE_PLATFORM_VI_NN )
3935       case StructureType::eViSurfaceCreateInfoNN: return "ViSurfaceCreateInfoNN";
3936 #endif /*VK_USE_PLATFORM_VI_NN*/
3937       case StructureType::eImageViewAstcDecodeModeEXT: return "ImageViewAstcDecodeModeEXT";
3938       case StructureType::ePhysicalDeviceAstcDecodeFeaturesEXT: return "PhysicalDeviceAstcDecodeFeaturesEXT";
3939       case StructureType::ePipelineRobustnessCreateInfoEXT: return "PipelineRobustnessCreateInfoEXT";
3940       case StructureType::ePhysicalDevicePipelineRobustnessFeaturesEXT: return "PhysicalDevicePipelineRobustnessFeaturesEXT";
3941       case StructureType::ePhysicalDevicePipelineRobustnessPropertiesEXT: return "PhysicalDevicePipelineRobustnessPropertiesEXT";
3942 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3943       case StructureType::eImportMemoryWin32HandleInfoKHR: return "ImportMemoryWin32HandleInfoKHR";
3944       case StructureType::eExportMemoryWin32HandleInfoKHR: return "ExportMemoryWin32HandleInfoKHR";
3945       case StructureType::eMemoryWin32HandlePropertiesKHR: return "MemoryWin32HandlePropertiesKHR";
3946       case StructureType::eMemoryGetWin32HandleInfoKHR: return "MemoryGetWin32HandleInfoKHR";
3947 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3948       case StructureType::eImportMemoryFdInfoKHR: return "ImportMemoryFdInfoKHR";
3949       case StructureType::eMemoryFdPropertiesKHR: return "MemoryFdPropertiesKHR";
3950       case StructureType::eMemoryGetFdInfoKHR: return "MemoryGetFdInfoKHR";
3951 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3952       case StructureType::eWin32KeyedMutexAcquireReleaseInfoKHR: return "Win32KeyedMutexAcquireReleaseInfoKHR";
3953       case StructureType::eImportSemaphoreWin32HandleInfoKHR: return "ImportSemaphoreWin32HandleInfoKHR";
3954       case StructureType::eExportSemaphoreWin32HandleInfoKHR: return "ExportSemaphoreWin32HandleInfoKHR";
3955       case StructureType::eD3D12FenceSubmitInfoKHR: return "D3D12FenceSubmitInfoKHR";
3956       case StructureType::eSemaphoreGetWin32HandleInfoKHR: return "SemaphoreGetWin32HandleInfoKHR";
3957 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3958       case StructureType::eImportSemaphoreFdInfoKHR: return "ImportSemaphoreFdInfoKHR";
3959       case StructureType::eSemaphoreGetFdInfoKHR: return "SemaphoreGetFdInfoKHR";
3960       case StructureType::ePhysicalDevicePushDescriptorPropertiesKHR: return "PhysicalDevicePushDescriptorPropertiesKHR";
3961       case StructureType::eCommandBufferInheritanceConditionalRenderingInfoEXT: return "CommandBufferInheritanceConditionalRenderingInfoEXT";
3962       case StructureType::ePhysicalDeviceConditionalRenderingFeaturesEXT: return "PhysicalDeviceConditionalRenderingFeaturesEXT";
3963       case StructureType::eConditionalRenderingBeginInfoEXT: return "ConditionalRenderingBeginInfoEXT";
3964       case StructureType::ePresentRegionsKHR: return "PresentRegionsKHR";
3965       case StructureType::ePipelineViewportWScalingStateCreateInfoNV: return "PipelineViewportWScalingStateCreateInfoNV";
3966       case StructureType::eSurfaceCapabilities2EXT: return "SurfaceCapabilities2EXT";
3967       case StructureType::eDisplayPowerInfoEXT: return "DisplayPowerInfoEXT";
3968       case StructureType::eDeviceEventInfoEXT: return "DeviceEventInfoEXT";
3969       case StructureType::eDisplayEventInfoEXT: return "DisplayEventInfoEXT";
3970       case StructureType::eSwapchainCounterCreateInfoEXT: return "SwapchainCounterCreateInfoEXT";
3971       case StructureType::ePresentTimesInfoGOOGLE: return "PresentTimesInfoGOOGLE";
3972       case StructureType::ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX: return "PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX";
3973       case StructureType::ePipelineViewportSwizzleStateCreateInfoNV: return "PipelineViewportSwizzleStateCreateInfoNV";
3974       case StructureType::ePhysicalDeviceDiscardRectanglePropertiesEXT: return "PhysicalDeviceDiscardRectanglePropertiesEXT";
3975       case StructureType::ePipelineDiscardRectangleStateCreateInfoEXT: return "PipelineDiscardRectangleStateCreateInfoEXT";
3976       case StructureType::ePhysicalDeviceConservativeRasterizationPropertiesEXT: return "PhysicalDeviceConservativeRasterizationPropertiesEXT";
3977       case StructureType::ePipelineRasterizationConservativeStateCreateInfoEXT: return "PipelineRasterizationConservativeStateCreateInfoEXT";
3978       case StructureType::ePhysicalDeviceDepthClipEnableFeaturesEXT: return "PhysicalDeviceDepthClipEnableFeaturesEXT";
3979       case StructureType::ePipelineRasterizationDepthClipStateCreateInfoEXT: return "PipelineRasterizationDepthClipStateCreateInfoEXT";
3980       case StructureType::eHdrMetadataEXT: return "HdrMetadataEXT";
3981       case StructureType::ePhysicalDeviceRelaxedLineRasterizationFeaturesIMG: return "PhysicalDeviceRelaxedLineRasterizationFeaturesIMG";
3982       case StructureType::eSharedPresentSurfaceCapabilitiesKHR: return "SharedPresentSurfaceCapabilitiesKHR";
3983 #if defined( VK_USE_PLATFORM_WIN32_KHR )
3984       case StructureType::eImportFenceWin32HandleInfoKHR: return "ImportFenceWin32HandleInfoKHR";
3985       case StructureType::eExportFenceWin32HandleInfoKHR: return "ExportFenceWin32HandleInfoKHR";
3986       case StructureType::eFenceGetWin32HandleInfoKHR: return "FenceGetWin32HandleInfoKHR";
3987 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
3988       case StructureType::eImportFenceFdInfoKHR: return "ImportFenceFdInfoKHR";
3989       case StructureType::eFenceGetFdInfoKHR: return "FenceGetFdInfoKHR";
3990       case StructureType::ePhysicalDevicePerformanceQueryFeaturesKHR: return "PhysicalDevicePerformanceQueryFeaturesKHR";
3991       case StructureType::ePhysicalDevicePerformanceQueryPropertiesKHR: return "PhysicalDevicePerformanceQueryPropertiesKHR";
3992       case StructureType::eQueryPoolPerformanceCreateInfoKHR: return "QueryPoolPerformanceCreateInfoKHR";
3993       case StructureType::ePerformanceQuerySubmitInfoKHR: return "PerformanceQuerySubmitInfoKHR";
3994       case StructureType::eAcquireProfilingLockInfoKHR: return "AcquireProfilingLockInfoKHR";
3995       case StructureType::ePerformanceCounterKHR: return "PerformanceCounterKHR";
3996       case StructureType::ePerformanceCounterDescriptionKHR: return "PerformanceCounterDescriptionKHR";
3997       case StructureType::ePhysicalDeviceSurfaceInfo2KHR: return "PhysicalDeviceSurfaceInfo2KHR";
3998       case StructureType::eSurfaceCapabilities2KHR: return "SurfaceCapabilities2KHR";
3999       case StructureType::eSurfaceFormat2KHR: return "SurfaceFormat2KHR";
4000       case StructureType::eDisplayProperties2KHR: return "DisplayProperties2KHR";
4001       case StructureType::eDisplayPlaneProperties2KHR: return "DisplayPlaneProperties2KHR";
4002       case StructureType::eDisplayModeProperties2KHR: return "DisplayModeProperties2KHR";
4003       case StructureType::eDisplayPlaneInfo2KHR: return "DisplayPlaneInfo2KHR";
4004       case StructureType::eDisplayPlaneCapabilities2KHR: return "DisplayPlaneCapabilities2KHR";
4005 #if defined( VK_USE_PLATFORM_IOS_MVK )
4006       case StructureType::eIosSurfaceCreateInfoMVK: return "IosSurfaceCreateInfoMVK";
4007 #endif /*VK_USE_PLATFORM_IOS_MVK*/
4008 #if defined( VK_USE_PLATFORM_MACOS_MVK )
4009       case StructureType::eMacosSurfaceCreateInfoMVK: return "MacosSurfaceCreateInfoMVK";
4010 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
4011       case StructureType::eDebugUtilsObjectNameInfoEXT: return "DebugUtilsObjectNameInfoEXT";
4012       case StructureType::eDebugUtilsObjectTagInfoEXT: return "DebugUtilsObjectTagInfoEXT";
4013       case StructureType::eDebugUtilsLabelEXT: return "DebugUtilsLabelEXT";
4014       case StructureType::eDebugUtilsMessengerCallbackDataEXT: return "DebugUtilsMessengerCallbackDataEXT";
4015       case StructureType::eDebugUtilsMessengerCreateInfoEXT: return "DebugUtilsMessengerCreateInfoEXT";
4016 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
4017       case StructureType::eAndroidHardwareBufferUsageANDROID: return "AndroidHardwareBufferUsageANDROID";
4018       case StructureType::eAndroidHardwareBufferPropertiesANDROID: return "AndroidHardwareBufferPropertiesANDROID";
4019       case StructureType::eAndroidHardwareBufferFormatPropertiesANDROID: return "AndroidHardwareBufferFormatPropertiesANDROID";
4020       case StructureType::eImportAndroidHardwareBufferInfoANDROID: return "ImportAndroidHardwareBufferInfoANDROID";
4021       case StructureType::eMemoryGetAndroidHardwareBufferInfoANDROID: return "MemoryGetAndroidHardwareBufferInfoANDROID";
4022       case StructureType::eExternalFormatANDROID: return "ExternalFormatANDROID";
4023       case StructureType::eAndroidHardwareBufferFormatProperties2ANDROID: return "AndroidHardwareBufferFormatProperties2ANDROID";
4024 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
4025 #if defined( VK_ENABLE_BETA_EXTENSIONS )
4026       case StructureType::ePhysicalDeviceShaderEnqueueFeaturesAMDX: return "PhysicalDeviceShaderEnqueueFeaturesAMDX";
4027       case StructureType::ePhysicalDeviceShaderEnqueuePropertiesAMDX: return "PhysicalDeviceShaderEnqueuePropertiesAMDX";
4028       case StructureType::eExecutionGraphPipelineScratchSizeAMDX: return "ExecutionGraphPipelineScratchSizeAMDX";
4029       case StructureType::eExecutionGraphPipelineCreateInfoAMDX: return "ExecutionGraphPipelineCreateInfoAMDX";
4030       case StructureType::ePipelineShaderStageNodeCreateInfoAMDX: return "PipelineShaderStageNodeCreateInfoAMDX";
4031 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
4032       case StructureType::eSampleLocationsInfoEXT: return "SampleLocationsInfoEXT";
4033       case StructureType::eRenderPassSampleLocationsBeginInfoEXT: return "RenderPassSampleLocationsBeginInfoEXT";
4034       case StructureType::ePipelineSampleLocationsStateCreateInfoEXT: return "PipelineSampleLocationsStateCreateInfoEXT";
4035       case StructureType::ePhysicalDeviceSampleLocationsPropertiesEXT: return "PhysicalDeviceSampleLocationsPropertiesEXT";
4036       case StructureType::eMultisamplePropertiesEXT: return "MultisamplePropertiesEXT";
4037       case StructureType::ePhysicalDeviceBlendOperationAdvancedFeaturesEXT: return "PhysicalDeviceBlendOperationAdvancedFeaturesEXT";
4038       case StructureType::ePhysicalDeviceBlendOperationAdvancedPropertiesEXT: return "PhysicalDeviceBlendOperationAdvancedPropertiesEXT";
4039       case StructureType::ePipelineColorBlendAdvancedStateCreateInfoEXT: return "PipelineColorBlendAdvancedStateCreateInfoEXT";
4040       case StructureType::ePipelineCoverageToColorStateCreateInfoNV: return "PipelineCoverageToColorStateCreateInfoNV";
4041       case StructureType::eWriteDescriptorSetAccelerationStructureKHR: return "WriteDescriptorSetAccelerationStructureKHR";
4042       case StructureType::eAccelerationStructureBuildGeometryInfoKHR: return "AccelerationStructureBuildGeometryInfoKHR";
4043       case StructureType::eAccelerationStructureDeviceAddressInfoKHR: return "AccelerationStructureDeviceAddressInfoKHR";
4044       case StructureType::eAccelerationStructureGeometryAabbsDataKHR: return "AccelerationStructureGeometryAabbsDataKHR";
4045       case StructureType::eAccelerationStructureGeometryInstancesDataKHR: return "AccelerationStructureGeometryInstancesDataKHR";
4046       case StructureType::eAccelerationStructureGeometryTrianglesDataKHR: return "AccelerationStructureGeometryTrianglesDataKHR";
4047       case StructureType::eAccelerationStructureGeometryKHR: return "AccelerationStructureGeometryKHR";
4048       case StructureType::eAccelerationStructureVersionInfoKHR: return "AccelerationStructureVersionInfoKHR";
4049       case StructureType::eCopyAccelerationStructureInfoKHR: return "CopyAccelerationStructureInfoKHR";
4050       case StructureType::eCopyAccelerationStructureToMemoryInfoKHR: return "CopyAccelerationStructureToMemoryInfoKHR";
4051       case StructureType::eCopyMemoryToAccelerationStructureInfoKHR: return "CopyMemoryToAccelerationStructureInfoKHR";
4052       case StructureType::ePhysicalDeviceAccelerationStructureFeaturesKHR: return "PhysicalDeviceAccelerationStructureFeaturesKHR";
4053       case StructureType::ePhysicalDeviceAccelerationStructurePropertiesKHR: return "PhysicalDeviceAccelerationStructurePropertiesKHR";
4054       case StructureType::eAccelerationStructureCreateInfoKHR: return "AccelerationStructureCreateInfoKHR";
4055       case StructureType::eAccelerationStructureBuildSizesInfoKHR: return "AccelerationStructureBuildSizesInfoKHR";
4056       case StructureType::ePhysicalDeviceRayTracingPipelineFeaturesKHR: return "PhysicalDeviceRayTracingPipelineFeaturesKHR";
4057       case StructureType::ePhysicalDeviceRayTracingPipelinePropertiesKHR: return "PhysicalDeviceRayTracingPipelinePropertiesKHR";
4058       case StructureType::eRayTracingPipelineCreateInfoKHR: return "RayTracingPipelineCreateInfoKHR";
4059       case StructureType::eRayTracingShaderGroupCreateInfoKHR: return "RayTracingShaderGroupCreateInfoKHR";
4060       case StructureType::eRayTracingPipelineInterfaceCreateInfoKHR: return "RayTracingPipelineInterfaceCreateInfoKHR";
4061       case StructureType::ePhysicalDeviceRayQueryFeaturesKHR: return "PhysicalDeviceRayQueryFeaturesKHR";
4062       case StructureType::ePipelineCoverageModulationStateCreateInfoNV: return "PipelineCoverageModulationStateCreateInfoNV";
4063       case StructureType::ePhysicalDeviceShaderSmBuiltinsFeaturesNV: return "PhysicalDeviceShaderSmBuiltinsFeaturesNV";
4064       case StructureType::ePhysicalDeviceShaderSmBuiltinsPropertiesNV: return "PhysicalDeviceShaderSmBuiltinsPropertiesNV";
4065       case StructureType::eDrmFormatModifierPropertiesListEXT: return "DrmFormatModifierPropertiesListEXT";
4066       case StructureType::ePhysicalDeviceImageDrmFormatModifierInfoEXT: return "PhysicalDeviceImageDrmFormatModifierInfoEXT";
4067       case StructureType::eImageDrmFormatModifierListCreateInfoEXT: return "ImageDrmFormatModifierListCreateInfoEXT";
4068       case StructureType::eImageDrmFormatModifierExplicitCreateInfoEXT: return "ImageDrmFormatModifierExplicitCreateInfoEXT";
4069       case StructureType::eImageDrmFormatModifierPropertiesEXT: return "ImageDrmFormatModifierPropertiesEXT";
4070       case StructureType::eDrmFormatModifierPropertiesList2EXT: return "DrmFormatModifierPropertiesList2EXT";
4071       case StructureType::eValidationCacheCreateInfoEXT: return "ValidationCacheCreateInfoEXT";
4072       case StructureType::eShaderModuleValidationCacheCreateInfoEXT: return "ShaderModuleValidationCacheCreateInfoEXT";
4073 #if defined( VK_ENABLE_BETA_EXTENSIONS )
4074       case StructureType::ePhysicalDevicePortabilitySubsetFeaturesKHR: return "PhysicalDevicePortabilitySubsetFeaturesKHR";
4075       case StructureType::ePhysicalDevicePortabilitySubsetPropertiesKHR: return "PhysicalDevicePortabilitySubsetPropertiesKHR";
4076 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
4077       case StructureType::ePipelineViewportShadingRateImageStateCreateInfoNV: return "PipelineViewportShadingRateImageStateCreateInfoNV";
4078       case StructureType::ePhysicalDeviceShadingRateImageFeaturesNV: return "PhysicalDeviceShadingRateImageFeaturesNV";
4079       case StructureType::ePhysicalDeviceShadingRateImagePropertiesNV: return "PhysicalDeviceShadingRateImagePropertiesNV";
4080       case StructureType::ePipelineViewportCoarseSampleOrderStateCreateInfoNV: return "PipelineViewportCoarseSampleOrderStateCreateInfoNV";
4081       case StructureType::eRayTracingPipelineCreateInfoNV: return "RayTracingPipelineCreateInfoNV";
4082       case StructureType::eAccelerationStructureCreateInfoNV: return "AccelerationStructureCreateInfoNV";
4083       case StructureType::eGeometryNV: return "GeometryNV";
4084       case StructureType::eGeometryTrianglesNV: return "GeometryTrianglesNV";
4085       case StructureType::eGeometryAabbNV: return "GeometryAabbNV";
4086       case StructureType::eBindAccelerationStructureMemoryInfoNV: return "BindAccelerationStructureMemoryInfoNV";
4087       case StructureType::eWriteDescriptorSetAccelerationStructureNV: return "WriteDescriptorSetAccelerationStructureNV";
4088       case StructureType::eAccelerationStructureMemoryRequirementsInfoNV: return "AccelerationStructureMemoryRequirementsInfoNV";
4089       case StructureType::ePhysicalDeviceRayTracingPropertiesNV: return "PhysicalDeviceRayTracingPropertiesNV";
4090       case StructureType::eRayTracingShaderGroupCreateInfoNV: return "RayTracingShaderGroupCreateInfoNV";
4091       case StructureType::eAccelerationStructureInfoNV: return "AccelerationStructureInfoNV";
4092       case StructureType::ePhysicalDeviceRepresentativeFragmentTestFeaturesNV: return "PhysicalDeviceRepresentativeFragmentTestFeaturesNV";
4093       case StructureType::ePipelineRepresentativeFragmentTestStateCreateInfoNV: return "PipelineRepresentativeFragmentTestStateCreateInfoNV";
4094       case StructureType::ePhysicalDeviceImageViewImageFormatInfoEXT: return "PhysicalDeviceImageViewImageFormatInfoEXT";
4095       case StructureType::eFilterCubicImageViewImageFormatPropertiesEXT: return "FilterCubicImageViewImageFormatPropertiesEXT";
4096       case StructureType::eImportMemoryHostPointerInfoEXT: return "ImportMemoryHostPointerInfoEXT";
4097       case StructureType::eMemoryHostPointerPropertiesEXT: return "MemoryHostPointerPropertiesEXT";
4098       case StructureType::ePhysicalDeviceExternalMemoryHostPropertiesEXT: return "PhysicalDeviceExternalMemoryHostPropertiesEXT";
4099       case StructureType::ePhysicalDeviceShaderClockFeaturesKHR: return "PhysicalDeviceShaderClockFeaturesKHR";
4100       case StructureType::ePipelineCompilerControlCreateInfoAMD: return "PipelineCompilerControlCreateInfoAMD";
4101       case StructureType::ePhysicalDeviceShaderCorePropertiesAMD: return "PhysicalDeviceShaderCorePropertiesAMD";
4102       case StructureType::eVideoDecodeH265CapabilitiesKHR: return "VideoDecodeH265CapabilitiesKHR";
4103       case StructureType::eVideoDecodeH265SessionParametersCreateInfoKHR: return "VideoDecodeH265SessionParametersCreateInfoKHR";
4104       case StructureType::eVideoDecodeH265SessionParametersAddInfoKHR: return "VideoDecodeH265SessionParametersAddInfoKHR";
4105       case StructureType::eVideoDecodeH265ProfileInfoKHR: return "VideoDecodeH265ProfileInfoKHR";
4106       case StructureType::eVideoDecodeH265PictureInfoKHR: return "VideoDecodeH265PictureInfoKHR";
4107       case StructureType::eVideoDecodeH265DpbSlotInfoKHR: return "VideoDecodeH265DpbSlotInfoKHR";
4108       case StructureType::eDeviceQueueGlobalPriorityCreateInfoKHR: return "DeviceQueueGlobalPriorityCreateInfoKHR";
4109       case StructureType::ePhysicalDeviceGlobalPriorityQueryFeaturesKHR: return "PhysicalDeviceGlobalPriorityQueryFeaturesKHR";
4110       case StructureType::eQueueFamilyGlobalPriorityPropertiesKHR: return "QueueFamilyGlobalPriorityPropertiesKHR";
4111       case StructureType::eDeviceMemoryOverallocationCreateInfoAMD: return "DeviceMemoryOverallocationCreateInfoAMD";
4112       case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesEXT: return "PhysicalDeviceVertexAttributeDivisorPropertiesEXT";
4113 #if defined( VK_USE_PLATFORM_GGP )
4114       case StructureType::ePresentFrameTokenGGP: return "PresentFrameTokenGGP";
4115 #endif /*VK_USE_PLATFORM_GGP*/
4116       case StructureType::ePhysicalDeviceComputeShaderDerivativesFeaturesNV: return "PhysicalDeviceComputeShaderDerivativesFeaturesNV";
4117       case StructureType::ePhysicalDeviceMeshShaderFeaturesNV: return "PhysicalDeviceMeshShaderFeaturesNV";
4118       case StructureType::ePhysicalDeviceMeshShaderPropertiesNV: return "PhysicalDeviceMeshShaderPropertiesNV";
4119       case StructureType::ePhysicalDeviceShaderImageFootprintFeaturesNV: return "PhysicalDeviceShaderImageFootprintFeaturesNV";
4120       case StructureType::ePipelineViewportExclusiveScissorStateCreateInfoNV: return "PipelineViewportExclusiveScissorStateCreateInfoNV";
4121       case StructureType::ePhysicalDeviceExclusiveScissorFeaturesNV: return "PhysicalDeviceExclusiveScissorFeaturesNV";
4122       case StructureType::eCheckpointDataNV: return "CheckpointDataNV";
4123       case StructureType::eQueueFamilyCheckpointPropertiesNV: return "QueueFamilyCheckpointPropertiesNV";
4124       case StructureType::ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL: return "PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL";
4125       case StructureType::eQueryPoolPerformanceQueryCreateInfoINTEL: return "QueryPoolPerformanceQueryCreateInfoINTEL";
4126       case StructureType::eInitializePerformanceApiInfoINTEL: return "InitializePerformanceApiInfoINTEL";
4127       case StructureType::ePerformanceMarkerInfoINTEL: return "PerformanceMarkerInfoINTEL";
4128       case StructureType::ePerformanceStreamMarkerInfoINTEL: return "PerformanceStreamMarkerInfoINTEL";
4129       case StructureType::ePerformanceOverrideInfoINTEL: return "PerformanceOverrideInfoINTEL";
4130       case StructureType::ePerformanceConfigurationAcquireInfoINTEL: return "PerformanceConfigurationAcquireInfoINTEL";
4131       case StructureType::ePhysicalDevicePciBusInfoPropertiesEXT: return "PhysicalDevicePciBusInfoPropertiesEXT";
4132       case StructureType::eDisplayNativeHdrSurfaceCapabilitiesAMD: return "DisplayNativeHdrSurfaceCapabilitiesAMD";
4133       case StructureType::eSwapchainDisplayNativeHdrCreateInfoAMD: return "SwapchainDisplayNativeHdrCreateInfoAMD";
4134 #if defined( VK_USE_PLATFORM_FUCHSIA )
4135       case StructureType::eImagepipeSurfaceCreateInfoFUCHSIA: return "ImagepipeSurfaceCreateInfoFUCHSIA";
4136 #endif /*VK_USE_PLATFORM_FUCHSIA*/
4137 #if defined( VK_USE_PLATFORM_METAL_EXT )
4138       case StructureType::eMetalSurfaceCreateInfoEXT: return "MetalSurfaceCreateInfoEXT";
4139 #endif /*VK_USE_PLATFORM_METAL_EXT*/
4140       case StructureType::ePhysicalDeviceFragmentDensityMapFeaturesEXT: return "PhysicalDeviceFragmentDensityMapFeaturesEXT";
4141       case StructureType::ePhysicalDeviceFragmentDensityMapPropertiesEXT: return "PhysicalDeviceFragmentDensityMapPropertiesEXT";
4142       case StructureType::eRenderPassFragmentDensityMapCreateInfoEXT: return "RenderPassFragmentDensityMapCreateInfoEXT";
4143       case StructureType::eFragmentShadingRateAttachmentInfoKHR: return "FragmentShadingRateAttachmentInfoKHR";
4144       case StructureType::ePipelineFragmentShadingRateStateCreateInfoKHR: return "PipelineFragmentShadingRateStateCreateInfoKHR";
4145       case StructureType::ePhysicalDeviceFragmentShadingRatePropertiesKHR: return "PhysicalDeviceFragmentShadingRatePropertiesKHR";
4146       case StructureType::ePhysicalDeviceFragmentShadingRateFeaturesKHR: return "PhysicalDeviceFragmentShadingRateFeaturesKHR";
4147       case StructureType::ePhysicalDeviceFragmentShadingRateKHR: return "PhysicalDeviceFragmentShadingRateKHR";
4148       case StructureType::ePhysicalDeviceShaderCoreProperties2AMD: return "PhysicalDeviceShaderCoreProperties2AMD";
4149       case StructureType::ePhysicalDeviceCoherentMemoryFeaturesAMD: return "PhysicalDeviceCoherentMemoryFeaturesAMD";
4150       case StructureType::ePhysicalDeviceDynamicRenderingLocalReadFeaturesKHR: return "PhysicalDeviceDynamicRenderingLocalReadFeaturesKHR";
4151       case StructureType::eRenderingAttachmentLocationInfoKHR: return "RenderingAttachmentLocationInfoKHR";
4152       case StructureType::eRenderingInputAttachmentIndexInfoKHR: return "RenderingInputAttachmentIndexInfoKHR";
4153       case StructureType::ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT: return "PhysicalDeviceShaderImageAtomicInt64FeaturesEXT";
4154       case StructureType::ePhysicalDeviceShaderQuadControlFeaturesKHR: return "PhysicalDeviceShaderQuadControlFeaturesKHR";
4155       case StructureType::ePhysicalDeviceMemoryBudgetPropertiesEXT: return "PhysicalDeviceMemoryBudgetPropertiesEXT";
4156       case StructureType::ePhysicalDeviceMemoryPriorityFeaturesEXT: return "PhysicalDeviceMemoryPriorityFeaturesEXT";
4157       case StructureType::eMemoryPriorityAllocateInfoEXT: return "MemoryPriorityAllocateInfoEXT";
4158       case StructureType::eSurfaceProtectedCapabilitiesKHR: return "SurfaceProtectedCapabilitiesKHR";
4159       case StructureType::ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV: return "PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV";
4160       case StructureType::ePhysicalDeviceBufferDeviceAddressFeaturesEXT: return "PhysicalDeviceBufferDeviceAddressFeaturesEXT";
4161       case StructureType::eBufferDeviceAddressCreateInfoEXT: return "BufferDeviceAddressCreateInfoEXT";
4162       case StructureType::eValidationFeaturesEXT: return "ValidationFeaturesEXT";
4163       case StructureType::ePhysicalDevicePresentWaitFeaturesKHR: return "PhysicalDevicePresentWaitFeaturesKHR";
4164       case StructureType::ePhysicalDeviceCooperativeMatrixFeaturesNV: return "PhysicalDeviceCooperativeMatrixFeaturesNV";
4165       case StructureType::eCooperativeMatrixPropertiesNV: return "CooperativeMatrixPropertiesNV";
4166       case StructureType::ePhysicalDeviceCooperativeMatrixPropertiesNV: return "PhysicalDeviceCooperativeMatrixPropertiesNV";
4167       case StructureType::ePhysicalDeviceCoverageReductionModeFeaturesNV: return "PhysicalDeviceCoverageReductionModeFeaturesNV";
4168       case StructureType::ePipelineCoverageReductionStateCreateInfoNV: return "PipelineCoverageReductionStateCreateInfoNV";
4169       case StructureType::eFramebufferMixedSamplesCombinationNV: return "FramebufferMixedSamplesCombinationNV";
4170       case StructureType::ePhysicalDeviceFragmentShaderInterlockFeaturesEXT: return "PhysicalDeviceFragmentShaderInterlockFeaturesEXT";
4171       case StructureType::ePhysicalDeviceYcbcrImageArraysFeaturesEXT: return "PhysicalDeviceYcbcrImageArraysFeaturesEXT";
4172       case StructureType::ePhysicalDeviceProvokingVertexFeaturesEXT: return "PhysicalDeviceProvokingVertexFeaturesEXT";
4173       case StructureType::ePipelineRasterizationProvokingVertexStateCreateInfoEXT: return "PipelineRasterizationProvokingVertexStateCreateInfoEXT";
4174       case StructureType::ePhysicalDeviceProvokingVertexPropertiesEXT: return "PhysicalDeviceProvokingVertexPropertiesEXT";
4175 #if defined( VK_USE_PLATFORM_WIN32_KHR )
4176       case StructureType::eSurfaceFullScreenExclusiveInfoEXT: return "SurfaceFullScreenExclusiveInfoEXT";
4177       case StructureType::eSurfaceCapabilitiesFullScreenExclusiveEXT: return "SurfaceCapabilitiesFullScreenExclusiveEXT";
4178       case StructureType::eSurfaceFullScreenExclusiveWin32InfoEXT: return "SurfaceFullScreenExclusiveWin32InfoEXT";
4179 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
4180       case StructureType::eHeadlessSurfaceCreateInfoEXT: return "HeadlessSurfaceCreateInfoEXT";
4181       case StructureType::ePhysicalDeviceShaderAtomicFloatFeaturesEXT: return "PhysicalDeviceShaderAtomicFloatFeaturesEXT";
4182       case StructureType::ePhysicalDeviceExtendedDynamicStateFeaturesEXT: return "PhysicalDeviceExtendedDynamicStateFeaturesEXT";
4183       case StructureType::ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR: return "PhysicalDevicePipelineExecutablePropertiesFeaturesKHR";
4184       case StructureType::ePipelineInfoKHR: return "PipelineInfoKHR";
4185       case StructureType::ePipelineExecutablePropertiesKHR: return "PipelineExecutablePropertiesKHR";
4186       case StructureType::ePipelineExecutableInfoKHR: return "PipelineExecutableInfoKHR";
4187       case StructureType::ePipelineExecutableStatisticKHR: return "PipelineExecutableStatisticKHR";
4188       case StructureType::ePipelineExecutableInternalRepresentationKHR: return "PipelineExecutableInternalRepresentationKHR";
4189       case StructureType::ePhysicalDeviceHostImageCopyFeaturesEXT: return "PhysicalDeviceHostImageCopyFeaturesEXT";
4190       case StructureType::ePhysicalDeviceHostImageCopyPropertiesEXT: return "PhysicalDeviceHostImageCopyPropertiesEXT";
4191       case StructureType::eMemoryToImageCopyEXT: return "MemoryToImageCopyEXT";
4192       case StructureType::eImageToMemoryCopyEXT: return "ImageToMemoryCopyEXT";
4193       case StructureType::eCopyImageToMemoryInfoEXT: return "CopyImageToMemoryInfoEXT";
4194       case StructureType::eCopyMemoryToImageInfoEXT: return "CopyMemoryToImageInfoEXT";
4195       case StructureType::eHostImageLayoutTransitionInfoEXT: return "HostImageLayoutTransitionInfoEXT";
4196       case StructureType::eCopyImageToImageInfoEXT: return "CopyImageToImageInfoEXT";
4197       case StructureType::eSubresourceHostMemcpySizeEXT: return "SubresourceHostMemcpySizeEXT";
4198       case StructureType::eHostImageCopyDevicePerformanceQueryEXT: return "HostImageCopyDevicePerformanceQueryEXT";
4199       case StructureType::eMemoryMapInfoKHR: return "MemoryMapInfoKHR";
4200       case StructureType::eMemoryUnmapInfoKHR: return "MemoryUnmapInfoKHR";
4201       case StructureType::ePhysicalDeviceMapMemoryPlacedFeaturesEXT: return "PhysicalDeviceMapMemoryPlacedFeaturesEXT";
4202       case StructureType::ePhysicalDeviceMapMemoryPlacedPropertiesEXT: return "PhysicalDeviceMapMemoryPlacedPropertiesEXT";
4203       case StructureType::eMemoryMapPlacedInfoEXT: return "MemoryMapPlacedInfoEXT";
4204       case StructureType::ePhysicalDeviceShaderAtomicFloat2FeaturesEXT: return "PhysicalDeviceShaderAtomicFloat2FeaturesEXT";
4205       case StructureType::eSurfacePresentModeEXT: return "SurfacePresentModeEXT";
4206       case StructureType::eSurfacePresentScalingCapabilitiesEXT: return "SurfacePresentScalingCapabilitiesEXT";
4207       case StructureType::eSurfacePresentModeCompatibilityEXT: return "SurfacePresentModeCompatibilityEXT";
4208       case StructureType::ePhysicalDeviceSwapchainMaintenance1FeaturesEXT: return "PhysicalDeviceSwapchainMaintenance1FeaturesEXT";
4209       case StructureType::eSwapchainPresentFenceInfoEXT: return "SwapchainPresentFenceInfoEXT";
4210       case StructureType::eSwapchainPresentModesCreateInfoEXT: return "SwapchainPresentModesCreateInfoEXT";
4211       case StructureType::eSwapchainPresentModeInfoEXT: return "SwapchainPresentModeInfoEXT";
4212       case StructureType::eSwapchainPresentScalingCreateInfoEXT: return "SwapchainPresentScalingCreateInfoEXT";
4213       case StructureType::eReleaseSwapchainImagesInfoEXT: return "ReleaseSwapchainImagesInfoEXT";
4214       case StructureType::ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV: return "PhysicalDeviceDeviceGeneratedCommandsPropertiesNV";
4215       case StructureType::eGraphicsShaderGroupCreateInfoNV: return "GraphicsShaderGroupCreateInfoNV";
4216       case StructureType::eGraphicsPipelineShaderGroupsCreateInfoNV: return "GraphicsPipelineShaderGroupsCreateInfoNV";
4217       case StructureType::eIndirectCommandsLayoutTokenNV: return "IndirectCommandsLayoutTokenNV";
4218       case StructureType::eIndirectCommandsLayoutCreateInfoNV: return "IndirectCommandsLayoutCreateInfoNV";
4219       case StructureType::eGeneratedCommandsInfoNV: return "GeneratedCommandsInfoNV";
4220       case StructureType::eGeneratedCommandsMemoryRequirementsInfoNV: return "GeneratedCommandsMemoryRequirementsInfoNV";
4221       case StructureType::ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV: return "PhysicalDeviceDeviceGeneratedCommandsFeaturesNV";
4222       case StructureType::ePhysicalDeviceInheritedViewportScissorFeaturesNV: return "PhysicalDeviceInheritedViewportScissorFeaturesNV";
4223       case StructureType::eCommandBufferInheritanceViewportScissorInfoNV: return "CommandBufferInheritanceViewportScissorInfoNV";
4224       case StructureType::ePhysicalDeviceTexelBufferAlignmentFeaturesEXT: return "PhysicalDeviceTexelBufferAlignmentFeaturesEXT";
4225       case StructureType::eCommandBufferInheritanceRenderPassTransformInfoQCOM: return "CommandBufferInheritanceRenderPassTransformInfoQCOM";
4226       case StructureType::eRenderPassTransformBeginInfoQCOM: return "RenderPassTransformBeginInfoQCOM";
4227       case StructureType::ePhysicalDeviceDepthBiasControlFeaturesEXT: return "PhysicalDeviceDepthBiasControlFeaturesEXT";
4228       case StructureType::eDepthBiasInfoEXT: return "DepthBiasInfoEXT";
4229       case StructureType::eDepthBiasRepresentationInfoEXT: return "DepthBiasRepresentationInfoEXT";
4230       case StructureType::ePhysicalDeviceDeviceMemoryReportFeaturesEXT: return "PhysicalDeviceDeviceMemoryReportFeaturesEXT";
4231       case StructureType::eDeviceDeviceMemoryReportCreateInfoEXT: return "DeviceDeviceMemoryReportCreateInfoEXT";
4232       case StructureType::eDeviceMemoryReportCallbackDataEXT: return "DeviceMemoryReportCallbackDataEXT";
4233       case StructureType::ePhysicalDeviceRobustness2FeaturesEXT: return "PhysicalDeviceRobustness2FeaturesEXT";
4234       case StructureType::ePhysicalDeviceRobustness2PropertiesEXT: return "PhysicalDeviceRobustness2PropertiesEXT";
4235       case StructureType::eSamplerCustomBorderColorCreateInfoEXT: return "SamplerCustomBorderColorCreateInfoEXT";
4236       case StructureType::ePhysicalDeviceCustomBorderColorPropertiesEXT: return "PhysicalDeviceCustomBorderColorPropertiesEXT";
4237       case StructureType::ePhysicalDeviceCustomBorderColorFeaturesEXT: return "PhysicalDeviceCustomBorderColorFeaturesEXT";
4238       case StructureType::ePipelineLibraryCreateInfoKHR: return "PipelineLibraryCreateInfoKHR";
4239       case StructureType::ePhysicalDevicePresentBarrierFeaturesNV: return "PhysicalDevicePresentBarrierFeaturesNV";
4240       case StructureType::eSurfaceCapabilitiesPresentBarrierNV: return "SurfaceCapabilitiesPresentBarrierNV";
4241       case StructureType::eSwapchainPresentBarrierCreateInfoNV: return "SwapchainPresentBarrierCreateInfoNV";
4242       case StructureType::ePresentIdKHR: return "PresentIdKHR";
4243       case StructureType::ePhysicalDevicePresentIdFeaturesKHR: return "PhysicalDevicePresentIdFeaturesKHR";
4244       case StructureType::eVideoEncodeInfoKHR: return "VideoEncodeInfoKHR";
4245       case StructureType::eVideoEncodeRateControlInfoKHR: return "VideoEncodeRateControlInfoKHR";
4246       case StructureType::eVideoEncodeRateControlLayerInfoKHR: return "VideoEncodeRateControlLayerInfoKHR";
4247       case StructureType::eVideoEncodeCapabilitiesKHR: return "VideoEncodeCapabilitiesKHR";
4248       case StructureType::eVideoEncodeUsageInfoKHR: return "VideoEncodeUsageInfoKHR";
4249       case StructureType::eQueryPoolVideoEncodeFeedbackCreateInfoKHR: return "QueryPoolVideoEncodeFeedbackCreateInfoKHR";
4250       case StructureType::ePhysicalDeviceVideoEncodeQualityLevelInfoKHR: return "PhysicalDeviceVideoEncodeQualityLevelInfoKHR";
4251       case StructureType::eVideoEncodeQualityLevelPropertiesKHR: return "VideoEncodeQualityLevelPropertiesKHR";
4252       case StructureType::eVideoEncodeQualityLevelInfoKHR: return "VideoEncodeQualityLevelInfoKHR";
4253       case StructureType::eVideoEncodeSessionParametersGetInfoKHR: return "VideoEncodeSessionParametersGetInfoKHR";
4254       case StructureType::eVideoEncodeSessionParametersFeedbackInfoKHR: return "VideoEncodeSessionParametersFeedbackInfoKHR";
4255       case StructureType::ePhysicalDeviceDiagnosticsConfigFeaturesNV: return "PhysicalDeviceDiagnosticsConfigFeaturesNV";
4256       case StructureType::eDeviceDiagnosticsConfigCreateInfoNV: return "DeviceDiagnosticsConfigCreateInfoNV";
4257 #if defined( VK_ENABLE_BETA_EXTENSIONS )
4258       case StructureType::eCudaModuleCreateInfoNV: return "CudaModuleCreateInfoNV";
4259       case StructureType::eCudaFunctionCreateInfoNV: return "CudaFunctionCreateInfoNV";
4260       case StructureType::eCudaLaunchInfoNV: return "CudaLaunchInfoNV";
4261       case StructureType::ePhysicalDeviceCudaKernelLaunchFeaturesNV: return "PhysicalDeviceCudaKernelLaunchFeaturesNV";
4262       case StructureType::ePhysicalDeviceCudaKernelLaunchPropertiesNV: return "PhysicalDeviceCudaKernelLaunchPropertiesNV";
4263 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
4264       case StructureType::eQueryLowLatencySupportNV: return "QueryLowLatencySupportNV";
4265 #if defined( VK_USE_PLATFORM_METAL_EXT )
4266       case StructureType::eExportMetalObjectCreateInfoEXT: return "ExportMetalObjectCreateInfoEXT";
4267       case StructureType::eExportMetalObjectsInfoEXT: return "ExportMetalObjectsInfoEXT";
4268       case StructureType::eExportMetalDeviceInfoEXT: return "ExportMetalDeviceInfoEXT";
4269       case StructureType::eExportMetalCommandQueueInfoEXT: return "ExportMetalCommandQueueInfoEXT";
4270       case StructureType::eExportMetalBufferInfoEXT: return "ExportMetalBufferInfoEXT";
4271       case StructureType::eImportMetalBufferInfoEXT: return "ImportMetalBufferInfoEXT";
4272       case StructureType::eExportMetalTextureInfoEXT: return "ExportMetalTextureInfoEXT";
4273       case StructureType::eImportMetalTextureInfoEXT: return "ImportMetalTextureInfoEXT";
4274       case StructureType::eExportMetalIoSurfaceInfoEXT: return "ExportMetalIoSurfaceInfoEXT";
4275       case StructureType::eImportMetalIoSurfaceInfoEXT: return "ImportMetalIoSurfaceInfoEXT";
4276       case StructureType::eExportMetalSharedEventInfoEXT: return "ExportMetalSharedEventInfoEXT";
4277       case StructureType::eImportMetalSharedEventInfoEXT: return "ImportMetalSharedEventInfoEXT";
4278 #endif /*VK_USE_PLATFORM_METAL_EXT*/
4279       case StructureType::eQueueFamilyCheckpointProperties2NV: return "QueueFamilyCheckpointProperties2NV";
4280       case StructureType::eCheckpointData2NV: return "CheckpointData2NV";
4281       case StructureType::ePhysicalDeviceDescriptorBufferPropertiesEXT: return "PhysicalDeviceDescriptorBufferPropertiesEXT";
4282       case StructureType::ePhysicalDeviceDescriptorBufferDensityMapPropertiesEXT: return "PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT";
4283       case StructureType::ePhysicalDeviceDescriptorBufferFeaturesEXT: return "PhysicalDeviceDescriptorBufferFeaturesEXT";
4284       case StructureType::eDescriptorAddressInfoEXT: return "DescriptorAddressInfoEXT";
4285       case StructureType::eDescriptorGetInfoEXT: return "DescriptorGetInfoEXT";
4286       case StructureType::eBufferCaptureDescriptorDataInfoEXT: return "BufferCaptureDescriptorDataInfoEXT";
4287       case StructureType::eImageCaptureDescriptorDataInfoEXT: return "ImageCaptureDescriptorDataInfoEXT";
4288       case StructureType::eImageViewCaptureDescriptorDataInfoEXT: return "ImageViewCaptureDescriptorDataInfoEXT";
4289       case StructureType::eSamplerCaptureDescriptorDataInfoEXT: return "SamplerCaptureDescriptorDataInfoEXT";
4290       case StructureType::eOpaqueCaptureDescriptorDataCreateInfoEXT: return "OpaqueCaptureDescriptorDataCreateInfoEXT";
4291       case StructureType::eDescriptorBufferBindingInfoEXT: return "DescriptorBufferBindingInfoEXT";
4292       case StructureType::eDescriptorBufferBindingPushDescriptorBufferHandleEXT: return "DescriptorBufferBindingPushDescriptorBufferHandleEXT";
4293       case StructureType::eAccelerationStructureCaptureDescriptorDataInfoEXT: return "AccelerationStructureCaptureDescriptorDataInfoEXT";
4294       case StructureType::ePhysicalDeviceGraphicsPipelineLibraryFeaturesEXT: return "PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT";
4295       case StructureType::ePhysicalDeviceGraphicsPipelineLibraryPropertiesEXT: return "PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT";
4296       case StructureType::eGraphicsPipelineLibraryCreateInfoEXT: return "GraphicsPipelineLibraryCreateInfoEXT";
4297       case StructureType::ePhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD: return "PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD";
4298       case StructureType::ePhysicalDeviceFragmentShaderBarycentricFeaturesKHR: return "PhysicalDeviceFragmentShaderBarycentricFeaturesKHR";
4299       case StructureType::ePhysicalDeviceFragmentShaderBarycentricPropertiesKHR: return "PhysicalDeviceFragmentShaderBarycentricPropertiesKHR";
4300       case StructureType::ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR: return "PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR";
4301       case StructureType::ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV: return "PhysicalDeviceFragmentShadingRateEnumsPropertiesNV";
4302       case StructureType::ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV: return "PhysicalDeviceFragmentShadingRateEnumsFeaturesNV";
4303       case StructureType::ePipelineFragmentShadingRateEnumStateCreateInfoNV: return "PipelineFragmentShadingRateEnumStateCreateInfoNV";
4304       case StructureType::eAccelerationStructureGeometryMotionTrianglesDataNV: return "AccelerationStructureGeometryMotionTrianglesDataNV";
4305       case StructureType::ePhysicalDeviceRayTracingMotionBlurFeaturesNV: return "PhysicalDeviceRayTracingMotionBlurFeaturesNV";
4306       case StructureType::eAccelerationStructureMotionInfoNV: return "AccelerationStructureMotionInfoNV";
4307       case StructureType::ePhysicalDeviceMeshShaderFeaturesEXT: return "PhysicalDeviceMeshShaderFeaturesEXT";
4308       case StructureType::ePhysicalDeviceMeshShaderPropertiesEXT: return "PhysicalDeviceMeshShaderPropertiesEXT";
4309       case StructureType::ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT: return "PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT";
4310       case StructureType::ePhysicalDeviceFragmentDensityMap2FeaturesEXT: return "PhysicalDeviceFragmentDensityMap2FeaturesEXT";
4311       case StructureType::ePhysicalDeviceFragmentDensityMap2PropertiesEXT: return "PhysicalDeviceFragmentDensityMap2PropertiesEXT";
4312       case StructureType::eCopyCommandTransformInfoQCOM: return "CopyCommandTransformInfoQCOM";
4313       case StructureType::ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR: return "PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR";
4314       case StructureType::ePhysicalDeviceImageCompressionControlFeaturesEXT: return "PhysicalDeviceImageCompressionControlFeaturesEXT";
4315       case StructureType::eImageCompressionControlEXT: return "ImageCompressionControlEXT";
4316       case StructureType::eImageCompressionPropertiesEXT: return "ImageCompressionPropertiesEXT";
4317       case StructureType::ePhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT: return "PhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT";
4318       case StructureType::ePhysicalDevice4444FormatsFeaturesEXT: return "PhysicalDevice4444FormatsFeaturesEXT";
4319       case StructureType::ePhysicalDeviceFaultFeaturesEXT: return "PhysicalDeviceFaultFeaturesEXT";
4320       case StructureType::eDeviceFaultCountsEXT: return "DeviceFaultCountsEXT";
4321       case StructureType::eDeviceFaultInfoEXT: return "DeviceFaultInfoEXT";
4322       case StructureType::ePhysicalDeviceRgba10X6FormatsFeaturesEXT: return "PhysicalDeviceRgba10X6FormatsFeaturesEXT";
4323 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
4324       case StructureType::eDirectfbSurfaceCreateInfoEXT: return "DirectfbSurfaceCreateInfoEXT";
4325 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
4326       case StructureType::ePhysicalDeviceVertexInputDynamicStateFeaturesEXT: return "PhysicalDeviceVertexInputDynamicStateFeaturesEXT";
4327       case StructureType::eVertexInputBindingDescription2EXT: return "VertexInputBindingDescription2EXT";
4328       case StructureType::eVertexInputAttributeDescription2EXT: return "VertexInputAttributeDescription2EXT";
4329       case StructureType::ePhysicalDeviceDrmPropertiesEXT: return "PhysicalDeviceDrmPropertiesEXT";
4330       case StructureType::ePhysicalDeviceAddressBindingReportFeaturesEXT: return "PhysicalDeviceAddressBindingReportFeaturesEXT";
4331       case StructureType::eDeviceAddressBindingCallbackDataEXT: return "DeviceAddressBindingCallbackDataEXT";
4332       case StructureType::ePhysicalDeviceDepthClipControlFeaturesEXT: return "PhysicalDeviceDepthClipControlFeaturesEXT";
4333       case StructureType::ePipelineViewportDepthClipControlCreateInfoEXT: return "PipelineViewportDepthClipControlCreateInfoEXT";
4334       case StructureType::ePhysicalDevicePrimitiveTopologyListRestartFeaturesEXT: return "PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT";
4335 #if defined( VK_USE_PLATFORM_FUCHSIA )
4336       case StructureType::eImportMemoryZirconHandleInfoFUCHSIA: return "ImportMemoryZirconHandleInfoFUCHSIA";
4337       case StructureType::eMemoryZirconHandlePropertiesFUCHSIA: return "MemoryZirconHandlePropertiesFUCHSIA";
4338       case StructureType::eMemoryGetZirconHandleInfoFUCHSIA: return "MemoryGetZirconHandleInfoFUCHSIA";
4339       case StructureType::eImportSemaphoreZirconHandleInfoFUCHSIA: return "ImportSemaphoreZirconHandleInfoFUCHSIA";
4340       case StructureType::eSemaphoreGetZirconHandleInfoFUCHSIA: return "SemaphoreGetZirconHandleInfoFUCHSIA";
4341       case StructureType::eBufferCollectionCreateInfoFUCHSIA: return "BufferCollectionCreateInfoFUCHSIA";
4342       case StructureType::eImportMemoryBufferCollectionFUCHSIA: return "ImportMemoryBufferCollectionFUCHSIA";
4343       case StructureType::eBufferCollectionImageCreateInfoFUCHSIA: return "BufferCollectionImageCreateInfoFUCHSIA";
4344       case StructureType::eBufferCollectionPropertiesFUCHSIA: return "BufferCollectionPropertiesFUCHSIA";
4345       case StructureType::eBufferConstraintsInfoFUCHSIA: return "BufferConstraintsInfoFUCHSIA";
4346       case StructureType::eBufferCollectionBufferCreateInfoFUCHSIA: return "BufferCollectionBufferCreateInfoFUCHSIA";
4347       case StructureType::eImageConstraintsInfoFUCHSIA: return "ImageConstraintsInfoFUCHSIA";
4348       case StructureType::eImageFormatConstraintsInfoFUCHSIA: return "ImageFormatConstraintsInfoFUCHSIA";
4349       case StructureType::eSysmemColorSpaceFUCHSIA: return "SysmemColorSpaceFUCHSIA";
4350       case StructureType::eBufferCollectionConstraintsInfoFUCHSIA: return "BufferCollectionConstraintsInfoFUCHSIA";
4351 #endif /*VK_USE_PLATFORM_FUCHSIA*/
4352       case StructureType::eSubpassShadingPipelineCreateInfoHUAWEI: return "SubpassShadingPipelineCreateInfoHUAWEI";
4353       case StructureType::ePhysicalDeviceSubpassShadingFeaturesHUAWEI: return "PhysicalDeviceSubpassShadingFeaturesHUAWEI";
4354       case StructureType::ePhysicalDeviceSubpassShadingPropertiesHUAWEI: return "PhysicalDeviceSubpassShadingPropertiesHUAWEI";
4355       case StructureType::ePhysicalDeviceInvocationMaskFeaturesHUAWEI: return "PhysicalDeviceInvocationMaskFeaturesHUAWEI";
4356       case StructureType::eMemoryGetRemoteAddressInfoNV: return "MemoryGetRemoteAddressInfoNV";
4357       case StructureType::ePhysicalDeviceExternalMemoryRdmaFeaturesNV: return "PhysicalDeviceExternalMemoryRdmaFeaturesNV";
4358       case StructureType::ePipelinePropertiesIdentifierEXT: return "PipelinePropertiesIdentifierEXT";
4359       case StructureType::ePhysicalDevicePipelinePropertiesFeaturesEXT: return "PhysicalDevicePipelinePropertiesFeaturesEXT";
4360       case StructureType::ePhysicalDeviceFrameBoundaryFeaturesEXT: return "PhysicalDeviceFrameBoundaryFeaturesEXT";
4361       case StructureType::eFrameBoundaryEXT: return "FrameBoundaryEXT";
4362       case StructureType::ePhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT: return "PhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT";
4363       case StructureType::eSubpassResolvePerformanceQueryEXT: return "SubpassResolvePerformanceQueryEXT";
4364       case StructureType::eMultisampledRenderToSingleSampledInfoEXT: return "MultisampledRenderToSingleSampledInfoEXT";
4365       case StructureType::ePhysicalDeviceExtendedDynamicState2FeaturesEXT: return "PhysicalDeviceExtendedDynamicState2FeaturesEXT";
4366 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
4367       case StructureType::eScreenSurfaceCreateInfoQNX: return "ScreenSurfaceCreateInfoQNX";
4368 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
4369       case StructureType::ePhysicalDeviceColorWriteEnableFeaturesEXT: return "PhysicalDeviceColorWriteEnableFeaturesEXT";
4370       case StructureType::ePipelineColorWriteCreateInfoEXT: return "PipelineColorWriteCreateInfoEXT";
4371       case StructureType::ePhysicalDevicePrimitivesGeneratedQueryFeaturesEXT: return "PhysicalDevicePrimitivesGeneratedQueryFeaturesEXT";
4372       case StructureType::ePhysicalDeviceRayTracingMaintenance1FeaturesKHR: return "PhysicalDeviceRayTracingMaintenance1FeaturesKHR";
4373       case StructureType::ePhysicalDeviceImageViewMinLodFeaturesEXT: return "PhysicalDeviceImageViewMinLodFeaturesEXT";
4374       case StructureType::eImageViewMinLodCreateInfoEXT: return "ImageViewMinLodCreateInfoEXT";
4375       case StructureType::ePhysicalDeviceMultiDrawFeaturesEXT: return "PhysicalDeviceMultiDrawFeaturesEXT";
4376       case StructureType::ePhysicalDeviceMultiDrawPropertiesEXT: return "PhysicalDeviceMultiDrawPropertiesEXT";
4377       case StructureType::ePhysicalDeviceImage2DViewOf3DFeaturesEXT: return "PhysicalDeviceImage2DViewOf3DFeaturesEXT";
4378       case StructureType::ePhysicalDeviceShaderTileImageFeaturesEXT: return "PhysicalDeviceShaderTileImageFeaturesEXT";
4379       case StructureType::ePhysicalDeviceShaderTileImagePropertiesEXT: return "PhysicalDeviceShaderTileImagePropertiesEXT";
4380       case StructureType::eMicromapBuildInfoEXT: return "MicromapBuildInfoEXT";
4381       case StructureType::eMicromapVersionInfoEXT: return "MicromapVersionInfoEXT";
4382       case StructureType::eCopyMicromapInfoEXT: return "CopyMicromapInfoEXT";
4383       case StructureType::eCopyMicromapToMemoryInfoEXT: return "CopyMicromapToMemoryInfoEXT";
4384       case StructureType::eCopyMemoryToMicromapInfoEXT: return "CopyMemoryToMicromapInfoEXT";
4385       case StructureType::ePhysicalDeviceOpacityMicromapFeaturesEXT: return "PhysicalDeviceOpacityMicromapFeaturesEXT";
4386       case StructureType::ePhysicalDeviceOpacityMicromapPropertiesEXT: return "PhysicalDeviceOpacityMicromapPropertiesEXT";
4387       case StructureType::eMicromapCreateInfoEXT: return "MicromapCreateInfoEXT";
4388       case StructureType::eMicromapBuildSizesInfoEXT: return "MicromapBuildSizesInfoEXT";
4389       case StructureType::eAccelerationStructureTrianglesOpacityMicromapEXT: return "AccelerationStructureTrianglesOpacityMicromapEXT";
4390 #if defined( VK_ENABLE_BETA_EXTENSIONS )
4391       case StructureType::ePhysicalDeviceDisplacementMicromapFeaturesNV: return "PhysicalDeviceDisplacementMicromapFeaturesNV";
4392       case StructureType::ePhysicalDeviceDisplacementMicromapPropertiesNV: return "PhysicalDeviceDisplacementMicromapPropertiesNV";
4393       case StructureType::eAccelerationStructureTrianglesDisplacementMicromapNV: return "AccelerationStructureTrianglesDisplacementMicromapNV";
4394 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
4395       case StructureType::ePhysicalDeviceClusterCullingShaderFeaturesHUAWEI: return "PhysicalDeviceClusterCullingShaderFeaturesHUAWEI";
4396       case StructureType::ePhysicalDeviceClusterCullingShaderPropertiesHUAWEI: return "PhysicalDeviceClusterCullingShaderPropertiesHUAWEI";
4397       case StructureType::ePhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI: return "PhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI";
4398       case StructureType::ePhysicalDeviceBorderColorSwizzleFeaturesEXT: return "PhysicalDeviceBorderColorSwizzleFeaturesEXT";
4399       case StructureType::eSamplerBorderColorComponentMappingCreateInfoEXT: return "SamplerBorderColorComponentMappingCreateInfoEXT";
4400       case StructureType::ePhysicalDevicePageableDeviceLocalMemoryFeaturesEXT: return "PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT";
4401       case StructureType::ePhysicalDeviceShaderCorePropertiesARM: return "PhysicalDeviceShaderCorePropertiesARM";
4402       case StructureType::ePhysicalDeviceShaderSubgroupRotateFeaturesKHR: return "PhysicalDeviceShaderSubgroupRotateFeaturesKHR";
4403       case StructureType::eDeviceQueueShaderCoreControlCreateInfoARM: return "DeviceQueueShaderCoreControlCreateInfoARM";
4404       case StructureType::ePhysicalDeviceSchedulingControlsFeaturesARM: return "PhysicalDeviceSchedulingControlsFeaturesARM";
4405       case StructureType::ePhysicalDeviceSchedulingControlsPropertiesARM: return "PhysicalDeviceSchedulingControlsPropertiesARM";
4406       case StructureType::ePhysicalDeviceImageSlicedViewOf3DFeaturesEXT: return "PhysicalDeviceImageSlicedViewOf3DFeaturesEXT";
4407       case StructureType::eImageViewSlicedCreateInfoEXT: return "ImageViewSlicedCreateInfoEXT";
4408       case StructureType::ePhysicalDeviceDescriptorSetHostMappingFeaturesVALVE: return "PhysicalDeviceDescriptorSetHostMappingFeaturesVALVE";
4409       case StructureType::eDescriptorSetBindingReferenceVALVE: return "DescriptorSetBindingReferenceVALVE";
4410       case StructureType::eDescriptorSetLayoutHostMappingInfoVALVE: return "DescriptorSetLayoutHostMappingInfoVALVE";
4411       case StructureType::ePhysicalDeviceDepthClampZeroOneFeaturesEXT: return "PhysicalDeviceDepthClampZeroOneFeaturesEXT";
4412       case StructureType::ePhysicalDeviceNonSeamlessCubeMapFeaturesEXT: return "PhysicalDeviceNonSeamlessCubeMapFeaturesEXT";
4413       case StructureType::ePhysicalDeviceRenderPassStripedFeaturesARM: return "PhysicalDeviceRenderPassStripedFeaturesARM";
4414       case StructureType::ePhysicalDeviceRenderPassStripedPropertiesARM: return "PhysicalDeviceRenderPassStripedPropertiesARM";
4415       case StructureType::eRenderPassStripeBeginInfoARM: return "RenderPassStripeBeginInfoARM";
4416       case StructureType::eRenderPassStripeInfoARM: return "RenderPassStripeInfoARM";
4417       case StructureType::eRenderPassStripeSubmitInfoARM: return "RenderPassStripeSubmitInfoARM";
4418       case StructureType::ePhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM: return "PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM";
4419       case StructureType::ePhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM: return "PhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM";
4420       case StructureType::eSubpassFragmentDensityMapOffsetEndInfoQCOM: return "SubpassFragmentDensityMapOffsetEndInfoQCOM";
4421       case StructureType::ePhysicalDeviceCopyMemoryIndirectFeaturesNV: return "PhysicalDeviceCopyMemoryIndirectFeaturesNV";
4422       case StructureType::ePhysicalDeviceCopyMemoryIndirectPropertiesNV: return "PhysicalDeviceCopyMemoryIndirectPropertiesNV";
4423       case StructureType::ePhysicalDeviceMemoryDecompressionFeaturesNV: return "PhysicalDeviceMemoryDecompressionFeaturesNV";
4424       case StructureType::ePhysicalDeviceMemoryDecompressionPropertiesNV: return "PhysicalDeviceMemoryDecompressionPropertiesNV";
4425       case StructureType::ePhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV: return "PhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV";
4426       case StructureType::eComputePipelineIndirectBufferInfoNV: return "ComputePipelineIndirectBufferInfoNV";
4427       case StructureType::ePipelineIndirectDeviceAddressInfoNV: return "PipelineIndirectDeviceAddressInfoNV";
4428       case StructureType::ePhysicalDeviceLinearColorAttachmentFeaturesNV: return "PhysicalDeviceLinearColorAttachmentFeaturesNV";
4429       case StructureType::ePhysicalDeviceShaderMaximalReconvergenceFeaturesKHR: return "PhysicalDeviceShaderMaximalReconvergenceFeaturesKHR";
4430       case StructureType::ePhysicalDeviceImageCompressionControlSwapchainFeaturesEXT: return "PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT";
4431       case StructureType::ePhysicalDeviceImageProcessingFeaturesQCOM: return "PhysicalDeviceImageProcessingFeaturesQCOM";
4432       case StructureType::ePhysicalDeviceImageProcessingPropertiesQCOM: return "PhysicalDeviceImageProcessingPropertiesQCOM";
4433       case StructureType::eImageViewSampleWeightCreateInfoQCOM: return "ImageViewSampleWeightCreateInfoQCOM";
4434       case StructureType::ePhysicalDeviceNestedCommandBufferFeaturesEXT: return "PhysicalDeviceNestedCommandBufferFeaturesEXT";
4435       case StructureType::ePhysicalDeviceNestedCommandBufferPropertiesEXT: return "PhysicalDeviceNestedCommandBufferPropertiesEXT";
4436       case StructureType::eExternalMemoryAcquireUnmodifiedEXT: return "ExternalMemoryAcquireUnmodifiedEXT";
4437       case StructureType::ePhysicalDeviceExtendedDynamicState3FeaturesEXT: return "PhysicalDeviceExtendedDynamicState3FeaturesEXT";
4438       case StructureType::ePhysicalDeviceExtendedDynamicState3PropertiesEXT: return "PhysicalDeviceExtendedDynamicState3PropertiesEXT";
4439       case StructureType::ePhysicalDeviceSubpassMergeFeedbackFeaturesEXT: return "PhysicalDeviceSubpassMergeFeedbackFeaturesEXT";
4440       case StructureType::eRenderPassCreationControlEXT: return "RenderPassCreationControlEXT";
4441       case StructureType::eRenderPassCreationFeedbackCreateInfoEXT: return "RenderPassCreationFeedbackCreateInfoEXT";
4442       case StructureType::eRenderPassSubpassFeedbackCreateInfoEXT: return "RenderPassSubpassFeedbackCreateInfoEXT";
4443       case StructureType::eDirectDriverLoadingInfoLUNARG: return "DirectDriverLoadingInfoLUNARG";
4444       case StructureType::eDirectDriverLoadingListLUNARG: return "DirectDriverLoadingListLUNARG";
4445       case StructureType::ePhysicalDeviceShaderModuleIdentifierFeaturesEXT: return "PhysicalDeviceShaderModuleIdentifierFeaturesEXT";
4446       case StructureType::ePhysicalDeviceShaderModuleIdentifierPropertiesEXT: return "PhysicalDeviceShaderModuleIdentifierPropertiesEXT";
4447       case StructureType::ePipelineShaderStageModuleIdentifierCreateInfoEXT: return "PipelineShaderStageModuleIdentifierCreateInfoEXT";
4448       case StructureType::eShaderModuleIdentifierEXT: return "ShaderModuleIdentifierEXT";
4449       case StructureType::ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT: return "PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT";
4450       case StructureType::ePhysicalDeviceOpticalFlowFeaturesNV: return "PhysicalDeviceOpticalFlowFeaturesNV";
4451       case StructureType::ePhysicalDeviceOpticalFlowPropertiesNV: return "PhysicalDeviceOpticalFlowPropertiesNV";
4452       case StructureType::eOpticalFlowImageFormatInfoNV: return "OpticalFlowImageFormatInfoNV";
4453       case StructureType::eOpticalFlowImageFormatPropertiesNV: return "OpticalFlowImageFormatPropertiesNV";
4454       case StructureType::eOpticalFlowSessionCreateInfoNV: return "OpticalFlowSessionCreateInfoNV";
4455       case StructureType::eOpticalFlowExecuteInfoNV: return "OpticalFlowExecuteInfoNV";
4456       case StructureType::eOpticalFlowSessionCreatePrivateDataInfoNV: return "OpticalFlowSessionCreatePrivateDataInfoNV";
4457       case StructureType::ePhysicalDeviceLegacyDitheringFeaturesEXT: return "PhysicalDeviceLegacyDitheringFeaturesEXT";
4458       case StructureType::ePhysicalDevicePipelineProtectedAccessFeaturesEXT: return "PhysicalDevicePipelineProtectedAccessFeaturesEXT";
4459 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
4460       case StructureType::ePhysicalDeviceExternalFormatResolveFeaturesANDROID: return "PhysicalDeviceExternalFormatResolveFeaturesANDROID";
4461       case StructureType::ePhysicalDeviceExternalFormatResolvePropertiesANDROID: return "PhysicalDeviceExternalFormatResolvePropertiesANDROID";
4462       case StructureType::eAndroidHardwareBufferFormatResolvePropertiesANDROID: return "AndroidHardwareBufferFormatResolvePropertiesANDROID";
4463 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
4464       case StructureType::ePhysicalDeviceMaintenance5FeaturesKHR: return "PhysicalDeviceMaintenance5FeaturesKHR";
4465       case StructureType::ePhysicalDeviceMaintenance5PropertiesKHR: return "PhysicalDeviceMaintenance5PropertiesKHR";
4466       case StructureType::eRenderingAreaInfoKHR: return "RenderingAreaInfoKHR";
4467       case StructureType::eDeviceImageSubresourceInfoKHR: return "DeviceImageSubresourceInfoKHR";
4468       case StructureType::eSubresourceLayout2KHR: return "SubresourceLayout2KHR";
4469       case StructureType::eImageSubresource2KHR: return "ImageSubresource2KHR";
4470       case StructureType::ePipelineCreateFlags2CreateInfoKHR: return "PipelineCreateFlags2CreateInfoKHR";
4471       case StructureType::eBufferUsageFlags2CreateInfoKHR: return "BufferUsageFlags2CreateInfoKHR";
4472       case StructureType::ePhysicalDeviceRayTracingPositionFetchFeaturesKHR: return "PhysicalDeviceRayTracingPositionFetchFeaturesKHR";
4473       case StructureType::ePhysicalDeviceShaderObjectFeaturesEXT: return "PhysicalDeviceShaderObjectFeaturesEXT";
4474       case StructureType::ePhysicalDeviceShaderObjectPropertiesEXT: return "PhysicalDeviceShaderObjectPropertiesEXT";
4475       case StructureType::eShaderCreateInfoEXT: return "ShaderCreateInfoEXT";
4476       case StructureType::ePhysicalDeviceTilePropertiesFeaturesQCOM: return "PhysicalDeviceTilePropertiesFeaturesQCOM";
4477       case StructureType::eTilePropertiesQCOM: return "TilePropertiesQCOM";
4478       case StructureType::ePhysicalDeviceAmigoProfilingFeaturesSEC: return "PhysicalDeviceAmigoProfilingFeaturesSEC";
4479       case StructureType::eAmigoProfilingSubmitInfoSEC: return "AmigoProfilingSubmitInfoSEC";
4480       case StructureType::ePhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM: return "PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM";
4481       case StructureType::ePhysicalDeviceRayTracingInvocationReorderFeaturesNV: return "PhysicalDeviceRayTracingInvocationReorderFeaturesNV";
4482       case StructureType::ePhysicalDeviceRayTracingInvocationReorderPropertiesNV: return "PhysicalDeviceRayTracingInvocationReorderPropertiesNV";
4483       case StructureType::ePhysicalDeviceExtendedSparseAddressSpaceFeaturesNV: return "PhysicalDeviceExtendedSparseAddressSpaceFeaturesNV";
4484       case StructureType::ePhysicalDeviceExtendedSparseAddressSpacePropertiesNV: return "PhysicalDeviceExtendedSparseAddressSpacePropertiesNV";
4485       case StructureType::ePhysicalDeviceMutableDescriptorTypeFeaturesEXT: return "PhysicalDeviceMutableDescriptorTypeFeaturesEXT";
4486       case StructureType::eMutableDescriptorTypeCreateInfoEXT: return "MutableDescriptorTypeCreateInfoEXT";
4487       case StructureType::ePhysicalDeviceLegacyVertexAttributesFeaturesEXT: return "PhysicalDeviceLegacyVertexAttributesFeaturesEXT";
4488       case StructureType::ePhysicalDeviceLegacyVertexAttributesPropertiesEXT: return "PhysicalDeviceLegacyVertexAttributesPropertiesEXT";
4489       case StructureType::eLayerSettingsCreateInfoEXT: return "LayerSettingsCreateInfoEXT";
4490       case StructureType::ePhysicalDeviceShaderCoreBuiltinsFeaturesARM: return "PhysicalDeviceShaderCoreBuiltinsFeaturesARM";
4491       case StructureType::ePhysicalDeviceShaderCoreBuiltinsPropertiesARM: return "PhysicalDeviceShaderCoreBuiltinsPropertiesARM";
4492       case StructureType::ePhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT: return "PhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT";
4493       case StructureType::ePhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT: return "PhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT";
4494       case StructureType::eLatencySleepModeInfoNV: return "LatencySleepModeInfoNV";
4495       case StructureType::eLatencySleepInfoNV: return "LatencySleepInfoNV";
4496       case StructureType::eSetLatencyMarkerInfoNV: return "SetLatencyMarkerInfoNV";
4497       case StructureType::eGetLatencyMarkerInfoNV: return "GetLatencyMarkerInfoNV";
4498       case StructureType::eLatencyTimingsFrameReportNV: return "LatencyTimingsFrameReportNV";
4499       case StructureType::eLatencySubmissionPresentIdNV: return "LatencySubmissionPresentIdNV";
4500       case StructureType::eOutOfBandQueueTypeInfoNV: return "OutOfBandQueueTypeInfoNV";
4501       case StructureType::eSwapchainLatencyCreateInfoNV: return "SwapchainLatencyCreateInfoNV";
4502       case StructureType::eLatencySurfaceCapabilitiesNV: return "LatencySurfaceCapabilitiesNV";
4503       case StructureType::ePhysicalDeviceCooperativeMatrixFeaturesKHR: return "PhysicalDeviceCooperativeMatrixFeaturesKHR";
4504       case StructureType::eCooperativeMatrixPropertiesKHR: return "CooperativeMatrixPropertiesKHR";
4505       case StructureType::ePhysicalDeviceCooperativeMatrixPropertiesKHR: return "PhysicalDeviceCooperativeMatrixPropertiesKHR";
4506       case StructureType::ePhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM: return "PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM";
4507       case StructureType::eMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM: return "MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM";
4508       case StructureType::eVideoDecodeAv1CapabilitiesKHR: return "VideoDecodeAv1CapabilitiesKHR";
4509       case StructureType::eVideoDecodeAv1PictureInfoKHR: return "VideoDecodeAv1PictureInfoKHR";
4510       case StructureType::eVideoDecodeAv1ProfileInfoKHR: return "VideoDecodeAv1ProfileInfoKHR";
4511       case StructureType::eVideoDecodeAv1SessionParametersCreateInfoKHR: return "VideoDecodeAv1SessionParametersCreateInfoKHR";
4512       case StructureType::eVideoDecodeAv1DpbSlotInfoKHR: return "VideoDecodeAv1DpbSlotInfoKHR";
4513       case StructureType::ePhysicalDeviceVideoMaintenance1FeaturesKHR: return "PhysicalDeviceVideoMaintenance1FeaturesKHR";
4514       case StructureType::eVideoInlineQueryInfoKHR: return "VideoInlineQueryInfoKHR";
4515       case StructureType::ePhysicalDevicePerStageDescriptorSetFeaturesNV: return "PhysicalDevicePerStageDescriptorSetFeaturesNV";
4516       case StructureType::ePhysicalDeviceImageProcessing2FeaturesQCOM: return "PhysicalDeviceImageProcessing2FeaturesQCOM";
4517       case StructureType::ePhysicalDeviceImageProcessing2PropertiesQCOM: return "PhysicalDeviceImageProcessing2PropertiesQCOM";
4518       case StructureType::eSamplerBlockMatchWindowCreateInfoQCOM: return "SamplerBlockMatchWindowCreateInfoQCOM";
4519       case StructureType::eSamplerCubicWeightsCreateInfoQCOM: return "SamplerCubicWeightsCreateInfoQCOM";
4520       case StructureType::ePhysicalDeviceCubicWeightsFeaturesQCOM: return "PhysicalDeviceCubicWeightsFeaturesQCOM";
4521       case StructureType::eBlitImageCubicWeightsInfoQCOM: return "BlitImageCubicWeightsInfoQCOM";
4522       case StructureType::ePhysicalDeviceYcbcrDegammaFeaturesQCOM: return "PhysicalDeviceYcbcrDegammaFeaturesQCOM";
4523       case StructureType::eSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM: return "SamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM";
4524       case StructureType::ePhysicalDeviceCubicClampFeaturesQCOM: return "PhysicalDeviceCubicClampFeaturesQCOM";
4525       case StructureType::ePhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT: return "PhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT";
4526       case StructureType::ePhysicalDeviceVertexAttributeDivisorPropertiesKHR: return "PhysicalDeviceVertexAttributeDivisorPropertiesKHR";
4527       case StructureType::ePipelineVertexInputDivisorStateCreateInfoKHR: return "PipelineVertexInputDivisorStateCreateInfoKHR";
4528       case StructureType::ePhysicalDeviceVertexAttributeDivisorFeaturesKHR: return "PhysicalDeviceVertexAttributeDivisorFeaturesKHR";
4529       case StructureType::ePhysicalDeviceShaderFloatControls2FeaturesKHR: return "PhysicalDeviceShaderFloatControls2FeaturesKHR";
4530 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
4531       case StructureType::eScreenBufferPropertiesQNX: return "ScreenBufferPropertiesQNX";
4532       case StructureType::eScreenBufferFormatPropertiesQNX: return "ScreenBufferFormatPropertiesQNX";
4533       case StructureType::eImportScreenBufferInfoQNX: return "ImportScreenBufferInfoQNX";
4534       case StructureType::eExternalFormatQNX: return "ExternalFormatQNX";
4535       case StructureType::ePhysicalDeviceExternalMemoryScreenBufferFeaturesQNX: return "PhysicalDeviceExternalMemoryScreenBufferFeaturesQNX";
4536 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
4537       case StructureType::ePhysicalDeviceLayeredDriverPropertiesMSFT: return "PhysicalDeviceLayeredDriverPropertiesMSFT";
4538       case StructureType::ePhysicalDeviceIndexTypeUint8FeaturesKHR: return "PhysicalDeviceIndexTypeUint8FeaturesKHR";
4539       case StructureType::ePhysicalDeviceLineRasterizationFeaturesKHR: return "PhysicalDeviceLineRasterizationFeaturesKHR";
4540       case StructureType::ePipelineRasterizationLineStateCreateInfoKHR: return "PipelineRasterizationLineStateCreateInfoKHR";
4541       case StructureType::ePhysicalDeviceLineRasterizationPropertiesKHR: return "PhysicalDeviceLineRasterizationPropertiesKHR";
4542       case StructureType::eCalibratedTimestampInfoKHR: return "CalibratedTimestampInfoKHR";
4543       case StructureType::ePhysicalDeviceShaderExpectAssumeFeaturesKHR: return "PhysicalDeviceShaderExpectAssumeFeaturesKHR";
4544       case StructureType::ePhysicalDeviceMaintenance6FeaturesKHR: return "PhysicalDeviceMaintenance6FeaturesKHR";
4545       case StructureType::ePhysicalDeviceMaintenance6PropertiesKHR: return "PhysicalDeviceMaintenance6PropertiesKHR";
4546       case StructureType::eBindMemoryStatusKHR: return "BindMemoryStatusKHR";
4547       case StructureType::eBindDescriptorSetsInfoKHR: return "BindDescriptorSetsInfoKHR";
4548       case StructureType::ePushConstantsInfoKHR: return "PushConstantsInfoKHR";
4549       case StructureType::ePushDescriptorSetInfoKHR: return "PushDescriptorSetInfoKHR";
4550       case StructureType::ePushDescriptorSetWithTemplateInfoKHR: return "PushDescriptorSetWithTemplateInfoKHR";
4551       case StructureType::eSetDescriptorBufferOffsetsInfoEXT: return "SetDescriptorBufferOffsetsInfoEXT";
4552       case StructureType::eBindDescriptorBufferEmbeddedSamplersInfoEXT: return "BindDescriptorBufferEmbeddedSamplersInfoEXT";
4553       case StructureType::ePhysicalDeviceDescriptorPoolOverallocationFeaturesNV: return "PhysicalDeviceDescriptorPoolOverallocationFeaturesNV";
4554       case StructureType::ePhysicalDeviceRawAccessChainsFeaturesNV: return "PhysicalDeviceRawAccessChainsFeaturesNV";
4555       case StructureType::ePhysicalDeviceShaderAtomicFloat16VectorFeaturesNV: return "PhysicalDeviceShaderAtomicFloat16VectorFeaturesNV";
4556       case StructureType::ePhysicalDeviceShaderReplicatedCompositesFeaturesEXT: return "PhysicalDeviceShaderReplicatedCompositesFeaturesEXT";
4557       case StructureType::ePhysicalDeviceRayTracingValidationFeaturesNV: return "PhysicalDeviceRayTracingValidationFeaturesNV";
4558       case StructureType::ePhysicalDeviceImageAlignmentControlFeaturesMESA: return "PhysicalDeviceImageAlignmentControlFeaturesMESA";
4559       case StructureType::ePhysicalDeviceImageAlignmentControlPropertiesMESA: return "PhysicalDeviceImageAlignmentControlPropertiesMESA";
4560       case StructureType::eImageAlignmentControlCreateInfoMESA: return "ImageAlignmentControlCreateInfoMESA";
4561       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4562     }
4563   }
4564 
to_string(PipelineCacheHeaderVersion value)4565   VULKAN_HPP_INLINE std::string to_string( PipelineCacheHeaderVersion value )
4566   {
4567     switch ( value )
4568     {
4569       case PipelineCacheHeaderVersion::eOne: return "One";
4570       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4571     }
4572   }
4573 
to_string(ObjectType value)4574   VULKAN_HPP_INLINE std::string to_string( ObjectType value )
4575   {
4576     switch ( value )
4577     {
4578       case ObjectType::eUnknown: return "Unknown";
4579       case ObjectType::eInstance: return "Instance";
4580       case ObjectType::ePhysicalDevice: return "PhysicalDevice";
4581       case ObjectType::eDevice: return "Device";
4582       case ObjectType::eQueue: return "Queue";
4583       case ObjectType::eSemaphore: return "Semaphore";
4584       case ObjectType::eCommandBuffer: return "CommandBuffer";
4585       case ObjectType::eFence: return "Fence";
4586       case ObjectType::eDeviceMemory: return "DeviceMemory";
4587       case ObjectType::eBuffer: return "Buffer";
4588       case ObjectType::eImage: return "Image";
4589       case ObjectType::eEvent: return "Event";
4590       case ObjectType::eQueryPool: return "QueryPool";
4591       case ObjectType::eBufferView: return "BufferView";
4592       case ObjectType::eImageView: return "ImageView";
4593       case ObjectType::eShaderModule: return "ShaderModule";
4594       case ObjectType::ePipelineCache: return "PipelineCache";
4595       case ObjectType::ePipelineLayout: return "PipelineLayout";
4596       case ObjectType::eRenderPass: return "RenderPass";
4597       case ObjectType::ePipeline: return "Pipeline";
4598       case ObjectType::eDescriptorSetLayout: return "DescriptorSetLayout";
4599       case ObjectType::eSampler: return "Sampler";
4600       case ObjectType::eDescriptorPool: return "DescriptorPool";
4601       case ObjectType::eDescriptorSet: return "DescriptorSet";
4602       case ObjectType::eFramebuffer: return "Framebuffer";
4603       case ObjectType::eCommandPool: return "CommandPool";
4604       case ObjectType::eSamplerYcbcrConversion: return "SamplerYcbcrConversion";
4605       case ObjectType::eDescriptorUpdateTemplate: return "DescriptorUpdateTemplate";
4606       case ObjectType::ePrivateDataSlot: return "PrivateDataSlot";
4607       case ObjectType::eSurfaceKHR: return "SurfaceKHR";
4608       case ObjectType::eSwapchainKHR: return "SwapchainKHR";
4609       case ObjectType::eDisplayKHR: return "DisplayKHR";
4610       case ObjectType::eDisplayModeKHR: return "DisplayModeKHR";
4611       case ObjectType::eDebugReportCallbackEXT: return "DebugReportCallbackEXT";
4612       case ObjectType::eVideoSessionKHR: return "VideoSessionKHR";
4613       case ObjectType::eVideoSessionParametersKHR: return "VideoSessionParametersKHR";
4614       case ObjectType::eCuModuleNVX: return "CuModuleNVX";
4615       case ObjectType::eCuFunctionNVX: return "CuFunctionNVX";
4616       case ObjectType::eDebugUtilsMessengerEXT: return "DebugUtilsMessengerEXT";
4617       case ObjectType::eAccelerationStructureKHR: return "AccelerationStructureKHR";
4618       case ObjectType::eValidationCacheEXT: return "ValidationCacheEXT";
4619       case ObjectType::eAccelerationStructureNV: return "AccelerationStructureNV";
4620       case ObjectType::ePerformanceConfigurationINTEL: return "PerformanceConfigurationINTEL";
4621       case ObjectType::eDeferredOperationKHR: return "DeferredOperationKHR";
4622       case ObjectType::eIndirectCommandsLayoutNV: return "IndirectCommandsLayoutNV";
4623 #if defined( VK_ENABLE_BETA_EXTENSIONS )
4624       case ObjectType::eCudaModuleNV: return "CudaModuleNV";
4625       case ObjectType::eCudaFunctionNV: return "CudaFunctionNV";
4626 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
4627 #if defined( VK_USE_PLATFORM_FUCHSIA )
4628       case ObjectType::eBufferCollectionFUCHSIA: return "BufferCollectionFUCHSIA";
4629 #endif /*VK_USE_PLATFORM_FUCHSIA*/
4630       case ObjectType::eMicromapEXT: return "MicromapEXT";
4631       case ObjectType::eOpticalFlowSessionNV: return "OpticalFlowSessionNV";
4632       case ObjectType::eShaderEXT: return "ShaderEXT";
4633       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4634     }
4635   }
4636 
to_string(VendorId value)4637   VULKAN_HPP_INLINE std::string to_string( VendorId value )
4638   {
4639     switch ( value )
4640     {
4641       case VendorId::eKhronos: return "Khronos";
4642       case VendorId::eVIV: return "VIV";
4643       case VendorId::eVSI: return "VSI";
4644       case VendorId::eKazan: return "Kazan";
4645       case VendorId::eCodeplay: return "Codeplay";
4646       case VendorId::eMESA: return "MESA";
4647       case VendorId::ePocl: return "Pocl";
4648       case VendorId::eMobileye: return "Mobileye";
4649       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4650     }
4651   }
4652 
to_string(Format value)4653   VULKAN_HPP_INLINE std::string to_string( Format value )
4654   {
4655     switch ( value )
4656     {
4657       case Format::eUndefined: return "Undefined";
4658       case Format::eR4G4UnormPack8: return "R4G4UnormPack8";
4659       case Format::eR4G4B4A4UnormPack16: return "R4G4B4A4UnormPack16";
4660       case Format::eB4G4R4A4UnormPack16: return "B4G4R4A4UnormPack16";
4661       case Format::eR5G6B5UnormPack16: return "R5G6B5UnormPack16";
4662       case Format::eB5G6R5UnormPack16: return "B5G6R5UnormPack16";
4663       case Format::eR5G5B5A1UnormPack16: return "R5G5B5A1UnormPack16";
4664       case Format::eB5G5R5A1UnormPack16: return "B5G5R5A1UnormPack16";
4665       case Format::eA1R5G5B5UnormPack16: return "A1R5G5B5UnormPack16";
4666       case Format::eR8Unorm: return "R8Unorm";
4667       case Format::eR8Snorm: return "R8Snorm";
4668       case Format::eR8Uscaled: return "R8Uscaled";
4669       case Format::eR8Sscaled: return "R8Sscaled";
4670       case Format::eR8Uint: return "R8Uint";
4671       case Format::eR8Sint: return "R8Sint";
4672       case Format::eR8Srgb: return "R8Srgb";
4673       case Format::eR8G8Unorm: return "R8G8Unorm";
4674       case Format::eR8G8Snorm: return "R8G8Snorm";
4675       case Format::eR8G8Uscaled: return "R8G8Uscaled";
4676       case Format::eR8G8Sscaled: return "R8G8Sscaled";
4677       case Format::eR8G8Uint: return "R8G8Uint";
4678       case Format::eR8G8Sint: return "R8G8Sint";
4679       case Format::eR8G8Srgb: return "R8G8Srgb";
4680       case Format::eR8G8B8Unorm: return "R8G8B8Unorm";
4681       case Format::eR8G8B8Snorm: return "R8G8B8Snorm";
4682       case Format::eR8G8B8Uscaled: return "R8G8B8Uscaled";
4683       case Format::eR8G8B8Sscaled: return "R8G8B8Sscaled";
4684       case Format::eR8G8B8Uint: return "R8G8B8Uint";
4685       case Format::eR8G8B8Sint: return "R8G8B8Sint";
4686       case Format::eR8G8B8Srgb: return "R8G8B8Srgb";
4687       case Format::eB8G8R8Unorm: return "B8G8R8Unorm";
4688       case Format::eB8G8R8Snorm: return "B8G8R8Snorm";
4689       case Format::eB8G8R8Uscaled: return "B8G8R8Uscaled";
4690       case Format::eB8G8R8Sscaled: return "B8G8R8Sscaled";
4691       case Format::eB8G8R8Uint: return "B8G8R8Uint";
4692       case Format::eB8G8R8Sint: return "B8G8R8Sint";
4693       case Format::eB8G8R8Srgb: return "B8G8R8Srgb";
4694       case Format::eR8G8B8A8Unorm: return "R8G8B8A8Unorm";
4695       case Format::eR8G8B8A8Snorm: return "R8G8B8A8Snorm";
4696       case Format::eR8G8B8A8Uscaled: return "R8G8B8A8Uscaled";
4697       case Format::eR8G8B8A8Sscaled: return "R8G8B8A8Sscaled";
4698       case Format::eR8G8B8A8Uint: return "R8G8B8A8Uint";
4699       case Format::eR8G8B8A8Sint: return "R8G8B8A8Sint";
4700       case Format::eR8G8B8A8Srgb: return "R8G8B8A8Srgb";
4701       case Format::eB8G8R8A8Unorm: return "B8G8R8A8Unorm";
4702       case Format::eB8G8R8A8Snorm: return "B8G8R8A8Snorm";
4703       case Format::eB8G8R8A8Uscaled: return "B8G8R8A8Uscaled";
4704       case Format::eB8G8R8A8Sscaled: return "B8G8R8A8Sscaled";
4705       case Format::eB8G8R8A8Uint: return "B8G8R8A8Uint";
4706       case Format::eB8G8R8A8Sint: return "B8G8R8A8Sint";
4707       case Format::eB8G8R8A8Srgb: return "B8G8R8A8Srgb";
4708       case Format::eA8B8G8R8UnormPack32: return "A8B8G8R8UnormPack32";
4709       case Format::eA8B8G8R8SnormPack32: return "A8B8G8R8SnormPack32";
4710       case Format::eA8B8G8R8UscaledPack32: return "A8B8G8R8UscaledPack32";
4711       case Format::eA8B8G8R8SscaledPack32: return "A8B8G8R8SscaledPack32";
4712       case Format::eA8B8G8R8UintPack32: return "A8B8G8R8UintPack32";
4713       case Format::eA8B8G8R8SintPack32: return "A8B8G8R8SintPack32";
4714       case Format::eA8B8G8R8SrgbPack32: return "A8B8G8R8SrgbPack32";
4715       case Format::eA2R10G10B10UnormPack32: return "A2R10G10B10UnormPack32";
4716       case Format::eA2R10G10B10SnormPack32: return "A2R10G10B10SnormPack32";
4717       case Format::eA2R10G10B10UscaledPack32: return "A2R10G10B10UscaledPack32";
4718       case Format::eA2R10G10B10SscaledPack32: return "A2R10G10B10SscaledPack32";
4719       case Format::eA2R10G10B10UintPack32: return "A2R10G10B10UintPack32";
4720       case Format::eA2R10G10B10SintPack32: return "A2R10G10B10SintPack32";
4721       case Format::eA2B10G10R10UnormPack32: return "A2B10G10R10UnormPack32";
4722       case Format::eA2B10G10R10SnormPack32: return "A2B10G10R10SnormPack32";
4723       case Format::eA2B10G10R10UscaledPack32: return "A2B10G10R10UscaledPack32";
4724       case Format::eA2B10G10R10SscaledPack32: return "A2B10G10R10SscaledPack32";
4725       case Format::eA2B10G10R10UintPack32: return "A2B10G10R10UintPack32";
4726       case Format::eA2B10G10R10SintPack32: return "A2B10G10R10SintPack32";
4727       case Format::eR16Unorm: return "R16Unorm";
4728       case Format::eR16Snorm: return "R16Snorm";
4729       case Format::eR16Uscaled: return "R16Uscaled";
4730       case Format::eR16Sscaled: return "R16Sscaled";
4731       case Format::eR16Uint: return "R16Uint";
4732       case Format::eR16Sint: return "R16Sint";
4733       case Format::eR16Sfloat: return "R16Sfloat";
4734       case Format::eR16G16Unorm: return "R16G16Unorm";
4735       case Format::eR16G16Snorm: return "R16G16Snorm";
4736       case Format::eR16G16Uscaled: return "R16G16Uscaled";
4737       case Format::eR16G16Sscaled: return "R16G16Sscaled";
4738       case Format::eR16G16Uint: return "R16G16Uint";
4739       case Format::eR16G16Sint: return "R16G16Sint";
4740       case Format::eR16G16Sfloat: return "R16G16Sfloat";
4741       case Format::eR16G16B16Unorm: return "R16G16B16Unorm";
4742       case Format::eR16G16B16Snorm: return "R16G16B16Snorm";
4743       case Format::eR16G16B16Uscaled: return "R16G16B16Uscaled";
4744       case Format::eR16G16B16Sscaled: return "R16G16B16Sscaled";
4745       case Format::eR16G16B16Uint: return "R16G16B16Uint";
4746       case Format::eR16G16B16Sint: return "R16G16B16Sint";
4747       case Format::eR16G16B16Sfloat: return "R16G16B16Sfloat";
4748       case Format::eR16G16B16A16Unorm: return "R16G16B16A16Unorm";
4749       case Format::eR16G16B16A16Snorm: return "R16G16B16A16Snorm";
4750       case Format::eR16G16B16A16Uscaled: return "R16G16B16A16Uscaled";
4751       case Format::eR16G16B16A16Sscaled: return "R16G16B16A16Sscaled";
4752       case Format::eR16G16B16A16Uint: return "R16G16B16A16Uint";
4753       case Format::eR16G16B16A16Sint: return "R16G16B16A16Sint";
4754       case Format::eR16G16B16A16Sfloat: return "R16G16B16A16Sfloat";
4755       case Format::eR32Uint: return "R32Uint";
4756       case Format::eR32Sint: return "R32Sint";
4757       case Format::eR32Sfloat: return "R32Sfloat";
4758       case Format::eR32G32Uint: return "R32G32Uint";
4759       case Format::eR32G32Sint: return "R32G32Sint";
4760       case Format::eR32G32Sfloat: return "R32G32Sfloat";
4761       case Format::eR32G32B32Uint: return "R32G32B32Uint";
4762       case Format::eR32G32B32Sint: return "R32G32B32Sint";
4763       case Format::eR32G32B32Sfloat: return "R32G32B32Sfloat";
4764       case Format::eR32G32B32A32Uint: return "R32G32B32A32Uint";
4765       case Format::eR32G32B32A32Sint: return "R32G32B32A32Sint";
4766       case Format::eR32G32B32A32Sfloat: return "R32G32B32A32Sfloat";
4767       case Format::eR64Uint: return "R64Uint";
4768       case Format::eR64Sint: return "R64Sint";
4769       case Format::eR64Sfloat: return "R64Sfloat";
4770       case Format::eR64G64Uint: return "R64G64Uint";
4771       case Format::eR64G64Sint: return "R64G64Sint";
4772       case Format::eR64G64Sfloat: return "R64G64Sfloat";
4773       case Format::eR64G64B64Uint: return "R64G64B64Uint";
4774       case Format::eR64G64B64Sint: return "R64G64B64Sint";
4775       case Format::eR64G64B64Sfloat: return "R64G64B64Sfloat";
4776       case Format::eR64G64B64A64Uint: return "R64G64B64A64Uint";
4777       case Format::eR64G64B64A64Sint: return "R64G64B64A64Sint";
4778       case Format::eR64G64B64A64Sfloat: return "R64G64B64A64Sfloat";
4779       case Format::eB10G11R11UfloatPack32: return "B10G11R11UfloatPack32";
4780       case Format::eE5B9G9R9UfloatPack32: return "E5B9G9R9UfloatPack32";
4781       case Format::eD16Unorm: return "D16Unorm";
4782       case Format::eX8D24UnormPack32: return "X8D24UnormPack32";
4783       case Format::eD32Sfloat: return "D32Sfloat";
4784       case Format::eS8Uint: return "S8Uint";
4785       case Format::eD16UnormS8Uint: return "D16UnormS8Uint";
4786       case Format::eD24UnormS8Uint: return "D24UnormS8Uint";
4787       case Format::eD32SfloatS8Uint: return "D32SfloatS8Uint";
4788       case Format::eBc1RgbUnormBlock: return "Bc1RgbUnormBlock";
4789       case Format::eBc1RgbSrgbBlock: return "Bc1RgbSrgbBlock";
4790       case Format::eBc1RgbaUnormBlock: return "Bc1RgbaUnormBlock";
4791       case Format::eBc1RgbaSrgbBlock: return "Bc1RgbaSrgbBlock";
4792       case Format::eBc2UnormBlock: return "Bc2UnormBlock";
4793       case Format::eBc2SrgbBlock: return "Bc2SrgbBlock";
4794       case Format::eBc3UnormBlock: return "Bc3UnormBlock";
4795       case Format::eBc3SrgbBlock: return "Bc3SrgbBlock";
4796       case Format::eBc4UnormBlock: return "Bc4UnormBlock";
4797       case Format::eBc4SnormBlock: return "Bc4SnormBlock";
4798       case Format::eBc5UnormBlock: return "Bc5UnormBlock";
4799       case Format::eBc5SnormBlock: return "Bc5SnormBlock";
4800       case Format::eBc6HUfloatBlock: return "Bc6HUfloatBlock";
4801       case Format::eBc6HSfloatBlock: return "Bc6HSfloatBlock";
4802       case Format::eBc7UnormBlock: return "Bc7UnormBlock";
4803       case Format::eBc7SrgbBlock: return "Bc7SrgbBlock";
4804       case Format::eEtc2R8G8B8UnormBlock: return "Etc2R8G8B8UnormBlock";
4805       case Format::eEtc2R8G8B8SrgbBlock: return "Etc2R8G8B8SrgbBlock";
4806       case Format::eEtc2R8G8B8A1UnormBlock: return "Etc2R8G8B8A1UnormBlock";
4807       case Format::eEtc2R8G8B8A1SrgbBlock: return "Etc2R8G8B8A1SrgbBlock";
4808       case Format::eEtc2R8G8B8A8UnormBlock: return "Etc2R8G8B8A8UnormBlock";
4809       case Format::eEtc2R8G8B8A8SrgbBlock: return "Etc2R8G8B8A8SrgbBlock";
4810       case Format::eEacR11UnormBlock: return "EacR11UnormBlock";
4811       case Format::eEacR11SnormBlock: return "EacR11SnormBlock";
4812       case Format::eEacR11G11UnormBlock: return "EacR11G11UnormBlock";
4813       case Format::eEacR11G11SnormBlock: return "EacR11G11SnormBlock";
4814       case Format::eAstc4x4UnormBlock: return "Astc4x4UnormBlock";
4815       case Format::eAstc4x4SrgbBlock: return "Astc4x4SrgbBlock";
4816       case Format::eAstc5x4UnormBlock: return "Astc5x4UnormBlock";
4817       case Format::eAstc5x4SrgbBlock: return "Astc5x4SrgbBlock";
4818       case Format::eAstc5x5UnormBlock: return "Astc5x5UnormBlock";
4819       case Format::eAstc5x5SrgbBlock: return "Astc5x5SrgbBlock";
4820       case Format::eAstc6x5UnormBlock: return "Astc6x5UnormBlock";
4821       case Format::eAstc6x5SrgbBlock: return "Astc6x5SrgbBlock";
4822       case Format::eAstc6x6UnormBlock: return "Astc6x6UnormBlock";
4823       case Format::eAstc6x6SrgbBlock: return "Astc6x6SrgbBlock";
4824       case Format::eAstc8x5UnormBlock: return "Astc8x5UnormBlock";
4825       case Format::eAstc8x5SrgbBlock: return "Astc8x5SrgbBlock";
4826       case Format::eAstc8x6UnormBlock: return "Astc8x6UnormBlock";
4827       case Format::eAstc8x6SrgbBlock: return "Astc8x6SrgbBlock";
4828       case Format::eAstc8x8UnormBlock: return "Astc8x8UnormBlock";
4829       case Format::eAstc8x8SrgbBlock: return "Astc8x8SrgbBlock";
4830       case Format::eAstc10x5UnormBlock: return "Astc10x5UnormBlock";
4831       case Format::eAstc10x5SrgbBlock: return "Astc10x5SrgbBlock";
4832       case Format::eAstc10x6UnormBlock: return "Astc10x6UnormBlock";
4833       case Format::eAstc10x6SrgbBlock: return "Astc10x6SrgbBlock";
4834       case Format::eAstc10x8UnormBlock: return "Astc10x8UnormBlock";
4835       case Format::eAstc10x8SrgbBlock: return "Astc10x8SrgbBlock";
4836       case Format::eAstc10x10UnormBlock: return "Astc10x10UnormBlock";
4837       case Format::eAstc10x10SrgbBlock: return "Astc10x10SrgbBlock";
4838       case Format::eAstc12x10UnormBlock: return "Astc12x10UnormBlock";
4839       case Format::eAstc12x10SrgbBlock: return "Astc12x10SrgbBlock";
4840       case Format::eAstc12x12UnormBlock: return "Astc12x12UnormBlock";
4841       case Format::eAstc12x12SrgbBlock: return "Astc12x12SrgbBlock";
4842       case Format::eG8B8G8R8422Unorm: return "G8B8G8R8422Unorm";
4843       case Format::eB8G8R8G8422Unorm: return "B8G8R8G8422Unorm";
4844       case Format::eG8B8R83Plane420Unorm: return "G8B8R83Plane420Unorm";
4845       case Format::eG8B8R82Plane420Unorm: return "G8B8R82Plane420Unorm";
4846       case Format::eG8B8R83Plane422Unorm: return "G8B8R83Plane422Unorm";
4847       case Format::eG8B8R82Plane422Unorm: return "G8B8R82Plane422Unorm";
4848       case Format::eG8B8R83Plane444Unorm: return "G8B8R83Plane444Unorm";
4849       case Format::eR10X6UnormPack16: return "R10X6UnormPack16";
4850       case Format::eR10X6G10X6Unorm2Pack16: return "R10X6G10X6Unorm2Pack16";
4851       case Format::eR10X6G10X6B10X6A10X6Unorm4Pack16: return "R10X6G10X6B10X6A10X6Unorm4Pack16";
4852       case Format::eG10X6B10X6G10X6R10X6422Unorm4Pack16: return "G10X6B10X6G10X6R10X6422Unorm4Pack16";
4853       case Format::eB10X6G10X6R10X6G10X6422Unorm4Pack16: return "B10X6G10X6R10X6G10X6422Unorm4Pack16";
4854       case Format::eG10X6B10X6R10X63Plane420Unorm3Pack16: return "G10X6B10X6R10X63Plane420Unorm3Pack16";
4855       case Format::eG10X6B10X6R10X62Plane420Unorm3Pack16: return "G10X6B10X6R10X62Plane420Unorm3Pack16";
4856       case Format::eG10X6B10X6R10X63Plane422Unorm3Pack16: return "G10X6B10X6R10X63Plane422Unorm3Pack16";
4857       case Format::eG10X6B10X6R10X62Plane422Unorm3Pack16: return "G10X6B10X6R10X62Plane422Unorm3Pack16";
4858       case Format::eG10X6B10X6R10X63Plane444Unorm3Pack16: return "G10X6B10X6R10X63Plane444Unorm3Pack16";
4859       case Format::eR12X4UnormPack16: return "R12X4UnormPack16";
4860       case Format::eR12X4G12X4Unorm2Pack16: return "R12X4G12X4Unorm2Pack16";
4861       case Format::eR12X4G12X4B12X4A12X4Unorm4Pack16: return "R12X4G12X4B12X4A12X4Unorm4Pack16";
4862       case Format::eG12X4B12X4G12X4R12X4422Unorm4Pack16: return "G12X4B12X4G12X4R12X4422Unorm4Pack16";
4863       case Format::eB12X4G12X4R12X4G12X4422Unorm4Pack16: return "B12X4G12X4R12X4G12X4422Unorm4Pack16";
4864       case Format::eG12X4B12X4R12X43Plane420Unorm3Pack16: return "G12X4B12X4R12X43Plane420Unorm3Pack16";
4865       case Format::eG12X4B12X4R12X42Plane420Unorm3Pack16: return "G12X4B12X4R12X42Plane420Unorm3Pack16";
4866       case Format::eG12X4B12X4R12X43Plane422Unorm3Pack16: return "G12X4B12X4R12X43Plane422Unorm3Pack16";
4867       case Format::eG12X4B12X4R12X42Plane422Unorm3Pack16: return "G12X4B12X4R12X42Plane422Unorm3Pack16";
4868       case Format::eG12X4B12X4R12X43Plane444Unorm3Pack16: return "G12X4B12X4R12X43Plane444Unorm3Pack16";
4869       case Format::eG16B16G16R16422Unorm: return "G16B16G16R16422Unorm";
4870       case Format::eB16G16R16G16422Unorm: return "B16G16R16G16422Unorm";
4871       case Format::eG16B16R163Plane420Unorm: return "G16B16R163Plane420Unorm";
4872       case Format::eG16B16R162Plane420Unorm: return "G16B16R162Plane420Unorm";
4873       case Format::eG16B16R163Plane422Unorm: return "G16B16R163Plane422Unorm";
4874       case Format::eG16B16R162Plane422Unorm: return "G16B16R162Plane422Unorm";
4875       case Format::eG16B16R163Plane444Unorm: return "G16B16R163Plane444Unorm";
4876       case Format::eG8B8R82Plane444Unorm: return "G8B8R82Plane444Unorm";
4877       case Format::eG10X6B10X6R10X62Plane444Unorm3Pack16: return "G10X6B10X6R10X62Plane444Unorm3Pack16";
4878       case Format::eG12X4B12X4R12X42Plane444Unorm3Pack16: return "G12X4B12X4R12X42Plane444Unorm3Pack16";
4879       case Format::eG16B16R162Plane444Unorm: return "G16B16R162Plane444Unorm";
4880       case Format::eA4R4G4B4UnormPack16: return "A4R4G4B4UnormPack16";
4881       case Format::eA4B4G4R4UnormPack16: return "A4B4G4R4UnormPack16";
4882       case Format::eAstc4x4SfloatBlock: return "Astc4x4SfloatBlock";
4883       case Format::eAstc5x4SfloatBlock: return "Astc5x4SfloatBlock";
4884       case Format::eAstc5x5SfloatBlock: return "Astc5x5SfloatBlock";
4885       case Format::eAstc6x5SfloatBlock: return "Astc6x5SfloatBlock";
4886       case Format::eAstc6x6SfloatBlock: return "Astc6x6SfloatBlock";
4887       case Format::eAstc8x5SfloatBlock: return "Astc8x5SfloatBlock";
4888       case Format::eAstc8x6SfloatBlock: return "Astc8x6SfloatBlock";
4889       case Format::eAstc8x8SfloatBlock: return "Astc8x8SfloatBlock";
4890       case Format::eAstc10x5SfloatBlock: return "Astc10x5SfloatBlock";
4891       case Format::eAstc10x6SfloatBlock: return "Astc10x6SfloatBlock";
4892       case Format::eAstc10x8SfloatBlock: return "Astc10x8SfloatBlock";
4893       case Format::eAstc10x10SfloatBlock: return "Astc10x10SfloatBlock";
4894       case Format::eAstc12x10SfloatBlock: return "Astc12x10SfloatBlock";
4895       case Format::eAstc12x12SfloatBlock: return "Astc12x12SfloatBlock";
4896       case Format::ePvrtc12BppUnormBlockIMG: return "Pvrtc12BppUnormBlockIMG";
4897       case Format::ePvrtc14BppUnormBlockIMG: return "Pvrtc14BppUnormBlockIMG";
4898       case Format::ePvrtc22BppUnormBlockIMG: return "Pvrtc22BppUnormBlockIMG";
4899       case Format::ePvrtc24BppUnormBlockIMG: return "Pvrtc24BppUnormBlockIMG";
4900       case Format::ePvrtc12BppSrgbBlockIMG: return "Pvrtc12BppSrgbBlockIMG";
4901       case Format::ePvrtc14BppSrgbBlockIMG: return "Pvrtc14BppSrgbBlockIMG";
4902       case Format::ePvrtc22BppSrgbBlockIMG: return "Pvrtc22BppSrgbBlockIMG";
4903       case Format::ePvrtc24BppSrgbBlockIMG: return "Pvrtc24BppSrgbBlockIMG";
4904       case Format::eR16G16Sfixed5NV: return "R16G16Sfixed5NV";
4905       case Format::eA1B5G5R5UnormPack16KHR: return "A1B5G5R5UnormPack16KHR";
4906       case Format::eA8UnormKHR: return "A8UnormKHR";
4907       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4908     }
4909   }
4910 
to_string(FormatFeatureFlagBits value)4911   VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlagBits value )
4912   {
4913     switch ( value )
4914     {
4915       case FormatFeatureFlagBits::eSampledImage: return "SampledImage";
4916       case FormatFeatureFlagBits::eStorageImage: return "StorageImage";
4917       case FormatFeatureFlagBits::eStorageImageAtomic: return "StorageImageAtomic";
4918       case FormatFeatureFlagBits::eUniformTexelBuffer: return "UniformTexelBuffer";
4919       case FormatFeatureFlagBits::eStorageTexelBuffer: return "StorageTexelBuffer";
4920       case FormatFeatureFlagBits::eStorageTexelBufferAtomic: return "StorageTexelBufferAtomic";
4921       case FormatFeatureFlagBits::eVertexBuffer: return "VertexBuffer";
4922       case FormatFeatureFlagBits::eColorAttachment: return "ColorAttachment";
4923       case FormatFeatureFlagBits::eColorAttachmentBlend: return "ColorAttachmentBlend";
4924       case FormatFeatureFlagBits::eDepthStencilAttachment: return "DepthStencilAttachment";
4925       case FormatFeatureFlagBits::eBlitSrc: return "BlitSrc";
4926       case FormatFeatureFlagBits::eBlitDst: return "BlitDst";
4927       case FormatFeatureFlagBits::eSampledImageFilterLinear: return "SampledImageFilterLinear";
4928       case FormatFeatureFlagBits::eTransferSrc: return "TransferSrc";
4929       case FormatFeatureFlagBits::eTransferDst: return "TransferDst";
4930       case FormatFeatureFlagBits::eMidpointChromaSamples: return "MidpointChromaSamples";
4931       case FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter: return "SampledImageYcbcrConversionLinearFilter";
4932       case FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter: return "SampledImageYcbcrConversionSeparateReconstructionFilter";
4933       case FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit: return "SampledImageYcbcrConversionChromaReconstructionExplicit";
4934       case FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable:
4935         return "SampledImageYcbcrConversionChromaReconstructionExplicitForceable";
4936       case FormatFeatureFlagBits::eDisjoint: return "Disjoint";
4937       case FormatFeatureFlagBits::eCositedChromaSamples: return "CositedChromaSamples";
4938       case FormatFeatureFlagBits::eSampledImageFilterMinmax: return "SampledImageFilterMinmax";
4939       case FormatFeatureFlagBits::eVideoDecodeOutputKHR: return "VideoDecodeOutputKHR";
4940       case FormatFeatureFlagBits::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
4941       case FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR: return "AccelerationStructureVertexBufferKHR";
4942       case FormatFeatureFlagBits::eSampledImageFilterCubicEXT: return "SampledImageFilterCubicEXT";
4943       case FormatFeatureFlagBits::eFragmentDensityMapEXT: return "FragmentDensityMapEXT";
4944       case FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
4945       case FormatFeatureFlagBits::eVideoEncodeInputKHR: return "VideoEncodeInputKHR";
4946       case FormatFeatureFlagBits::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR";
4947       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4948     }
4949   }
4950 
to_string(ImageCreateFlagBits value)4951   VULKAN_HPP_INLINE std::string to_string( ImageCreateFlagBits value )
4952   {
4953     switch ( value )
4954     {
4955       case ImageCreateFlagBits::eSparseBinding: return "SparseBinding";
4956       case ImageCreateFlagBits::eSparseResidency: return "SparseResidency";
4957       case ImageCreateFlagBits::eSparseAliased: return "SparseAliased";
4958       case ImageCreateFlagBits::eMutableFormat: return "MutableFormat";
4959       case ImageCreateFlagBits::eCubeCompatible: return "CubeCompatible";
4960       case ImageCreateFlagBits::eAlias: return "Alias";
4961       case ImageCreateFlagBits::eSplitInstanceBindRegions: return "SplitInstanceBindRegions";
4962       case ImageCreateFlagBits::e2DArrayCompatible: return "2DArrayCompatible";
4963       case ImageCreateFlagBits::eBlockTexelViewCompatible: return "BlockTexelViewCompatible";
4964       case ImageCreateFlagBits::eExtendedUsage: return "ExtendedUsage";
4965       case ImageCreateFlagBits::eProtected: return "Protected";
4966       case ImageCreateFlagBits::eDisjoint: return "Disjoint";
4967       case ImageCreateFlagBits::eCornerSampledNV: return "CornerSampledNV";
4968       case ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT: return "SampleLocationsCompatibleDepthEXT";
4969       case ImageCreateFlagBits::eSubsampledEXT: return "SubsampledEXT";
4970       case ImageCreateFlagBits::eDescriptorBufferCaptureReplayEXT: return "DescriptorBufferCaptureReplayEXT";
4971       case ImageCreateFlagBits::eMultisampledRenderToSingleSampledEXT: return "MultisampledRenderToSingleSampledEXT";
4972       case ImageCreateFlagBits::e2DViewCompatibleEXT: return "2DViewCompatibleEXT";
4973       case ImageCreateFlagBits::eFragmentDensityMapOffsetQCOM: return "FragmentDensityMapOffsetQCOM";
4974       case ImageCreateFlagBits::eVideoProfileIndependentKHR: return "VideoProfileIndependentKHR";
4975       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4976     }
4977   }
4978 
to_string(ImageTiling value)4979   VULKAN_HPP_INLINE std::string to_string( ImageTiling value )
4980   {
4981     switch ( value )
4982     {
4983       case ImageTiling::eOptimal: return "Optimal";
4984       case ImageTiling::eLinear: return "Linear";
4985       case ImageTiling::eDrmFormatModifierEXT: return "DrmFormatModifierEXT";
4986       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4987     }
4988   }
4989 
to_string(ImageType value)4990   VULKAN_HPP_INLINE std::string to_string( ImageType value )
4991   {
4992     switch ( value )
4993     {
4994       case ImageType::e1D: return "1D";
4995       case ImageType::e2D: return "2D";
4996       case ImageType::e3D: return "3D";
4997       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
4998     }
4999   }
5000 
to_string(ImageUsageFlagBits value)5001   VULKAN_HPP_INLINE std::string to_string( ImageUsageFlagBits value )
5002   {
5003     switch ( value )
5004     {
5005       case ImageUsageFlagBits::eTransferSrc: return "TransferSrc";
5006       case ImageUsageFlagBits::eTransferDst: return "TransferDst";
5007       case ImageUsageFlagBits::eSampled: return "Sampled";
5008       case ImageUsageFlagBits::eStorage: return "Storage";
5009       case ImageUsageFlagBits::eColorAttachment: return "ColorAttachment";
5010       case ImageUsageFlagBits::eDepthStencilAttachment: return "DepthStencilAttachment";
5011       case ImageUsageFlagBits::eTransientAttachment: return "TransientAttachment";
5012       case ImageUsageFlagBits::eInputAttachment: return "InputAttachment";
5013       case ImageUsageFlagBits::eVideoDecodeDstKHR: return "VideoDecodeDstKHR";
5014       case ImageUsageFlagBits::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
5015       case ImageUsageFlagBits::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
5016       case ImageUsageFlagBits::eFragmentDensityMapEXT: return "FragmentDensityMapEXT";
5017       case ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
5018       case ImageUsageFlagBits::eHostTransferEXT: return "HostTransferEXT";
5019       case ImageUsageFlagBits::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
5020       case ImageUsageFlagBits::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
5021       case ImageUsageFlagBits::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR";
5022       case ImageUsageFlagBits::eAttachmentFeedbackLoopEXT: return "AttachmentFeedbackLoopEXT";
5023       case ImageUsageFlagBits::eInvocationMaskHUAWEI: return "InvocationMaskHUAWEI";
5024       case ImageUsageFlagBits::eSampleWeightQCOM: return "SampleWeightQCOM";
5025       case ImageUsageFlagBits::eSampleBlockMatchQCOM: return "SampleBlockMatchQCOM";
5026       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5027     }
5028   }
5029 
to_string(InstanceCreateFlagBits value)5030   VULKAN_HPP_INLINE std::string to_string( InstanceCreateFlagBits value )
5031   {
5032     switch ( value )
5033     {
5034       case InstanceCreateFlagBits::eEnumeratePortabilityKHR: return "EnumeratePortabilityKHR";
5035       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5036     }
5037   }
5038 
to_string(InternalAllocationType value)5039   VULKAN_HPP_INLINE std::string to_string( InternalAllocationType value )
5040   {
5041     switch ( value )
5042     {
5043       case InternalAllocationType::eExecutable: return "Executable";
5044       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5045     }
5046   }
5047 
to_string(MemoryHeapFlagBits value)5048   VULKAN_HPP_INLINE std::string to_string( MemoryHeapFlagBits value )
5049   {
5050     switch ( value )
5051     {
5052       case MemoryHeapFlagBits::eDeviceLocal: return "DeviceLocal";
5053       case MemoryHeapFlagBits::eMultiInstance: return "MultiInstance";
5054       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5055     }
5056   }
5057 
to_string(MemoryPropertyFlagBits value)5058   VULKAN_HPP_INLINE std::string to_string( MemoryPropertyFlagBits value )
5059   {
5060     switch ( value )
5061     {
5062       case MemoryPropertyFlagBits::eDeviceLocal: return "DeviceLocal";
5063       case MemoryPropertyFlagBits::eHostVisible: return "HostVisible";
5064       case MemoryPropertyFlagBits::eHostCoherent: return "HostCoherent";
5065       case MemoryPropertyFlagBits::eHostCached: return "HostCached";
5066       case MemoryPropertyFlagBits::eLazilyAllocated: return "LazilyAllocated";
5067       case MemoryPropertyFlagBits::eProtected: return "Protected";
5068       case MemoryPropertyFlagBits::eDeviceCoherentAMD: return "DeviceCoherentAMD";
5069       case MemoryPropertyFlagBits::eDeviceUncachedAMD: return "DeviceUncachedAMD";
5070       case MemoryPropertyFlagBits::eRdmaCapableNV: return "RdmaCapableNV";
5071       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5072     }
5073   }
5074 
to_string(PhysicalDeviceType value)5075   VULKAN_HPP_INLINE std::string to_string( PhysicalDeviceType value )
5076   {
5077     switch ( value )
5078     {
5079       case PhysicalDeviceType::eOther: return "Other";
5080       case PhysicalDeviceType::eIntegratedGpu: return "IntegratedGpu";
5081       case PhysicalDeviceType::eDiscreteGpu: return "DiscreteGpu";
5082       case PhysicalDeviceType::eVirtualGpu: return "VirtualGpu";
5083       case PhysicalDeviceType::eCpu: return "Cpu";
5084       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5085     }
5086   }
5087 
to_string(QueueFlagBits value)5088   VULKAN_HPP_INLINE std::string to_string( QueueFlagBits value )
5089   {
5090     switch ( value )
5091     {
5092       case QueueFlagBits::eGraphics: return "Graphics";
5093       case QueueFlagBits::eCompute: return "Compute";
5094       case QueueFlagBits::eTransfer: return "Transfer";
5095       case QueueFlagBits::eSparseBinding: return "SparseBinding";
5096       case QueueFlagBits::eProtected: return "Protected";
5097       case QueueFlagBits::eVideoDecodeKHR: return "VideoDecodeKHR";
5098       case QueueFlagBits::eVideoEncodeKHR: return "VideoEncodeKHR";
5099       case QueueFlagBits::eOpticalFlowNV: return "OpticalFlowNV";
5100       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5101     }
5102   }
5103 
to_string(SampleCountFlagBits value)5104   VULKAN_HPP_INLINE std::string to_string( SampleCountFlagBits value )
5105   {
5106     switch ( value )
5107     {
5108       case SampleCountFlagBits::e1: return "1";
5109       case SampleCountFlagBits::e2: return "2";
5110       case SampleCountFlagBits::e4: return "4";
5111       case SampleCountFlagBits::e8: return "8";
5112       case SampleCountFlagBits::e16: return "16";
5113       case SampleCountFlagBits::e32: return "32";
5114       case SampleCountFlagBits::e64: return "64";
5115       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5116     }
5117   }
5118 
to_string(SystemAllocationScope value)5119   VULKAN_HPP_INLINE std::string to_string( SystemAllocationScope value )
5120   {
5121     switch ( value )
5122     {
5123       case SystemAllocationScope::eCommand: return "Command";
5124       case SystemAllocationScope::eObject: return "Object";
5125       case SystemAllocationScope::eCache: return "Cache";
5126       case SystemAllocationScope::eDevice: return "Device";
5127       case SystemAllocationScope::eInstance: return "Instance";
5128       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5129     }
5130   }
5131 
to_string(DeviceCreateFlagBits)5132   VULKAN_HPP_INLINE std::string to_string( DeviceCreateFlagBits )
5133   {
5134     return "(void)";
5135   }
5136 
to_string(DeviceQueueCreateFlagBits value)5137   VULKAN_HPP_INLINE std::string to_string( DeviceQueueCreateFlagBits value )
5138   {
5139     switch ( value )
5140     {
5141       case DeviceQueueCreateFlagBits::eProtected: return "Protected";
5142       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5143     }
5144   }
5145 
to_string(PipelineStageFlagBits value)5146   VULKAN_HPP_INLINE std::string to_string( PipelineStageFlagBits value )
5147   {
5148     switch ( value )
5149     {
5150       case PipelineStageFlagBits::eTopOfPipe: return "TopOfPipe";
5151       case PipelineStageFlagBits::eDrawIndirect: return "DrawIndirect";
5152       case PipelineStageFlagBits::eVertexInput: return "VertexInput";
5153       case PipelineStageFlagBits::eVertexShader: return "VertexShader";
5154       case PipelineStageFlagBits::eTessellationControlShader: return "TessellationControlShader";
5155       case PipelineStageFlagBits::eTessellationEvaluationShader: return "TessellationEvaluationShader";
5156       case PipelineStageFlagBits::eGeometryShader: return "GeometryShader";
5157       case PipelineStageFlagBits::eFragmentShader: return "FragmentShader";
5158       case PipelineStageFlagBits::eEarlyFragmentTests: return "EarlyFragmentTests";
5159       case PipelineStageFlagBits::eLateFragmentTests: return "LateFragmentTests";
5160       case PipelineStageFlagBits::eColorAttachmentOutput: return "ColorAttachmentOutput";
5161       case PipelineStageFlagBits::eComputeShader: return "ComputeShader";
5162       case PipelineStageFlagBits::eTransfer: return "Transfer";
5163       case PipelineStageFlagBits::eBottomOfPipe: return "BottomOfPipe";
5164       case PipelineStageFlagBits::eHost: return "Host";
5165       case PipelineStageFlagBits::eAllGraphics: return "AllGraphics";
5166       case PipelineStageFlagBits::eAllCommands: return "AllCommands";
5167       case PipelineStageFlagBits::eNone: return "None";
5168       case PipelineStageFlagBits::eTransformFeedbackEXT: return "TransformFeedbackEXT";
5169       case PipelineStageFlagBits::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
5170       case PipelineStageFlagBits::eAccelerationStructureBuildKHR: return "AccelerationStructureBuildKHR";
5171       case PipelineStageFlagBits::eRayTracingShaderKHR: return "RayTracingShaderKHR";
5172       case PipelineStageFlagBits::eFragmentDensityProcessEXT: return "FragmentDensityProcessEXT";
5173       case PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
5174       case PipelineStageFlagBits::eCommandPreprocessNV: return "CommandPreprocessNV";
5175       case PipelineStageFlagBits::eTaskShaderEXT: return "TaskShaderEXT";
5176       case PipelineStageFlagBits::eMeshShaderEXT: return "MeshShaderEXT";
5177       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5178     }
5179   }
5180 
to_string(MemoryMapFlagBits value)5181   VULKAN_HPP_INLINE std::string to_string( MemoryMapFlagBits value )
5182   {
5183     switch ( value )
5184     {
5185       case MemoryMapFlagBits::ePlacedEXT: return "PlacedEXT";
5186       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5187     }
5188   }
5189 
to_string(ImageAspectFlagBits value)5190   VULKAN_HPP_INLINE std::string to_string( ImageAspectFlagBits value )
5191   {
5192     switch ( value )
5193     {
5194       case ImageAspectFlagBits::eColor: return "Color";
5195       case ImageAspectFlagBits::eDepth: return "Depth";
5196       case ImageAspectFlagBits::eStencil: return "Stencil";
5197       case ImageAspectFlagBits::eMetadata: return "Metadata";
5198       case ImageAspectFlagBits::ePlane0: return "Plane0";
5199       case ImageAspectFlagBits::ePlane1: return "Plane1";
5200       case ImageAspectFlagBits::ePlane2: return "Plane2";
5201       case ImageAspectFlagBits::eNone: return "None";
5202       case ImageAspectFlagBits::eMemoryPlane0EXT: return "MemoryPlane0EXT";
5203       case ImageAspectFlagBits::eMemoryPlane1EXT: return "MemoryPlane1EXT";
5204       case ImageAspectFlagBits::eMemoryPlane2EXT: return "MemoryPlane2EXT";
5205       case ImageAspectFlagBits::eMemoryPlane3EXT: return "MemoryPlane3EXT";
5206       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5207     }
5208   }
5209 
to_string(SparseImageFormatFlagBits value)5210   VULKAN_HPP_INLINE std::string to_string( SparseImageFormatFlagBits value )
5211   {
5212     switch ( value )
5213     {
5214       case SparseImageFormatFlagBits::eSingleMiptail: return "SingleMiptail";
5215       case SparseImageFormatFlagBits::eAlignedMipSize: return "AlignedMipSize";
5216       case SparseImageFormatFlagBits::eNonstandardBlockSize: return "NonstandardBlockSize";
5217       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5218     }
5219   }
5220 
to_string(SparseMemoryBindFlagBits value)5221   VULKAN_HPP_INLINE std::string to_string( SparseMemoryBindFlagBits value )
5222   {
5223     switch ( value )
5224     {
5225       case SparseMemoryBindFlagBits::eMetadata: return "Metadata";
5226       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5227     }
5228   }
5229 
to_string(FenceCreateFlagBits value)5230   VULKAN_HPP_INLINE std::string to_string( FenceCreateFlagBits value )
5231   {
5232     switch ( value )
5233     {
5234       case FenceCreateFlagBits::eSignaled: return "Signaled";
5235       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5236     }
5237   }
5238 
to_string(SemaphoreCreateFlagBits)5239   VULKAN_HPP_INLINE std::string to_string( SemaphoreCreateFlagBits )
5240   {
5241     return "(void)";
5242   }
5243 
to_string(EventCreateFlagBits value)5244   VULKAN_HPP_INLINE std::string to_string( EventCreateFlagBits value )
5245   {
5246     switch ( value )
5247     {
5248       case EventCreateFlagBits::eDeviceOnly: return "DeviceOnly";
5249       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5250     }
5251   }
5252 
to_string(QueryPipelineStatisticFlagBits value)5253   VULKAN_HPP_INLINE std::string to_string( QueryPipelineStatisticFlagBits value )
5254   {
5255     switch ( value )
5256     {
5257       case QueryPipelineStatisticFlagBits::eInputAssemblyVertices: return "InputAssemblyVertices";
5258       case QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives: return "InputAssemblyPrimitives";
5259       case QueryPipelineStatisticFlagBits::eVertexShaderInvocations: return "VertexShaderInvocations";
5260       case QueryPipelineStatisticFlagBits::eGeometryShaderInvocations: return "GeometryShaderInvocations";
5261       case QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives: return "GeometryShaderPrimitives";
5262       case QueryPipelineStatisticFlagBits::eClippingInvocations: return "ClippingInvocations";
5263       case QueryPipelineStatisticFlagBits::eClippingPrimitives: return "ClippingPrimitives";
5264       case QueryPipelineStatisticFlagBits::eFragmentShaderInvocations: return "FragmentShaderInvocations";
5265       case QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches: return "TessellationControlShaderPatches";
5266       case QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations: return "TessellationEvaluationShaderInvocations";
5267       case QueryPipelineStatisticFlagBits::eComputeShaderInvocations: return "ComputeShaderInvocations";
5268       case QueryPipelineStatisticFlagBits::eTaskShaderInvocationsEXT: return "TaskShaderInvocationsEXT";
5269       case QueryPipelineStatisticFlagBits::eMeshShaderInvocationsEXT: return "MeshShaderInvocationsEXT";
5270       case QueryPipelineStatisticFlagBits::eClusterCullingShaderInvocationsHUAWEI: return "ClusterCullingShaderInvocationsHUAWEI";
5271       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5272     }
5273   }
5274 
to_string(QueryResultFlagBits value)5275   VULKAN_HPP_INLINE std::string to_string( QueryResultFlagBits value )
5276   {
5277     switch ( value )
5278     {
5279       case QueryResultFlagBits::e64: return "64";
5280       case QueryResultFlagBits::eWait: return "Wait";
5281       case QueryResultFlagBits::eWithAvailability: return "WithAvailability";
5282       case QueryResultFlagBits::ePartial: return "Partial";
5283       case QueryResultFlagBits::eWithStatusKHR: return "WithStatusKHR";
5284       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5285     }
5286   }
5287 
to_string(QueryType value)5288   VULKAN_HPP_INLINE std::string to_string( QueryType value )
5289   {
5290     switch ( value )
5291     {
5292       case QueryType::eOcclusion: return "Occlusion";
5293       case QueryType::ePipelineStatistics: return "PipelineStatistics";
5294       case QueryType::eTimestamp: return "Timestamp";
5295       case QueryType::eResultStatusOnlyKHR: return "ResultStatusOnlyKHR";
5296       case QueryType::eTransformFeedbackStreamEXT: return "TransformFeedbackStreamEXT";
5297       case QueryType::ePerformanceQueryKHR: return "PerformanceQueryKHR";
5298       case QueryType::eAccelerationStructureCompactedSizeKHR: return "AccelerationStructureCompactedSizeKHR";
5299       case QueryType::eAccelerationStructureSerializationSizeKHR: return "AccelerationStructureSerializationSizeKHR";
5300       case QueryType::eAccelerationStructureCompactedSizeNV: return "AccelerationStructureCompactedSizeNV";
5301       case QueryType::ePerformanceQueryINTEL: return "PerformanceQueryINTEL";
5302       case QueryType::eVideoEncodeFeedbackKHR: return "VideoEncodeFeedbackKHR";
5303       case QueryType::eMeshPrimitivesGeneratedEXT: return "MeshPrimitivesGeneratedEXT";
5304       case QueryType::ePrimitivesGeneratedEXT: return "PrimitivesGeneratedEXT";
5305       case QueryType::eAccelerationStructureSerializationBottomLevelPointersKHR: return "AccelerationStructureSerializationBottomLevelPointersKHR";
5306       case QueryType::eAccelerationStructureSizeKHR: return "AccelerationStructureSizeKHR";
5307       case QueryType::eMicromapSerializationSizeEXT: return "MicromapSerializationSizeEXT";
5308       case QueryType::eMicromapCompactedSizeEXT: return "MicromapCompactedSizeEXT";
5309       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5310     }
5311   }
5312 
to_string(QueryPoolCreateFlagBits)5313   VULKAN_HPP_INLINE std::string to_string( QueryPoolCreateFlagBits )
5314   {
5315     return "(void)";
5316   }
5317 
to_string(BufferCreateFlagBits value)5318   VULKAN_HPP_INLINE std::string to_string( BufferCreateFlagBits value )
5319   {
5320     switch ( value )
5321     {
5322       case BufferCreateFlagBits::eSparseBinding: return "SparseBinding";
5323       case BufferCreateFlagBits::eSparseResidency: return "SparseResidency";
5324       case BufferCreateFlagBits::eSparseAliased: return "SparseAliased";
5325       case BufferCreateFlagBits::eProtected: return "Protected";
5326       case BufferCreateFlagBits::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay";
5327       case BufferCreateFlagBits::eDescriptorBufferCaptureReplayEXT: return "DescriptorBufferCaptureReplayEXT";
5328       case BufferCreateFlagBits::eVideoProfileIndependentKHR: return "VideoProfileIndependentKHR";
5329       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5330     }
5331   }
5332 
to_string(BufferUsageFlagBits value)5333   VULKAN_HPP_INLINE std::string to_string( BufferUsageFlagBits value )
5334   {
5335     switch ( value )
5336     {
5337       case BufferUsageFlagBits::eTransferSrc: return "TransferSrc";
5338       case BufferUsageFlagBits::eTransferDst: return "TransferDst";
5339       case BufferUsageFlagBits::eUniformTexelBuffer: return "UniformTexelBuffer";
5340       case BufferUsageFlagBits::eStorageTexelBuffer: return "StorageTexelBuffer";
5341       case BufferUsageFlagBits::eUniformBuffer: return "UniformBuffer";
5342       case BufferUsageFlagBits::eStorageBuffer: return "StorageBuffer";
5343       case BufferUsageFlagBits::eIndexBuffer: return "IndexBuffer";
5344       case BufferUsageFlagBits::eVertexBuffer: return "VertexBuffer";
5345       case BufferUsageFlagBits::eIndirectBuffer: return "IndirectBuffer";
5346       case BufferUsageFlagBits::eShaderDeviceAddress: return "ShaderDeviceAddress";
5347       case BufferUsageFlagBits::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
5348       case BufferUsageFlagBits::eVideoDecodeDstKHR: return "VideoDecodeDstKHR";
5349       case BufferUsageFlagBits::eTransformFeedbackBufferEXT: return "TransformFeedbackBufferEXT";
5350       case BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT: return "TransformFeedbackCounterBufferEXT";
5351       case BufferUsageFlagBits::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
5352 #if defined( VK_ENABLE_BETA_EXTENSIONS )
5353       case BufferUsageFlagBits::eExecutionGraphScratchAMDX: return "ExecutionGraphScratchAMDX";
5354 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
5355       case BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR: return "AccelerationStructureBuildInputReadOnlyKHR";
5356       case BufferUsageFlagBits::eAccelerationStructureStorageKHR: return "AccelerationStructureStorageKHR";
5357       case BufferUsageFlagBits::eShaderBindingTableKHR: return "ShaderBindingTableKHR";
5358       case BufferUsageFlagBits::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
5359       case BufferUsageFlagBits::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
5360       case BufferUsageFlagBits::eSamplerDescriptorBufferEXT: return "SamplerDescriptorBufferEXT";
5361       case BufferUsageFlagBits::eResourceDescriptorBufferEXT: return "ResourceDescriptorBufferEXT";
5362       case BufferUsageFlagBits::ePushDescriptorsDescriptorBufferEXT: return "PushDescriptorsDescriptorBufferEXT";
5363       case BufferUsageFlagBits::eMicromapBuildInputReadOnlyEXT: return "MicromapBuildInputReadOnlyEXT";
5364       case BufferUsageFlagBits::eMicromapStorageEXT: return "MicromapStorageEXT";
5365       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5366     }
5367   }
5368 
to_string(SharingMode value)5369   VULKAN_HPP_INLINE std::string to_string( SharingMode value )
5370   {
5371     switch ( value )
5372     {
5373       case SharingMode::eExclusive: return "Exclusive";
5374       case SharingMode::eConcurrent: return "Concurrent";
5375       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5376     }
5377   }
5378 
to_string(BufferViewCreateFlagBits)5379   VULKAN_HPP_INLINE std::string to_string( BufferViewCreateFlagBits )
5380   {
5381     return "(void)";
5382   }
5383 
to_string(ImageLayout value)5384   VULKAN_HPP_INLINE std::string to_string( ImageLayout value )
5385   {
5386     switch ( value )
5387     {
5388       case ImageLayout::eUndefined: return "Undefined";
5389       case ImageLayout::eGeneral: return "General";
5390       case ImageLayout::eColorAttachmentOptimal: return "ColorAttachmentOptimal";
5391       case ImageLayout::eDepthStencilAttachmentOptimal: return "DepthStencilAttachmentOptimal";
5392       case ImageLayout::eDepthStencilReadOnlyOptimal: return "DepthStencilReadOnlyOptimal";
5393       case ImageLayout::eShaderReadOnlyOptimal: return "ShaderReadOnlyOptimal";
5394       case ImageLayout::eTransferSrcOptimal: return "TransferSrcOptimal";
5395       case ImageLayout::eTransferDstOptimal: return "TransferDstOptimal";
5396       case ImageLayout::ePreinitialized: return "Preinitialized";
5397       case ImageLayout::eDepthReadOnlyStencilAttachmentOptimal: return "DepthReadOnlyStencilAttachmentOptimal";
5398       case ImageLayout::eDepthAttachmentStencilReadOnlyOptimal: return "DepthAttachmentStencilReadOnlyOptimal";
5399       case ImageLayout::eDepthAttachmentOptimal: return "DepthAttachmentOptimal";
5400       case ImageLayout::eDepthReadOnlyOptimal: return "DepthReadOnlyOptimal";
5401       case ImageLayout::eStencilAttachmentOptimal: return "StencilAttachmentOptimal";
5402       case ImageLayout::eStencilReadOnlyOptimal: return "StencilReadOnlyOptimal";
5403       case ImageLayout::eReadOnlyOptimal: return "ReadOnlyOptimal";
5404       case ImageLayout::eAttachmentOptimal: return "AttachmentOptimal";
5405       case ImageLayout::ePresentSrcKHR: return "PresentSrcKHR";
5406       case ImageLayout::eVideoDecodeDstKHR: return "VideoDecodeDstKHR";
5407       case ImageLayout::eVideoDecodeSrcKHR: return "VideoDecodeSrcKHR";
5408       case ImageLayout::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
5409       case ImageLayout::eSharedPresentKHR: return "SharedPresentKHR";
5410       case ImageLayout::eFragmentDensityMapOptimalEXT: return "FragmentDensityMapOptimalEXT";
5411       case ImageLayout::eFragmentShadingRateAttachmentOptimalKHR: return "FragmentShadingRateAttachmentOptimalKHR";
5412       case ImageLayout::eRenderingLocalReadKHR: return "RenderingLocalReadKHR";
5413       case ImageLayout::eVideoEncodeDstKHR: return "VideoEncodeDstKHR";
5414       case ImageLayout::eVideoEncodeSrcKHR: return "VideoEncodeSrcKHR";
5415       case ImageLayout::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR";
5416       case ImageLayout::eAttachmentFeedbackLoopOptimalEXT: return "AttachmentFeedbackLoopOptimalEXT";
5417       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5418     }
5419   }
5420 
to_string(ComponentSwizzle value)5421   VULKAN_HPP_INLINE std::string to_string( ComponentSwizzle value )
5422   {
5423     switch ( value )
5424     {
5425       case ComponentSwizzle::eIdentity: return "Identity";
5426       case ComponentSwizzle::eZero: return "Zero";
5427       case ComponentSwizzle::eOne: return "One";
5428       case ComponentSwizzle::eR: return "R";
5429       case ComponentSwizzle::eG: return "G";
5430       case ComponentSwizzle::eB: return "B";
5431       case ComponentSwizzle::eA: return "A";
5432       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5433     }
5434   }
5435 
to_string(ImageViewCreateFlagBits value)5436   VULKAN_HPP_INLINE std::string to_string( ImageViewCreateFlagBits value )
5437   {
5438     switch ( value )
5439     {
5440       case ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT: return "FragmentDensityMapDynamicEXT";
5441       case ImageViewCreateFlagBits::eDescriptorBufferCaptureReplayEXT: return "DescriptorBufferCaptureReplayEXT";
5442       case ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT: return "FragmentDensityMapDeferredEXT";
5443       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5444     }
5445   }
5446 
to_string(ImageViewType value)5447   VULKAN_HPP_INLINE std::string to_string( ImageViewType value )
5448   {
5449     switch ( value )
5450     {
5451       case ImageViewType::e1D: return "1D";
5452       case ImageViewType::e2D: return "2D";
5453       case ImageViewType::e3D: return "3D";
5454       case ImageViewType::eCube: return "Cube";
5455       case ImageViewType::e1DArray: return "1DArray";
5456       case ImageViewType::e2DArray: return "2DArray";
5457       case ImageViewType::eCubeArray: return "CubeArray";
5458       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5459     }
5460   }
5461 
to_string(ShaderModuleCreateFlagBits)5462   VULKAN_HPP_INLINE std::string to_string( ShaderModuleCreateFlagBits )
5463   {
5464     return "(void)";
5465   }
5466 
to_string(PipelineCacheCreateFlagBits value)5467   VULKAN_HPP_INLINE std::string to_string( PipelineCacheCreateFlagBits value )
5468   {
5469     switch ( value )
5470     {
5471       case PipelineCacheCreateFlagBits::eExternallySynchronized: return "ExternallySynchronized";
5472       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5473     }
5474   }
5475 
to_string(BlendFactor value)5476   VULKAN_HPP_INLINE std::string to_string( BlendFactor value )
5477   {
5478     switch ( value )
5479     {
5480       case BlendFactor::eZero: return "Zero";
5481       case BlendFactor::eOne: return "One";
5482       case BlendFactor::eSrcColor: return "SrcColor";
5483       case BlendFactor::eOneMinusSrcColor: return "OneMinusSrcColor";
5484       case BlendFactor::eDstColor: return "DstColor";
5485       case BlendFactor::eOneMinusDstColor: return "OneMinusDstColor";
5486       case BlendFactor::eSrcAlpha: return "SrcAlpha";
5487       case BlendFactor::eOneMinusSrcAlpha: return "OneMinusSrcAlpha";
5488       case BlendFactor::eDstAlpha: return "DstAlpha";
5489       case BlendFactor::eOneMinusDstAlpha: return "OneMinusDstAlpha";
5490       case BlendFactor::eConstantColor: return "ConstantColor";
5491       case BlendFactor::eOneMinusConstantColor: return "OneMinusConstantColor";
5492       case BlendFactor::eConstantAlpha: return "ConstantAlpha";
5493       case BlendFactor::eOneMinusConstantAlpha: return "OneMinusConstantAlpha";
5494       case BlendFactor::eSrcAlphaSaturate: return "SrcAlphaSaturate";
5495       case BlendFactor::eSrc1Color: return "Src1Color";
5496       case BlendFactor::eOneMinusSrc1Color: return "OneMinusSrc1Color";
5497       case BlendFactor::eSrc1Alpha: return "Src1Alpha";
5498       case BlendFactor::eOneMinusSrc1Alpha: return "OneMinusSrc1Alpha";
5499       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5500     }
5501   }
5502 
to_string(BlendOp value)5503   VULKAN_HPP_INLINE std::string to_string( BlendOp value )
5504   {
5505     switch ( value )
5506     {
5507       case BlendOp::eAdd: return "Add";
5508       case BlendOp::eSubtract: return "Subtract";
5509       case BlendOp::eReverseSubtract: return "ReverseSubtract";
5510       case BlendOp::eMin: return "Min";
5511       case BlendOp::eMax: return "Max";
5512       case BlendOp::eZeroEXT: return "ZeroEXT";
5513       case BlendOp::eSrcEXT: return "SrcEXT";
5514       case BlendOp::eDstEXT: return "DstEXT";
5515       case BlendOp::eSrcOverEXT: return "SrcOverEXT";
5516       case BlendOp::eDstOverEXT: return "DstOverEXT";
5517       case BlendOp::eSrcInEXT: return "SrcInEXT";
5518       case BlendOp::eDstInEXT: return "DstInEXT";
5519       case BlendOp::eSrcOutEXT: return "SrcOutEXT";
5520       case BlendOp::eDstOutEXT: return "DstOutEXT";
5521       case BlendOp::eSrcAtopEXT: return "SrcAtopEXT";
5522       case BlendOp::eDstAtopEXT: return "DstAtopEXT";
5523       case BlendOp::eXorEXT: return "XorEXT";
5524       case BlendOp::eMultiplyEXT: return "MultiplyEXT";
5525       case BlendOp::eScreenEXT: return "ScreenEXT";
5526       case BlendOp::eOverlayEXT: return "OverlayEXT";
5527       case BlendOp::eDarkenEXT: return "DarkenEXT";
5528       case BlendOp::eLightenEXT: return "LightenEXT";
5529       case BlendOp::eColordodgeEXT: return "ColordodgeEXT";
5530       case BlendOp::eColorburnEXT: return "ColorburnEXT";
5531       case BlendOp::eHardlightEXT: return "HardlightEXT";
5532       case BlendOp::eSoftlightEXT: return "SoftlightEXT";
5533       case BlendOp::eDifferenceEXT: return "DifferenceEXT";
5534       case BlendOp::eExclusionEXT: return "ExclusionEXT";
5535       case BlendOp::eInvertEXT: return "InvertEXT";
5536       case BlendOp::eInvertRgbEXT: return "InvertRgbEXT";
5537       case BlendOp::eLineardodgeEXT: return "LineardodgeEXT";
5538       case BlendOp::eLinearburnEXT: return "LinearburnEXT";
5539       case BlendOp::eVividlightEXT: return "VividlightEXT";
5540       case BlendOp::eLinearlightEXT: return "LinearlightEXT";
5541       case BlendOp::ePinlightEXT: return "PinlightEXT";
5542       case BlendOp::eHardmixEXT: return "HardmixEXT";
5543       case BlendOp::eHslHueEXT: return "HslHueEXT";
5544       case BlendOp::eHslSaturationEXT: return "HslSaturationEXT";
5545       case BlendOp::eHslColorEXT: return "HslColorEXT";
5546       case BlendOp::eHslLuminosityEXT: return "HslLuminosityEXT";
5547       case BlendOp::ePlusEXT: return "PlusEXT";
5548       case BlendOp::ePlusClampedEXT: return "PlusClampedEXT";
5549       case BlendOp::ePlusClampedAlphaEXT: return "PlusClampedAlphaEXT";
5550       case BlendOp::ePlusDarkerEXT: return "PlusDarkerEXT";
5551       case BlendOp::eMinusEXT: return "MinusEXT";
5552       case BlendOp::eMinusClampedEXT: return "MinusClampedEXT";
5553       case BlendOp::eContrastEXT: return "ContrastEXT";
5554       case BlendOp::eInvertOvgEXT: return "InvertOvgEXT";
5555       case BlendOp::eRedEXT: return "RedEXT";
5556       case BlendOp::eGreenEXT: return "GreenEXT";
5557       case BlendOp::eBlueEXT: return "BlueEXT";
5558       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5559     }
5560   }
5561 
to_string(ColorComponentFlagBits value)5562   VULKAN_HPP_INLINE std::string to_string( ColorComponentFlagBits value )
5563   {
5564     switch ( value )
5565     {
5566       case ColorComponentFlagBits::eR: return "R";
5567       case ColorComponentFlagBits::eG: return "G";
5568       case ColorComponentFlagBits::eB: return "B";
5569       case ColorComponentFlagBits::eA: return "A";
5570       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5571     }
5572   }
5573 
to_string(CompareOp value)5574   VULKAN_HPP_INLINE std::string to_string( CompareOp value )
5575   {
5576     switch ( value )
5577     {
5578       case CompareOp::eNever: return "Never";
5579       case CompareOp::eLess: return "Less";
5580       case CompareOp::eEqual: return "Equal";
5581       case CompareOp::eLessOrEqual: return "LessOrEqual";
5582       case CompareOp::eGreater: return "Greater";
5583       case CompareOp::eNotEqual: return "NotEqual";
5584       case CompareOp::eGreaterOrEqual: return "GreaterOrEqual";
5585       case CompareOp::eAlways: return "Always";
5586       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5587     }
5588   }
5589 
to_string(CullModeFlagBits value)5590   VULKAN_HPP_INLINE std::string to_string( CullModeFlagBits value )
5591   {
5592     switch ( value )
5593     {
5594       case CullModeFlagBits::eNone: return "None";
5595       case CullModeFlagBits::eFront: return "Front";
5596       case CullModeFlagBits::eBack: return "Back";
5597       case CullModeFlagBits::eFrontAndBack: return "FrontAndBack";
5598       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5599     }
5600   }
5601 
to_string(DynamicState value)5602   VULKAN_HPP_INLINE std::string to_string( DynamicState value )
5603   {
5604     switch ( value )
5605     {
5606       case DynamicState::eViewport: return "Viewport";
5607       case DynamicState::eScissor: return "Scissor";
5608       case DynamicState::eLineWidth: return "LineWidth";
5609       case DynamicState::eDepthBias: return "DepthBias";
5610       case DynamicState::eBlendConstants: return "BlendConstants";
5611       case DynamicState::eDepthBounds: return "DepthBounds";
5612       case DynamicState::eStencilCompareMask: return "StencilCompareMask";
5613       case DynamicState::eStencilWriteMask: return "StencilWriteMask";
5614       case DynamicState::eStencilReference: return "StencilReference";
5615       case DynamicState::eCullMode: return "CullMode";
5616       case DynamicState::eFrontFace: return "FrontFace";
5617       case DynamicState::ePrimitiveTopology: return "PrimitiveTopology";
5618       case DynamicState::eViewportWithCount: return "ViewportWithCount";
5619       case DynamicState::eScissorWithCount: return "ScissorWithCount";
5620       case DynamicState::eVertexInputBindingStride: return "VertexInputBindingStride";
5621       case DynamicState::eDepthTestEnable: return "DepthTestEnable";
5622       case DynamicState::eDepthWriteEnable: return "DepthWriteEnable";
5623       case DynamicState::eDepthCompareOp: return "DepthCompareOp";
5624       case DynamicState::eDepthBoundsTestEnable: return "DepthBoundsTestEnable";
5625       case DynamicState::eStencilTestEnable: return "StencilTestEnable";
5626       case DynamicState::eStencilOp: return "StencilOp";
5627       case DynamicState::eRasterizerDiscardEnable: return "RasterizerDiscardEnable";
5628       case DynamicState::eDepthBiasEnable: return "DepthBiasEnable";
5629       case DynamicState::ePrimitiveRestartEnable: return "PrimitiveRestartEnable";
5630       case DynamicState::eViewportWScalingNV: return "ViewportWScalingNV";
5631       case DynamicState::eDiscardRectangleEXT: return "DiscardRectangleEXT";
5632       case DynamicState::eDiscardRectangleEnableEXT: return "DiscardRectangleEnableEXT";
5633       case DynamicState::eDiscardRectangleModeEXT: return "DiscardRectangleModeEXT";
5634       case DynamicState::eSampleLocationsEXT: return "SampleLocationsEXT";
5635       case DynamicState::eRayTracingPipelineStackSizeKHR: return "RayTracingPipelineStackSizeKHR";
5636       case DynamicState::eViewportShadingRatePaletteNV: return "ViewportShadingRatePaletteNV";
5637       case DynamicState::eViewportCoarseSampleOrderNV: return "ViewportCoarseSampleOrderNV";
5638       case DynamicState::eExclusiveScissorEnableNV: return "ExclusiveScissorEnableNV";
5639       case DynamicState::eExclusiveScissorNV: return "ExclusiveScissorNV";
5640       case DynamicState::eFragmentShadingRateKHR: return "FragmentShadingRateKHR";
5641       case DynamicState::eVertexInputEXT: return "VertexInputEXT";
5642       case DynamicState::ePatchControlPointsEXT: return "PatchControlPointsEXT";
5643       case DynamicState::eLogicOpEXT: return "LogicOpEXT";
5644       case DynamicState::eColorWriteEnableEXT: return "ColorWriteEnableEXT";
5645       case DynamicState::eDepthClampEnableEXT: return "DepthClampEnableEXT";
5646       case DynamicState::ePolygonModeEXT: return "PolygonModeEXT";
5647       case DynamicState::eRasterizationSamplesEXT: return "RasterizationSamplesEXT";
5648       case DynamicState::eSampleMaskEXT: return "SampleMaskEXT";
5649       case DynamicState::eAlphaToCoverageEnableEXT: return "AlphaToCoverageEnableEXT";
5650       case DynamicState::eAlphaToOneEnableEXT: return "AlphaToOneEnableEXT";
5651       case DynamicState::eLogicOpEnableEXT: return "LogicOpEnableEXT";
5652       case DynamicState::eColorBlendEnableEXT: return "ColorBlendEnableEXT";
5653       case DynamicState::eColorBlendEquationEXT: return "ColorBlendEquationEXT";
5654       case DynamicState::eColorWriteMaskEXT: return "ColorWriteMaskEXT";
5655       case DynamicState::eTessellationDomainOriginEXT: return "TessellationDomainOriginEXT";
5656       case DynamicState::eRasterizationStreamEXT: return "RasterizationStreamEXT";
5657       case DynamicState::eConservativeRasterizationModeEXT: return "ConservativeRasterizationModeEXT";
5658       case DynamicState::eExtraPrimitiveOverestimationSizeEXT: return "ExtraPrimitiveOverestimationSizeEXT";
5659       case DynamicState::eDepthClipEnableEXT: return "DepthClipEnableEXT";
5660       case DynamicState::eSampleLocationsEnableEXT: return "SampleLocationsEnableEXT";
5661       case DynamicState::eColorBlendAdvancedEXT: return "ColorBlendAdvancedEXT";
5662       case DynamicState::eProvokingVertexModeEXT: return "ProvokingVertexModeEXT";
5663       case DynamicState::eLineRasterizationModeEXT: return "LineRasterizationModeEXT";
5664       case DynamicState::eLineStippleEnableEXT: return "LineStippleEnableEXT";
5665       case DynamicState::eDepthClipNegativeOneToOneEXT: return "DepthClipNegativeOneToOneEXT";
5666       case DynamicState::eViewportWScalingEnableNV: return "ViewportWScalingEnableNV";
5667       case DynamicState::eViewportSwizzleNV: return "ViewportSwizzleNV";
5668       case DynamicState::eCoverageToColorEnableNV: return "CoverageToColorEnableNV";
5669       case DynamicState::eCoverageToColorLocationNV: return "CoverageToColorLocationNV";
5670       case DynamicState::eCoverageModulationModeNV: return "CoverageModulationModeNV";
5671       case DynamicState::eCoverageModulationTableEnableNV: return "CoverageModulationTableEnableNV";
5672       case DynamicState::eCoverageModulationTableNV: return "CoverageModulationTableNV";
5673       case DynamicState::eShadingRateImageEnableNV: return "ShadingRateImageEnableNV";
5674       case DynamicState::eRepresentativeFragmentTestEnableNV: return "RepresentativeFragmentTestEnableNV";
5675       case DynamicState::eCoverageReductionModeNV: return "CoverageReductionModeNV";
5676       case DynamicState::eAttachmentFeedbackLoopEnableEXT: return "AttachmentFeedbackLoopEnableEXT";
5677       case DynamicState::eLineStippleKHR: return "LineStippleKHR";
5678       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5679     }
5680   }
5681 
to_string(FrontFace value)5682   VULKAN_HPP_INLINE std::string to_string( FrontFace value )
5683   {
5684     switch ( value )
5685     {
5686       case FrontFace::eCounterClockwise: return "CounterClockwise";
5687       case FrontFace::eClockwise: return "Clockwise";
5688       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5689     }
5690   }
5691 
to_string(LogicOp value)5692   VULKAN_HPP_INLINE std::string to_string( LogicOp value )
5693   {
5694     switch ( value )
5695     {
5696       case LogicOp::eClear: return "Clear";
5697       case LogicOp::eAnd: return "And";
5698       case LogicOp::eAndReverse: return "AndReverse";
5699       case LogicOp::eCopy: return "Copy";
5700       case LogicOp::eAndInverted: return "AndInverted";
5701       case LogicOp::eNoOp: return "NoOp";
5702       case LogicOp::eXor: return "Xor";
5703       case LogicOp::eOr: return "Or";
5704       case LogicOp::eNor: return "Nor";
5705       case LogicOp::eEquivalent: return "Equivalent";
5706       case LogicOp::eInvert: return "Invert";
5707       case LogicOp::eOrReverse: return "OrReverse";
5708       case LogicOp::eCopyInverted: return "CopyInverted";
5709       case LogicOp::eOrInverted: return "OrInverted";
5710       case LogicOp::eNand: return "Nand";
5711       case LogicOp::eSet: return "Set";
5712       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5713     }
5714   }
5715 
to_string(PipelineCreateFlagBits value)5716   VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlagBits value )
5717   {
5718     switch ( value )
5719     {
5720       case PipelineCreateFlagBits::eDisableOptimization: return "DisableOptimization";
5721       case PipelineCreateFlagBits::eAllowDerivatives: return "AllowDerivatives";
5722       case PipelineCreateFlagBits::eDerivative: return "Derivative";
5723       case PipelineCreateFlagBits::eViewIndexFromDeviceIndex: return "ViewIndexFromDeviceIndex";
5724       case PipelineCreateFlagBits::eDispatchBase: return "DispatchBase";
5725       case PipelineCreateFlagBits::eFailOnPipelineCompileRequired: return "FailOnPipelineCompileRequired";
5726       case PipelineCreateFlagBits::eEarlyReturnOnFailure: return "EarlyReturnOnFailure";
5727       case PipelineCreateFlagBits::eRenderingFragmentShadingRateAttachmentKHR: return "RenderingFragmentShadingRateAttachmentKHR";
5728       case PipelineCreateFlagBits::eRenderingFragmentDensityMapAttachmentEXT: return "RenderingFragmentDensityMapAttachmentEXT";
5729       case PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR: return "RayTracingNoNullAnyHitShadersKHR";
5730       case PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR: return "RayTracingNoNullClosestHitShadersKHR";
5731       case PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR: return "RayTracingNoNullMissShadersKHR";
5732       case PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR: return "RayTracingNoNullIntersectionShadersKHR";
5733       case PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR: return "RayTracingSkipTrianglesKHR";
5734       case PipelineCreateFlagBits::eRayTracingSkipAabbsKHR: return "RayTracingSkipAabbsKHR";
5735       case PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR: return "RayTracingShaderGroupHandleCaptureReplayKHR";
5736       case PipelineCreateFlagBits::eDeferCompileNV: return "DeferCompileNV";
5737       case PipelineCreateFlagBits::eCaptureStatisticsKHR: return "CaptureStatisticsKHR";
5738       case PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR: return "CaptureInternalRepresentationsKHR";
5739       case PipelineCreateFlagBits::eIndirectBindableNV: return "IndirectBindableNV";
5740       case PipelineCreateFlagBits::eLibraryKHR: return "LibraryKHR";
5741       case PipelineCreateFlagBits::eDescriptorBufferEXT: return "DescriptorBufferEXT";
5742       case PipelineCreateFlagBits::eRetainLinkTimeOptimizationInfoEXT: return "RetainLinkTimeOptimizationInfoEXT";
5743       case PipelineCreateFlagBits::eLinkTimeOptimizationEXT: return "LinkTimeOptimizationEXT";
5744       case PipelineCreateFlagBits::eRayTracingAllowMotionNV: return "RayTracingAllowMotionNV";
5745       case PipelineCreateFlagBits::eColorAttachmentFeedbackLoopEXT: return "ColorAttachmentFeedbackLoopEXT";
5746       case PipelineCreateFlagBits::eDepthStencilAttachmentFeedbackLoopEXT: return "DepthStencilAttachmentFeedbackLoopEXT";
5747       case PipelineCreateFlagBits::eRayTracingOpacityMicromapEXT: return "RayTracingOpacityMicromapEXT";
5748 #if defined( VK_ENABLE_BETA_EXTENSIONS )
5749       case PipelineCreateFlagBits::eRayTracingDisplacementMicromapNV: return "RayTracingDisplacementMicromapNV";
5750 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
5751       case PipelineCreateFlagBits::eNoProtectedAccessEXT: return "NoProtectedAccessEXT";
5752       case PipelineCreateFlagBits::eProtectedAccessOnlyEXT: return "ProtectedAccessOnlyEXT";
5753       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5754     }
5755   }
5756 
to_string(PipelineShaderStageCreateFlagBits value)5757   VULKAN_HPP_INLINE std::string to_string( PipelineShaderStageCreateFlagBits value )
5758   {
5759     switch ( value )
5760     {
5761       case PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSize: return "AllowVaryingSubgroupSize";
5762       case PipelineShaderStageCreateFlagBits::eRequireFullSubgroups: return "RequireFullSubgroups";
5763       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5764     }
5765   }
5766 
to_string(PolygonMode value)5767   VULKAN_HPP_INLINE std::string to_string( PolygonMode value )
5768   {
5769     switch ( value )
5770     {
5771       case PolygonMode::eFill: return "Fill";
5772       case PolygonMode::eLine: return "Line";
5773       case PolygonMode::ePoint: return "Point";
5774       case PolygonMode::eFillRectangleNV: return "FillRectangleNV";
5775       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5776     }
5777   }
5778 
to_string(PrimitiveTopology value)5779   VULKAN_HPP_INLINE std::string to_string( PrimitiveTopology value )
5780   {
5781     switch ( value )
5782     {
5783       case PrimitiveTopology::ePointList: return "PointList";
5784       case PrimitiveTopology::eLineList: return "LineList";
5785       case PrimitiveTopology::eLineStrip: return "LineStrip";
5786       case PrimitiveTopology::eTriangleList: return "TriangleList";
5787       case PrimitiveTopology::eTriangleStrip: return "TriangleStrip";
5788       case PrimitiveTopology::eTriangleFan: return "TriangleFan";
5789       case PrimitiveTopology::eLineListWithAdjacency: return "LineListWithAdjacency";
5790       case PrimitiveTopology::eLineStripWithAdjacency: return "LineStripWithAdjacency";
5791       case PrimitiveTopology::eTriangleListWithAdjacency: return "TriangleListWithAdjacency";
5792       case PrimitiveTopology::eTriangleStripWithAdjacency: return "TriangleStripWithAdjacency";
5793       case PrimitiveTopology::ePatchList: return "PatchList";
5794       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5795     }
5796   }
5797 
to_string(ShaderStageFlagBits value)5798   VULKAN_HPP_INLINE std::string to_string( ShaderStageFlagBits value )
5799   {
5800     switch ( value )
5801     {
5802       case ShaderStageFlagBits::eVertex: return "Vertex";
5803       case ShaderStageFlagBits::eTessellationControl: return "TessellationControl";
5804       case ShaderStageFlagBits::eTessellationEvaluation: return "TessellationEvaluation";
5805       case ShaderStageFlagBits::eGeometry: return "Geometry";
5806       case ShaderStageFlagBits::eFragment: return "Fragment";
5807       case ShaderStageFlagBits::eCompute: return "Compute";
5808       case ShaderStageFlagBits::eAllGraphics: return "AllGraphics";
5809       case ShaderStageFlagBits::eAll: return "All";
5810       case ShaderStageFlagBits::eRaygenKHR: return "RaygenKHR";
5811       case ShaderStageFlagBits::eAnyHitKHR: return "AnyHitKHR";
5812       case ShaderStageFlagBits::eClosestHitKHR: return "ClosestHitKHR";
5813       case ShaderStageFlagBits::eMissKHR: return "MissKHR";
5814       case ShaderStageFlagBits::eIntersectionKHR: return "IntersectionKHR";
5815       case ShaderStageFlagBits::eCallableKHR: return "CallableKHR";
5816       case ShaderStageFlagBits::eTaskEXT: return "TaskEXT";
5817       case ShaderStageFlagBits::eMeshEXT: return "MeshEXT";
5818       case ShaderStageFlagBits::eSubpassShadingHUAWEI: return "SubpassShadingHUAWEI";
5819       case ShaderStageFlagBits::eClusterCullingHUAWEI: return "ClusterCullingHUAWEI";
5820       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5821     }
5822   }
5823 
to_string(StencilOp value)5824   VULKAN_HPP_INLINE std::string to_string( StencilOp value )
5825   {
5826     switch ( value )
5827     {
5828       case StencilOp::eKeep: return "Keep";
5829       case StencilOp::eZero: return "Zero";
5830       case StencilOp::eReplace: return "Replace";
5831       case StencilOp::eIncrementAndClamp: return "IncrementAndClamp";
5832       case StencilOp::eDecrementAndClamp: return "DecrementAndClamp";
5833       case StencilOp::eInvert: return "Invert";
5834       case StencilOp::eIncrementAndWrap: return "IncrementAndWrap";
5835       case StencilOp::eDecrementAndWrap: return "DecrementAndWrap";
5836       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5837     }
5838   }
5839 
to_string(VertexInputRate value)5840   VULKAN_HPP_INLINE std::string to_string( VertexInputRate value )
5841   {
5842     switch ( value )
5843     {
5844       case VertexInputRate::eVertex: return "Vertex";
5845       case VertexInputRate::eInstance: return "Instance";
5846       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5847     }
5848   }
5849 
to_string(PipelineColorBlendStateCreateFlagBits value)5850   VULKAN_HPP_INLINE std::string to_string( PipelineColorBlendStateCreateFlagBits value )
5851   {
5852     switch ( value )
5853     {
5854       case PipelineColorBlendStateCreateFlagBits::eRasterizationOrderAttachmentAccessEXT: return "RasterizationOrderAttachmentAccessEXT";
5855       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5856     }
5857   }
5858 
to_string(PipelineDepthStencilStateCreateFlagBits value)5859   VULKAN_HPP_INLINE std::string to_string( PipelineDepthStencilStateCreateFlagBits value )
5860   {
5861     switch ( value )
5862     {
5863       case PipelineDepthStencilStateCreateFlagBits::eRasterizationOrderAttachmentDepthAccessEXT: return "RasterizationOrderAttachmentDepthAccessEXT";
5864       case PipelineDepthStencilStateCreateFlagBits::eRasterizationOrderAttachmentStencilAccessEXT: return "RasterizationOrderAttachmentStencilAccessEXT";
5865       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5866     }
5867   }
5868 
to_string(PipelineDynamicStateCreateFlagBits)5869   VULKAN_HPP_INLINE std::string to_string( PipelineDynamicStateCreateFlagBits )
5870   {
5871     return "(void)";
5872   }
5873 
to_string(PipelineInputAssemblyStateCreateFlagBits)5874   VULKAN_HPP_INLINE std::string to_string( PipelineInputAssemblyStateCreateFlagBits )
5875   {
5876     return "(void)";
5877   }
5878 
to_string(PipelineLayoutCreateFlagBits value)5879   VULKAN_HPP_INLINE std::string to_string( PipelineLayoutCreateFlagBits value )
5880   {
5881     switch ( value )
5882     {
5883       case PipelineLayoutCreateFlagBits::eIndependentSetsEXT: return "IndependentSetsEXT";
5884       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5885     }
5886   }
5887 
to_string(PipelineMultisampleStateCreateFlagBits)5888   VULKAN_HPP_INLINE std::string to_string( PipelineMultisampleStateCreateFlagBits )
5889   {
5890     return "(void)";
5891   }
5892 
to_string(PipelineRasterizationStateCreateFlagBits)5893   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateCreateFlagBits )
5894   {
5895     return "(void)";
5896   }
5897 
to_string(PipelineTessellationStateCreateFlagBits)5898   VULKAN_HPP_INLINE std::string to_string( PipelineTessellationStateCreateFlagBits )
5899   {
5900     return "(void)";
5901   }
5902 
to_string(PipelineVertexInputStateCreateFlagBits)5903   VULKAN_HPP_INLINE std::string to_string( PipelineVertexInputStateCreateFlagBits )
5904   {
5905     return "(void)";
5906   }
5907 
to_string(PipelineViewportStateCreateFlagBits)5908   VULKAN_HPP_INLINE std::string to_string( PipelineViewportStateCreateFlagBits )
5909   {
5910     return "(void)";
5911   }
5912 
to_string(BorderColor value)5913   VULKAN_HPP_INLINE std::string to_string( BorderColor value )
5914   {
5915     switch ( value )
5916     {
5917       case BorderColor::eFloatTransparentBlack: return "FloatTransparentBlack";
5918       case BorderColor::eIntTransparentBlack: return "IntTransparentBlack";
5919       case BorderColor::eFloatOpaqueBlack: return "FloatOpaqueBlack";
5920       case BorderColor::eIntOpaqueBlack: return "IntOpaqueBlack";
5921       case BorderColor::eFloatOpaqueWhite: return "FloatOpaqueWhite";
5922       case BorderColor::eIntOpaqueWhite: return "IntOpaqueWhite";
5923       case BorderColor::eFloatCustomEXT: return "FloatCustomEXT";
5924       case BorderColor::eIntCustomEXT: return "IntCustomEXT";
5925       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5926     }
5927   }
5928 
to_string(Filter value)5929   VULKAN_HPP_INLINE std::string to_string( Filter value )
5930   {
5931     switch ( value )
5932     {
5933       case Filter::eNearest: return "Nearest";
5934       case Filter::eLinear: return "Linear";
5935       case Filter::eCubicEXT: return "CubicEXT";
5936       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5937     }
5938   }
5939 
to_string(SamplerAddressMode value)5940   VULKAN_HPP_INLINE std::string to_string( SamplerAddressMode value )
5941   {
5942     switch ( value )
5943     {
5944       case SamplerAddressMode::eRepeat: return "Repeat";
5945       case SamplerAddressMode::eMirroredRepeat: return "MirroredRepeat";
5946       case SamplerAddressMode::eClampToEdge: return "ClampToEdge";
5947       case SamplerAddressMode::eClampToBorder: return "ClampToBorder";
5948       case SamplerAddressMode::eMirrorClampToEdge: return "MirrorClampToEdge";
5949       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5950     }
5951   }
5952 
to_string(SamplerCreateFlagBits value)5953   VULKAN_HPP_INLINE std::string to_string( SamplerCreateFlagBits value )
5954   {
5955     switch ( value )
5956     {
5957       case SamplerCreateFlagBits::eSubsampledEXT: return "SubsampledEXT";
5958       case SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT: return "SubsampledCoarseReconstructionEXT";
5959       case SamplerCreateFlagBits::eDescriptorBufferCaptureReplayEXT: return "DescriptorBufferCaptureReplayEXT";
5960       case SamplerCreateFlagBits::eNonSeamlessCubeMapEXT: return "NonSeamlessCubeMapEXT";
5961       case SamplerCreateFlagBits::eImageProcessingQCOM: return "ImageProcessingQCOM";
5962       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5963     }
5964   }
5965 
to_string(SamplerMipmapMode value)5966   VULKAN_HPP_INLINE std::string to_string( SamplerMipmapMode value )
5967   {
5968     switch ( value )
5969     {
5970       case SamplerMipmapMode::eNearest: return "Nearest";
5971       case SamplerMipmapMode::eLinear: return "Linear";
5972       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5973     }
5974   }
5975 
to_string(DescriptorPoolCreateFlagBits value)5976   VULKAN_HPP_INLINE std::string to_string( DescriptorPoolCreateFlagBits value )
5977   {
5978     switch ( value )
5979     {
5980       case DescriptorPoolCreateFlagBits::eFreeDescriptorSet: return "FreeDescriptorSet";
5981       case DescriptorPoolCreateFlagBits::eUpdateAfterBind: return "UpdateAfterBind";
5982       case DescriptorPoolCreateFlagBits::eHostOnlyEXT: return "HostOnlyEXT";
5983       case DescriptorPoolCreateFlagBits::eAllowOverallocationSetsNV: return "AllowOverallocationSetsNV";
5984       case DescriptorPoolCreateFlagBits::eAllowOverallocationPoolsNV: return "AllowOverallocationPoolsNV";
5985       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
5986     }
5987   }
5988 
to_string(DescriptorSetLayoutCreateFlagBits value)5989   VULKAN_HPP_INLINE std::string to_string( DescriptorSetLayoutCreateFlagBits value )
5990   {
5991     switch ( value )
5992     {
5993       case DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool: return "UpdateAfterBindPool";
5994       case DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR: return "PushDescriptorKHR";
5995       case DescriptorSetLayoutCreateFlagBits::eDescriptorBufferEXT: return "DescriptorBufferEXT";
5996       case DescriptorSetLayoutCreateFlagBits::eEmbeddedImmutableSamplersEXT: return "EmbeddedImmutableSamplersEXT";
5997       case DescriptorSetLayoutCreateFlagBits::eIndirectBindableNV: return "IndirectBindableNV";
5998       case DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT: return "HostOnlyPoolEXT";
5999       case DescriptorSetLayoutCreateFlagBits::ePerStageNV: return "PerStageNV";
6000       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6001     }
6002   }
6003 
to_string(DescriptorType value)6004   VULKAN_HPP_INLINE std::string to_string( DescriptorType value )
6005   {
6006     switch ( value )
6007     {
6008       case DescriptorType::eSampler: return "Sampler";
6009       case DescriptorType::eCombinedImageSampler: return "CombinedImageSampler";
6010       case DescriptorType::eSampledImage: return "SampledImage";
6011       case DescriptorType::eStorageImage: return "StorageImage";
6012       case DescriptorType::eUniformTexelBuffer: return "UniformTexelBuffer";
6013       case DescriptorType::eStorageTexelBuffer: return "StorageTexelBuffer";
6014       case DescriptorType::eUniformBuffer: return "UniformBuffer";
6015       case DescriptorType::eStorageBuffer: return "StorageBuffer";
6016       case DescriptorType::eUniformBufferDynamic: return "UniformBufferDynamic";
6017       case DescriptorType::eStorageBufferDynamic: return "StorageBufferDynamic";
6018       case DescriptorType::eInputAttachment: return "InputAttachment";
6019       case DescriptorType::eInlineUniformBlock: return "InlineUniformBlock";
6020       case DescriptorType::eAccelerationStructureKHR: return "AccelerationStructureKHR";
6021       case DescriptorType::eAccelerationStructureNV: return "AccelerationStructureNV";
6022       case DescriptorType::eSampleWeightImageQCOM: return "SampleWeightImageQCOM";
6023       case DescriptorType::eBlockMatchImageQCOM: return "BlockMatchImageQCOM";
6024       case DescriptorType::eMutableEXT: return "MutableEXT";
6025       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6026     }
6027   }
6028 
to_string(DescriptorPoolResetFlagBits)6029   VULKAN_HPP_INLINE std::string to_string( DescriptorPoolResetFlagBits )
6030   {
6031     return "(void)";
6032   }
6033 
to_string(AccessFlagBits value)6034   VULKAN_HPP_INLINE std::string to_string( AccessFlagBits value )
6035   {
6036     switch ( value )
6037     {
6038       case AccessFlagBits::eIndirectCommandRead: return "IndirectCommandRead";
6039       case AccessFlagBits::eIndexRead: return "IndexRead";
6040       case AccessFlagBits::eVertexAttributeRead: return "VertexAttributeRead";
6041       case AccessFlagBits::eUniformRead: return "UniformRead";
6042       case AccessFlagBits::eInputAttachmentRead: return "InputAttachmentRead";
6043       case AccessFlagBits::eShaderRead: return "ShaderRead";
6044       case AccessFlagBits::eShaderWrite: return "ShaderWrite";
6045       case AccessFlagBits::eColorAttachmentRead: return "ColorAttachmentRead";
6046       case AccessFlagBits::eColorAttachmentWrite: return "ColorAttachmentWrite";
6047       case AccessFlagBits::eDepthStencilAttachmentRead: return "DepthStencilAttachmentRead";
6048       case AccessFlagBits::eDepthStencilAttachmentWrite: return "DepthStencilAttachmentWrite";
6049       case AccessFlagBits::eTransferRead: return "TransferRead";
6050       case AccessFlagBits::eTransferWrite: return "TransferWrite";
6051       case AccessFlagBits::eHostRead: return "HostRead";
6052       case AccessFlagBits::eHostWrite: return "HostWrite";
6053       case AccessFlagBits::eMemoryRead: return "MemoryRead";
6054       case AccessFlagBits::eMemoryWrite: return "MemoryWrite";
6055       case AccessFlagBits::eNone: return "None";
6056       case AccessFlagBits::eTransformFeedbackWriteEXT: return "TransformFeedbackWriteEXT";
6057       case AccessFlagBits::eTransformFeedbackCounterReadEXT: return "TransformFeedbackCounterReadEXT";
6058       case AccessFlagBits::eTransformFeedbackCounterWriteEXT: return "TransformFeedbackCounterWriteEXT";
6059       case AccessFlagBits::eConditionalRenderingReadEXT: return "ConditionalRenderingReadEXT";
6060       case AccessFlagBits::eColorAttachmentReadNoncoherentEXT: return "ColorAttachmentReadNoncoherentEXT";
6061       case AccessFlagBits::eAccelerationStructureReadKHR: return "AccelerationStructureReadKHR";
6062       case AccessFlagBits::eAccelerationStructureWriteKHR: return "AccelerationStructureWriteKHR";
6063       case AccessFlagBits::eFragmentDensityMapReadEXT: return "FragmentDensityMapReadEXT";
6064       case AccessFlagBits::eFragmentShadingRateAttachmentReadKHR: return "FragmentShadingRateAttachmentReadKHR";
6065       case AccessFlagBits::eCommandPreprocessReadNV: return "CommandPreprocessReadNV";
6066       case AccessFlagBits::eCommandPreprocessWriteNV: return "CommandPreprocessWriteNV";
6067       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6068     }
6069   }
6070 
to_string(AttachmentDescriptionFlagBits value)6071   VULKAN_HPP_INLINE std::string to_string( AttachmentDescriptionFlagBits value )
6072   {
6073     switch ( value )
6074     {
6075       case AttachmentDescriptionFlagBits::eMayAlias: return "MayAlias";
6076       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6077     }
6078   }
6079 
to_string(AttachmentLoadOp value)6080   VULKAN_HPP_INLINE std::string to_string( AttachmentLoadOp value )
6081   {
6082     switch ( value )
6083     {
6084       case AttachmentLoadOp::eLoad: return "Load";
6085       case AttachmentLoadOp::eClear: return "Clear";
6086       case AttachmentLoadOp::eDontCare: return "DontCare";
6087       case AttachmentLoadOp::eNoneKHR: return "NoneKHR";
6088       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6089     }
6090   }
6091 
to_string(AttachmentStoreOp value)6092   VULKAN_HPP_INLINE std::string to_string( AttachmentStoreOp value )
6093   {
6094     switch ( value )
6095     {
6096       case AttachmentStoreOp::eStore: return "Store";
6097       case AttachmentStoreOp::eDontCare: return "DontCare";
6098       case AttachmentStoreOp::eNone: return "None";
6099       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6100     }
6101   }
6102 
to_string(DependencyFlagBits value)6103   VULKAN_HPP_INLINE std::string to_string( DependencyFlagBits value )
6104   {
6105     switch ( value )
6106     {
6107       case DependencyFlagBits::eByRegion: return "ByRegion";
6108       case DependencyFlagBits::eDeviceGroup: return "DeviceGroup";
6109       case DependencyFlagBits::eViewLocal: return "ViewLocal";
6110       case DependencyFlagBits::eFeedbackLoopEXT: return "FeedbackLoopEXT";
6111       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6112     }
6113   }
6114 
to_string(FramebufferCreateFlagBits value)6115   VULKAN_HPP_INLINE std::string to_string( FramebufferCreateFlagBits value )
6116   {
6117     switch ( value )
6118     {
6119       case FramebufferCreateFlagBits::eImageless: return "Imageless";
6120       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6121     }
6122   }
6123 
to_string(PipelineBindPoint value)6124   VULKAN_HPP_INLINE std::string to_string( PipelineBindPoint value )
6125   {
6126     switch ( value )
6127     {
6128       case PipelineBindPoint::eGraphics: return "Graphics";
6129       case PipelineBindPoint::eCompute: return "Compute";
6130 #if defined( VK_ENABLE_BETA_EXTENSIONS )
6131       case PipelineBindPoint::eExecutionGraphAMDX: return "ExecutionGraphAMDX";
6132 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
6133       case PipelineBindPoint::eRayTracingKHR: return "RayTracingKHR";
6134       case PipelineBindPoint::eSubpassShadingHUAWEI: return "SubpassShadingHUAWEI";
6135       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6136     }
6137   }
6138 
to_string(RenderPassCreateFlagBits value)6139   VULKAN_HPP_INLINE std::string to_string( RenderPassCreateFlagBits value )
6140   {
6141     switch ( value )
6142     {
6143       case RenderPassCreateFlagBits::eTransformQCOM: return "TransformQCOM";
6144       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6145     }
6146   }
6147 
to_string(SubpassDescriptionFlagBits value)6148   VULKAN_HPP_INLINE std::string to_string( SubpassDescriptionFlagBits value )
6149   {
6150     switch ( value )
6151     {
6152       case SubpassDescriptionFlagBits::ePerViewAttributesNVX: return "PerViewAttributesNVX";
6153       case SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX: return "PerViewPositionXOnlyNVX";
6154       case SubpassDescriptionFlagBits::eFragmentRegionQCOM: return "FragmentRegionQCOM";
6155       case SubpassDescriptionFlagBits::eShaderResolveQCOM: return "ShaderResolveQCOM";
6156       case SubpassDescriptionFlagBits::eRasterizationOrderAttachmentColorAccessEXT: return "RasterizationOrderAttachmentColorAccessEXT";
6157       case SubpassDescriptionFlagBits::eRasterizationOrderAttachmentDepthAccessEXT: return "RasterizationOrderAttachmentDepthAccessEXT";
6158       case SubpassDescriptionFlagBits::eRasterizationOrderAttachmentStencilAccessEXT: return "RasterizationOrderAttachmentStencilAccessEXT";
6159       case SubpassDescriptionFlagBits::eEnableLegacyDitheringEXT: return "EnableLegacyDitheringEXT";
6160       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6161     }
6162   }
6163 
to_string(CommandPoolCreateFlagBits value)6164   VULKAN_HPP_INLINE std::string to_string( CommandPoolCreateFlagBits value )
6165   {
6166     switch ( value )
6167     {
6168       case CommandPoolCreateFlagBits::eTransient: return "Transient";
6169       case CommandPoolCreateFlagBits::eResetCommandBuffer: return "ResetCommandBuffer";
6170       case CommandPoolCreateFlagBits::eProtected: return "Protected";
6171       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6172     }
6173   }
6174 
to_string(CommandPoolResetFlagBits value)6175   VULKAN_HPP_INLINE std::string to_string( CommandPoolResetFlagBits value )
6176   {
6177     switch ( value )
6178     {
6179       case CommandPoolResetFlagBits::eReleaseResources: return "ReleaseResources";
6180       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6181     }
6182   }
6183 
to_string(CommandBufferLevel value)6184   VULKAN_HPP_INLINE std::string to_string( CommandBufferLevel value )
6185   {
6186     switch ( value )
6187     {
6188       case CommandBufferLevel::ePrimary: return "Primary";
6189       case CommandBufferLevel::eSecondary: return "Secondary";
6190       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6191     }
6192   }
6193 
to_string(CommandBufferResetFlagBits value)6194   VULKAN_HPP_INLINE std::string to_string( CommandBufferResetFlagBits value )
6195   {
6196     switch ( value )
6197     {
6198       case CommandBufferResetFlagBits::eReleaseResources: return "ReleaseResources";
6199       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6200     }
6201   }
6202 
to_string(CommandBufferUsageFlagBits value)6203   VULKAN_HPP_INLINE std::string to_string( CommandBufferUsageFlagBits value )
6204   {
6205     switch ( value )
6206     {
6207       case CommandBufferUsageFlagBits::eOneTimeSubmit: return "OneTimeSubmit";
6208       case CommandBufferUsageFlagBits::eRenderPassContinue: return "RenderPassContinue";
6209       case CommandBufferUsageFlagBits::eSimultaneousUse: return "SimultaneousUse";
6210       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6211     }
6212   }
6213 
to_string(QueryControlFlagBits value)6214   VULKAN_HPP_INLINE std::string to_string( QueryControlFlagBits value )
6215   {
6216     switch ( value )
6217     {
6218       case QueryControlFlagBits::ePrecise: return "Precise";
6219       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6220     }
6221   }
6222 
to_string(IndexType value)6223   VULKAN_HPP_INLINE std::string to_string( IndexType value )
6224   {
6225     switch ( value )
6226     {
6227       case IndexType::eUint16: return "Uint16";
6228       case IndexType::eUint32: return "Uint32";
6229       case IndexType::eNoneKHR: return "NoneKHR";
6230       case IndexType::eUint8KHR: return "Uint8KHR";
6231       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6232     }
6233   }
6234 
to_string(StencilFaceFlagBits value)6235   VULKAN_HPP_INLINE std::string to_string( StencilFaceFlagBits value )
6236   {
6237     switch ( value )
6238     {
6239       case StencilFaceFlagBits::eFront: return "Front";
6240       case StencilFaceFlagBits::eBack: return "Back";
6241       case StencilFaceFlagBits::eFrontAndBack: return "FrontAndBack";
6242       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6243     }
6244   }
6245 
to_string(SubpassContents value)6246   VULKAN_HPP_INLINE std::string to_string( SubpassContents value )
6247   {
6248     switch ( value )
6249     {
6250       case SubpassContents::eInline: return "Inline";
6251       case SubpassContents::eSecondaryCommandBuffers: return "SecondaryCommandBuffers";
6252       case SubpassContents::eInlineAndSecondaryCommandBuffersEXT: return "InlineAndSecondaryCommandBuffersEXT";
6253       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6254     }
6255   }
6256 
6257   //=== VK_VERSION_1_1 ===
6258 
to_string(SubgroupFeatureFlagBits value)6259   VULKAN_HPP_INLINE std::string to_string( SubgroupFeatureFlagBits value )
6260   {
6261     switch ( value )
6262     {
6263       case SubgroupFeatureFlagBits::eBasic: return "Basic";
6264       case SubgroupFeatureFlagBits::eVote: return "Vote";
6265       case SubgroupFeatureFlagBits::eArithmetic: return "Arithmetic";
6266       case SubgroupFeatureFlagBits::eBallot: return "Ballot";
6267       case SubgroupFeatureFlagBits::eShuffle: return "Shuffle";
6268       case SubgroupFeatureFlagBits::eShuffleRelative: return "ShuffleRelative";
6269       case SubgroupFeatureFlagBits::eClustered: return "Clustered";
6270       case SubgroupFeatureFlagBits::eQuad: return "Quad";
6271       case SubgroupFeatureFlagBits::ePartitionedNV: return "PartitionedNV";
6272       case SubgroupFeatureFlagBits::eRotateKHR: return "RotateKHR";
6273       case SubgroupFeatureFlagBits::eRotateClusteredKHR: return "RotateClusteredKHR";
6274       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6275     }
6276   }
6277 
to_string(PeerMemoryFeatureFlagBits value)6278   VULKAN_HPP_INLINE std::string to_string( PeerMemoryFeatureFlagBits value )
6279   {
6280     switch ( value )
6281     {
6282       case PeerMemoryFeatureFlagBits::eCopySrc: return "CopySrc";
6283       case PeerMemoryFeatureFlagBits::eCopyDst: return "CopyDst";
6284       case PeerMemoryFeatureFlagBits::eGenericSrc: return "GenericSrc";
6285       case PeerMemoryFeatureFlagBits::eGenericDst: return "GenericDst";
6286       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6287     }
6288   }
6289 
to_string(MemoryAllocateFlagBits value)6290   VULKAN_HPP_INLINE std::string to_string( MemoryAllocateFlagBits value )
6291   {
6292     switch ( value )
6293     {
6294       case MemoryAllocateFlagBits::eDeviceMask: return "DeviceMask";
6295       case MemoryAllocateFlagBits::eDeviceAddress: return "DeviceAddress";
6296       case MemoryAllocateFlagBits::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay";
6297       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6298     }
6299   }
6300 
to_string(CommandPoolTrimFlagBits)6301   VULKAN_HPP_INLINE std::string to_string( CommandPoolTrimFlagBits )
6302   {
6303     return "(void)";
6304   }
6305 
to_string(PointClippingBehavior value)6306   VULKAN_HPP_INLINE std::string to_string( PointClippingBehavior value )
6307   {
6308     switch ( value )
6309     {
6310       case PointClippingBehavior::eAllClipPlanes: return "AllClipPlanes";
6311       case PointClippingBehavior::eUserClipPlanesOnly: return "UserClipPlanesOnly";
6312       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6313     }
6314   }
6315 
to_string(TessellationDomainOrigin value)6316   VULKAN_HPP_INLINE std::string to_string( TessellationDomainOrigin value )
6317   {
6318     switch ( value )
6319     {
6320       case TessellationDomainOrigin::eUpperLeft: return "UpperLeft";
6321       case TessellationDomainOrigin::eLowerLeft: return "LowerLeft";
6322       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6323     }
6324   }
6325 
to_string(SamplerYcbcrModelConversion value)6326   VULKAN_HPP_INLINE std::string to_string( SamplerYcbcrModelConversion value )
6327   {
6328     switch ( value )
6329     {
6330       case SamplerYcbcrModelConversion::eRgbIdentity: return "RgbIdentity";
6331       case SamplerYcbcrModelConversion::eYcbcrIdentity: return "YcbcrIdentity";
6332       case SamplerYcbcrModelConversion::eYcbcr709: return "Ycbcr709";
6333       case SamplerYcbcrModelConversion::eYcbcr601: return "Ycbcr601";
6334       case SamplerYcbcrModelConversion::eYcbcr2020: return "Ycbcr2020";
6335       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6336     }
6337   }
6338 
to_string(SamplerYcbcrRange value)6339   VULKAN_HPP_INLINE std::string to_string( SamplerYcbcrRange value )
6340   {
6341     switch ( value )
6342     {
6343       case SamplerYcbcrRange::eItuFull: return "ItuFull";
6344       case SamplerYcbcrRange::eItuNarrow: return "ItuNarrow";
6345       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6346     }
6347   }
6348 
to_string(ChromaLocation value)6349   VULKAN_HPP_INLINE std::string to_string( ChromaLocation value )
6350   {
6351     switch ( value )
6352     {
6353       case ChromaLocation::eCositedEven: return "CositedEven";
6354       case ChromaLocation::eMidpoint: return "Midpoint";
6355       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6356     }
6357   }
6358 
to_string(DescriptorUpdateTemplateType value)6359   VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateType value )
6360   {
6361     switch ( value )
6362     {
6363       case DescriptorUpdateTemplateType::eDescriptorSet: return "DescriptorSet";
6364       case DescriptorUpdateTemplateType::ePushDescriptorsKHR: return "PushDescriptorsKHR";
6365       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6366     }
6367   }
6368 
to_string(DescriptorUpdateTemplateCreateFlagBits)6369   VULKAN_HPP_INLINE std::string to_string( DescriptorUpdateTemplateCreateFlagBits )
6370   {
6371     return "(void)";
6372   }
6373 
to_string(ExternalMemoryHandleTypeFlagBits value)6374   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagBits value )
6375   {
6376     switch ( value )
6377     {
6378       case ExternalMemoryHandleTypeFlagBits::eOpaqueFd: return "OpaqueFd";
6379       case ExternalMemoryHandleTypeFlagBits::eOpaqueWin32: return "OpaqueWin32";
6380       case ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
6381       case ExternalMemoryHandleTypeFlagBits::eD3D11Texture: return "D3D11Texture";
6382       case ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt: return "D3D11TextureKmt";
6383       case ExternalMemoryHandleTypeFlagBits::eD3D12Heap: return "D3D12Heap";
6384       case ExternalMemoryHandleTypeFlagBits::eD3D12Resource: return "D3D12Resource";
6385       case ExternalMemoryHandleTypeFlagBits::eDmaBufEXT: return "DmaBufEXT";
6386 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
6387       case ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID: return "AndroidHardwareBufferANDROID";
6388 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
6389       case ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT: return "HostAllocationEXT";
6390       case ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT: return "HostMappedForeignMemoryEXT";
6391 #if defined( VK_USE_PLATFORM_FUCHSIA )
6392       case ExternalMemoryHandleTypeFlagBits::eZirconVmoFUCHSIA: return "ZirconVmoFUCHSIA";
6393 #endif /*VK_USE_PLATFORM_FUCHSIA*/
6394       case ExternalMemoryHandleTypeFlagBits::eRdmaAddressNV: return "RdmaAddressNV";
6395 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
6396       case ExternalMemoryHandleTypeFlagBits::eScreenBufferQNX: return "ScreenBufferQNX";
6397 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
6398       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6399     }
6400   }
6401 
to_string(ExternalMemoryFeatureFlagBits value)6402   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagBits value )
6403   {
6404     switch ( value )
6405     {
6406       case ExternalMemoryFeatureFlagBits::eDedicatedOnly: return "DedicatedOnly";
6407       case ExternalMemoryFeatureFlagBits::eExportable: return "Exportable";
6408       case ExternalMemoryFeatureFlagBits::eImportable: return "Importable";
6409       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6410     }
6411   }
6412 
to_string(ExternalFenceHandleTypeFlagBits value)6413   VULKAN_HPP_INLINE std::string to_string( ExternalFenceHandleTypeFlagBits value )
6414   {
6415     switch ( value )
6416     {
6417       case ExternalFenceHandleTypeFlagBits::eOpaqueFd: return "OpaqueFd";
6418       case ExternalFenceHandleTypeFlagBits::eOpaqueWin32: return "OpaqueWin32";
6419       case ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
6420       case ExternalFenceHandleTypeFlagBits::eSyncFd: return "SyncFd";
6421       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6422     }
6423   }
6424 
to_string(ExternalFenceFeatureFlagBits value)6425   VULKAN_HPP_INLINE std::string to_string( ExternalFenceFeatureFlagBits value )
6426   {
6427     switch ( value )
6428     {
6429       case ExternalFenceFeatureFlagBits::eExportable: return "Exportable";
6430       case ExternalFenceFeatureFlagBits::eImportable: return "Importable";
6431       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6432     }
6433   }
6434 
to_string(FenceImportFlagBits value)6435   VULKAN_HPP_INLINE std::string to_string( FenceImportFlagBits value )
6436   {
6437     switch ( value )
6438     {
6439       case FenceImportFlagBits::eTemporary: return "Temporary";
6440       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6441     }
6442   }
6443 
to_string(SemaphoreImportFlagBits value)6444   VULKAN_HPP_INLINE std::string to_string( SemaphoreImportFlagBits value )
6445   {
6446     switch ( value )
6447     {
6448       case SemaphoreImportFlagBits::eTemporary: return "Temporary";
6449       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6450     }
6451   }
6452 
to_string(ExternalSemaphoreHandleTypeFlagBits value)6453   VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreHandleTypeFlagBits value )
6454   {
6455     switch ( value )
6456     {
6457       case ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd: return "OpaqueFd";
6458       case ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32: return "OpaqueWin32";
6459       case ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
6460       case ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence: return "D3D12Fence";
6461       case ExternalSemaphoreHandleTypeFlagBits::eSyncFd: return "SyncFd";
6462 #if defined( VK_USE_PLATFORM_FUCHSIA )
6463       case ExternalSemaphoreHandleTypeFlagBits::eZirconEventFUCHSIA: return "ZirconEventFUCHSIA";
6464 #endif /*VK_USE_PLATFORM_FUCHSIA*/
6465       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6466     }
6467   }
6468 
to_string(ExternalSemaphoreFeatureFlagBits value)6469   VULKAN_HPP_INLINE std::string to_string( ExternalSemaphoreFeatureFlagBits value )
6470   {
6471     switch ( value )
6472     {
6473       case ExternalSemaphoreFeatureFlagBits::eExportable: return "Exportable";
6474       case ExternalSemaphoreFeatureFlagBits::eImportable: return "Importable";
6475       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6476     }
6477   }
6478 
6479   //=== VK_VERSION_1_2 ===
6480 
to_string(DriverId value)6481   VULKAN_HPP_INLINE std::string to_string( DriverId value )
6482   {
6483     switch ( value )
6484     {
6485       case DriverId::eAmdProprietary: return "AmdProprietary";
6486       case DriverId::eAmdOpenSource: return "AmdOpenSource";
6487       case DriverId::eMesaRadv: return "MesaRadv";
6488       case DriverId::eNvidiaProprietary: return "NvidiaProprietary";
6489       case DriverId::eIntelProprietaryWindows: return "IntelProprietaryWindows";
6490       case DriverId::eIntelOpenSourceMESA: return "IntelOpenSourceMESA";
6491       case DriverId::eImaginationProprietary: return "ImaginationProprietary";
6492       case DriverId::eQualcommProprietary: return "QualcommProprietary";
6493       case DriverId::eArmProprietary: return "ArmProprietary";
6494       case DriverId::eGoogleSwiftshader: return "GoogleSwiftshader";
6495       case DriverId::eGgpProprietary: return "GgpProprietary";
6496       case DriverId::eBroadcomProprietary: return "BroadcomProprietary";
6497       case DriverId::eMesaLlvmpipe: return "MesaLlvmpipe";
6498       case DriverId::eMoltenvk: return "Moltenvk";
6499       case DriverId::eCoreaviProprietary: return "CoreaviProprietary";
6500       case DriverId::eJuiceProprietary: return "JuiceProprietary";
6501       case DriverId::eVerisiliconProprietary: return "VerisiliconProprietary";
6502       case DriverId::eMesaTurnip: return "MesaTurnip";
6503       case DriverId::eMesaV3Dv: return "MesaV3Dv";
6504       case DriverId::eMesaPanvk: return "MesaPanvk";
6505       case DriverId::eSamsungProprietary: return "SamsungProprietary";
6506       case DriverId::eMesaVenus: return "MesaVenus";
6507       case DriverId::eMesaDozen: return "MesaDozen";
6508       case DriverId::eMesaNvk: return "MesaNvk";
6509       case DriverId::eImaginationOpenSourceMESA: return "ImaginationOpenSourceMESA";
6510       case DriverId::eMesaAgxv: return "MesaAgxv";
6511       case DriverId::eReserved27: return "Reserved27";
6512       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6513     }
6514   }
6515 
to_string(ShaderFloatControlsIndependence value)6516   VULKAN_HPP_INLINE std::string to_string( ShaderFloatControlsIndependence value )
6517   {
6518     switch ( value )
6519     {
6520       case ShaderFloatControlsIndependence::e32BitOnly: return "32BitOnly";
6521       case ShaderFloatControlsIndependence::eAll: return "All";
6522       case ShaderFloatControlsIndependence::eNone: return "None";
6523       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6524     }
6525   }
6526 
to_string(DescriptorBindingFlagBits value)6527   VULKAN_HPP_INLINE std::string to_string( DescriptorBindingFlagBits value )
6528   {
6529     switch ( value )
6530     {
6531       case DescriptorBindingFlagBits::eUpdateAfterBind: return "UpdateAfterBind";
6532       case DescriptorBindingFlagBits::eUpdateUnusedWhilePending: return "UpdateUnusedWhilePending";
6533       case DescriptorBindingFlagBits::ePartiallyBound: return "PartiallyBound";
6534       case DescriptorBindingFlagBits::eVariableDescriptorCount: return "VariableDescriptorCount";
6535       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6536     }
6537   }
6538 
to_string(ResolveModeFlagBits value)6539   VULKAN_HPP_INLINE std::string to_string( ResolveModeFlagBits value )
6540   {
6541     switch ( value )
6542     {
6543       case ResolveModeFlagBits::eNone: return "None";
6544       case ResolveModeFlagBits::eSampleZero: return "SampleZero";
6545       case ResolveModeFlagBits::eAverage: return "Average";
6546       case ResolveModeFlagBits::eMin: return "Min";
6547       case ResolveModeFlagBits::eMax: return "Max";
6548 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
6549       case ResolveModeFlagBits::eExternalFormatDownsampleANDROID: return "ExternalFormatDownsampleANDROID";
6550 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
6551       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6552     }
6553   }
6554 
to_string(SamplerReductionMode value)6555   VULKAN_HPP_INLINE std::string to_string( SamplerReductionMode value )
6556   {
6557     switch ( value )
6558     {
6559       case SamplerReductionMode::eWeightedAverage: return "WeightedAverage";
6560       case SamplerReductionMode::eMin: return "Min";
6561       case SamplerReductionMode::eMax: return "Max";
6562       case SamplerReductionMode::eWeightedAverageRangeclampQCOM: return "WeightedAverageRangeclampQCOM";
6563       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6564     }
6565   }
6566 
to_string(SemaphoreType value)6567   VULKAN_HPP_INLINE std::string to_string( SemaphoreType value )
6568   {
6569     switch ( value )
6570     {
6571       case SemaphoreType::eBinary: return "Binary";
6572       case SemaphoreType::eTimeline: return "Timeline";
6573       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6574     }
6575   }
6576 
to_string(SemaphoreWaitFlagBits value)6577   VULKAN_HPP_INLINE std::string to_string( SemaphoreWaitFlagBits value )
6578   {
6579     switch ( value )
6580     {
6581       case SemaphoreWaitFlagBits::eAny: return "Any";
6582       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6583     }
6584   }
6585 
6586   //=== VK_VERSION_1_3 ===
6587 
to_string(PipelineCreationFeedbackFlagBits value)6588   VULKAN_HPP_INLINE std::string to_string( PipelineCreationFeedbackFlagBits value )
6589   {
6590     switch ( value )
6591     {
6592       case PipelineCreationFeedbackFlagBits::eValid: return "Valid";
6593       case PipelineCreationFeedbackFlagBits::eApplicationPipelineCacheHit: return "ApplicationPipelineCacheHit";
6594       case PipelineCreationFeedbackFlagBits::eBasePipelineAcceleration: return "BasePipelineAcceleration";
6595       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6596     }
6597   }
6598 
to_string(ToolPurposeFlagBits value)6599   VULKAN_HPP_INLINE std::string to_string( ToolPurposeFlagBits value )
6600   {
6601     switch ( value )
6602     {
6603       case ToolPurposeFlagBits::eValidation: return "Validation";
6604       case ToolPurposeFlagBits::eProfiling: return "Profiling";
6605       case ToolPurposeFlagBits::eTracing: return "Tracing";
6606       case ToolPurposeFlagBits::eAdditionalFeatures: return "AdditionalFeatures";
6607       case ToolPurposeFlagBits::eModifyingFeatures: return "ModifyingFeatures";
6608       case ToolPurposeFlagBits::eDebugReportingEXT: return "DebugReportingEXT";
6609       case ToolPurposeFlagBits::eDebugMarkersEXT: return "DebugMarkersEXT";
6610       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6611     }
6612   }
6613 
to_string(PrivateDataSlotCreateFlagBits)6614   VULKAN_HPP_INLINE std::string to_string( PrivateDataSlotCreateFlagBits )
6615   {
6616     return "(void)";
6617   }
6618 
to_string(PipelineStageFlagBits2 value)6619   VULKAN_HPP_INLINE std::string to_string( PipelineStageFlagBits2 value )
6620   {
6621     switch ( value )
6622     {
6623       case PipelineStageFlagBits2::eNone: return "None";
6624       case PipelineStageFlagBits2::eTopOfPipe: return "TopOfPipe";
6625       case PipelineStageFlagBits2::eDrawIndirect: return "DrawIndirect";
6626       case PipelineStageFlagBits2::eVertexInput: return "VertexInput";
6627       case PipelineStageFlagBits2::eVertexShader: return "VertexShader";
6628       case PipelineStageFlagBits2::eTessellationControlShader: return "TessellationControlShader";
6629       case PipelineStageFlagBits2::eTessellationEvaluationShader: return "TessellationEvaluationShader";
6630       case PipelineStageFlagBits2::eGeometryShader: return "GeometryShader";
6631       case PipelineStageFlagBits2::eFragmentShader: return "FragmentShader";
6632       case PipelineStageFlagBits2::eEarlyFragmentTests: return "EarlyFragmentTests";
6633       case PipelineStageFlagBits2::eLateFragmentTests: return "LateFragmentTests";
6634       case PipelineStageFlagBits2::eColorAttachmentOutput: return "ColorAttachmentOutput";
6635       case PipelineStageFlagBits2::eComputeShader: return "ComputeShader";
6636       case PipelineStageFlagBits2::eAllTransfer: return "AllTransfer";
6637       case PipelineStageFlagBits2::eBottomOfPipe: return "BottomOfPipe";
6638       case PipelineStageFlagBits2::eHost: return "Host";
6639       case PipelineStageFlagBits2::eAllGraphics: return "AllGraphics";
6640       case PipelineStageFlagBits2::eAllCommands: return "AllCommands";
6641       case PipelineStageFlagBits2::eCopy: return "Copy";
6642       case PipelineStageFlagBits2::eResolve: return "Resolve";
6643       case PipelineStageFlagBits2::eBlit: return "Blit";
6644       case PipelineStageFlagBits2::eClear: return "Clear";
6645       case PipelineStageFlagBits2::eIndexInput: return "IndexInput";
6646       case PipelineStageFlagBits2::eVertexAttributeInput: return "VertexAttributeInput";
6647       case PipelineStageFlagBits2::ePreRasterizationShaders: return "PreRasterizationShaders";
6648       case PipelineStageFlagBits2::eVideoDecodeKHR: return "VideoDecodeKHR";
6649       case PipelineStageFlagBits2::eVideoEncodeKHR: return "VideoEncodeKHR";
6650       case PipelineStageFlagBits2::eTransformFeedbackEXT: return "TransformFeedbackEXT";
6651       case PipelineStageFlagBits2::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
6652       case PipelineStageFlagBits2::eCommandPreprocessNV: return "CommandPreprocessNV";
6653       case PipelineStageFlagBits2::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
6654       case PipelineStageFlagBits2::eAccelerationStructureBuildKHR: return "AccelerationStructureBuildKHR";
6655       case PipelineStageFlagBits2::eRayTracingShaderKHR: return "RayTracingShaderKHR";
6656       case PipelineStageFlagBits2::eFragmentDensityProcessEXT: return "FragmentDensityProcessEXT";
6657       case PipelineStageFlagBits2::eTaskShaderEXT: return "TaskShaderEXT";
6658       case PipelineStageFlagBits2::eMeshShaderEXT: return "MeshShaderEXT";
6659       case PipelineStageFlagBits2::eSubpassShaderHUAWEI: return "SubpassShaderHUAWEI";
6660       case PipelineStageFlagBits2::eInvocationMaskHUAWEI: return "InvocationMaskHUAWEI";
6661       case PipelineStageFlagBits2::eAccelerationStructureCopyKHR: return "AccelerationStructureCopyKHR";
6662       case PipelineStageFlagBits2::eMicromapBuildEXT: return "MicromapBuildEXT";
6663       case PipelineStageFlagBits2::eClusterCullingShaderHUAWEI: return "ClusterCullingShaderHUAWEI";
6664       case PipelineStageFlagBits2::eOpticalFlowNV: return "OpticalFlowNV";
6665       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6666     }
6667   }
6668 
to_string(AccessFlagBits2 value)6669   VULKAN_HPP_INLINE std::string to_string( AccessFlagBits2 value )
6670   {
6671     switch ( value )
6672     {
6673       case AccessFlagBits2::eNone: return "None";
6674       case AccessFlagBits2::eIndirectCommandRead: return "IndirectCommandRead";
6675       case AccessFlagBits2::eIndexRead: return "IndexRead";
6676       case AccessFlagBits2::eVertexAttributeRead: return "VertexAttributeRead";
6677       case AccessFlagBits2::eUniformRead: return "UniformRead";
6678       case AccessFlagBits2::eInputAttachmentRead: return "InputAttachmentRead";
6679       case AccessFlagBits2::eShaderRead: return "ShaderRead";
6680       case AccessFlagBits2::eShaderWrite: return "ShaderWrite";
6681       case AccessFlagBits2::eColorAttachmentRead: return "ColorAttachmentRead";
6682       case AccessFlagBits2::eColorAttachmentWrite: return "ColorAttachmentWrite";
6683       case AccessFlagBits2::eDepthStencilAttachmentRead: return "DepthStencilAttachmentRead";
6684       case AccessFlagBits2::eDepthStencilAttachmentWrite: return "DepthStencilAttachmentWrite";
6685       case AccessFlagBits2::eTransferRead: return "TransferRead";
6686       case AccessFlagBits2::eTransferWrite: return "TransferWrite";
6687       case AccessFlagBits2::eHostRead: return "HostRead";
6688       case AccessFlagBits2::eHostWrite: return "HostWrite";
6689       case AccessFlagBits2::eMemoryRead: return "MemoryRead";
6690       case AccessFlagBits2::eMemoryWrite: return "MemoryWrite";
6691       case AccessFlagBits2::eShaderSampledRead: return "ShaderSampledRead";
6692       case AccessFlagBits2::eShaderStorageRead: return "ShaderStorageRead";
6693       case AccessFlagBits2::eShaderStorageWrite: return "ShaderStorageWrite";
6694       case AccessFlagBits2::eVideoDecodeReadKHR: return "VideoDecodeReadKHR";
6695       case AccessFlagBits2::eVideoDecodeWriteKHR: return "VideoDecodeWriteKHR";
6696       case AccessFlagBits2::eVideoEncodeReadKHR: return "VideoEncodeReadKHR";
6697       case AccessFlagBits2::eVideoEncodeWriteKHR: return "VideoEncodeWriteKHR";
6698       case AccessFlagBits2::eTransformFeedbackWriteEXT: return "TransformFeedbackWriteEXT";
6699       case AccessFlagBits2::eTransformFeedbackCounterReadEXT: return "TransformFeedbackCounterReadEXT";
6700       case AccessFlagBits2::eTransformFeedbackCounterWriteEXT: return "TransformFeedbackCounterWriteEXT";
6701       case AccessFlagBits2::eConditionalRenderingReadEXT: return "ConditionalRenderingReadEXT";
6702       case AccessFlagBits2::eCommandPreprocessReadNV: return "CommandPreprocessReadNV";
6703       case AccessFlagBits2::eCommandPreprocessWriteNV: return "CommandPreprocessWriteNV";
6704       case AccessFlagBits2::eFragmentShadingRateAttachmentReadKHR: return "FragmentShadingRateAttachmentReadKHR";
6705       case AccessFlagBits2::eAccelerationStructureReadKHR: return "AccelerationStructureReadKHR";
6706       case AccessFlagBits2::eAccelerationStructureWriteKHR: return "AccelerationStructureWriteKHR";
6707       case AccessFlagBits2::eFragmentDensityMapReadEXT: return "FragmentDensityMapReadEXT";
6708       case AccessFlagBits2::eColorAttachmentReadNoncoherentEXT: return "ColorAttachmentReadNoncoherentEXT";
6709       case AccessFlagBits2::eDescriptorBufferReadEXT: return "DescriptorBufferReadEXT";
6710       case AccessFlagBits2::eInvocationMaskReadHUAWEI: return "InvocationMaskReadHUAWEI";
6711       case AccessFlagBits2::eShaderBindingTableReadKHR: return "ShaderBindingTableReadKHR";
6712       case AccessFlagBits2::eMicromapReadEXT: return "MicromapReadEXT";
6713       case AccessFlagBits2::eMicromapWriteEXT: return "MicromapWriteEXT";
6714       case AccessFlagBits2::eOpticalFlowReadNV: return "OpticalFlowReadNV";
6715       case AccessFlagBits2::eOpticalFlowWriteNV: return "OpticalFlowWriteNV";
6716       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6717     }
6718   }
6719 
to_string(SubmitFlagBits value)6720   VULKAN_HPP_INLINE std::string to_string( SubmitFlagBits value )
6721   {
6722     switch ( value )
6723     {
6724       case SubmitFlagBits::eProtected: return "Protected";
6725       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6726     }
6727   }
6728 
to_string(RenderingFlagBits value)6729   VULKAN_HPP_INLINE std::string to_string( RenderingFlagBits value )
6730   {
6731     switch ( value )
6732     {
6733       case RenderingFlagBits::eContentsSecondaryCommandBuffers: return "ContentsSecondaryCommandBuffers";
6734       case RenderingFlagBits::eSuspending: return "Suspending";
6735       case RenderingFlagBits::eResuming: return "Resuming";
6736       case RenderingFlagBits::eContentsInlineEXT: return "ContentsInlineEXT";
6737       case RenderingFlagBits::eEnableLegacyDitheringEXT: return "EnableLegacyDitheringEXT";
6738       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6739     }
6740   }
6741 
to_string(FormatFeatureFlagBits2 value)6742   VULKAN_HPP_INLINE std::string to_string( FormatFeatureFlagBits2 value )
6743   {
6744     switch ( value )
6745     {
6746       case FormatFeatureFlagBits2::eSampledImage: return "SampledImage";
6747       case FormatFeatureFlagBits2::eStorageImage: return "StorageImage";
6748       case FormatFeatureFlagBits2::eStorageImageAtomic: return "StorageImageAtomic";
6749       case FormatFeatureFlagBits2::eUniformTexelBuffer: return "UniformTexelBuffer";
6750       case FormatFeatureFlagBits2::eStorageTexelBuffer: return "StorageTexelBuffer";
6751       case FormatFeatureFlagBits2::eStorageTexelBufferAtomic: return "StorageTexelBufferAtomic";
6752       case FormatFeatureFlagBits2::eVertexBuffer: return "VertexBuffer";
6753       case FormatFeatureFlagBits2::eColorAttachment: return "ColorAttachment";
6754       case FormatFeatureFlagBits2::eColorAttachmentBlend: return "ColorAttachmentBlend";
6755       case FormatFeatureFlagBits2::eDepthStencilAttachment: return "DepthStencilAttachment";
6756       case FormatFeatureFlagBits2::eBlitSrc: return "BlitSrc";
6757       case FormatFeatureFlagBits2::eBlitDst: return "BlitDst";
6758       case FormatFeatureFlagBits2::eSampledImageFilterLinear: return "SampledImageFilterLinear";
6759       case FormatFeatureFlagBits2::eSampledImageFilterCubic: return "SampledImageFilterCubic";
6760       case FormatFeatureFlagBits2::eTransferSrc: return "TransferSrc";
6761       case FormatFeatureFlagBits2::eTransferDst: return "TransferDst";
6762       case FormatFeatureFlagBits2::eSampledImageFilterMinmax: return "SampledImageFilterMinmax";
6763       case FormatFeatureFlagBits2::eMidpointChromaSamples: return "MidpointChromaSamples";
6764       case FormatFeatureFlagBits2::eSampledImageYcbcrConversionLinearFilter: return "SampledImageYcbcrConversionLinearFilter";
6765       case FormatFeatureFlagBits2::eSampledImageYcbcrConversionSeparateReconstructionFilter: return "SampledImageYcbcrConversionSeparateReconstructionFilter";
6766       case FormatFeatureFlagBits2::eSampledImageYcbcrConversionChromaReconstructionExplicit: return "SampledImageYcbcrConversionChromaReconstructionExplicit";
6767       case FormatFeatureFlagBits2::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable:
6768         return "SampledImageYcbcrConversionChromaReconstructionExplicitForceable";
6769       case FormatFeatureFlagBits2::eDisjoint: return "Disjoint";
6770       case FormatFeatureFlagBits2::eCositedChromaSamples: return "CositedChromaSamples";
6771       case FormatFeatureFlagBits2::eStorageReadWithoutFormat: return "StorageReadWithoutFormat";
6772       case FormatFeatureFlagBits2::eStorageWriteWithoutFormat: return "StorageWriteWithoutFormat";
6773       case FormatFeatureFlagBits2::eSampledImageDepthComparison: return "SampledImageDepthComparison";
6774       case FormatFeatureFlagBits2::eVideoDecodeOutputKHR: return "VideoDecodeOutputKHR";
6775       case FormatFeatureFlagBits2::eVideoDecodeDpbKHR: return "VideoDecodeDpbKHR";
6776       case FormatFeatureFlagBits2::eAccelerationStructureVertexBufferKHR: return "AccelerationStructureVertexBufferKHR";
6777       case FormatFeatureFlagBits2::eFragmentDensityMapEXT: return "FragmentDensityMapEXT";
6778       case FormatFeatureFlagBits2::eFragmentShadingRateAttachmentKHR: return "FragmentShadingRateAttachmentKHR";
6779       case FormatFeatureFlagBits2::eHostImageTransferEXT: return "HostImageTransferEXT";
6780       case FormatFeatureFlagBits2::eVideoEncodeInputKHR: return "VideoEncodeInputKHR";
6781       case FormatFeatureFlagBits2::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR";
6782       case FormatFeatureFlagBits2::eLinearColorAttachmentNV: return "LinearColorAttachmentNV";
6783       case FormatFeatureFlagBits2::eWeightImageQCOM: return "WeightImageQCOM";
6784       case FormatFeatureFlagBits2::eWeightSampledImageQCOM: return "WeightSampledImageQCOM";
6785       case FormatFeatureFlagBits2::eBlockMatchingQCOM: return "BlockMatchingQCOM";
6786       case FormatFeatureFlagBits2::eBoxFilterSampledQCOM: return "BoxFilterSampledQCOM";
6787       case FormatFeatureFlagBits2::eOpticalFlowImageNV: return "OpticalFlowImageNV";
6788       case FormatFeatureFlagBits2::eOpticalFlowVectorNV: return "OpticalFlowVectorNV";
6789       case FormatFeatureFlagBits2::eOpticalFlowCostNV: return "OpticalFlowCostNV";
6790       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6791     }
6792   }
6793 
6794   //=== VK_KHR_surface ===
6795 
to_string(SurfaceTransformFlagBitsKHR value)6796   VULKAN_HPP_INLINE std::string to_string( SurfaceTransformFlagBitsKHR value )
6797   {
6798     switch ( value )
6799     {
6800       case SurfaceTransformFlagBitsKHR::eIdentity: return "Identity";
6801       case SurfaceTransformFlagBitsKHR::eRotate90: return "Rotate90";
6802       case SurfaceTransformFlagBitsKHR::eRotate180: return "Rotate180";
6803       case SurfaceTransformFlagBitsKHR::eRotate270: return "Rotate270";
6804       case SurfaceTransformFlagBitsKHR::eHorizontalMirror: return "HorizontalMirror";
6805       case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90: return "HorizontalMirrorRotate90";
6806       case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180: return "HorizontalMirrorRotate180";
6807       case SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270: return "HorizontalMirrorRotate270";
6808       case SurfaceTransformFlagBitsKHR::eInherit: return "Inherit";
6809       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6810     }
6811   }
6812 
to_string(PresentModeKHR value)6813   VULKAN_HPP_INLINE std::string to_string( PresentModeKHR value )
6814   {
6815     switch ( value )
6816     {
6817       case PresentModeKHR::eImmediate: return "Immediate";
6818       case PresentModeKHR::eMailbox: return "Mailbox";
6819       case PresentModeKHR::eFifo: return "Fifo";
6820       case PresentModeKHR::eFifoRelaxed: return "FifoRelaxed";
6821       case PresentModeKHR::eSharedDemandRefresh: return "SharedDemandRefresh";
6822       case PresentModeKHR::eSharedContinuousRefresh: return "SharedContinuousRefresh";
6823       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6824     }
6825   }
6826 
to_string(ColorSpaceKHR value)6827   VULKAN_HPP_INLINE std::string to_string( ColorSpaceKHR value )
6828   {
6829     switch ( value )
6830     {
6831       case ColorSpaceKHR::eSrgbNonlinear: return "SrgbNonlinear";
6832       case ColorSpaceKHR::eDisplayP3NonlinearEXT: return "DisplayP3NonlinearEXT";
6833       case ColorSpaceKHR::eExtendedSrgbLinearEXT: return "ExtendedSrgbLinearEXT";
6834       case ColorSpaceKHR::eDisplayP3LinearEXT: return "DisplayP3LinearEXT";
6835       case ColorSpaceKHR::eDciP3NonlinearEXT: return "DciP3NonlinearEXT";
6836       case ColorSpaceKHR::eBt709LinearEXT: return "Bt709LinearEXT";
6837       case ColorSpaceKHR::eBt709NonlinearEXT: return "Bt709NonlinearEXT";
6838       case ColorSpaceKHR::eBt2020LinearEXT: return "Bt2020LinearEXT";
6839       case ColorSpaceKHR::eHdr10St2084EXT: return "Hdr10St2084EXT";
6840       case ColorSpaceKHR::eDolbyvisionEXT: return "DolbyvisionEXT";
6841       case ColorSpaceKHR::eHdr10HlgEXT: return "Hdr10HlgEXT";
6842       case ColorSpaceKHR::eAdobergbLinearEXT: return "AdobergbLinearEXT";
6843       case ColorSpaceKHR::eAdobergbNonlinearEXT: return "AdobergbNonlinearEXT";
6844       case ColorSpaceKHR::ePassThroughEXT: return "PassThroughEXT";
6845       case ColorSpaceKHR::eExtendedSrgbNonlinearEXT: return "ExtendedSrgbNonlinearEXT";
6846       case ColorSpaceKHR::eDisplayNativeAMD: return "DisplayNativeAMD";
6847       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6848     }
6849   }
6850 
to_string(CompositeAlphaFlagBitsKHR value)6851   VULKAN_HPP_INLINE std::string to_string( CompositeAlphaFlagBitsKHR value )
6852   {
6853     switch ( value )
6854     {
6855       case CompositeAlphaFlagBitsKHR::eOpaque: return "Opaque";
6856       case CompositeAlphaFlagBitsKHR::ePreMultiplied: return "PreMultiplied";
6857       case CompositeAlphaFlagBitsKHR::ePostMultiplied: return "PostMultiplied";
6858       case CompositeAlphaFlagBitsKHR::eInherit: return "Inherit";
6859       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6860     }
6861   }
6862 
6863   //=== VK_KHR_swapchain ===
6864 
to_string(SwapchainCreateFlagBitsKHR value)6865   VULKAN_HPP_INLINE std::string to_string( SwapchainCreateFlagBitsKHR value )
6866   {
6867     switch ( value )
6868     {
6869       case SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions: return "SplitInstanceBindRegions";
6870       case SwapchainCreateFlagBitsKHR::eProtected: return "Protected";
6871       case SwapchainCreateFlagBitsKHR::eMutableFormat: return "MutableFormat";
6872       case SwapchainCreateFlagBitsKHR::eDeferredMemoryAllocationEXT: return "DeferredMemoryAllocationEXT";
6873       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6874     }
6875   }
6876 
to_string(DeviceGroupPresentModeFlagBitsKHR value)6877   VULKAN_HPP_INLINE std::string to_string( DeviceGroupPresentModeFlagBitsKHR value )
6878   {
6879     switch ( value )
6880     {
6881       case DeviceGroupPresentModeFlagBitsKHR::eLocal: return "Local";
6882       case DeviceGroupPresentModeFlagBitsKHR::eRemote: return "Remote";
6883       case DeviceGroupPresentModeFlagBitsKHR::eSum: return "Sum";
6884       case DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice: return "LocalMultiDevice";
6885       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6886     }
6887   }
6888 
6889   //=== VK_KHR_display ===
6890 
to_string(DisplayPlaneAlphaFlagBitsKHR value)6891   VULKAN_HPP_INLINE std::string to_string( DisplayPlaneAlphaFlagBitsKHR value )
6892   {
6893     switch ( value )
6894     {
6895       case DisplayPlaneAlphaFlagBitsKHR::eOpaque: return "Opaque";
6896       case DisplayPlaneAlphaFlagBitsKHR::eGlobal: return "Global";
6897       case DisplayPlaneAlphaFlagBitsKHR::ePerPixel: return "PerPixel";
6898       case DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied: return "PerPixelPremultiplied";
6899       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6900     }
6901   }
6902 
to_string(DisplayModeCreateFlagBitsKHR)6903   VULKAN_HPP_INLINE std::string to_string( DisplayModeCreateFlagBitsKHR )
6904   {
6905     return "(void)";
6906   }
6907 
to_string(DisplaySurfaceCreateFlagBitsKHR)6908   VULKAN_HPP_INLINE std::string to_string( DisplaySurfaceCreateFlagBitsKHR )
6909   {
6910     return "(void)";
6911   }
6912 
6913 #if defined( VK_USE_PLATFORM_XLIB_KHR )
6914   //=== VK_KHR_xlib_surface ===
6915 
to_string(XlibSurfaceCreateFlagBitsKHR)6916   VULKAN_HPP_INLINE std::string to_string( XlibSurfaceCreateFlagBitsKHR )
6917   {
6918     return "(void)";
6919   }
6920 #endif /*VK_USE_PLATFORM_XLIB_KHR*/
6921 
6922 #if defined( VK_USE_PLATFORM_XCB_KHR )
6923   //=== VK_KHR_xcb_surface ===
6924 
to_string(XcbSurfaceCreateFlagBitsKHR)6925   VULKAN_HPP_INLINE std::string to_string( XcbSurfaceCreateFlagBitsKHR )
6926   {
6927     return "(void)";
6928   }
6929 #endif /*VK_USE_PLATFORM_XCB_KHR*/
6930 
6931 #if defined( VK_USE_PLATFORM_WAYLAND_KHR )
6932   //=== VK_KHR_wayland_surface ===
6933 
to_string(WaylandSurfaceCreateFlagBitsKHR)6934   VULKAN_HPP_INLINE std::string to_string( WaylandSurfaceCreateFlagBitsKHR )
6935   {
6936     return "(void)";
6937   }
6938 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
6939 
6940 #if defined( VK_USE_PLATFORM_ANDROID_KHR )
6941   //=== VK_KHR_android_surface ===
6942 
to_string(AndroidSurfaceCreateFlagBitsKHR)6943   VULKAN_HPP_INLINE std::string to_string( AndroidSurfaceCreateFlagBitsKHR )
6944   {
6945     return "(void)";
6946   }
6947 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
6948 
6949 #if defined( VK_USE_PLATFORM_WIN32_KHR )
6950   //=== VK_KHR_win32_surface ===
6951 
to_string(Win32SurfaceCreateFlagBitsKHR)6952   VULKAN_HPP_INLINE std::string to_string( Win32SurfaceCreateFlagBitsKHR )
6953   {
6954     return "(void)";
6955   }
6956 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
6957 
6958   //=== VK_EXT_debug_report ===
6959 
to_string(DebugReportFlagBitsEXT value)6960   VULKAN_HPP_INLINE std::string to_string( DebugReportFlagBitsEXT value )
6961   {
6962     switch ( value )
6963     {
6964       case DebugReportFlagBitsEXT::eInformation: return "Information";
6965       case DebugReportFlagBitsEXT::eWarning: return "Warning";
6966       case DebugReportFlagBitsEXT::ePerformanceWarning: return "PerformanceWarning";
6967       case DebugReportFlagBitsEXT::eError: return "Error";
6968       case DebugReportFlagBitsEXT::eDebug: return "Debug";
6969       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
6970     }
6971   }
6972 
to_string(DebugReportObjectTypeEXT value)6973   VULKAN_HPP_INLINE std::string to_string( DebugReportObjectTypeEXT value )
6974   {
6975     switch ( value )
6976     {
6977       case DebugReportObjectTypeEXT::eUnknown: return "Unknown";
6978       case DebugReportObjectTypeEXT::eInstance: return "Instance";
6979       case DebugReportObjectTypeEXT::ePhysicalDevice: return "PhysicalDevice";
6980       case DebugReportObjectTypeEXT::eDevice: return "Device";
6981       case DebugReportObjectTypeEXT::eQueue: return "Queue";
6982       case DebugReportObjectTypeEXT::eSemaphore: return "Semaphore";
6983       case DebugReportObjectTypeEXT::eCommandBuffer: return "CommandBuffer";
6984       case DebugReportObjectTypeEXT::eFence: return "Fence";
6985       case DebugReportObjectTypeEXT::eDeviceMemory: return "DeviceMemory";
6986       case DebugReportObjectTypeEXT::eBuffer: return "Buffer";
6987       case DebugReportObjectTypeEXT::eImage: return "Image";
6988       case DebugReportObjectTypeEXT::eEvent: return "Event";
6989       case DebugReportObjectTypeEXT::eQueryPool: return "QueryPool";
6990       case DebugReportObjectTypeEXT::eBufferView: return "BufferView";
6991       case DebugReportObjectTypeEXT::eImageView: return "ImageView";
6992       case DebugReportObjectTypeEXT::eShaderModule: return "ShaderModule";
6993       case DebugReportObjectTypeEXT::ePipelineCache: return "PipelineCache";
6994       case DebugReportObjectTypeEXT::ePipelineLayout: return "PipelineLayout";
6995       case DebugReportObjectTypeEXT::eRenderPass: return "RenderPass";
6996       case DebugReportObjectTypeEXT::ePipeline: return "Pipeline";
6997       case DebugReportObjectTypeEXT::eDescriptorSetLayout: return "DescriptorSetLayout";
6998       case DebugReportObjectTypeEXT::eSampler: return "Sampler";
6999       case DebugReportObjectTypeEXT::eDescriptorPool: return "DescriptorPool";
7000       case DebugReportObjectTypeEXT::eDescriptorSet: return "DescriptorSet";
7001       case DebugReportObjectTypeEXT::eFramebuffer: return "Framebuffer";
7002       case DebugReportObjectTypeEXT::eCommandPool: return "CommandPool";
7003       case DebugReportObjectTypeEXT::eSurfaceKHR: return "SurfaceKHR";
7004       case DebugReportObjectTypeEXT::eSwapchainKHR: return "SwapchainKHR";
7005       case DebugReportObjectTypeEXT::eDebugReportCallbackEXT: return "DebugReportCallbackEXT";
7006       case DebugReportObjectTypeEXT::eDisplayKHR: return "DisplayKHR";
7007       case DebugReportObjectTypeEXT::eDisplayModeKHR: return "DisplayModeKHR";
7008       case DebugReportObjectTypeEXT::eValidationCacheEXT: return "ValidationCacheEXT";
7009       case DebugReportObjectTypeEXT::eSamplerYcbcrConversion: return "SamplerYcbcrConversion";
7010       case DebugReportObjectTypeEXT::eDescriptorUpdateTemplate: return "DescriptorUpdateTemplate";
7011       case DebugReportObjectTypeEXT::eCuModuleNVX: return "CuModuleNVX";
7012       case DebugReportObjectTypeEXT::eCuFunctionNVX: return "CuFunctionNVX";
7013       case DebugReportObjectTypeEXT::eAccelerationStructureKHR: return "AccelerationStructureKHR";
7014       case DebugReportObjectTypeEXT::eAccelerationStructureNV: return "AccelerationStructureNV";
7015 #if defined( VK_ENABLE_BETA_EXTENSIONS )
7016       case DebugReportObjectTypeEXT::eCudaModuleNV: return "CudaModuleNV";
7017       case DebugReportObjectTypeEXT::eCudaFunctionNV: return "CudaFunctionNV";
7018 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
7019 #if defined( VK_USE_PLATFORM_FUCHSIA )
7020       case DebugReportObjectTypeEXT::eBufferCollectionFUCHSIA: return "BufferCollectionFUCHSIA";
7021 #endif /*VK_USE_PLATFORM_FUCHSIA*/
7022       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7023     }
7024   }
7025 
7026   //=== VK_AMD_rasterization_order ===
7027 
to_string(RasterizationOrderAMD value)7028   VULKAN_HPP_INLINE std::string to_string( RasterizationOrderAMD value )
7029   {
7030     switch ( value )
7031     {
7032       case RasterizationOrderAMD::eStrict: return "Strict";
7033       case RasterizationOrderAMD::eRelaxed: return "Relaxed";
7034       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7035     }
7036   }
7037 
7038   //=== VK_KHR_video_queue ===
7039 
to_string(VideoCodecOperationFlagBitsKHR value)7040   VULKAN_HPP_INLINE std::string to_string( VideoCodecOperationFlagBitsKHR value )
7041   {
7042     switch ( value )
7043     {
7044       case VideoCodecOperationFlagBitsKHR::eNone: return "None";
7045       case VideoCodecOperationFlagBitsKHR::eEncodeH264: return "EncodeH264";
7046       case VideoCodecOperationFlagBitsKHR::eEncodeH265: return "EncodeH265";
7047       case VideoCodecOperationFlagBitsKHR::eDecodeH264: return "DecodeH264";
7048       case VideoCodecOperationFlagBitsKHR::eDecodeH265: return "DecodeH265";
7049       case VideoCodecOperationFlagBitsKHR::eDecodeAv1: return "DecodeAv1";
7050       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7051     }
7052   }
7053 
to_string(VideoChromaSubsamplingFlagBitsKHR value)7054   VULKAN_HPP_INLINE std::string to_string( VideoChromaSubsamplingFlagBitsKHR value )
7055   {
7056     switch ( value )
7057     {
7058       case VideoChromaSubsamplingFlagBitsKHR::eInvalid: return "Invalid";
7059       case VideoChromaSubsamplingFlagBitsKHR::eMonochrome: return "Monochrome";
7060       case VideoChromaSubsamplingFlagBitsKHR::e420: return "420";
7061       case VideoChromaSubsamplingFlagBitsKHR::e422: return "422";
7062       case VideoChromaSubsamplingFlagBitsKHR::e444: return "444";
7063       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7064     }
7065   }
7066 
to_string(VideoComponentBitDepthFlagBitsKHR value)7067   VULKAN_HPP_INLINE std::string to_string( VideoComponentBitDepthFlagBitsKHR value )
7068   {
7069     switch ( value )
7070     {
7071       case VideoComponentBitDepthFlagBitsKHR::eInvalid: return "Invalid";
7072       case VideoComponentBitDepthFlagBitsKHR::e8: return "8";
7073       case VideoComponentBitDepthFlagBitsKHR::e10: return "10";
7074       case VideoComponentBitDepthFlagBitsKHR::e12: return "12";
7075       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7076     }
7077   }
7078 
to_string(VideoCapabilityFlagBitsKHR value)7079   VULKAN_HPP_INLINE std::string to_string( VideoCapabilityFlagBitsKHR value )
7080   {
7081     switch ( value )
7082     {
7083       case VideoCapabilityFlagBitsKHR::eProtectedContent: return "ProtectedContent";
7084       case VideoCapabilityFlagBitsKHR::eSeparateReferenceImages: return "SeparateReferenceImages";
7085       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7086     }
7087   }
7088 
to_string(VideoSessionCreateFlagBitsKHR value)7089   VULKAN_HPP_INLINE std::string to_string( VideoSessionCreateFlagBitsKHR value )
7090   {
7091     switch ( value )
7092     {
7093       case VideoSessionCreateFlagBitsKHR::eProtectedContent: return "ProtectedContent";
7094       case VideoSessionCreateFlagBitsKHR::eAllowEncodeParameterOptimizations: return "AllowEncodeParameterOptimizations";
7095       case VideoSessionCreateFlagBitsKHR::eInlineQueries: return "InlineQueries";
7096       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7097     }
7098   }
7099 
to_string(VideoCodingControlFlagBitsKHR value)7100   VULKAN_HPP_INLINE std::string to_string( VideoCodingControlFlagBitsKHR value )
7101   {
7102     switch ( value )
7103     {
7104       case VideoCodingControlFlagBitsKHR::eReset: return "Reset";
7105       case VideoCodingControlFlagBitsKHR::eEncodeRateControl: return "EncodeRateControl";
7106       case VideoCodingControlFlagBitsKHR::eEncodeQualityLevel: return "EncodeQualityLevel";
7107       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7108     }
7109   }
7110 
to_string(QueryResultStatusKHR value)7111   VULKAN_HPP_INLINE std::string to_string( QueryResultStatusKHR value )
7112   {
7113     switch ( value )
7114     {
7115       case QueryResultStatusKHR::eError: return "Error";
7116       case QueryResultStatusKHR::eNotReady: return "NotReady";
7117       case QueryResultStatusKHR::eComplete: return "Complete";
7118       case QueryResultStatusKHR::eInsufficientBitstreamBufferRange: return "InsufficientBitstreamBufferRange";
7119       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7120     }
7121   }
7122 
to_string(VideoSessionParametersCreateFlagBitsKHR)7123   VULKAN_HPP_INLINE std::string to_string( VideoSessionParametersCreateFlagBitsKHR )
7124   {
7125     return "(void)";
7126   }
7127 
to_string(VideoBeginCodingFlagBitsKHR)7128   VULKAN_HPP_INLINE std::string to_string( VideoBeginCodingFlagBitsKHR )
7129   {
7130     return "(void)";
7131   }
7132 
to_string(VideoEndCodingFlagBitsKHR)7133   VULKAN_HPP_INLINE std::string to_string( VideoEndCodingFlagBitsKHR )
7134   {
7135     return "(void)";
7136   }
7137 
7138   //=== VK_KHR_video_decode_queue ===
7139 
to_string(VideoDecodeCapabilityFlagBitsKHR value)7140   VULKAN_HPP_INLINE std::string to_string( VideoDecodeCapabilityFlagBitsKHR value )
7141   {
7142     switch ( value )
7143     {
7144       case VideoDecodeCapabilityFlagBitsKHR::eDpbAndOutputCoincide: return "DpbAndOutputCoincide";
7145       case VideoDecodeCapabilityFlagBitsKHR::eDpbAndOutputDistinct: return "DpbAndOutputDistinct";
7146       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7147     }
7148   }
7149 
to_string(VideoDecodeUsageFlagBitsKHR value)7150   VULKAN_HPP_INLINE std::string to_string( VideoDecodeUsageFlagBitsKHR value )
7151   {
7152     switch ( value )
7153     {
7154       case VideoDecodeUsageFlagBitsKHR::eDefault: return "Default";
7155       case VideoDecodeUsageFlagBitsKHR::eTranscoding: return "Transcoding";
7156       case VideoDecodeUsageFlagBitsKHR::eOffline: return "Offline";
7157       case VideoDecodeUsageFlagBitsKHR::eStreaming: return "Streaming";
7158       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7159     }
7160   }
7161 
to_string(VideoDecodeFlagBitsKHR)7162   VULKAN_HPP_INLINE std::string to_string( VideoDecodeFlagBitsKHR )
7163   {
7164     return "(void)";
7165   }
7166 
7167   //=== VK_EXT_transform_feedback ===
7168 
to_string(PipelineRasterizationStateStreamCreateFlagBitsEXT)7169   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationStateStreamCreateFlagBitsEXT )
7170   {
7171     return "(void)";
7172   }
7173 
7174   //=== VK_KHR_video_encode_h264 ===
7175 
to_string(VideoEncodeH264CapabilityFlagBitsKHR value)7176   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264CapabilityFlagBitsKHR value )
7177   {
7178     switch ( value )
7179     {
7180       case VideoEncodeH264CapabilityFlagBitsKHR::eHrdCompliance: return "HrdCompliance";
7181       case VideoEncodeH264CapabilityFlagBitsKHR::ePredictionWeightTableGenerated: return "PredictionWeightTableGenerated";
7182       case VideoEncodeH264CapabilityFlagBitsKHR::eRowUnalignedSlice: return "RowUnalignedSlice";
7183       case VideoEncodeH264CapabilityFlagBitsKHR::eDifferentSliceType: return "DifferentSliceType";
7184       case VideoEncodeH264CapabilityFlagBitsKHR::eBFrameInL0List: return "BFrameInL0List";
7185       case VideoEncodeH264CapabilityFlagBitsKHR::eBFrameInL1List: return "BFrameInL1List";
7186       case VideoEncodeH264CapabilityFlagBitsKHR::ePerPictureTypeMinMaxQp: return "PerPictureTypeMinMaxQp";
7187       case VideoEncodeH264CapabilityFlagBitsKHR::ePerSliceConstantQp: return "PerSliceConstantQp";
7188       case VideoEncodeH264CapabilityFlagBitsKHR::eGeneratePrefixNalu: return "GeneratePrefixNalu";
7189       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7190     }
7191   }
7192 
to_string(VideoEncodeH264StdFlagBitsKHR value)7193   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264StdFlagBitsKHR value )
7194   {
7195     switch ( value )
7196     {
7197       case VideoEncodeH264StdFlagBitsKHR::eSeparateColorPlaneFlagSet: return "SeparateColorPlaneFlagSet";
7198       case VideoEncodeH264StdFlagBitsKHR::eQpprimeYZeroTransformBypassFlagSet: return "QpprimeYZeroTransformBypassFlagSet";
7199       case VideoEncodeH264StdFlagBitsKHR::eScalingMatrixPresentFlagSet: return "ScalingMatrixPresentFlagSet";
7200       case VideoEncodeH264StdFlagBitsKHR::eChromaQpIndexOffset: return "ChromaQpIndexOffset";
7201       case VideoEncodeH264StdFlagBitsKHR::eSecondChromaQpIndexOffset: return "SecondChromaQpIndexOffset";
7202       case VideoEncodeH264StdFlagBitsKHR::ePicInitQpMinus26: return "PicInitQpMinus26";
7203       case VideoEncodeH264StdFlagBitsKHR::eWeightedPredFlagSet: return "WeightedPredFlagSet";
7204       case VideoEncodeH264StdFlagBitsKHR::eWeightedBipredIdcExplicit: return "WeightedBipredIdcExplicit";
7205       case VideoEncodeH264StdFlagBitsKHR::eWeightedBipredIdcImplicit: return "WeightedBipredIdcImplicit";
7206       case VideoEncodeH264StdFlagBitsKHR::eTransform8X8ModeFlagSet: return "Transform8X8ModeFlagSet";
7207       case VideoEncodeH264StdFlagBitsKHR::eDirectSpatialMvPredFlagUnset: return "DirectSpatialMvPredFlagUnset";
7208       case VideoEncodeH264StdFlagBitsKHR::eEntropyCodingModeFlagUnset: return "EntropyCodingModeFlagUnset";
7209       case VideoEncodeH264StdFlagBitsKHR::eEntropyCodingModeFlagSet: return "EntropyCodingModeFlagSet";
7210       case VideoEncodeH264StdFlagBitsKHR::eDirect8X8InferenceFlagUnset: return "Direct8X8InferenceFlagUnset";
7211       case VideoEncodeH264StdFlagBitsKHR::eConstrainedIntraPredFlagSet: return "ConstrainedIntraPredFlagSet";
7212       case VideoEncodeH264StdFlagBitsKHR::eDeblockingFilterDisabled: return "DeblockingFilterDisabled";
7213       case VideoEncodeH264StdFlagBitsKHR::eDeblockingFilterEnabled: return "DeblockingFilterEnabled";
7214       case VideoEncodeH264StdFlagBitsKHR::eDeblockingFilterPartial: return "DeblockingFilterPartial";
7215       case VideoEncodeH264StdFlagBitsKHR::eSliceQpDelta: return "SliceQpDelta";
7216       case VideoEncodeH264StdFlagBitsKHR::eDifferentSliceQpDelta: return "DifferentSliceQpDelta";
7217       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7218     }
7219   }
7220 
to_string(VideoEncodeH264RateControlFlagBitsKHR value)7221   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH264RateControlFlagBitsKHR value )
7222   {
7223     switch ( value )
7224     {
7225       case VideoEncodeH264RateControlFlagBitsKHR::eAttemptHrdCompliance: return "AttemptHrdCompliance";
7226       case VideoEncodeH264RateControlFlagBitsKHR::eRegularGop: return "RegularGop";
7227       case VideoEncodeH264RateControlFlagBitsKHR::eReferencePatternFlat: return "ReferencePatternFlat";
7228       case VideoEncodeH264RateControlFlagBitsKHR::eReferencePatternDyadic: return "ReferencePatternDyadic";
7229       case VideoEncodeH264RateControlFlagBitsKHR::eTemporalLayerPatternDyadic: return "TemporalLayerPatternDyadic";
7230       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7231     }
7232   }
7233 
7234   //=== VK_KHR_video_encode_h265 ===
7235 
to_string(VideoEncodeH265CapabilityFlagBitsKHR value)7236   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265CapabilityFlagBitsKHR value )
7237   {
7238     switch ( value )
7239     {
7240       case VideoEncodeH265CapabilityFlagBitsKHR::eHrdCompliance: return "HrdCompliance";
7241       case VideoEncodeH265CapabilityFlagBitsKHR::ePredictionWeightTableGenerated: return "PredictionWeightTableGenerated";
7242       case VideoEncodeH265CapabilityFlagBitsKHR::eRowUnalignedSliceSegment: return "RowUnalignedSliceSegment";
7243       case VideoEncodeH265CapabilityFlagBitsKHR::eDifferentSliceSegmentType: return "DifferentSliceSegmentType";
7244       case VideoEncodeH265CapabilityFlagBitsKHR::eBFrameInL0List: return "BFrameInL0List";
7245       case VideoEncodeH265CapabilityFlagBitsKHR::eBFrameInL1List: return "BFrameInL1List";
7246       case VideoEncodeH265CapabilityFlagBitsKHR::ePerPictureTypeMinMaxQp: return "PerPictureTypeMinMaxQp";
7247       case VideoEncodeH265CapabilityFlagBitsKHR::ePerSliceSegmentConstantQp: return "PerSliceSegmentConstantQp";
7248       case VideoEncodeH265CapabilityFlagBitsKHR::eMultipleTilesPerSliceSegment: return "MultipleTilesPerSliceSegment";
7249       case VideoEncodeH265CapabilityFlagBitsKHR::eMultipleSliceSegmentsPerTile: return "MultipleSliceSegmentsPerTile";
7250       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7251     }
7252   }
7253 
to_string(VideoEncodeH265StdFlagBitsKHR value)7254   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265StdFlagBitsKHR value )
7255   {
7256     switch ( value )
7257     {
7258       case VideoEncodeH265StdFlagBitsKHR::eSeparateColorPlaneFlagSet: return "SeparateColorPlaneFlagSet";
7259       case VideoEncodeH265StdFlagBitsKHR::eSampleAdaptiveOffsetEnabledFlagSet: return "SampleAdaptiveOffsetEnabledFlagSet";
7260       case VideoEncodeH265StdFlagBitsKHR::eScalingListDataPresentFlagSet: return "ScalingListDataPresentFlagSet";
7261       case VideoEncodeH265StdFlagBitsKHR::ePcmEnabledFlagSet: return "PcmEnabledFlagSet";
7262       case VideoEncodeH265StdFlagBitsKHR::eSpsTemporalMvpEnabledFlagSet: return "SpsTemporalMvpEnabledFlagSet";
7263       case VideoEncodeH265StdFlagBitsKHR::eInitQpMinus26: return "InitQpMinus26";
7264       case VideoEncodeH265StdFlagBitsKHR::eWeightedPredFlagSet: return "WeightedPredFlagSet";
7265       case VideoEncodeH265StdFlagBitsKHR::eWeightedBipredFlagSet: return "WeightedBipredFlagSet";
7266       case VideoEncodeH265StdFlagBitsKHR::eLog2ParallelMergeLevelMinus2: return "Log2ParallelMergeLevelMinus2";
7267       case VideoEncodeH265StdFlagBitsKHR::eSignDataHidingEnabledFlagSet: return "SignDataHidingEnabledFlagSet";
7268       case VideoEncodeH265StdFlagBitsKHR::eTransformSkipEnabledFlagSet: return "TransformSkipEnabledFlagSet";
7269       case VideoEncodeH265StdFlagBitsKHR::eTransformSkipEnabledFlagUnset: return "TransformSkipEnabledFlagUnset";
7270       case VideoEncodeH265StdFlagBitsKHR::ePpsSliceChromaQpOffsetsPresentFlagSet: return "PpsSliceChromaQpOffsetsPresentFlagSet";
7271       case VideoEncodeH265StdFlagBitsKHR::eTransquantBypassEnabledFlagSet: return "TransquantBypassEnabledFlagSet";
7272       case VideoEncodeH265StdFlagBitsKHR::eConstrainedIntraPredFlagSet: return "ConstrainedIntraPredFlagSet";
7273       case VideoEncodeH265StdFlagBitsKHR::eEntropyCodingSyncEnabledFlagSet: return "EntropyCodingSyncEnabledFlagSet";
7274       case VideoEncodeH265StdFlagBitsKHR::eDeblockingFilterOverrideEnabledFlagSet: return "DeblockingFilterOverrideEnabledFlagSet";
7275       case VideoEncodeH265StdFlagBitsKHR::eDependentSliceSegmentsEnabledFlagSet: return "DependentSliceSegmentsEnabledFlagSet";
7276       case VideoEncodeH265StdFlagBitsKHR::eDependentSliceSegmentFlagSet: return "DependentSliceSegmentFlagSet";
7277       case VideoEncodeH265StdFlagBitsKHR::eSliceQpDelta: return "SliceQpDelta";
7278       case VideoEncodeH265StdFlagBitsKHR::eDifferentSliceQpDelta: return "DifferentSliceQpDelta";
7279       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7280     }
7281   }
7282 
to_string(VideoEncodeH265CtbSizeFlagBitsKHR value)7283   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265CtbSizeFlagBitsKHR value )
7284   {
7285     switch ( value )
7286     {
7287       case VideoEncodeH265CtbSizeFlagBitsKHR::e16: return "16";
7288       case VideoEncodeH265CtbSizeFlagBitsKHR::e32: return "32";
7289       case VideoEncodeH265CtbSizeFlagBitsKHR::e64: return "64";
7290       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7291     }
7292   }
7293 
to_string(VideoEncodeH265TransformBlockSizeFlagBitsKHR value)7294   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265TransformBlockSizeFlagBitsKHR value )
7295   {
7296     switch ( value )
7297     {
7298       case VideoEncodeH265TransformBlockSizeFlagBitsKHR::e4: return "4";
7299       case VideoEncodeH265TransformBlockSizeFlagBitsKHR::e8: return "8";
7300       case VideoEncodeH265TransformBlockSizeFlagBitsKHR::e16: return "16";
7301       case VideoEncodeH265TransformBlockSizeFlagBitsKHR::e32: return "32";
7302       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7303     }
7304   }
7305 
to_string(VideoEncodeH265RateControlFlagBitsKHR value)7306   VULKAN_HPP_INLINE std::string to_string( VideoEncodeH265RateControlFlagBitsKHR value )
7307   {
7308     switch ( value )
7309     {
7310       case VideoEncodeH265RateControlFlagBitsKHR::eAttemptHrdCompliance: return "AttemptHrdCompliance";
7311       case VideoEncodeH265RateControlFlagBitsKHR::eRegularGop: return "RegularGop";
7312       case VideoEncodeH265RateControlFlagBitsKHR::eReferencePatternFlat: return "ReferencePatternFlat";
7313       case VideoEncodeH265RateControlFlagBitsKHR::eReferencePatternDyadic: return "ReferencePatternDyadic";
7314       case VideoEncodeH265RateControlFlagBitsKHR::eTemporalSubLayerPatternDyadic: return "TemporalSubLayerPatternDyadic";
7315       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7316     }
7317   }
7318 
7319   //=== VK_KHR_video_decode_h264 ===
7320 
to_string(VideoDecodeH264PictureLayoutFlagBitsKHR value)7321   VULKAN_HPP_INLINE std::string to_string( VideoDecodeH264PictureLayoutFlagBitsKHR value )
7322   {
7323     switch ( value )
7324     {
7325       case VideoDecodeH264PictureLayoutFlagBitsKHR::eProgressive: return "Progressive";
7326       case VideoDecodeH264PictureLayoutFlagBitsKHR::eInterlacedInterleavedLines: return "InterlacedInterleavedLines";
7327       case VideoDecodeH264PictureLayoutFlagBitsKHR::eInterlacedSeparatePlanes: return "InterlacedSeparatePlanes";
7328       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7329     }
7330   }
7331 
7332   //=== VK_AMD_shader_info ===
7333 
to_string(ShaderInfoTypeAMD value)7334   VULKAN_HPP_INLINE std::string to_string( ShaderInfoTypeAMD value )
7335   {
7336     switch ( value )
7337     {
7338       case ShaderInfoTypeAMD::eStatistics: return "Statistics";
7339       case ShaderInfoTypeAMD::eBinary: return "Binary";
7340       case ShaderInfoTypeAMD::eDisassembly: return "Disassembly";
7341       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7342     }
7343   }
7344 
7345 #if defined( VK_USE_PLATFORM_GGP )
7346   //=== VK_GGP_stream_descriptor_surface ===
7347 
to_string(StreamDescriptorSurfaceCreateFlagBitsGGP)7348   VULKAN_HPP_INLINE std::string to_string( StreamDescriptorSurfaceCreateFlagBitsGGP )
7349   {
7350     return "(void)";
7351   }
7352 #endif /*VK_USE_PLATFORM_GGP*/
7353 
7354   //=== VK_NV_external_memory_capabilities ===
7355 
to_string(ExternalMemoryHandleTypeFlagBitsNV value)7356   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryHandleTypeFlagBitsNV value )
7357   {
7358     switch ( value )
7359     {
7360       case ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32: return "OpaqueWin32";
7361       case ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt: return "OpaqueWin32Kmt";
7362       case ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image: return "D3D11Image";
7363       case ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt: return "D3D11ImageKmt";
7364       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7365     }
7366   }
7367 
to_string(ExternalMemoryFeatureFlagBitsNV value)7368   VULKAN_HPP_INLINE std::string to_string( ExternalMemoryFeatureFlagBitsNV value )
7369   {
7370     switch ( value )
7371     {
7372       case ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly: return "DedicatedOnly";
7373       case ExternalMemoryFeatureFlagBitsNV::eExportable: return "Exportable";
7374       case ExternalMemoryFeatureFlagBitsNV::eImportable: return "Importable";
7375       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7376     }
7377   }
7378 
7379   //=== VK_EXT_validation_flags ===
7380 
to_string(ValidationCheckEXT value)7381   VULKAN_HPP_INLINE std::string to_string( ValidationCheckEXT value )
7382   {
7383     switch ( value )
7384     {
7385       case ValidationCheckEXT::eAll: return "All";
7386       case ValidationCheckEXT::eShaders: return "Shaders";
7387       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7388     }
7389   }
7390 
7391 #if defined( VK_USE_PLATFORM_VI_NN )
7392   //=== VK_NN_vi_surface ===
7393 
to_string(ViSurfaceCreateFlagBitsNN)7394   VULKAN_HPP_INLINE std::string to_string( ViSurfaceCreateFlagBitsNN )
7395   {
7396     return "(void)";
7397   }
7398 #endif /*VK_USE_PLATFORM_VI_NN*/
7399 
7400   //=== VK_EXT_pipeline_robustness ===
7401 
to_string(PipelineRobustnessBufferBehaviorEXT value)7402   VULKAN_HPP_INLINE std::string to_string( PipelineRobustnessBufferBehaviorEXT value )
7403   {
7404     switch ( value )
7405     {
7406       case PipelineRobustnessBufferBehaviorEXT::eDeviceDefault: return "DeviceDefault";
7407       case PipelineRobustnessBufferBehaviorEXT::eDisabled: return "Disabled";
7408       case PipelineRobustnessBufferBehaviorEXT::eRobustBufferAccess: return "RobustBufferAccess";
7409       case PipelineRobustnessBufferBehaviorEXT::eRobustBufferAccess2: return "RobustBufferAccess2";
7410       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7411     }
7412   }
7413 
to_string(PipelineRobustnessImageBehaviorEXT value)7414   VULKAN_HPP_INLINE std::string to_string( PipelineRobustnessImageBehaviorEXT value )
7415   {
7416     switch ( value )
7417     {
7418       case PipelineRobustnessImageBehaviorEXT::eDeviceDefault: return "DeviceDefault";
7419       case PipelineRobustnessImageBehaviorEXT::eDisabled: return "Disabled";
7420       case PipelineRobustnessImageBehaviorEXT::eRobustImageAccess: return "RobustImageAccess";
7421       case PipelineRobustnessImageBehaviorEXT::eRobustImageAccess2: return "RobustImageAccess2";
7422       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7423     }
7424   }
7425 
7426   //=== VK_EXT_conditional_rendering ===
7427 
to_string(ConditionalRenderingFlagBitsEXT value)7428   VULKAN_HPP_INLINE std::string to_string( ConditionalRenderingFlagBitsEXT value )
7429   {
7430     switch ( value )
7431     {
7432       case ConditionalRenderingFlagBitsEXT::eInverted: return "Inverted";
7433       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7434     }
7435   }
7436 
7437   //=== VK_EXT_display_surface_counter ===
7438 
to_string(SurfaceCounterFlagBitsEXT value)7439   VULKAN_HPP_INLINE std::string to_string( SurfaceCounterFlagBitsEXT value )
7440   {
7441     switch ( value )
7442     {
7443       case SurfaceCounterFlagBitsEXT::eVblank: return "Vblank";
7444       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7445     }
7446   }
7447 
7448   //=== VK_EXT_display_control ===
7449 
to_string(DisplayPowerStateEXT value)7450   VULKAN_HPP_INLINE std::string to_string( DisplayPowerStateEXT value )
7451   {
7452     switch ( value )
7453     {
7454       case DisplayPowerStateEXT::eOff: return "Off";
7455       case DisplayPowerStateEXT::eSuspend: return "Suspend";
7456       case DisplayPowerStateEXT::eOn: return "On";
7457       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7458     }
7459   }
7460 
to_string(DeviceEventTypeEXT value)7461   VULKAN_HPP_INLINE std::string to_string( DeviceEventTypeEXT value )
7462   {
7463     switch ( value )
7464     {
7465       case DeviceEventTypeEXT::eDisplayHotplug: return "DisplayHotplug";
7466       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7467     }
7468   }
7469 
to_string(DisplayEventTypeEXT value)7470   VULKAN_HPP_INLINE std::string to_string( DisplayEventTypeEXT value )
7471   {
7472     switch ( value )
7473     {
7474       case DisplayEventTypeEXT::eFirstPixelOut: return "FirstPixelOut";
7475       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7476     }
7477   }
7478 
7479   //=== VK_NV_viewport_swizzle ===
7480 
to_string(ViewportCoordinateSwizzleNV value)7481   VULKAN_HPP_INLINE std::string to_string( ViewportCoordinateSwizzleNV value )
7482   {
7483     switch ( value )
7484     {
7485       case ViewportCoordinateSwizzleNV::ePositiveX: return "PositiveX";
7486       case ViewportCoordinateSwizzleNV::eNegativeX: return "NegativeX";
7487       case ViewportCoordinateSwizzleNV::ePositiveY: return "PositiveY";
7488       case ViewportCoordinateSwizzleNV::eNegativeY: return "NegativeY";
7489       case ViewportCoordinateSwizzleNV::ePositiveZ: return "PositiveZ";
7490       case ViewportCoordinateSwizzleNV::eNegativeZ: return "NegativeZ";
7491       case ViewportCoordinateSwizzleNV::ePositiveW: return "PositiveW";
7492       case ViewportCoordinateSwizzleNV::eNegativeW: return "NegativeW";
7493       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7494     }
7495   }
7496 
to_string(PipelineViewportSwizzleStateCreateFlagBitsNV)7497   VULKAN_HPP_INLINE std::string to_string( PipelineViewportSwizzleStateCreateFlagBitsNV )
7498   {
7499     return "(void)";
7500   }
7501 
7502   //=== VK_EXT_discard_rectangles ===
7503 
to_string(DiscardRectangleModeEXT value)7504   VULKAN_HPP_INLINE std::string to_string( DiscardRectangleModeEXT value )
7505   {
7506     switch ( value )
7507     {
7508       case DiscardRectangleModeEXT::eInclusive: return "Inclusive";
7509       case DiscardRectangleModeEXT::eExclusive: return "Exclusive";
7510       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7511     }
7512   }
7513 
to_string(PipelineDiscardRectangleStateCreateFlagBitsEXT)7514   VULKAN_HPP_INLINE std::string to_string( PipelineDiscardRectangleStateCreateFlagBitsEXT )
7515   {
7516     return "(void)";
7517   }
7518 
7519   //=== VK_EXT_conservative_rasterization ===
7520 
to_string(ConservativeRasterizationModeEXT value)7521   VULKAN_HPP_INLINE std::string to_string( ConservativeRasterizationModeEXT value )
7522   {
7523     switch ( value )
7524     {
7525       case ConservativeRasterizationModeEXT::eDisabled: return "Disabled";
7526       case ConservativeRasterizationModeEXT::eOverestimate: return "Overestimate";
7527       case ConservativeRasterizationModeEXT::eUnderestimate: return "Underestimate";
7528       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7529     }
7530   }
7531 
to_string(PipelineRasterizationConservativeStateCreateFlagBitsEXT)7532   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationConservativeStateCreateFlagBitsEXT )
7533   {
7534     return "(void)";
7535   }
7536 
7537   //=== VK_EXT_depth_clip_enable ===
7538 
to_string(PipelineRasterizationDepthClipStateCreateFlagBitsEXT)7539   VULKAN_HPP_INLINE std::string to_string( PipelineRasterizationDepthClipStateCreateFlagBitsEXT )
7540   {
7541     return "(void)";
7542   }
7543 
7544   //=== VK_KHR_performance_query ===
7545 
to_string(PerformanceCounterDescriptionFlagBitsKHR value)7546   VULKAN_HPP_INLINE std::string to_string( PerformanceCounterDescriptionFlagBitsKHR value )
7547   {
7548     switch ( value )
7549     {
7550       case PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting: return "PerformanceImpacting";
7551       case PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted: return "ConcurrentlyImpacted";
7552       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7553     }
7554   }
7555 
to_string(PerformanceCounterScopeKHR value)7556   VULKAN_HPP_INLINE std::string to_string( PerformanceCounterScopeKHR value )
7557   {
7558     switch ( value )
7559     {
7560       case PerformanceCounterScopeKHR::eCommandBuffer: return "CommandBuffer";
7561       case PerformanceCounterScopeKHR::eRenderPass: return "RenderPass";
7562       case PerformanceCounterScopeKHR::eCommand: return "Command";
7563       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7564     }
7565   }
7566 
to_string(PerformanceCounterStorageKHR value)7567   VULKAN_HPP_INLINE std::string to_string( PerformanceCounterStorageKHR value )
7568   {
7569     switch ( value )
7570     {
7571       case PerformanceCounterStorageKHR::eInt32: return "Int32";
7572       case PerformanceCounterStorageKHR::eInt64: return "Int64";
7573       case PerformanceCounterStorageKHR::eUint32: return "Uint32";
7574       case PerformanceCounterStorageKHR::eUint64: return "Uint64";
7575       case PerformanceCounterStorageKHR::eFloat32: return "Float32";
7576       case PerformanceCounterStorageKHR::eFloat64: return "Float64";
7577       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7578     }
7579   }
7580 
to_string(PerformanceCounterUnitKHR value)7581   VULKAN_HPP_INLINE std::string to_string( PerformanceCounterUnitKHR value )
7582   {
7583     switch ( value )
7584     {
7585       case PerformanceCounterUnitKHR::eGeneric: return "Generic";
7586       case PerformanceCounterUnitKHR::ePercentage: return "Percentage";
7587       case PerformanceCounterUnitKHR::eNanoseconds: return "Nanoseconds";
7588       case PerformanceCounterUnitKHR::eBytes: return "Bytes";
7589       case PerformanceCounterUnitKHR::eBytesPerSecond: return "BytesPerSecond";
7590       case PerformanceCounterUnitKHR::eKelvin: return "Kelvin";
7591       case PerformanceCounterUnitKHR::eWatts: return "Watts";
7592       case PerformanceCounterUnitKHR::eVolts: return "Volts";
7593       case PerformanceCounterUnitKHR::eAmps: return "Amps";
7594       case PerformanceCounterUnitKHR::eHertz: return "Hertz";
7595       case PerformanceCounterUnitKHR::eCycles: return "Cycles";
7596       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7597     }
7598   }
7599 
to_string(AcquireProfilingLockFlagBitsKHR)7600   VULKAN_HPP_INLINE std::string to_string( AcquireProfilingLockFlagBitsKHR )
7601   {
7602     return "(void)";
7603   }
7604 
7605 #if defined( VK_USE_PLATFORM_IOS_MVK )
7606   //=== VK_MVK_ios_surface ===
7607 
to_string(IOSSurfaceCreateFlagBitsMVK)7608   VULKAN_HPP_INLINE std::string to_string( IOSSurfaceCreateFlagBitsMVK )
7609   {
7610     return "(void)";
7611   }
7612 #endif /*VK_USE_PLATFORM_IOS_MVK*/
7613 
7614 #if defined( VK_USE_PLATFORM_MACOS_MVK )
7615   //=== VK_MVK_macos_surface ===
7616 
to_string(MacOSSurfaceCreateFlagBitsMVK)7617   VULKAN_HPP_INLINE std::string to_string( MacOSSurfaceCreateFlagBitsMVK )
7618   {
7619     return "(void)";
7620   }
7621 #endif /*VK_USE_PLATFORM_MACOS_MVK*/
7622 
7623   //=== VK_EXT_debug_utils ===
7624 
to_string(DebugUtilsMessageSeverityFlagBitsEXT value)7625   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageSeverityFlagBitsEXT value )
7626   {
7627     switch ( value )
7628     {
7629       case DebugUtilsMessageSeverityFlagBitsEXT::eVerbose: return "Verbose";
7630       case DebugUtilsMessageSeverityFlagBitsEXT::eInfo: return "Info";
7631       case DebugUtilsMessageSeverityFlagBitsEXT::eWarning: return "Warning";
7632       case DebugUtilsMessageSeverityFlagBitsEXT::eError: return "Error";
7633       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7634     }
7635   }
7636 
to_string(DebugUtilsMessageTypeFlagBitsEXT value)7637   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessageTypeFlagBitsEXT value )
7638   {
7639     switch ( value )
7640     {
7641       case DebugUtilsMessageTypeFlagBitsEXT::eGeneral: return "General";
7642       case DebugUtilsMessageTypeFlagBitsEXT::eValidation: return "Validation";
7643       case DebugUtilsMessageTypeFlagBitsEXT::ePerformance: return "Performance";
7644       case DebugUtilsMessageTypeFlagBitsEXT::eDeviceAddressBinding: return "DeviceAddressBinding";
7645       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7646     }
7647   }
7648 
to_string(DebugUtilsMessengerCallbackDataFlagBitsEXT)7649   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCallbackDataFlagBitsEXT )
7650   {
7651     return "(void)";
7652   }
7653 
to_string(DebugUtilsMessengerCreateFlagBitsEXT)7654   VULKAN_HPP_INLINE std::string to_string( DebugUtilsMessengerCreateFlagBitsEXT )
7655   {
7656     return "(void)";
7657   }
7658 
7659   //=== VK_EXT_blend_operation_advanced ===
7660 
to_string(BlendOverlapEXT value)7661   VULKAN_HPP_INLINE std::string to_string( BlendOverlapEXT value )
7662   {
7663     switch ( value )
7664     {
7665       case BlendOverlapEXT::eUncorrelated: return "Uncorrelated";
7666       case BlendOverlapEXT::eDisjoint: return "Disjoint";
7667       case BlendOverlapEXT::eConjoint: return "Conjoint";
7668       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7669     }
7670   }
7671 
7672   //=== VK_NV_fragment_coverage_to_color ===
7673 
to_string(PipelineCoverageToColorStateCreateFlagBitsNV)7674   VULKAN_HPP_INLINE std::string to_string( PipelineCoverageToColorStateCreateFlagBitsNV )
7675   {
7676     return "(void)";
7677   }
7678 
7679   //=== VK_KHR_acceleration_structure ===
7680 
to_string(AccelerationStructureTypeKHR value)7681   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureTypeKHR value )
7682   {
7683     switch ( value )
7684     {
7685       case AccelerationStructureTypeKHR::eTopLevel: return "TopLevel";
7686       case AccelerationStructureTypeKHR::eBottomLevel: return "BottomLevel";
7687       case AccelerationStructureTypeKHR::eGeneric: return "Generic";
7688       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7689     }
7690   }
7691 
to_string(AccelerationStructureBuildTypeKHR value)7692   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureBuildTypeKHR value )
7693   {
7694     switch ( value )
7695     {
7696       case AccelerationStructureBuildTypeKHR::eHost: return "Host";
7697       case AccelerationStructureBuildTypeKHR::eDevice: return "Device";
7698       case AccelerationStructureBuildTypeKHR::eHostOrDevice: return "HostOrDevice";
7699       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7700     }
7701   }
7702 
to_string(GeometryFlagBitsKHR value)7703   VULKAN_HPP_INLINE std::string to_string( GeometryFlagBitsKHR value )
7704   {
7705     switch ( value )
7706     {
7707       case GeometryFlagBitsKHR::eOpaque: return "Opaque";
7708       case GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation: return "NoDuplicateAnyHitInvocation";
7709       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7710     }
7711   }
7712 
to_string(GeometryInstanceFlagBitsKHR value)7713   VULKAN_HPP_INLINE std::string to_string( GeometryInstanceFlagBitsKHR value )
7714   {
7715     switch ( value )
7716     {
7717       case GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable: return "TriangleFacingCullDisable";
7718       case GeometryInstanceFlagBitsKHR::eTriangleFlipFacing: return "TriangleFlipFacing";
7719       case GeometryInstanceFlagBitsKHR::eForceOpaque: return "ForceOpaque";
7720       case GeometryInstanceFlagBitsKHR::eForceNoOpaque: return "ForceNoOpaque";
7721       case GeometryInstanceFlagBitsKHR::eForceOpacityMicromap2StateEXT: return "ForceOpacityMicromap2StateEXT";
7722       case GeometryInstanceFlagBitsKHR::eDisableOpacityMicromapsEXT: return "DisableOpacityMicromapsEXT";
7723       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7724     }
7725   }
7726 
to_string(BuildAccelerationStructureFlagBitsKHR value)7727   VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureFlagBitsKHR value )
7728   {
7729     switch ( value )
7730     {
7731       case BuildAccelerationStructureFlagBitsKHR::eAllowUpdate: return "AllowUpdate";
7732       case BuildAccelerationStructureFlagBitsKHR::eAllowCompaction: return "AllowCompaction";
7733       case BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace: return "PreferFastTrace";
7734       case BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild: return "PreferFastBuild";
7735       case BuildAccelerationStructureFlagBitsKHR::eLowMemory: return "LowMemory";
7736       case BuildAccelerationStructureFlagBitsKHR::eMotionNV: return "MotionNV";
7737       case BuildAccelerationStructureFlagBitsKHR::eAllowOpacityMicromapUpdateEXT: return "AllowOpacityMicromapUpdateEXT";
7738       case BuildAccelerationStructureFlagBitsKHR::eAllowDisableOpacityMicromapsEXT: return "AllowDisableOpacityMicromapsEXT";
7739       case BuildAccelerationStructureFlagBitsKHR::eAllowOpacityMicromapDataUpdateEXT: return "AllowOpacityMicromapDataUpdateEXT";
7740 #if defined( VK_ENABLE_BETA_EXTENSIONS )
7741       case BuildAccelerationStructureFlagBitsKHR::eAllowDisplacementMicromapUpdateNV: return "AllowDisplacementMicromapUpdateNV";
7742 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
7743       case BuildAccelerationStructureFlagBitsKHR::eAllowDataAccess: return "AllowDataAccess";
7744       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7745     }
7746   }
7747 
to_string(CopyAccelerationStructureModeKHR value)7748   VULKAN_HPP_INLINE std::string to_string( CopyAccelerationStructureModeKHR value )
7749   {
7750     switch ( value )
7751     {
7752       case CopyAccelerationStructureModeKHR::eClone: return "Clone";
7753       case CopyAccelerationStructureModeKHR::eCompact: return "Compact";
7754       case CopyAccelerationStructureModeKHR::eSerialize: return "Serialize";
7755       case CopyAccelerationStructureModeKHR::eDeserialize: return "Deserialize";
7756       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7757     }
7758   }
7759 
to_string(GeometryTypeKHR value)7760   VULKAN_HPP_INLINE std::string to_string( GeometryTypeKHR value )
7761   {
7762     switch ( value )
7763     {
7764       case GeometryTypeKHR::eTriangles: return "Triangles";
7765       case GeometryTypeKHR::eAabbs: return "Aabbs";
7766       case GeometryTypeKHR::eInstances: return "Instances";
7767       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7768     }
7769   }
7770 
to_string(AccelerationStructureCompatibilityKHR value)7771   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCompatibilityKHR value )
7772   {
7773     switch ( value )
7774     {
7775       case AccelerationStructureCompatibilityKHR::eCompatible: return "Compatible";
7776       case AccelerationStructureCompatibilityKHR::eIncompatible: return "Incompatible";
7777       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7778     }
7779   }
7780 
to_string(AccelerationStructureCreateFlagBitsKHR value)7781   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureCreateFlagBitsKHR value )
7782   {
7783     switch ( value )
7784     {
7785       case AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay";
7786       case AccelerationStructureCreateFlagBitsKHR::eDescriptorBufferCaptureReplayEXT: return "DescriptorBufferCaptureReplayEXT";
7787       case AccelerationStructureCreateFlagBitsKHR::eMotionNV: return "MotionNV";
7788       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7789     }
7790   }
7791 
to_string(BuildAccelerationStructureModeKHR value)7792   VULKAN_HPP_INLINE std::string to_string( BuildAccelerationStructureModeKHR value )
7793   {
7794     switch ( value )
7795     {
7796       case BuildAccelerationStructureModeKHR::eBuild: return "Build";
7797       case BuildAccelerationStructureModeKHR::eUpdate: return "Update";
7798       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7799     }
7800   }
7801 
7802   //=== VK_KHR_ray_tracing_pipeline ===
7803 
to_string(RayTracingShaderGroupTypeKHR value)7804   VULKAN_HPP_INLINE std::string to_string( RayTracingShaderGroupTypeKHR value )
7805   {
7806     switch ( value )
7807     {
7808       case RayTracingShaderGroupTypeKHR::eGeneral: return "General";
7809       case RayTracingShaderGroupTypeKHR::eTrianglesHitGroup: return "TrianglesHitGroup";
7810       case RayTracingShaderGroupTypeKHR::eProceduralHitGroup: return "ProceduralHitGroup";
7811       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7812     }
7813   }
7814 
to_string(ShaderGroupShaderKHR value)7815   VULKAN_HPP_INLINE std::string to_string( ShaderGroupShaderKHR value )
7816   {
7817     switch ( value )
7818     {
7819       case ShaderGroupShaderKHR::eGeneral: return "General";
7820       case ShaderGroupShaderKHR::eClosestHit: return "ClosestHit";
7821       case ShaderGroupShaderKHR::eAnyHit: return "AnyHit";
7822       case ShaderGroupShaderKHR::eIntersection: return "Intersection";
7823       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7824     }
7825   }
7826 
7827   //=== VK_NV_framebuffer_mixed_samples ===
7828 
to_string(CoverageModulationModeNV value)7829   VULKAN_HPP_INLINE std::string to_string( CoverageModulationModeNV value )
7830   {
7831     switch ( value )
7832     {
7833       case CoverageModulationModeNV::eNone: return "None";
7834       case CoverageModulationModeNV::eRgb: return "Rgb";
7835       case CoverageModulationModeNV::eAlpha: return "Alpha";
7836       case CoverageModulationModeNV::eRgba: return "Rgba";
7837       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7838     }
7839   }
7840 
to_string(PipelineCoverageModulationStateCreateFlagBitsNV)7841   VULKAN_HPP_INLINE std::string to_string( PipelineCoverageModulationStateCreateFlagBitsNV )
7842   {
7843     return "(void)";
7844   }
7845 
7846   //=== VK_EXT_validation_cache ===
7847 
to_string(ValidationCacheHeaderVersionEXT value)7848   VULKAN_HPP_INLINE std::string to_string( ValidationCacheHeaderVersionEXT value )
7849   {
7850     switch ( value )
7851     {
7852       case ValidationCacheHeaderVersionEXT::eOne: return "One";
7853       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7854     }
7855   }
7856 
to_string(ValidationCacheCreateFlagBitsEXT)7857   VULKAN_HPP_INLINE std::string to_string( ValidationCacheCreateFlagBitsEXT )
7858   {
7859     return "(void)";
7860   }
7861 
7862   //=== VK_NV_shading_rate_image ===
7863 
to_string(ShadingRatePaletteEntryNV value)7864   VULKAN_HPP_INLINE std::string to_string( ShadingRatePaletteEntryNV value )
7865   {
7866     switch ( value )
7867     {
7868       case ShadingRatePaletteEntryNV::eNoInvocations: return "NoInvocations";
7869       case ShadingRatePaletteEntryNV::e16InvocationsPerPixel: return "16InvocationsPerPixel";
7870       case ShadingRatePaletteEntryNV::e8InvocationsPerPixel: return "8InvocationsPerPixel";
7871       case ShadingRatePaletteEntryNV::e4InvocationsPerPixel: return "4InvocationsPerPixel";
7872       case ShadingRatePaletteEntryNV::e2InvocationsPerPixel: return "2InvocationsPerPixel";
7873       case ShadingRatePaletteEntryNV::e1InvocationPerPixel: return "1InvocationPerPixel";
7874       case ShadingRatePaletteEntryNV::e1InvocationPer2X1Pixels: return "1InvocationPer2X1Pixels";
7875       case ShadingRatePaletteEntryNV::e1InvocationPer1X2Pixels: return "1InvocationPer1X2Pixels";
7876       case ShadingRatePaletteEntryNV::e1InvocationPer2X2Pixels: return "1InvocationPer2X2Pixels";
7877       case ShadingRatePaletteEntryNV::e1InvocationPer4X2Pixels: return "1InvocationPer4X2Pixels";
7878       case ShadingRatePaletteEntryNV::e1InvocationPer2X4Pixels: return "1InvocationPer2X4Pixels";
7879       case ShadingRatePaletteEntryNV::e1InvocationPer4X4Pixels: return "1InvocationPer4X4Pixels";
7880       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7881     }
7882   }
7883 
to_string(CoarseSampleOrderTypeNV value)7884   VULKAN_HPP_INLINE std::string to_string( CoarseSampleOrderTypeNV value )
7885   {
7886     switch ( value )
7887     {
7888       case CoarseSampleOrderTypeNV::eDefault: return "Default";
7889       case CoarseSampleOrderTypeNV::eCustom: return "Custom";
7890       case CoarseSampleOrderTypeNV::ePixelMajor: return "PixelMajor";
7891       case CoarseSampleOrderTypeNV::eSampleMajor: return "SampleMajor";
7892       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7893     }
7894   }
7895 
7896   //=== VK_NV_ray_tracing ===
7897 
to_string(AccelerationStructureMemoryRequirementsTypeNV value)7898   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMemoryRequirementsTypeNV value )
7899   {
7900     switch ( value )
7901     {
7902       case AccelerationStructureMemoryRequirementsTypeNV::eObject: return "Object";
7903       case AccelerationStructureMemoryRequirementsTypeNV::eBuildScratch: return "BuildScratch";
7904       case AccelerationStructureMemoryRequirementsTypeNV::eUpdateScratch: return "UpdateScratch";
7905       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7906     }
7907   }
7908 
7909   //=== VK_AMD_pipeline_compiler_control ===
7910 
to_string(PipelineCompilerControlFlagBitsAMD)7911   VULKAN_HPP_INLINE std::string to_string( PipelineCompilerControlFlagBitsAMD )
7912   {
7913     return "(void)";
7914   }
7915 
7916   //=== VK_KHR_global_priority ===
7917 
to_string(QueueGlobalPriorityKHR value)7918   VULKAN_HPP_INLINE std::string to_string( QueueGlobalPriorityKHR value )
7919   {
7920     switch ( value )
7921     {
7922       case QueueGlobalPriorityKHR::eLow: return "Low";
7923       case QueueGlobalPriorityKHR::eMedium: return "Medium";
7924       case QueueGlobalPriorityKHR::eHigh: return "High";
7925       case QueueGlobalPriorityKHR::eRealtime: return "Realtime";
7926       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7927     }
7928   }
7929 
7930   //=== VK_AMD_memory_overallocation_behavior ===
7931 
to_string(MemoryOverallocationBehaviorAMD value)7932   VULKAN_HPP_INLINE std::string to_string( MemoryOverallocationBehaviorAMD value )
7933   {
7934     switch ( value )
7935     {
7936       case MemoryOverallocationBehaviorAMD::eDefault: return "Default";
7937       case MemoryOverallocationBehaviorAMD::eAllowed: return "Allowed";
7938       case MemoryOverallocationBehaviorAMD::eDisallowed: return "Disallowed";
7939       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7940     }
7941   }
7942 
7943   //=== VK_INTEL_performance_query ===
7944 
to_string(PerformanceConfigurationTypeINTEL value)7945   VULKAN_HPP_INLINE std::string to_string( PerformanceConfigurationTypeINTEL value )
7946   {
7947     switch ( value )
7948     {
7949       case PerformanceConfigurationTypeINTEL::eCommandQueueMetricsDiscoveryActivated: return "CommandQueueMetricsDiscoveryActivated";
7950       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7951     }
7952   }
7953 
to_string(QueryPoolSamplingModeINTEL value)7954   VULKAN_HPP_INLINE std::string to_string( QueryPoolSamplingModeINTEL value )
7955   {
7956     switch ( value )
7957     {
7958       case QueryPoolSamplingModeINTEL::eManual: return "Manual";
7959       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7960     }
7961   }
7962 
to_string(PerformanceOverrideTypeINTEL value)7963   VULKAN_HPP_INLINE std::string to_string( PerformanceOverrideTypeINTEL value )
7964   {
7965     switch ( value )
7966     {
7967       case PerformanceOverrideTypeINTEL::eNullHardware: return "NullHardware";
7968       case PerformanceOverrideTypeINTEL::eFlushGpuCaches: return "FlushGpuCaches";
7969       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7970     }
7971   }
7972 
to_string(PerformanceParameterTypeINTEL value)7973   VULKAN_HPP_INLINE std::string to_string( PerformanceParameterTypeINTEL value )
7974   {
7975     switch ( value )
7976     {
7977       case PerformanceParameterTypeINTEL::eHwCountersSupported: return "HwCountersSupported";
7978       case PerformanceParameterTypeINTEL::eStreamMarkerValidBits: return "StreamMarkerValidBits";
7979       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7980     }
7981   }
7982 
to_string(PerformanceValueTypeINTEL value)7983   VULKAN_HPP_INLINE std::string to_string( PerformanceValueTypeINTEL value )
7984   {
7985     switch ( value )
7986     {
7987       case PerformanceValueTypeINTEL::eUint32: return "Uint32";
7988       case PerformanceValueTypeINTEL::eUint64: return "Uint64";
7989       case PerformanceValueTypeINTEL::eFloat: return "Float";
7990       case PerformanceValueTypeINTEL::eBool: return "Bool";
7991       case PerformanceValueTypeINTEL::eString: return "String";
7992       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
7993     }
7994   }
7995 
7996 #if defined( VK_USE_PLATFORM_FUCHSIA )
7997   //=== VK_FUCHSIA_imagepipe_surface ===
7998 
to_string(ImagePipeSurfaceCreateFlagBitsFUCHSIA)7999   VULKAN_HPP_INLINE std::string to_string( ImagePipeSurfaceCreateFlagBitsFUCHSIA )
8000   {
8001     return "(void)";
8002   }
8003 #endif /*VK_USE_PLATFORM_FUCHSIA*/
8004 
8005 #if defined( VK_USE_PLATFORM_METAL_EXT )
8006   //=== VK_EXT_metal_surface ===
8007 
to_string(MetalSurfaceCreateFlagBitsEXT)8008   VULKAN_HPP_INLINE std::string to_string( MetalSurfaceCreateFlagBitsEXT )
8009   {
8010     return "(void)";
8011   }
8012 #endif /*VK_USE_PLATFORM_METAL_EXT*/
8013 
8014   //=== VK_KHR_fragment_shading_rate ===
8015 
to_string(FragmentShadingRateCombinerOpKHR value)8016   VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateCombinerOpKHR value )
8017   {
8018     switch ( value )
8019     {
8020       case FragmentShadingRateCombinerOpKHR::eKeep: return "Keep";
8021       case FragmentShadingRateCombinerOpKHR::eReplace: return "Replace";
8022       case FragmentShadingRateCombinerOpKHR::eMin: return "Min";
8023       case FragmentShadingRateCombinerOpKHR::eMax: return "Max";
8024       case FragmentShadingRateCombinerOpKHR::eMul: return "Mul";
8025       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8026     }
8027   }
8028 
8029   //=== VK_AMD_shader_core_properties2 ===
8030 
to_string(ShaderCorePropertiesFlagBitsAMD)8031   VULKAN_HPP_INLINE std::string to_string( ShaderCorePropertiesFlagBitsAMD )
8032   {
8033     return "(void)";
8034   }
8035 
8036   //=== VK_EXT_validation_features ===
8037 
to_string(ValidationFeatureEnableEXT value)8038   VULKAN_HPP_INLINE std::string to_string( ValidationFeatureEnableEXT value )
8039   {
8040     switch ( value )
8041     {
8042       case ValidationFeatureEnableEXT::eGpuAssisted: return "GpuAssisted";
8043       case ValidationFeatureEnableEXT::eGpuAssistedReserveBindingSlot: return "GpuAssistedReserveBindingSlot";
8044       case ValidationFeatureEnableEXT::eBestPractices: return "BestPractices";
8045       case ValidationFeatureEnableEXT::eDebugPrintf: return "DebugPrintf";
8046       case ValidationFeatureEnableEXT::eSynchronizationValidation: return "SynchronizationValidation";
8047       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8048     }
8049   }
8050 
to_string(ValidationFeatureDisableEXT value)8051   VULKAN_HPP_INLINE std::string to_string( ValidationFeatureDisableEXT value )
8052   {
8053     switch ( value )
8054     {
8055       case ValidationFeatureDisableEXT::eAll: return "All";
8056       case ValidationFeatureDisableEXT::eShaders: return "Shaders";
8057       case ValidationFeatureDisableEXT::eThreadSafety: return "ThreadSafety";
8058       case ValidationFeatureDisableEXT::eApiParameters: return "ApiParameters";
8059       case ValidationFeatureDisableEXT::eObjectLifetimes: return "ObjectLifetimes";
8060       case ValidationFeatureDisableEXT::eCoreChecks: return "CoreChecks";
8061       case ValidationFeatureDisableEXT::eUniqueHandles: return "UniqueHandles";
8062       case ValidationFeatureDisableEXT::eShaderValidationCache: return "ShaderValidationCache";
8063       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8064     }
8065   }
8066 
8067   //=== VK_NV_coverage_reduction_mode ===
8068 
to_string(CoverageReductionModeNV value)8069   VULKAN_HPP_INLINE std::string to_string( CoverageReductionModeNV value )
8070   {
8071     switch ( value )
8072     {
8073       case CoverageReductionModeNV::eMerge: return "Merge";
8074       case CoverageReductionModeNV::eTruncate: return "Truncate";
8075       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8076     }
8077   }
8078 
to_string(PipelineCoverageReductionStateCreateFlagBitsNV)8079   VULKAN_HPP_INLINE std::string to_string( PipelineCoverageReductionStateCreateFlagBitsNV )
8080   {
8081     return "(void)";
8082   }
8083 
8084   //=== VK_EXT_provoking_vertex ===
8085 
to_string(ProvokingVertexModeEXT value)8086   VULKAN_HPP_INLINE std::string to_string( ProvokingVertexModeEXT value )
8087   {
8088     switch ( value )
8089     {
8090       case ProvokingVertexModeEXT::eFirstVertex: return "FirstVertex";
8091       case ProvokingVertexModeEXT::eLastVertex: return "LastVertex";
8092       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8093     }
8094   }
8095 
8096 #if defined( VK_USE_PLATFORM_WIN32_KHR )
8097   //=== VK_EXT_full_screen_exclusive ===
8098 
to_string(FullScreenExclusiveEXT value)8099   VULKAN_HPP_INLINE std::string to_string( FullScreenExclusiveEXT value )
8100   {
8101     switch ( value )
8102     {
8103       case FullScreenExclusiveEXT::eDefault: return "Default";
8104       case FullScreenExclusiveEXT::eAllowed: return "Allowed";
8105       case FullScreenExclusiveEXT::eDisallowed: return "Disallowed";
8106       case FullScreenExclusiveEXT::eApplicationControlled: return "ApplicationControlled";
8107       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8108     }
8109   }
8110 #endif /*VK_USE_PLATFORM_WIN32_KHR*/
8111 
8112   //=== VK_EXT_headless_surface ===
8113 
to_string(HeadlessSurfaceCreateFlagBitsEXT)8114   VULKAN_HPP_INLINE std::string to_string( HeadlessSurfaceCreateFlagBitsEXT )
8115   {
8116     return "(void)";
8117   }
8118 
8119   //=== VK_KHR_pipeline_executable_properties ===
8120 
to_string(PipelineExecutableStatisticFormatKHR value)8121   VULKAN_HPP_INLINE std::string to_string( PipelineExecutableStatisticFormatKHR value )
8122   {
8123     switch ( value )
8124     {
8125       case PipelineExecutableStatisticFormatKHR::eBool32: return "Bool32";
8126       case PipelineExecutableStatisticFormatKHR::eInt64: return "Int64";
8127       case PipelineExecutableStatisticFormatKHR::eUint64: return "Uint64";
8128       case PipelineExecutableStatisticFormatKHR::eFloat64: return "Float64";
8129       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8130     }
8131   }
8132 
8133   //=== VK_EXT_host_image_copy ===
8134 
to_string(HostImageCopyFlagBitsEXT value)8135   VULKAN_HPP_INLINE std::string to_string( HostImageCopyFlagBitsEXT value )
8136   {
8137     switch ( value )
8138     {
8139       case HostImageCopyFlagBitsEXT::eMemcpy: return "Memcpy";
8140       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8141     }
8142   }
8143 
8144   //=== VK_KHR_map_memory2 ===
8145 
to_string(MemoryUnmapFlagBitsKHR value)8146   VULKAN_HPP_INLINE std::string to_string( MemoryUnmapFlagBitsKHR value )
8147   {
8148     switch ( value )
8149     {
8150       case MemoryUnmapFlagBitsKHR::eReserveEXT: return "ReserveEXT";
8151       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8152     }
8153   }
8154 
8155   //=== VK_EXT_surface_maintenance1 ===
8156 
to_string(PresentScalingFlagBitsEXT value)8157   VULKAN_HPP_INLINE std::string to_string( PresentScalingFlagBitsEXT value )
8158   {
8159     switch ( value )
8160     {
8161       case PresentScalingFlagBitsEXT::eOneToOne: return "OneToOne";
8162       case PresentScalingFlagBitsEXT::eAspectRatioStretch: return "AspectRatioStretch";
8163       case PresentScalingFlagBitsEXT::eStretch: return "Stretch";
8164       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8165     }
8166   }
8167 
to_string(PresentGravityFlagBitsEXT value)8168   VULKAN_HPP_INLINE std::string to_string( PresentGravityFlagBitsEXT value )
8169   {
8170     switch ( value )
8171     {
8172       case PresentGravityFlagBitsEXT::eMin: return "Min";
8173       case PresentGravityFlagBitsEXT::eMax: return "Max";
8174       case PresentGravityFlagBitsEXT::eCentered: return "Centered";
8175       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8176     }
8177   }
8178 
8179   //=== VK_NV_device_generated_commands ===
8180 
to_string(IndirectStateFlagBitsNV value)8181   VULKAN_HPP_INLINE std::string to_string( IndirectStateFlagBitsNV value )
8182   {
8183     switch ( value )
8184     {
8185       case IndirectStateFlagBitsNV::eFlagFrontface: return "FlagFrontface";
8186       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8187     }
8188   }
8189 
to_string(IndirectCommandsTokenTypeNV value)8190   VULKAN_HPP_INLINE std::string to_string( IndirectCommandsTokenTypeNV value )
8191   {
8192     switch ( value )
8193     {
8194       case IndirectCommandsTokenTypeNV::eShaderGroup: return "ShaderGroup";
8195       case IndirectCommandsTokenTypeNV::eStateFlags: return "StateFlags";
8196       case IndirectCommandsTokenTypeNV::eIndexBuffer: return "IndexBuffer";
8197       case IndirectCommandsTokenTypeNV::eVertexBuffer: return "VertexBuffer";
8198       case IndirectCommandsTokenTypeNV::ePushConstant: return "PushConstant";
8199       case IndirectCommandsTokenTypeNV::eDrawIndexed: return "DrawIndexed";
8200       case IndirectCommandsTokenTypeNV::eDraw: return "Draw";
8201       case IndirectCommandsTokenTypeNV::eDrawTasks: return "DrawTasks";
8202       case IndirectCommandsTokenTypeNV::eDrawMeshTasks: return "DrawMeshTasks";
8203       case IndirectCommandsTokenTypeNV::ePipeline: return "Pipeline";
8204       case IndirectCommandsTokenTypeNV::eDispatch: return "Dispatch";
8205       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8206     }
8207   }
8208 
to_string(IndirectCommandsLayoutUsageFlagBitsNV value)8209   VULKAN_HPP_INLINE std::string to_string( IndirectCommandsLayoutUsageFlagBitsNV value )
8210   {
8211     switch ( value )
8212     {
8213       case IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess: return "ExplicitPreprocess";
8214       case IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences: return "IndexedSequences";
8215       case IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences: return "UnorderedSequences";
8216       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8217     }
8218   }
8219 
8220   //=== VK_EXT_depth_bias_control ===
8221 
to_string(DepthBiasRepresentationEXT value)8222   VULKAN_HPP_INLINE std::string to_string( DepthBiasRepresentationEXT value )
8223   {
8224     switch ( value )
8225     {
8226       case DepthBiasRepresentationEXT::eLeastRepresentableValueFormat: return "LeastRepresentableValueFormat";
8227       case DepthBiasRepresentationEXT::eLeastRepresentableValueForceUnorm: return "LeastRepresentableValueForceUnorm";
8228       case DepthBiasRepresentationEXT::eFloat: return "Float";
8229       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8230     }
8231   }
8232 
8233   //=== VK_EXT_device_memory_report ===
8234 
to_string(DeviceMemoryReportEventTypeEXT value)8235   VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportEventTypeEXT value )
8236   {
8237     switch ( value )
8238     {
8239       case DeviceMemoryReportEventTypeEXT::eAllocate: return "Allocate";
8240       case DeviceMemoryReportEventTypeEXT::eFree: return "Free";
8241       case DeviceMemoryReportEventTypeEXT::eImport: return "Import";
8242       case DeviceMemoryReportEventTypeEXT::eUnimport: return "Unimport";
8243       case DeviceMemoryReportEventTypeEXT::eAllocationFailed: return "AllocationFailed";
8244       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8245     }
8246   }
8247 
to_string(DeviceMemoryReportFlagBitsEXT)8248   VULKAN_HPP_INLINE std::string to_string( DeviceMemoryReportFlagBitsEXT )
8249   {
8250     return "(void)";
8251   }
8252 
8253   //=== VK_KHR_video_encode_queue ===
8254 
to_string(VideoEncodeCapabilityFlagBitsKHR value)8255   VULKAN_HPP_INLINE std::string to_string( VideoEncodeCapabilityFlagBitsKHR value )
8256   {
8257     switch ( value )
8258     {
8259       case VideoEncodeCapabilityFlagBitsKHR::ePrecedingExternallyEncodedBytes: return "PrecedingExternallyEncodedBytes";
8260       case VideoEncodeCapabilityFlagBitsKHR::eInsufficientBitstreamBufferRangeDetection: return "InsufficientBitstreamBufferRangeDetection";
8261       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8262     }
8263   }
8264 
to_string(VideoEncodeFeedbackFlagBitsKHR value)8265   VULKAN_HPP_INLINE std::string to_string( VideoEncodeFeedbackFlagBitsKHR value )
8266   {
8267     switch ( value )
8268     {
8269       case VideoEncodeFeedbackFlagBitsKHR::eBitstreamBufferOffset: return "BitstreamBufferOffset";
8270       case VideoEncodeFeedbackFlagBitsKHR::eBitstreamBytesWritten: return "BitstreamBytesWritten";
8271       case VideoEncodeFeedbackFlagBitsKHR::eBitstreamHasOverrides: return "BitstreamHasOverrides";
8272       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8273     }
8274   }
8275 
to_string(VideoEncodeUsageFlagBitsKHR value)8276   VULKAN_HPP_INLINE std::string to_string( VideoEncodeUsageFlagBitsKHR value )
8277   {
8278     switch ( value )
8279     {
8280       case VideoEncodeUsageFlagBitsKHR::eDefault: return "Default";
8281       case VideoEncodeUsageFlagBitsKHR::eTranscoding: return "Transcoding";
8282       case VideoEncodeUsageFlagBitsKHR::eStreaming: return "Streaming";
8283       case VideoEncodeUsageFlagBitsKHR::eRecording: return "Recording";
8284       case VideoEncodeUsageFlagBitsKHR::eConferencing: return "Conferencing";
8285       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8286     }
8287   }
8288 
to_string(VideoEncodeContentFlagBitsKHR value)8289   VULKAN_HPP_INLINE std::string to_string( VideoEncodeContentFlagBitsKHR value )
8290   {
8291     switch ( value )
8292     {
8293       case VideoEncodeContentFlagBitsKHR::eDefault: return "Default";
8294       case VideoEncodeContentFlagBitsKHR::eCamera: return "Camera";
8295       case VideoEncodeContentFlagBitsKHR::eDesktop: return "Desktop";
8296       case VideoEncodeContentFlagBitsKHR::eRendered: return "Rendered";
8297       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8298     }
8299   }
8300 
to_string(VideoEncodeTuningModeKHR value)8301   VULKAN_HPP_INLINE std::string to_string( VideoEncodeTuningModeKHR value )
8302   {
8303     switch ( value )
8304     {
8305       case VideoEncodeTuningModeKHR::eDefault: return "Default";
8306       case VideoEncodeTuningModeKHR::eHighQuality: return "HighQuality";
8307       case VideoEncodeTuningModeKHR::eLowLatency: return "LowLatency";
8308       case VideoEncodeTuningModeKHR::eUltraLowLatency: return "UltraLowLatency";
8309       case VideoEncodeTuningModeKHR::eLossless: return "Lossless";
8310       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8311     }
8312   }
8313 
to_string(VideoEncodeRateControlModeFlagBitsKHR value)8314   VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlModeFlagBitsKHR value )
8315   {
8316     switch ( value )
8317     {
8318       case VideoEncodeRateControlModeFlagBitsKHR::eDefault: return "Default";
8319       case VideoEncodeRateControlModeFlagBitsKHR::eDisabled: return "Disabled";
8320       case VideoEncodeRateControlModeFlagBitsKHR::eCbr: return "Cbr";
8321       case VideoEncodeRateControlModeFlagBitsKHR::eVbr: return "Vbr";
8322       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8323     }
8324   }
8325 
to_string(VideoEncodeFlagBitsKHR)8326   VULKAN_HPP_INLINE std::string to_string( VideoEncodeFlagBitsKHR )
8327   {
8328     return "(void)";
8329   }
8330 
to_string(VideoEncodeRateControlFlagBitsKHR)8331   VULKAN_HPP_INLINE std::string to_string( VideoEncodeRateControlFlagBitsKHR )
8332   {
8333     return "(void)";
8334   }
8335 
8336   //=== VK_NV_device_diagnostics_config ===
8337 
to_string(DeviceDiagnosticsConfigFlagBitsNV value)8338   VULKAN_HPP_INLINE std::string to_string( DeviceDiagnosticsConfigFlagBitsNV value )
8339   {
8340     switch ( value )
8341     {
8342       case DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo: return "EnableShaderDebugInfo";
8343       case DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking: return "EnableResourceTracking";
8344       case DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints: return "EnableAutomaticCheckpoints";
8345       case DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderErrorReporting: return "EnableShaderErrorReporting";
8346       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8347     }
8348   }
8349 
8350 #if defined( VK_USE_PLATFORM_METAL_EXT )
8351   //=== VK_EXT_metal_objects ===
8352 
to_string(ExportMetalObjectTypeFlagBitsEXT value)8353   VULKAN_HPP_INLINE std::string to_string( ExportMetalObjectTypeFlagBitsEXT value )
8354   {
8355     switch ( value )
8356     {
8357       case ExportMetalObjectTypeFlagBitsEXT::eMetalDevice: return "MetalDevice";
8358       case ExportMetalObjectTypeFlagBitsEXT::eMetalCommandQueue: return "MetalCommandQueue";
8359       case ExportMetalObjectTypeFlagBitsEXT::eMetalBuffer: return "MetalBuffer";
8360       case ExportMetalObjectTypeFlagBitsEXT::eMetalTexture: return "MetalTexture";
8361       case ExportMetalObjectTypeFlagBitsEXT::eMetalIosurface: return "MetalIosurface";
8362       case ExportMetalObjectTypeFlagBitsEXT::eMetalSharedEvent: return "MetalSharedEvent";
8363       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8364     }
8365   }
8366 #endif /*VK_USE_PLATFORM_METAL_EXT*/
8367 
8368   //=== VK_EXT_graphics_pipeline_library ===
8369 
to_string(GraphicsPipelineLibraryFlagBitsEXT value)8370   VULKAN_HPP_INLINE std::string to_string( GraphicsPipelineLibraryFlagBitsEXT value )
8371   {
8372     switch ( value )
8373     {
8374       case GraphicsPipelineLibraryFlagBitsEXT::eVertexInputInterface: return "VertexInputInterface";
8375       case GraphicsPipelineLibraryFlagBitsEXT::ePreRasterizationShaders: return "PreRasterizationShaders";
8376       case GraphicsPipelineLibraryFlagBitsEXT::eFragmentShader: return "FragmentShader";
8377       case GraphicsPipelineLibraryFlagBitsEXT::eFragmentOutputInterface: return "FragmentOutputInterface";
8378       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8379     }
8380   }
8381 
8382   //=== VK_NV_fragment_shading_rate_enums ===
8383 
to_string(FragmentShadingRateNV value)8384   VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateNV value )
8385   {
8386     switch ( value )
8387     {
8388       case FragmentShadingRateNV::e1InvocationPerPixel: return "1InvocationPerPixel";
8389       case FragmentShadingRateNV::e1InvocationPer1X2Pixels: return "1InvocationPer1X2Pixels";
8390       case FragmentShadingRateNV::e1InvocationPer2X1Pixels: return "1InvocationPer2X1Pixels";
8391       case FragmentShadingRateNV::e1InvocationPer2X2Pixels: return "1InvocationPer2X2Pixels";
8392       case FragmentShadingRateNV::e1InvocationPer2X4Pixels: return "1InvocationPer2X4Pixels";
8393       case FragmentShadingRateNV::e1InvocationPer4X2Pixels: return "1InvocationPer4X2Pixels";
8394       case FragmentShadingRateNV::e1InvocationPer4X4Pixels: return "1InvocationPer4X4Pixels";
8395       case FragmentShadingRateNV::e2InvocationsPerPixel: return "2InvocationsPerPixel";
8396       case FragmentShadingRateNV::e4InvocationsPerPixel: return "4InvocationsPerPixel";
8397       case FragmentShadingRateNV::e8InvocationsPerPixel: return "8InvocationsPerPixel";
8398       case FragmentShadingRateNV::e16InvocationsPerPixel: return "16InvocationsPerPixel";
8399       case FragmentShadingRateNV::eNoInvocations: return "NoInvocations";
8400       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8401     }
8402   }
8403 
to_string(FragmentShadingRateTypeNV value)8404   VULKAN_HPP_INLINE std::string to_string( FragmentShadingRateTypeNV value )
8405   {
8406     switch ( value )
8407     {
8408       case FragmentShadingRateTypeNV::eFragmentSize: return "FragmentSize";
8409       case FragmentShadingRateTypeNV::eEnums: return "Enums";
8410       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8411     }
8412   }
8413 
8414   //=== VK_NV_ray_tracing_motion_blur ===
8415 
to_string(AccelerationStructureMotionInstanceTypeNV value)8416   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInstanceTypeNV value )
8417   {
8418     switch ( value )
8419     {
8420       case AccelerationStructureMotionInstanceTypeNV::eStatic: return "Static";
8421       case AccelerationStructureMotionInstanceTypeNV::eMatrixMotion: return "MatrixMotion";
8422       case AccelerationStructureMotionInstanceTypeNV::eSrtMotion: return "SrtMotion";
8423       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8424     }
8425   }
8426 
to_string(AccelerationStructureMotionInfoFlagBitsNV)8427   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInfoFlagBitsNV )
8428   {
8429     return "(void)";
8430   }
8431 
to_string(AccelerationStructureMotionInstanceFlagBitsNV)8432   VULKAN_HPP_INLINE std::string to_string( AccelerationStructureMotionInstanceFlagBitsNV )
8433   {
8434     return "(void)";
8435   }
8436 
8437   //=== VK_EXT_image_compression_control ===
8438 
to_string(ImageCompressionFlagBitsEXT value)8439   VULKAN_HPP_INLINE std::string to_string( ImageCompressionFlagBitsEXT value )
8440   {
8441     switch ( value )
8442     {
8443       case ImageCompressionFlagBitsEXT::eDefault: return "Default";
8444       case ImageCompressionFlagBitsEXT::eFixedRateDefault: return "FixedRateDefault";
8445       case ImageCompressionFlagBitsEXT::eFixedRateExplicit: return "FixedRateExplicit";
8446       case ImageCompressionFlagBitsEXT::eDisabled: return "Disabled";
8447       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8448     }
8449   }
8450 
to_string(ImageCompressionFixedRateFlagBitsEXT value)8451   VULKAN_HPP_INLINE std::string to_string( ImageCompressionFixedRateFlagBitsEXT value )
8452   {
8453     switch ( value )
8454     {
8455       case ImageCompressionFixedRateFlagBitsEXT::eNone: return "None";
8456       case ImageCompressionFixedRateFlagBitsEXT::e1Bpc: return "1Bpc";
8457       case ImageCompressionFixedRateFlagBitsEXT::e2Bpc: return "2Bpc";
8458       case ImageCompressionFixedRateFlagBitsEXT::e3Bpc: return "3Bpc";
8459       case ImageCompressionFixedRateFlagBitsEXT::e4Bpc: return "4Bpc";
8460       case ImageCompressionFixedRateFlagBitsEXT::e5Bpc: return "5Bpc";
8461       case ImageCompressionFixedRateFlagBitsEXT::e6Bpc: return "6Bpc";
8462       case ImageCompressionFixedRateFlagBitsEXT::e7Bpc: return "7Bpc";
8463       case ImageCompressionFixedRateFlagBitsEXT::e8Bpc: return "8Bpc";
8464       case ImageCompressionFixedRateFlagBitsEXT::e9Bpc: return "9Bpc";
8465       case ImageCompressionFixedRateFlagBitsEXT::e10Bpc: return "10Bpc";
8466       case ImageCompressionFixedRateFlagBitsEXT::e11Bpc: return "11Bpc";
8467       case ImageCompressionFixedRateFlagBitsEXT::e12Bpc: return "12Bpc";
8468       case ImageCompressionFixedRateFlagBitsEXT::e13Bpc: return "13Bpc";
8469       case ImageCompressionFixedRateFlagBitsEXT::e14Bpc: return "14Bpc";
8470       case ImageCompressionFixedRateFlagBitsEXT::e15Bpc: return "15Bpc";
8471       case ImageCompressionFixedRateFlagBitsEXT::e16Bpc: return "16Bpc";
8472       case ImageCompressionFixedRateFlagBitsEXT::e17Bpc: return "17Bpc";
8473       case ImageCompressionFixedRateFlagBitsEXT::e18Bpc: return "18Bpc";
8474       case ImageCompressionFixedRateFlagBitsEXT::e19Bpc: return "19Bpc";
8475       case ImageCompressionFixedRateFlagBitsEXT::e20Bpc: return "20Bpc";
8476       case ImageCompressionFixedRateFlagBitsEXT::e21Bpc: return "21Bpc";
8477       case ImageCompressionFixedRateFlagBitsEXT::e22Bpc: return "22Bpc";
8478       case ImageCompressionFixedRateFlagBitsEXT::e23Bpc: return "23Bpc";
8479       case ImageCompressionFixedRateFlagBitsEXT::e24Bpc: return "24Bpc";
8480       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8481     }
8482   }
8483 
8484   //=== VK_EXT_device_fault ===
8485 
to_string(DeviceFaultAddressTypeEXT value)8486   VULKAN_HPP_INLINE std::string to_string( DeviceFaultAddressTypeEXT value )
8487   {
8488     switch ( value )
8489     {
8490       case DeviceFaultAddressTypeEXT::eNone: return "None";
8491       case DeviceFaultAddressTypeEXT::eReadInvalid: return "ReadInvalid";
8492       case DeviceFaultAddressTypeEXT::eWriteInvalid: return "WriteInvalid";
8493       case DeviceFaultAddressTypeEXT::eExecuteInvalid: return "ExecuteInvalid";
8494       case DeviceFaultAddressTypeEXT::eInstructionPointerUnknown: return "InstructionPointerUnknown";
8495       case DeviceFaultAddressTypeEXT::eInstructionPointerInvalid: return "InstructionPointerInvalid";
8496       case DeviceFaultAddressTypeEXT::eInstructionPointerFault: return "InstructionPointerFault";
8497       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8498     }
8499   }
8500 
to_string(DeviceFaultVendorBinaryHeaderVersionEXT value)8501   VULKAN_HPP_INLINE std::string to_string( DeviceFaultVendorBinaryHeaderVersionEXT value )
8502   {
8503     switch ( value )
8504     {
8505       case DeviceFaultVendorBinaryHeaderVersionEXT::eOne: return "One";
8506       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8507     }
8508   }
8509 
8510 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
8511   //=== VK_EXT_directfb_surface ===
8512 
to_string(DirectFBSurfaceCreateFlagBitsEXT)8513   VULKAN_HPP_INLINE std::string to_string( DirectFBSurfaceCreateFlagBitsEXT )
8514   {
8515     return "(void)";
8516   }
8517 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
8518 
8519   //=== VK_EXT_device_address_binding_report ===
8520 
to_string(DeviceAddressBindingFlagBitsEXT value)8521   VULKAN_HPP_INLINE std::string to_string( DeviceAddressBindingFlagBitsEXT value )
8522   {
8523     switch ( value )
8524     {
8525       case DeviceAddressBindingFlagBitsEXT::eInternalObject: return "InternalObject";
8526       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8527     }
8528   }
8529 
to_string(DeviceAddressBindingTypeEXT value)8530   VULKAN_HPP_INLINE std::string to_string( DeviceAddressBindingTypeEXT value )
8531   {
8532     switch ( value )
8533     {
8534       case DeviceAddressBindingTypeEXT::eBind: return "Bind";
8535       case DeviceAddressBindingTypeEXT::eUnbind: return "Unbind";
8536       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8537     }
8538   }
8539 
8540 #if defined( VK_USE_PLATFORM_FUCHSIA )
8541   //=== VK_FUCHSIA_buffer_collection ===
8542 
to_string(ImageConstraintsInfoFlagBitsFUCHSIA value)8543   VULKAN_HPP_INLINE std::string to_string( ImageConstraintsInfoFlagBitsFUCHSIA value )
8544   {
8545     switch ( value )
8546     {
8547       case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadRarely: return "CpuReadRarely";
8548       case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadOften: return "CpuReadOften";
8549       case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteRarely: return "CpuWriteRarely";
8550       case ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteOften: return "CpuWriteOften";
8551       case ImageConstraintsInfoFlagBitsFUCHSIA::eProtectedOptional: return "ProtectedOptional";
8552       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8553     }
8554   }
8555 
to_string(ImageFormatConstraintsFlagBitsFUCHSIA)8556   VULKAN_HPP_INLINE std::string to_string( ImageFormatConstraintsFlagBitsFUCHSIA )
8557   {
8558     return "(void)";
8559   }
8560 #endif /*VK_USE_PLATFORM_FUCHSIA*/
8561 
8562   //=== VK_EXT_frame_boundary ===
8563 
to_string(FrameBoundaryFlagBitsEXT value)8564   VULKAN_HPP_INLINE std::string to_string( FrameBoundaryFlagBitsEXT value )
8565   {
8566     switch ( value )
8567     {
8568       case FrameBoundaryFlagBitsEXT::eFrameEnd: return "FrameEnd";
8569       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8570     }
8571   }
8572 
8573 #if defined( VK_USE_PLATFORM_SCREEN_QNX )
8574   //=== VK_QNX_screen_surface ===
8575 
to_string(ScreenSurfaceCreateFlagBitsQNX)8576   VULKAN_HPP_INLINE std::string to_string( ScreenSurfaceCreateFlagBitsQNX )
8577   {
8578     return "(void)";
8579   }
8580 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
8581 
8582   //=== VK_EXT_opacity_micromap ===
8583 
to_string(MicromapTypeEXT value)8584   VULKAN_HPP_INLINE std::string to_string( MicromapTypeEXT value )
8585   {
8586     switch ( value )
8587     {
8588       case MicromapTypeEXT::eOpacityMicromap: return "OpacityMicromap";
8589 #if defined( VK_ENABLE_BETA_EXTENSIONS )
8590       case MicromapTypeEXT::eDisplacementMicromapNV: return "DisplacementMicromapNV";
8591 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
8592       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8593     }
8594   }
8595 
to_string(BuildMicromapFlagBitsEXT value)8596   VULKAN_HPP_INLINE std::string to_string( BuildMicromapFlagBitsEXT value )
8597   {
8598     switch ( value )
8599     {
8600       case BuildMicromapFlagBitsEXT::ePreferFastTrace: return "PreferFastTrace";
8601       case BuildMicromapFlagBitsEXT::ePreferFastBuild: return "PreferFastBuild";
8602       case BuildMicromapFlagBitsEXT::eAllowCompaction: return "AllowCompaction";
8603       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8604     }
8605   }
8606 
to_string(CopyMicromapModeEXT value)8607   VULKAN_HPP_INLINE std::string to_string( CopyMicromapModeEXT value )
8608   {
8609     switch ( value )
8610     {
8611       case CopyMicromapModeEXT::eClone: return "Clone";
8612       case CopyMicromapModeEXT::eSerialize: return "Serialize";
8613       case CopyMicromapModeEXT::eDeserialize: return "Deserialize";
8614       case CopyMicromapModeEXT::eCompact: return "Compact";
8615       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8616     }
8617   }
8618 
to_string(MicromapCreateFlagBitsEXT value)8619   VULKAN_HPP_INLINE std::string to_string( MicromapCreateFlagBitsEXT value )
8620   {
8621     switch ( value )
8622     {
8623       case MicromapCreateFlagBitsEXT::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay";
8624       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8625     }
8626   }
8627 
to_string(BuildMicromapModeEXT value)8628   VULKAN_HPP_INLINE std::string to_string( BuildMicromapModeEXT value )
8629   {
8630     switch ( value )
8631     {
8632       case BuildMicromapModeEXT::eBuild: return "Build";
8633       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8634     }
8635   }
8636 
to_string(OpacityMicromapFormatEXT value)8637   VULKAN_HPP_INLINE std::string to_string( OpacityMicromapFormatEXT value )
8638   {
8639     switch ( value )
8640     {
8641       case OpacityMicromapFormatEXT::e2State: return "2State";
8642       case OpacityMicromapFormatEXT::e4State: return "4State";
8643       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8644     }
8645   }
8646 
to_string(OpacityMicromapSpecialIndexEXT value)8647   VULKAN_HPP_INLINE std::string to_string( OpacityMicromapSpecialIndexEXT value )
8648   {
8649     switch ( value )
8650     {
8651       case OpacityMicromapSpecialIndexEXT::eFullyTransparent: return "FullyTransparent";
8652       case OpacityMicromapSpecialIndexEXT::eFullyOpaque: return "FullyOpaque";
8653       case OpacityMicromapSpecialIndexEXT::eFullyUnknownTransparent: return "FullyUnknownTransparent";
8654       case OpacityMicromapSpecialIndexEXT::eFullyUnknownOpaque: return "FullyUnknownOpaque";
8655       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8656     }
8657   }
8658 
8659 #if defined( VK_ENABLE_BETA_EXTENSIONS )
8660   //=== VK_NV_displacement_micromap ===
8661 
to_string(DisplacementMicromapFormatNV value)8662   VULKAN_HPP_INLINE std::string to_string( DisplacementMicromapFormatNV value )
8663   {
8664     switch ( value )
8665     {
8666       case DisplacementMicromapFormatNV::e64Triangles64Bytes: return "64Triangles64Bytes";
8667       case DisplacementMicromapFormatNV::e256Triangles128Bytes: return "256Triangles128Bytes";
8668       case DisplacementMicromapFormatNV::e1024Triangles128Bytes: return "1024Triangles128Bytes";
8669       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8670     }
8671   }
8672 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
8673 
8674   //=== VK_ARM_scheduling_controls ===
8675 
to_string(PhysicalDeviceSchedulingControlsFlagBitsARM value)8676   VULKAN_HPP_INLINE std::string to_string( PhysicalDeviceSchedulingControlsFlagBitsARM value )
8677   {
8678     switch ( value )
8679     {
8680       case PhysicalDeviceSchedulingControlsFlagBitsARM::eShaderCoreCount: return "ShaderCoreCount";
8681       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8682     }
8683   }
8684 
8685   //=== VK_NV_memory_decompression ===
8686 
to_string(MemoryDecompressionMethodFlagBitsNV value)8687   VULKAN_HPP_INLINE std::string to_string( MemoryDecompressionMethodFlagBitsNV value )
8688   {
8689     switch ( value )
8690     {
8691       case MemoryDecompressionMethodFlagBitsNV::eGdeflate10: return "Gdeflate10";
8692       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8693     }
8694   }
8695 
8696   //=== VK_EXT_subpass_merge_feedback ===
8697 
to_string(SubpassMergeStatusEXT value)8698   VULKAN_HPP_INLINE std::string to_string( SubpassMergeStatusEXT value )
8699   {
8700     switch ( value )
8701     {
8702       case SubpassMergeStatusEXT::eMerged: return "Merged";
8703       case SubpassMergeStatusEXT::eDisallowed: return "Disallowed";
8704       case SubpassMergeStatusEXT::eNotMergedSideEffects: return "NotMergedSideEffects";
8705       case SubpassMergeStatusEXT::eNotMergedSamplesMismatch: return "NotMergedSamplesMismatch";
8706       case SubpassMergeStatusEXT::eNotMergedViewsMismatch: return "NotMergedViewsMismatch";
8707       case SubpassMergeStatusEXT::eNotMergedAliasing: return "NotMergedAliasing";
8708       case SubpassMergeStatusEXT::eNotMergedDependencies: return "NotMergedDependencies";
8709       case SubpassMergeStatusEXT::eNotMergedIncompatibleInputAttachment: return "NotMergedIncompatibleInputAttachment";
8710       case SubpassMergeStatusEXT::eNotMergedTooManyAttachments: return "NotMergedTooManyAttachments";
8711       case SubpassMergeStatusEXT::eNotMergedInsufficientStorage: return "NotMergedInsufficientStorage";
8712       case SubpassMergeStatusEXT::eNotMergedDepthStencilCount: return "NotMergedDepthStencilCount";
8713       case SubpassMergeStatusEXT::eNotMergedResolveAttachmentReuse: return "NotMergedResolveAttachmentReuse";
8714       case SubpassMergeStatusEXT::eNotMergedSingleSubpass: return "NotMergedSingleSubpass";
8715       case SubpassMergeStatusEXT::eNotMergedUnspecified: return "NotMergedUnspecified";
8716       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8717     }
8718   }
8719 
8720   //=== VK_LUNARG_direct_driver_loading ===
8721 
to_string(DirectDriverLoadingModeLUNARG value)8722   VULKAN_HPP_INLINE std::string to_string( DirectDriverLoadingModeLUNARG value )
8723   {
8724     switch ( value )
8725     {
8726       case DirectDriverLoadingModeLUNARG::eExclusive: return "Exclusive";
8727       case DirectDriverLoadingModeLUNARG::eInclusive: return "Inclusive";
8728       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8729     }
8730   }
8731 
to_string(DirectDriverLoadingFlagBitsLUNARG)8732   VULKAN_HPP_INLINE std::string to_string( DirectDriverLoadingFlagBitsLUNARG )
8733   {
8734     return "(void)";
8735   }
8736 
8737   //=== VK_NV_optical_flow ===
8738 
to_string(OpticalFlowUsageFlagBitsNV value)8739   VULKAN_HPP_INLINE std::string to_string( OpticalFlowUsageFlagBitsNV value )
8740   {
8741     switch ( value )
8742     {
8743       case OpticalFlowUsageFlagBitsNV::eUnknown: return "Unknown";
8744       case OpticalFlowUsageFlagBitsNV::eInput: return "Input";
8745       case OpticalFlowUsageFlagBitsNV::eOutput: return "Output";
8746       case OpticalFlowUsageFlagBitsNV::eHint: return "Hint";
8747       case OpticalFlowUsageFlagBitsNV::eCost: return "Cost";
8748       case OpticalFlowUsageFlagBitsNV::eGlobalFlow: return "GlobalFlow";
8749       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8750     }
8751   }
8752 
to_string(OpticalFlowGridSizeFlagBitsNV value)8753   VULKAN_HPP_INLINE std::string to_string( OpticalFlowGridSizeFlagBitsNV value )
8754   {
8755     switch ( value )
8756     {
8757       case OpticalFlowGridSizeFlagBitsNV::eUnknown: return "Unknown";
8758       case OpticalFlowGridSizeFlagBitsNV::e1X1: return "1X1";
8759       case OpticalFlowGridSizeFlagBitsNV::e2X2: return "2X2";
8760       case OpticalFlowGridSizeFlagBitsNV::e4X4: return "4X4";
8761       case OpticalFlowGridSizeFlagBitsNV::e8X8: return "8X8";
8762       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8763     }
8764   }
8765 
to_string(OpticalFlowPerformanceLevelNV value)8766   VULKAN_HPP_INLINE std::string to_string( OpticalFlowPerformanceLevelNV value )
8767   {
8768     switch ( value )
8769     {
8770       case OpticalFlowPerformanceLevelNV::eUnknown: return "Unknown";
8771       case OpticalFlowPerformanceLevelNV::eSlow: return "Slow";
8772       case OpticalFlowPerformanceLevelNV::eMedium: return "Medium";
8773       case OpticalFlowPerformanceLevelNV::eFast: return "Fast";
8774       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8775     }
8776   }
8777 
to_string(OpticalFlowSessionBindingPointNV value)8778   VULKAN_HPP_INLINE std::string to_string( OpticalFlowSessionBindingPointNV value )
8779   {
8780     switch ( value )
8781     {
8782       case OpticalFlowSessionBindingPointNV::eUnknown: return "Unknown";
8783       case OpticalFlowSessionBindingPointNV::eInput: return "Input";
8784       case OpticalFlowSessionBindingPointNV::eReference: return "Reference";
8785       case OpticalFlowSessionBindingPointNV::eHint: return "Hint";
8786       case OpticalFlowSessionBindingPointNV::eFlowVector: return "FlowVector";
8787       case OpticalFlowSessionBindingPointNV::eBackwardFlowVector: return "BackwardFlowVector";
8788       case OpticalFlowSessionBindingPointNV::eCost: return "Cost";
8789       case OpticalFlowSessionBindingPointNV::eBackwardCost: return "BackwardCost";
8790       case OpticalFlowSessionBindingPointNV::eGlobalFlow: return "GlobalFlow";
8791       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8792     }
8793   }
8794 
to_string(OpticalFlowSessionCreateFlagBitsNV value)8795   VULKAN_HPP_INLINE std::string to_string( OpticalFlowSessionCreateFlagBitsNV value )
8796   {
8797     switch ( value )
8798     {
8799       case OpticalFlowSessionCreateFlagBitsNV::eEnableHint: return "EnableHint";
8800       case OpticalFlowSessionCreateFlagBitsNV::eEnableCost: return "EnableCost";
8801       case OpticalFlowSessionCreateFlagBitsNV::eEnableGlobalFlow: return "EnableGlobalFlow";
8802       case OpticalFlowSessionCreateFlagBitsNV::eAllowRegions: return "AllowRegions";
8803       case OpticalFlowSessionCreateFlagBitsNV::eBothDirections: return "BothDirections";
8804       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8805     }
8806   }
8807 
to_string(OpticalFlowExecuteFlagBitsNV value)8808   VULKAN_HPP_INLINE std::string to_string( OpticalFlowExecuteFlagBitsNV value )
8809   {
8810     switch ( value )
8811     {
8812       case OpticalFlowExecuteFlagBitsNV::eDisableTemporalHints: return "DisableTemporalHints";
8813       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8814     }
8815   }
8816 
8817   //=== VK_KHR_maintenance5 ===
8818 
to_string(PipelineCreateFlagBits2KHR value)8819   VULKAN_HPP_INLINE std::string to_string( PipelineCreateFlagBits2KHR value )
8820   {
8821     switch ( value )
8822     {
8823       case PipelineCreateFlagBits2KHR::eDisableOptimization: return "DisableOptimization";
8824       case PipelineCreateFlagBits2KHR::eAllowDerivatives: return "AllowDerivatives";
8825       case PipelineCreateFlagBits2KHR::eDerivative: return "Derivative";
8826       case PipelineCreateFlagBits2KHR::eEnableLegacyDitheringEXT: return "EnableLegacyDitheringEXT";
8827       case PipelineCreateFlagBits2KHR::eViewIndexFromDeviceIndex: return "ViewIndexFromDeviceIndex";
8828       case PipelineCreateFlagBits2KHR::eDispatchBase: return "DispatchBase";
8829       case PipelineCreateFlagBits2KHR::eDeferCompileNV: return "DeferCompileNV";
8830       case PipelineCreateFlagBits2KHR::eCaptureStatistics: return "CaptureStatistics";
8831       case PipelineCreateFlagBits2KHR::eCaptureInternalRepresentations: return "CaptureInternalRepresentations";
8832       case PipelineCreateFlagBits2KHR::eFailOnPipelineCompileRequired: return "FailOnPipelineCompileRequired";
8833       case PipelineCreateFlagBits2KHR::eEarlyReturnOnFailure: return "EarlyReturnOnFailure";
8834       case PipelineCreateFlagBits2KHR::eLinkTimeOptimizationEXT: return "LinkTimeOptimizationEXT";
8835       case PipelineCreateFlagBits2KHR::eRetainLinkTimeOptimizationInfoEXT: return "RetainLinkTimeOptimizationInfoEXT";
8836       case PipelineCreateFlagBits2KHR::eLibrary: return "Library";
8837       case PipelineCreateFlagBits2KHR::eRayTracingSkipTriangles: return "RayTracingSkipTriangles";
8838       case PipelineCreateFlagBits2KHR::eRayTracingSkipAabbs: return "RayTracingSkipAabbs";
8839       case PipelineCreateFlagBits2KHR::eRayTracingNoNullAnyHitShaders: return "RayTracingNoNullAnyHitShaders";
8840       case PipelineCreateFlagBits2KHR::eRayTracingNoNullClosestHitShaders: return "RayTracingNoNullClosestHitShaders";
8841       case PipelineCreateFlagBits2KHR::eRayTracingNoNullMissShaders: return "RayTracingNoNullMissShaders";
8842       case PipelineCreateFlagBits2KHR::eRayTracingNoNullIntersectionShaders: return "RayTracingNoNullIntersectionShaders";
8843       case PipelineCreateFlagBits2KHR::eRayTracingShaderGroupHandleCaptureReplay: return "RayTracingShaderGroupHandleCaptureReplay";
8844       case PipelineCreateFlagBits2KHR::eIndirectBindableNV: return "IndirectBindableNV";
8845       case PipelineCreateFlagBits2KHR::eRayTracingAllowMotionNV: return "RayTracingAllowMotionNV";
8846       case PipelineCreateFlagBits2KHR::eRenderingFragmentShadingRateAttachment: return "RenderingFragmentShadingRateAttachment";
8847       case PipelineCreateFlagBits2KHR::eRenderingFragmentDensityMapAttachmentEXT: return "RenderingFragmentDensityMapAttachmentEXT";
8848       case PipelineCreateFlagBits2KHR::eRayTracingOpacityMicromapEXT: return "RayTracingOpacityMicromapEXT";
8849       case PipelineCreateFlagBits2KHR::eColorAttachmentFeedbackLoopEXT: return "ColorAttachmentFeedbackLoopEXT";
8850       case PipelineCreateFlagBits2KHR::eDepthStencilAttachmentFeedbackLoopEXT: return "DepthStencilAttachmentFeedbackLoopEXT";
8851       case PipelineCreateFlagBits2KHR::eNoProtectedAccessEXT: return "NoProtectedAccessEXT";
8852       case PipelineCreateFlagBits2KHR::eProtectedAccessOnlyEXT: return "ProtectedAccessOnlyEXT";
8853       case PipelineCreateFlagBits2KHR::eRayTracingDisplacementMicromapNV: return "RayTracingDisplacementMicromapNV";
8854       case PipelineCreateFlagBits2KHR::eDescriptorBufferEXT: return "DescriptorBufferEXT";
8855       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8856     }
8857   }
8858 
to_string(BufferUsageFlagBits2KHR value)8859   VULKAN_HPP_INLINE std::string to_string( BufferUsageFlagBits2KHR value )
8860   {
8861     switch ( value )
8862     {
8863       case BufferUsageFlagBits2KHR::eTransferSrc: return "TransferSrc";
8864       case BufferUsageFlagBits2KHR::eTransferDst: return "TransferDst";
8865       case BufferUsageFlagBits2KHR::eUniformTexelBuffer: return "UniformTexelBuffer";
8866       case BufferUsageFlagBits2KHR::eStorageTexelBuffer: return "StorageTexelBuffer";
8867       case BufferUsageFlagBits2KHR::eUniformBuffer: return "UniformBuffer";
8868       case BufferUsageFlagBits2KHR::eStorageBuffer: return "StorageBuffer";
8869       case BufferUsageFlagBits2KHR::eIndexBuffer: return "IndexBuffer";
8870       case BufferUsageFlagBits2KHR::eVertexBuffer: return "VertexBuffer";
8871       case BufferUsageFlagBits2KHR::eIndirectBuffer: return "IndirectBuffer";
8872 #if defined( VK_ENABLE_BETA_EXTENSIONS )
8873       case BufferUsageFlagBits2KHR::eExecutionGraphScratchAMDX: return "ExecutionGraphScratchAMDX";
8874 #endif /*VK_ENABLE_BETA_EXTENSIONS*/
8875       case BufferUsageFlagBits2KHR::eConditionalRenderingEXT: return "ConditionalRenderingEXT";
8876       case BufferUsageFlagBits2KHR::eShaderBindingTable: return "ShaderBindingTable";
8877       case BufferUsageFlagBits2KHR::eTransformFeedbackBufferEXT: return "TransformFeedbackBufferEXT";
8878       case BufferUsageFlagBits2KHR::eTransformFeedbackCounterBufferEXT: return "TransformFeedbackCounterBufferEXT";
8879       case BufferUsageFlagBits2KHR::eVideoDecodeSrc: return "VideoDecodeSrc";
8880       case BufferUsageFlagBits2KHR::eVideoDecodeDst: return "VideoDecodeDst";
8881       case BufferUsageFlagBits2KHR::eVideoEncodeDst: return "VideoEncodeDst";
8882       case BufferUsageFlagBits2KHR::eVideoEncodeSrc: return "VideoEncodeSrc";
8883       case BufferUsageFlagBits2KHR::eShaderDeviceAddress: return "ShaderDeviceAddress";
8884       case BufferUsageFlagBits2KHR::eAccelerationStructureBuildInputReadOnly: return "AccelerationStructureBuildInputReadOnly";
8885       case BufferUsageFlagBits2KHR::eAccelerationStructureStorage: return "AccelerationStructureStorage";
8886       case BufferUsageFlagBits2KHR::eSamplerDescriptorBufferEXT: return "SamplerDescriptorBufferEXT";
8887       case BufferUsageFlagBits2KHR::eResourceDescriptorBufferEXT: return "ResourceDescriptorBufferEXT";
8888       case BufferUsageFlagBits2KHR::ePushDescriptorsDescriptorBufferEXT: return "PushDescriptorsDescriptorBufferEXT";
8889       case BufferUsageFlagBits2KHR::eMicromapBuildInputReadOnlyEXT: return "MicromapBuildInputReadOnlyEXT";
8890       case BufferUsageFlagBits2KHR::eMicromapStorageEXT: return "MicromapStorageEXT";
8891       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8892     }
8893   }
8894 
8895   //=== VK_EXT_shader_object ===
8896 
to_string(ShaderCreateFlagBitsEXT value)8897   VULKAN_HPP_INLINE std::string to_string( ShaderCreateFlagBitsEXT value )
8898   {
8899     switch ( value )
8900     {
8901       case ShaderCreateFlagBitsEXT::eLinkStage: return "LinkStage";
8902       case ShaderCreateFlagBitsEXT::eAllowVaryingSubgroupSize: return "AllowVaryingSubgroupSize";
8903       case ShaderCreateFlagBitsEXT::eRequireFullSubgroups: return "RequireFullSubgroups";
8904       case ShaderCreateFlagBitsEXT::eNoTaskShader: return "NoTaskShader";
8905       case ShaderCreateFlagBitsEXT::eDispatchBase: return "DispatchBase";
8906       case ShaderCreateFlagBitsEXT::eFragmentShadingRateAttachment: return "FragmentShadingRateAttachment";
8907       case ShaderCreateFlagBitsEXT::eFragmentDensityMapAttachment: return "FragmentDensityMapAttachment";
8908       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8909     }
8910   }
8911 
to_string(ShaderCodeTypeEXT value)8912   VULKAN_HPP_INLINE std::string to_string( ShaderCodeTypeEXT value )
8913   {
8914     switch ( value )
8915     {
8916       case ShaderCodeTypeEXT::eBinary: return "Binary";
8917       case ShaderCodeTypeEXT::eSpirv: return "Spirv";
8918       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8919     }
8920   }
8921 
8922   //=== VK_NV_ray_tracing_invocation_reorder ===
8923 
to_string(RayTracingInvocationReorderModeNV value)8924   VULKAN_HPP_INLINE std::string to_string( RayTracingInvocationReorderModeNV value )
8925   {
8926     switch ( value )
8927     {
8928       case RayTracingInvocationReorderModeNV::eNone: return "None";
8929       case RayTracingInvocationReorderModeNV::eReorder: return "Reorder";
8930       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8931     }
8932   }
8933 
8934   //=== VK_EXT_layer_settings ===
8935 
to_string(LayerSettingTypeEXT value)8936   VULKAN_HPP_INLINE std::string to_string( LayerSettingTypeEXT value )
8937   {
8938     switch ( value )
8939     {
8940       case LayerSettingTypeEXT::eBool32: return "Bool32";
8941       case LayerSettingTypeEXT::eInt32: return "Int32";
8942       case LayerSettingTypeEXT::eInt64: return "Int64";
8943       case LayerSettingTypeEXT::eUint32: return "Uint32";
8944       case LayerSettingTypeEXT::eUint64: return "Uint64";
8945       case LayerSettingTypeEXT::eFloat32: return "Float32";
8946       case LayerSettingTypeEXT::eFloat64: return "Float64";
8947       case LayerSettingTypeEXT::eString: return "String";
8948       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8949     }
8950   }
8951 
8952   //=== VK_NV_low_latency2 ===
8953 
to_string(LatencyMarkerNV value)8954   VULKAN_HPP_INLINE std::string to_string( LatencyMarkerNV value )
8955   {
8956     switch ( value )
8957     {
8958       case LatencyMarkerNV::eSimulationStart: return "SimulationStart";
8959       case LatencyMarkerNV::eSimulationEnd: return "SimulationEnd";
8960       case LatencyMarkerNV::eRendersubmitStart: return "RendersubmitStart";
8961       case LatencyMarkerNV::eRendersubmitEnd: return "RendersubmitEnd";
8962       case LatencyMarkerNV::ePresentStart: return "PresentStart";
8963       case LatencyMarkerNV::ePresentEnd: return "PresentEnd";
8964       case LatencyMarkerNV::eInputSample: return "InputSample";
8965       case LatencyMarkerNV::eTriggerFlash: return "TriggerFlash";
8966       case LatencyMarkerNV::eOutOfBandRendersubmitStart: return "OutOfBandRendersubmitStart";
8967       case LatencyMarkerNV::eOutOfBandRendersubmitEnd: return "OutOfBandRendersubmitEnd";
8968       case LatencyMarkerNV::eOutOfBandPresentStart: return "OutOfBandPresentStart";
8969       case LatencyMarkerNV::eOutOfBandPresentEnd: return "OutOfBandPresentEnd";
8970       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8971     }
8972   }
8973 
to_string(OutOfBandQueueTypeNV value)8974   VULKAN_HPP_INLINE std::string to_string( OutOfBandQueueTypeNV value )
8975   {
8976     switch ( value )
8977     {
8978       case OutOfBandQueueTypeNV::eRender: return "Render";
8979       case OutOfBandQueueTypeNV::ePresent: return "Present";
8980       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8981     }
8982   }
8983 
8984   //=== VK_KHR_cooperative_matrix ===
8985 
to_string(ScopeKHR value)8986   VULKAN_HPP_INLINE std::string to_string( ScopeKHR value )
8987   {
8988     switch ( value )
8989     {
8990       case ScopeKHR::eDevice: return "Device";
8991       case ScopeKHR::eWorkgroup: return "Workgroup";
8992       case ScopeKHR::eSubgroup: return "Subgroup";
8993       case ScopeKHR::eQueueFamily: return "QueueFamily";
8994       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
8995     }
8996   }
8997 
to_string(ComponentTypeKHR value)8998   VULKAN_HPP_INLINE std::string to_string( ComponentTypeKHR value )
8999   {
9000     switch ( value )
9001     {
9002       case ComponentTypeKHR::eFloat16: return "Float16";
9003       case ComponentTypeKHR::eFloat32: return "Float32";
9004       case ComponentTypeKHR::eFloat64: return "Float64";
9005       case ComponentTypeKHR::eSint8: return "Sint8";
9006       case ComponentTypeKHR::eSint16: return "Sint16";
9007       case ComponentTypeKHR::eSint32: return "Sint32";
9008       case ComponentTypeKHR::eSint64: return "Sint64";
9009       case ComponentTypeKHR::eUint8: return "Uint8";
9010       case ComponentTypeKHR::eUint16: return "Uint16";
9011       case ComponentTypeKHR::eUint32: return "Uint32";
9012       case ComponentTypeKHR::eUint64: return "Uint64";
9013       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
9014     }
9015   }
9016 
9017   //=== VK_QCOM_image_processing2 ===
9018 
to_string(BlockMatchWindowCompareModeQCOM value)9019   VULKAN_HPP_INLINE std::string to_string( BlockMatchWindowCompareModeQCOM value )
9020   {
9021     switch ( value )
9022     {
9023       case BlockMatchWindowCompareModeQCOM::eMin: return "Min";
9024       case BlockMatchWindowCompareModeQCOM::eMax: return "Max";
9025       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
9026     }
9027   }
9028 
9029   //=== VK_QCOM_filter_cubic_weights ===
9030 
to_string(CubicFilterWeightsQCOM value)9031   VULKAN_HPP_INLINE std::string to_string( CubicFilterWeightsQCOM value )
9032   {
9033     switch ( value )
9034     {
9035       case CubicFilterWeightsQCOM::eCatmullRom: return "CatmullRom";
9036       case CubicFilterWeightsQCOM::eZeroTangentCardinal: return "ZeroTangentCardinal";
9037       case CubicFilterWeightsQCOM::eBSpline: return "BSpline";
9038       case CubicFilterWeightsQCOM::eMitchellNetravali: return "MitchellNetravali";
9039       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
9040     }
9041   }
9042 
9043   //=== VK_MSFT_layered_driver ===
9044 
to_string(LayeredDriverUnderlyingApiMSFT value)9045   VULKAN_HPP_INLINE std::string to_string( LayeredDriverUnderlyingApiMSFT value )
9046   {
9047     switch ( value )
9048     {
9049       case LayeredDriverUnderlyingApiMSFT::eNone: return "None";
9050       case LayeredDriverUnderlyingApiMSFT::eD3D12: return "D3D12";
9051       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
9052     }
9053   }
9054 
9055   //=== VK_KHR_line_rasterization ===
9056 
to_string(LineRasterizationModeKHR value)9057   VULKAN_HPP_INLINE std::string to_string( LineRasterizationModeKHR value )
9058   {
9059     switch ( value )
9060     {
9061       case LineRasterizationModeKHR::eDefault: return "Default";
9062       case LineRasterizationModeKHR::eRectangular: return "Rectangular";
9063       case LineRasterizationModeKHR::eBresenham: return "Bresenham";
9064       case LineRasterizationModeKHR::eRectangularSmooth: return "RectangularSmooth";
9065       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
9066     }
9067   }
9068 
9069   //=== VK_KHR_calibrated_timestamps ===
9070 
to_string(TimeDomainKHR value)9071   VULKAN_HPP_INLINE std::string to_string( TimeDomainKHR value )
9072   {
9073     switch ( value )
9074     {
9075       case TimeDomainKHR::eDevice: return "Device";
9076       case TimeDomainKHR::eClockMonotonic: return "ClockMonotonic";
9077       case TimeDomainKHR::eClockMonotonicRaw: return "ClockMonotonicRaw";
9078       case TimeDomainKHR::eQueryPerformanceCounter: return "QueryPerformanceCounter";
9079       default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast<uint32_t>( value ) ) + " )";
9080     }
9081   }
9082 
9083 }  // namespace VULKAN_HPP_NAMESPACE
9084 #endif
9085