Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit cef803f

Browse files
committed
Remove mentions of the nonexisting SlowParser in xmlrpc.client.
1 parent 317185a commit cef803f

1 file changed

Lines changed: 19 additions & 28 deletions

File tree

Lib/xmlrpc/client.py

Lines changed: 19 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,6 @@
113113
XML-RPC value
114114
Binary binary data wrapper
115115
116-
SlowParser Slow but safe standard parser (based on xmllib)
117116
Marshaller Generate an XML-RPC params chunk from a Python data structure
118117
Unmarshaller Unmarshal an XML-RPC response from incoming XML event message
119118
Transport Handles an HTTP transaction to an XML-RPC server
@@ -136,6 +135,7 @@
136135

137136
import re, time, operator
138137
import http.client
138+
from xml.parsers import expat
139139

140140
# --------------------------------------------------------------------
141141
# Internal stuff
@@ -439,30 +439,23 @@ def _binary(data):
439439
# --------------------------------------------------------------------
440440
# XML parsers
441441

442-
try:
443-
from xml.parsers import expat
444-
if not hasattr(expat, "ParserCreate"):
445-
raise ImportError
446-
except ImportError:
447-
ExpatParser = None # expat not available
448-
else:
449-
class ExpatParser:
450-
# fast expat parser for Python 2.0 and later.
451-
def __init__(self, target):
452-
self._parser = parser = expat.ParserCreate(None, None)
453-
self._target = target
454-
parser.StartElementHandler = target.start
455-
parser.EndElementHandler = target.end
456-
parser.CharacterDataHandler = target.data
457-
encoding = None
458-
target.xml(encoding, None)
459-
460-
def feed(self, data):
461-
self._parser.Parse(data, 0)
462-
463-
def close(self):
464-
self._parser.Parse("", 1) # end of data
465-
del self._target, self._parser # get rid of circular references
442+
class ExpatParser:
443+
# fast expat parser for Python 2.0 and later.
444+
def __init__(self, target):
445+
self._parser = parser = expat.ParserCreate(None, None)
446+
self._target = target
447+
parser.StartElementHandler = target.start
448+
parser.EndElementHandler = target.end
449+
parser.CharacterDataHandler = target.data
450+
encoding = None
451+
target.xml(encoding, None)
452+
453+
def feed(self, data):
454+
self._parser.Parse(data, 0)
455+
456+
def close(self):
457+
self._parser.Parse("", 1) # end of data
458+
del self._target, self._parser # get rid of circular references
466459

467460
# --------------------------------------------------------------------
468461
# XML-RPC marshalling and unmarshalling code
@@ -912,10 +905,8 @@ def getparser(use_datetime=0):
912905
target = Unmarshaller(use_datetime=use_datetime)
913906
if FastParser:
914907
parser = FastParser(target)
915-
elif ExpatParser:
916-
parser = ExpatParser(target)
917908
else:
918-
parser = SlowParser(target)
909+
parser = ExpatParser(target)
919910
return parser, target
920911

921912
##

0 commit comments

Comments
 (0)