scripts: Convert ugly case statment to nice array
Since this was codegen'd, we can just create a static array for the
object type conversion and do away with all of the switch statement
mess.
Change-Id: I5fb20778d64f0675afa9c1563e2d44d22d5b4a02
diff --git a/scripts/helper_file_generator.py b/scripts/helper_file_generator.py
index 2dcb7d9..f4f555c 100644
--- a/scripts/helper_file_generator.py
+++ b/scripts/helper_file_generator.py
@@ -560,32 +560,25 @@
# Output a conversion routine from the layer object definitions to the debug report definitions
object_types_header += '\n'
- object_types_header += '// Helper function to get Official Vulkan object type enum from the internal layers version\n'
- object_types_header += 'VkDebugReportObjectTypeEXT GetDebugReportEnum(VulkanObjectType object_type) {\n\n'
- object_types_header += ' switch (object_type) {\n'
- object_types_header += ' case kVulkanObjectTypeUnknown:\n'
- object_types_header += ' return VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;\n\n'
+ object_types_header += '// Helper array to get Official Vulkan object type enum from the internal layers version\n'
+ object_types_header += 'const VkDebugReportObjectTypeEXT GetDebugReportEnum[] = {\n'
for object_type in type_list:
done = False
- object_types_header += ' case %s:\n' % object_type
search_type = object_type.replace("kVulkanObjectType", "").lower()
for vk_object_type in self.debug_report_object_types:
target_type = vk_object_type.replace("VK_DEBUG_REPORT_OBJECT_TYPE_", "").lower()
target_type = target_type[:-4]
target_type = target_type.replace("_", "")
if search_type == target_type:
- object_types_header += ' return %s;\n\n' % vk_object_type
+ object_types_header += ' %s, // %s\n' % (vk_object_type, object_type)
done = True
break
if done == False:
if object_type == 'kVulkanObjectTypeDebugReportCallbackEXT':
- object_types_header += ' return VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT;\n\n'
+ object_types_header += ' VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT, // kVulkanObjectTypeDebugReportCallbackEXT\n'
else:
- object_types_header += ' return VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;\n\n'
- object_types_header += ' default:\n'
- object_types_header += ' return VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;\n\n'
- object_types_header += ' }\n'
- object_types_header += '}\n'
+ object_types_header += ' VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT; // No Match\n'
+ object_types_header += '};\n'
return object_types_header
#
# Determine if a structure needs a safe_struct helper function