diff --git a/python/generator.py b/python/generator.py index 3d142e9c1d0d5fb3c8b05aa25aef4edbb19a6597..9ec91d8e834df4cbfa02a5eb909ec49bd902b316 100755 --- a/python/generator.py +++ b/python/generator.py @@ -25,32 +25,27 @@ else: # ####################################################################### import os -import xmllib +import xml.sax debug = 0 -class SlowParser(xmllib.XMLParser): - """slow but safe standard parser, based on the XML parser in - Python's standard library.""" - - def __init__(self, target): - self.unknown_starttag = target.start - self.handle_data = target.data - self.handle_cdata = target.cdata - self.unknown_endtag = target.end - xmllib.XMLParser.__init__(self) - def getparser(): # Attach parser to an unmarshalling object. return both objects. target = docParser() - return SlowParser(target), target + parser = xml.sax.make_parser() + parser.setContentHandler(target) + return parser, target -class docParser: +class docParser(xml.sax.handler.ContentHandler): def __init__(self): self._methodname = None self._data = [] self.in_function = 0 + self.startElement = self.start + self.endElement = self.end + self.characters = self.data + def close(self): if debug: print "close"