diff options
| author | scoder <none@none> | 2007-05-23 21:51:22 +0200 |
|---|---|---|
| committer | scoder <none@none> | 2007-05-23 21:51:22 +0200 |
| commit | 53052d652c2db1768daceff1f703d0aedd20c260 (patch) | |
| tree | 0463c323d2adea766c086bb7272ddd61682965de /src/lxml/objectify.pyx | |
| parent | a1135ed7d8410108f49865db9036274f74cc6a41 (diff) | |
| download | python-lxml-53052d652c2db1768daceff1f703d0aedd20c260.tar.gz | |
[svn r2333] parse() function in objectify
--HG--
branch : trunk
Diffstat (limited to 'src/lxml/objectify.pyx')
| -rw-r--r-- | src/lxml/objectify.pyx | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/lxml/objectify.pyx b/src/lxml/objectify.pyx index 0a9a5b2d..de665107 100644 --- a/src/lxml/objectify.pyx +++ b/src/lxml/objectify.pyx @@ -1685,8 +1685,8 @@ cdef object __DEFAULT_PARSER __DEFAULT_PARSER = etree.XMLParser(remove_blank_text=True) __DEFAULT_PARSER.setElementClassLookup( ObjectifyElementClassLookup() ) -cdef object parser -parser = __DEFAULT_PARSER +cdef object objectify_parser +objectify_parser = __DEFAULT_PARSER def setDefaultParser(new_parser = None): """Replace the default parser used by objectify's Element() and @@ -1696,16 +1696,16 @@ def setDefaultParser(new_parser = None): Call without arguments to reset to the original parser. """ - global parser + global objectify_parser if new_parser is None: - parser = __DEFAULT_PARSER + objectify_parser = __DEFAULT_PARSER elif isinstance(new_parser, etree.XMLParser): - parser = new_parser + objectify_parser = new_parser else: raise TypeError, "parser must inherit from lxml.etree.XMLParser" cdef _Element _makeElement(tag, text, attrib, nsmap): - return cetree.makeElement(tag, None, parser, text, None, attrib, nsmap) + return cetree.makeElement(tag, None, objectify_parser, text, None, attrib, nsmap) ################################################################################ # Module level factory functions @@ -1718,10 +1718,18 @@ def fromstring(xml): NOTE: requires parser based element class lookup activated in lxml.etree! """ - return _fromstring(xml, parser) + return _fromstring(xml, objectify_parser) XML = fromstring +cdef object _parse +_parse = etree.parse + +def parse(f, parser=None): + if parser is None: + parser = objectify_parser + return _parse(f, parser) + cdef object _DEFAULT_NSMAP _DEFAULT_NSMAP = { "py" : PYTYPE_NAMESPACE, "xsi" : XML_SCHEMA_INSTANCE_NS, |
