diff options
author | Cole Robinson <crobinso@redhat.com> | 2009-10-02 10:34:54 -0400 |
---|---|---|
committer | Cole Robinson <crobinso@redhat.com> | 2009-10-05 13:31:37 -0400 |
commit | e4fc56ea6973f3c431ab30a4e658cb9db302457d (patch) | |
tree | 0b1a8281f8bb1fa412ab0b1d7fbe081c3b2b88d7 /generator.py | |
parent | f444dc0597044265a7585d94c3a19875ded35cac (diff) | |
download | libvirt-python-split-e4fc56ea6973f3c431ab30a4e658cb9db302457d.tar.gz libvirt-python-split-e4fc56ea6973f3c431ab30a4e658cb9db302457d.tar.xz libvirt-python-split-e4fc56ea6973f3c431ab30a4e658cb9db302457d.zip |
python: Remove FastParser from generator.
FastParser uses sgmlop, a non-standard python module meant as a replacement
for xmllib (which is deprecated since python 2.0). Fedora doesn't even carry
this module, and the generator doesn't have high performance requirements, so
just rip the code out.
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Diffstat (limited to 'generator.py')
-rwxr-xr-x | generator.py | 53 |
1 files changed, 3 insertions, 50 deletions
diff --git a/generator.py b/generator.py index 48ad14b..3d142e9 100755 --- a/generator.py +++ b/generator.py @@ -26,52 +26,9 @@ else: ####################################################################### import os import xmllib -try: - import sgmlop -except ImportError: - sgmlop = None # accelerator not available debug = 0 -if sgmlop: - class FastParser: - """sgmlop based XML parser. this is typically 15x faster - than SlowParser...""" - - def __init__(self, target): - - # setup callbacks - self.finish_starttag = target.start - self.finish_endtag = target.end - self.handle_data = target.data - self.handle_cdata = target.cdata - - # activate parser - self.parser = sgmlop.XMLParser() - self.parser.register(self) - self.feed = self.parser.feed - self.entity = { - "amp": "&", "gt": ">", "lt": "<", - "apos": "'", "quot": '"' - } - - def close(self): - try: - self.parser.close() - finally: - self.parser = self.feed = None # nuke circular reference - - def handle_entityref(self, entity): - # <string> entity - try: - self.handle_data(self.entity[entity]) - except KeyError: - self.handle_data("&%s;" % entity) - -else: - FastParser = None - - class SlowParser(xmllib.XMLParser): """slow but safe standard parser, based on the XML parser in Python's standard library.""" @@ -83,13 +40,9 @@ class SlowParser(xmllib.XMLParser): self.unknown_endtag = target.end xmllib.XMLParser.__init__(self) -def getparser(target = None): - # get the fastest available parser, and attach it to an - # unmarshalling object. return both objects. - if target is None: - target = docParser() - if FastParser: - return FastParser(target), target +def getparser(): + # Attach parser to an unmarshalling object. return both objects. + target = docParser() return SlowParser(target), target class docParser: |