<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Sep 15, 2017 at 7:10 AM, Lionel Landwerlin <span dir="ltr"><<a href="mailto:lionel.g.landwerlin@intel.com" target="_blank">lionel.g.landwerlin@intel.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">It will be used to store extension numbers as well.<br>
<br>
Signed-off-by: Lionel Landwerlin <<a href="mailto:lionel.g.landwerlin@intel.com">lionel.g.landwerlin@intel.com</a><wbr>><br>
---<br>
src/vulkan/util/gen_enum_to_<wbr>str.py | 19 +++++++++----------<br>
1 file changed, 9 insertions(+), 10 deletions(-)<br>
<br>
diff --git a/src/vulkan/util/gen_enum_to_<wbr>str.py b/src/vulkan/util/gen_enum_to_<wbr>str.py<br>
index d09e256965f..28bfbfde235 100644<br>
--- a/src/vulkan/util/gen_enum_to_<wbr>str.py<br>
+++ b/src/vulkan/util/gen_enum_to_<wbr>str.py<br>
@@ -98,19 +98,18 @@ H_TEMPLATE = Template(textwrap.dedent(u"""\<br>
#endif"""),<br>
output_encoding='utf-8')<br>
<br>
-<br>
-class EnumFactory(object):<br>
+class NamedFactory(object):<br>
"""Factory for creating enums."""<br>
<br>
def __init__(self, type_):<br>
self.registry = {}<br>
self.type = type_<br>
<br>
- def __call__(self, name):<br>
+ def __call__(self, *args):<br>
try:<br>
- return self.registry[name]<br>
+ return self.registry[args[0]]<br>
except KeyError:<br>
- n = self.registry[name] = self.type(name)<br>
+ n = self.registry[args[0]] = self.type(*args)<br>
return n<br>
<br>
<br>
@@ -128,7 +127,7 @@ def xml_parser(filename):<br>
This parser is a memory efficient iterative XML parser that returns a list<br>
of VkEnum objects.<br>
"""<br>
- efactory = EnumFactory(VkEnum)<br>
+ enum_factory = NamedFactory(VkEnum)<br>
<br>
with open(filename, 'rb') as f:<br>
context = iter(et.iterparse(f, events=('start', 'end')))<br>
@@ -142,19 +141,19 @@ def xml_parser(filename):<br>
if event == 'end' and elem.tag == 'enums':<br>
type_ = elem.attrib.get('type')<br>
if type_ == 'enum':<br>
- enum = efactory(elem.attrib['name'])<br>
+ enum = enum_factory(elem.attrib['<wbr>name'])<br>
enum.values.extend([e.attrib['<wbr>name'] for e in elem<br>
if e.tag == 'enum'])<br>
elif event == 'end' and elem.tag == 'extension':<br>
if elem.attrib['supported'] != 'vulkan':<br>
continue<br>
for e in elem.findall('.//enum[@<wbr>extends][@offset]'):<br>
- enum = efactory(e.attrib['extends'])<br>
- enum.values.append(e.attrib['<wbr>name'])<br>
+ enum = enum_factory(e.attrib['<wbr>extends'])<br>
+ enum.values.append(e.attrib['<wbr>name'],)<br></blockquote><div><br></div><div>There's an extra comma here I don't think you need.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
root.clear()<br>
<br>
- return efactory.registry.values()<br>
+ return enum_factory.registry.values()<br>
<br>
<br>
def main():<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.14.1<br>
<br>
______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div><br></div></div>