From 6af6a6931240b1e05b3bb7cc2b56df29193ea65a Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Thu, 17 Mar 2005 20:56:13 +0000 Subject: Minor refactoring and code tweaking. The only notable chage is that FilterGLAPISpecBase::xref is replaced by FilterGLAPISpecBase::functions_by_name. The notable difference between the two is that ::functions_by_name includes all functions, whether they have an assigned offset or not. This feature will be useful (necessary) when more server-side code is generated. --- src/mesa/glapi/glX_XML.py | 7 +++---- src/mesa/glapi/gl_XML.py | 15 ++++++--------- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/src/mesa/glapi/glX_XML.py b/src/mesa/glapi/glX_XML.py index 3f6f841d78..98be996570 100644 --- a/src/mesa/glapi/glX_XML.py +++ b/src/mesa/glapi/glX_XML.py @@ -416,10 +416,9 @@ class glXFunction(gl_XML.glFunction): def variable_length_parameter(self): - for param in self.fn_parameters: - if param.is_variable_length_array(): - return param - + if len(self.variable_length_parameters): + return self.variable_length_parameters[0] + return None diff --git a/src/mesa/glapi/gl_XML.py b/src/mesa/glapi/gl_XML.py index 3f87a5712a..1c4e734f85 100644 --- a/src/mesa/glapi/gl_XML.py +++ b/src/mesa/glapi/gl_XML.py @@ -529,22 +529,18 @@ class glFunctionIterator: class FilterGLAPISpecBase(saxutils.XMLFilterBase): name = "a" license = "The license for this file is unspecified." - functions = {} next_alias = -2 - types = {} - xref = {} current_object = None - factory = None - current_category = "" def __init__(self): saxutils.XMLFilterBase.__init__(self) self.functions = {} self.types = {} - self.xref = {} + self.functions_by_name = {} self.factory = glItemFactory() self.header_tag = None self.undef_list = [] + self.current_category = "" def find_type(self,type_name): @@ -556,8 +552,7 @@ class FilterGLAPISpecBase(saxutils.XMLFilterBase): def find_function(self,function_name): - index = self.xref[function_name] - return self.functions[index] + return self.functions_by_name[function_name] def functionIterator(self): @@ -626,7 +621,9 @@ class FilterGLAPISpecBase(saxutils.XMLFilterBase): self.next_alias -= 1 self.functions[index] = obj - self.xref[obj.name] = index + + self.functions_by_name[obj.name] = obj + elif object_type == "type": self.types[obj.name] = obj -- cgit v1.2.3