Refactor a bunch of common code from the "leaf" scripts to a new functions,
authorIan Romanick <idr@us.ibm.com>
Mon, 18 Apr 2005 19:42:23 +0000 (19:42 +0000)
committerIan Romanick <idr@us.ibm.com>
Mon, 18 Apr 2005 19:42:23 +0000 (19:42 +0000)
parse_GL_API, in gl_XML.py.

12 files changed:
src/mesa/glapi/glX_XML.py
src/mesa/glapi/glX_doc.py
src/mesa/glapi/glX_proto_send.py
src/mesa/glapi/glX_proto_size.py
src/mesa/glapi/gl_SPARC_asm.py
src/mesa/glapi/gl_XML.py
src/mesa/glapi/gl_apitemp.py
src/mesa/glapi/gl_enums.py
src/mesa/glapi/gl_offsets.py
src/mesa/glapi/gl_procs.py
src/mesa/glapi/gl_table.py
src/mesa/glapi/gl_x86_asm.py

index 81c94a5..53f89b3 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import license
 import sys, getopt, string
index ea90d53..fa2d812 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import glX_XML
 import license
@@ -266,13 +262,4 @@ if __name__ == '__main__':
                        file_name = val
 
        dh = PrintGlxProtoText()
-
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index d78e07e..1ac46c3 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import glX_XML
 import license
@@ -889,13 +885,6 @@ if __name__ == '__main__':
        else:
                show_usage()
 
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
 
        dh.debug = debug
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index 5049545..a1c0497 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import glX_XML
 import license
@@ -533,12 +529,4 @@ if __name__ == '__main__':
        else:
                show_usage()
 
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index 2623e1b..76a545d 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import license
 import sys, getopt
@@ -123,12 +119,4 @@ if __name__ == '__main__':
                print "ERROR: Invalid mode \"%s\" specified." % mode
                show_usage()
 
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index 38ccc53..64422be 100644 (file)
@@ -48,6 +48,24 @@ def is_attr_true( attrs, name ):
                raise RuntimeError('Invalid value "%s" for boolean "%s".' % (value, name))
 
 
+def parse_GL_API( handler, file_name ):
+       """Boiler-plate code to create an XML parser and use it.
+
+       Creates an XML parser and uses that parser with the application
+       supplied SAX callback, which should be derived from
+       FilterGLAPISpecBase.
+       """
+       parser = make_parser()
+       parser.setFeature(feature_namespaces, 1)
+       parser.setContentHandler( handler )
+
+       handler.printHeader()
+       parser.parse( file_name )
+
+       handler.printFooter()
+       return
+       
+
 class glItem:
        """Generic class on which all other API entity types are based."""
 
index 4c4bcd4..6f30a16 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import license
 import sys, getopt
@@ -216,14 +212,4 @@ if __name__ == '__main__':
                        file_name = val
 
        dh = PrintGlOffsets()
-
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
-
+       gl_XML.parse_GL_API( dh, file_name )
index 177c95f..615f797 100644 (file)
 # Authors:
 #    Zack Rusin <zack@kde.org>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import license
 import gl_XML
 import sys, getopt
@@ -235,13 +231,4 @@ if __name__ == '__main__':
                        file_name = val
 
        dh = PrintGlEnums()
-
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index 95657b8..f47eaa2 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import license
 import sys, getopt
@@ -65,13 +61,4 @@ if __name__ == '__main__':
                        file_name = val
 
        dh = PrintGlOffsets()
-
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index b5d51b0..75bb844 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import license
 import gl_XML
 import sys, getopt
@@ -128,7 +124,7 @@ def show_usage():
 
 if __name__ == '__main__':
        file_name = "gl_API.xml"
-    
+
        try:
                (args, trail) = getopt.getopt(sys.argv[1:], "f:m:")
        except Exception,e:
@@ -147,13 +143,4 @@ if __name__ == '__main__':
                                show_usage()
 
        dh = PrintGlProcs( long_string )
-
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index 30dcd41..3b8f1ca 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import license
 import sys, getopt
@@ -82,13 +78,4 @@ if __name__ == '__main__':
                        file_name = val
 
        dh = PrintGlTable()
-
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )
index 02dafa5..85a5c2b 100644 (file)
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
-from xml.sax import saxutils
-from xml.sax import make_parser
-from xml.sax.handler import feature_namespaces
-
 import gl_XML
 import license
 import sys, getopt
@@ -247,12 +243,4 @@ if __name__ == '__main__':
                print "ERROR: Invalid mode \"%s\" specified." % mode
                show_usage()
 
-       parser = make_parser()
-       parser.setFeature(feature_namespaces, 1)
-       parser.setContentHandler(dh)
-
-       f = open(file_name)
-
-       dh.printHeader()
-       parser.parse(f)
-       dh.printFooter()
+       gl_XML.parse_GL_API( dh, file_name )