From bb7c9038ddc74ba2015297bef1b2ece9616ec88c Mon Sep 17 00:00:00 2001 From: Mike Stroyan Date: Tue, 5 Apr 2016 16:40:30 -0600 Subject: Change from using lxml to xml.etree Use xml.etree for xml parsing for greater portability. Change-Id: Ic9b3b487e9b363a89d134d048db9fa79fbd66f6f --- generator.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'generator.py') 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 *) around the name and # use the PFN_cmdnameproc naming convention. # Done by walking the tree for 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 = '' + 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) # -- cgit v1.2.3