MCPcopy Index your code
hub / github.com/KhronosGroup/Vulkan-Docs / generate

Method generate

scripts/test_vulkan_object.py:21–164  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

19 BaseGenerator.__init__(self)
20
21 def generate(self):
22 print(f'VulkanObject generated for {self.targetApiName}')
23
24 version = self.vk.headerVersionComplete.split('.')
25 assert len(version) == 3
26 # These asserts are just here until we have a more robust way to get these values
27 if self.targetApiName == 'vulkan':
28 assert version[0] == '1'
29 assert version[1] == '4'
30 elif self.targetApiName == 'vulkansc':
31 assert version[0] == '1'
32 assert version[1] == '0'
33
34 # isinstance() will make sure we are reporting valid types exposed in the
35 # VulkanObject interface for each .
36 # Note - it will not recursively inspect each member class
37 assert isinstance(self.vk.headerVersion, str)
38 for handle in self.vk.handles.values():
39 assert isinstance(handle, Handle)
40 for command in self.vk.commands.values():
41 assert isinstance(command, Command)
42 for param in command.params:
43 assert isinstance(param, Param)
44 for extension in command.extensions:
45 assert isinstance(extension, str)
46 for task in command.tasks:
47 assert isinstance(task, str)
48 for code in command.successCodes:
49 assert isinstance(code, str)
50 for code in command.errorCodes:
51 assert isinstance(code, str)
52 for struct in self.vk.structs.values():
53 assert isinstance(struct, Struct)
54 for member in struct.members:
55 assert isinstance(member, Member)
56 for extension in struct.extensions:
57 assert isinstance(extension, str)
58 for alias in struct.aliases:
59 assert isinstance(alias, str)
60 for e in struct.extends:
61 assert isinstance(e, str)
62 for e in struct.extendedBy:
63 assert isinstance(e, str)
64 for enum in self.vk.enums.values():
65 assert isinstance(enum, Enum)
66 for alias in enum.aliases:
67 assert isinstance(alias, str)
68 for e in enum.extensions:
69 assert isinstance(e, str)
70 for e in enum.fieldExtensions:
71 assert isinstance(e, str)
72 for field in enum.fields:
73 assert isinstance(field, EnumField)
74 for alias in field.aliases:
75 assert isinstance(alias, str)
76 for e in field.extensions:
77 assert isinstance(e, str)
78 for bitmask in self.vk.bitmasks.values():

Callers

nothing calls this directly

Calls 1

valuesMethod · 0.80

Tested by

no test coverage detected