MCPcopy
hub / github.com/KhronosGroup/Vulkan-Docs / supportedAccessTypes

Method supportedAccessTypes

scripts/syncgenerator.py:200–231  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

198 self.writeBlock(f'supportedPipelineStages{self.file_suffix}', output)
199
200 def supportedAccessTypes(self):
201 output = []
202 for (flag, alias) in self.access_flags:
203 (condition, result) = self.evaluateAccessIfdef(flag)
204 if result:
205 if alias is None:
206 output.append(f'|ename:{flag} |')
207 else:
208 output.append(f'|ename:{flag}, +\n ename:{alias} |')
209
210 if flag not in self.access_flag_stage_support:
211 output.append('\tAny')
212 else:
213 stages = self.access_flag_stage_support[flag]
214 for index, stage in enumerate(stages):
215 end_symbol = ''
216 if index != (len(stages) - 1) and len(stages) > 1:
217 end_symbol = ','
218
219 if not self.isSameConditionPipelineAccess(stage, flag):
220 (condition, result) = self.evaluatePipelineIfdef(stage)
221 else:
222 result = True
223
224 if result:
225 output.append(f'\tename:{stage}{end_symbol}')
226 else:
227 output.append(f'// {condition} -> {result}, not emitting \tename:{stage}{end_symbol}')
228 else:
229 output.append(f'// {condition} -> {result}, not emitting | ename:{flag} | <flag stage support>')
230
231 self.writeBlock(f'supportedAccessTypes{self.file_suffix}', output)
232
233 def pipelineOrdering(self):
234 for pipelineinfo in self.pipeline_order_info:

Callers 1

endFileMethod · 0.95

Calls 5

evaluateAccessIfdefMethod · 0.95
evaluatePipelineIfdefMethod · 0.95
writeBlockMethod · 0.95
appendMethod · 0.80

Tested by

no test coverage detected