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