aboutsummaryrefslogtreecommitdiff
path: root/generator.py
diff options
context:
space:
mode:
authorMike Stroyan <stroyan@google.com>2016-04-05 16:40:30 -0600
committerDustin Graves <dustin@lunarg.com>2016-04-07 16:19:05 -0600
commitbb7c9038ddc74ba2015297bef1b2ece9616ec88c (patch)
tree5612a5707cd9956e0c1efc90c58b321ba4991a9b /generator.py
parentaafe8bc6c1138f7c499b03f175ef9fcbd79b6a77 (diff)
downloadusermoji-bb7c9038ddc74ba2015297bef1b2ece9616ec88c.tar.xz
Change from using lxml to xml.etree
Use xml.etree for xml parsing for greater portability. Change-Id: Ic9b3b487e9b363a89d134d048db9fa79fbd66f6f
Diffstat (limited to 'generator.py')
-rw-r--r--generator.py16
1 files changed, 12 insertions, 4 deletions
diff --git a/generator.py b/generator.py
index e489b5de..c2ee28e4 100644
--- a/generator.py
+++ b/generator.py
@@ -23,7 +23,7 @@
import os,re,sys
from collections import namedtuple
-from lxml import etree
+import xml.etree.ElementTree as etree
def write( *args, **kwargs ):
file = kwargs.pop('file',sys.stdout)
@@ -32,7 +32,7 @@ def write( *args, **kwargs ):
file.write( end )
# noneStr - returns string argument, or "" if argument is None.
-# Used in converting lxml Elements into text.
+# Used in converting etree Elements into text.
# str - string to convert
def noneStr(str):
if (str):
@@ -679,7 +679,7 @@ class OutputGenerator:
# For typedefs, add (APIENTRY *<name>) around the name and
# use the PFN_cmdnameproc naming convention.
# Done by walking the tree for <proto> element by element.
- # lxml.etree has elem.text followed by (elem[i], elem[i].tail)
+ # etree has elem.text followed by (elem[i], elem[i].tail)
# for each child element and any following text
# Leading text
pdecl += noneStr(proto.text)
@@ -3013,7 +3013,15 @@ class ParamCheckerOutputGenerator(OutputGenerator):
#if value not in self.stypes:
# print('WARNING: {} is not part of the VkStructureType enumeration [{}]'.format(value, typeName))
else:
- value = '<ERROR>'
+ value = typeName
+ # Remove EXT
+ value = re.sub('EXT', '', value)
+ # Add underscore between lowercase then uppercase
+ value = re.sub('([a-z0-9])([A-Z])', r'\1_\2', value)
+ # Change to uppercase
+ value = value.upper()
+ # Add STRUCTURE_TYPE_
+ value = re.sub('VK_', 'VK_STRUCTURE_TYPE_', value)
# Store the required type value
self.structTypes[typeName] = self.StructType(name=name, value=value)
#