# HG changeset patch # User paulb # Date 1129816877 0 # Node ID 82eba81f485a6158af5822c3679ecaf43e9d080f # Parent 4befe8fd8a2117a2cddfceb441e162af5c7c0370 [project @ 2005-10-20 14:01:17 by paulb] Improved exception messages in importNode. diff -r 4befe8fd8a21 -r 82eba81f485a libxml2dom/macrolib/macrolib.py --- a/libxml2dom/macrolib/macrolib.py Fri Jun 20 21:42:35 2008 +0200 +++ b/libxml2dom/macrolib/macrolib.py Thu Oct 20 14:01:17 2005 +0000 @@ -45,11 +45,14 @@ "text" : xml.dom.Node.TEXT_NODE } +_reverseNodeTypes = {} +for label, value in _nodeTypes.items(): + _reverseNodeTypes[value] = label + def Node_ownerDocument(node): return libxml2mod.doc(node) or node def Node_nodeType(node): - global _nodeTypes return _nodeTypes[libxml2mod.type(node)] def Node_childNodes(node): @@ -282,7 +285,7 @@ elif Node_nodeType(other) == xml.dom.Node.COMMENT_NODE: return Node_createComment(node, Node_data(other)) - raise ValueError, Node_nodeType(other) + raise ValueError, "Node type '%s' (%d) not supported." % (other, Node_nodeType(other)) def Node_importNode_DOM(node, other, deep): if other.nodeType == xml.dom.Node.ELEMENT_NODE: @@ -304,7 +307,7 @@ elif other.nodeType == xml.dom.Node.COMMENT_NODE: return Node_createComment(node, other.data) - raise ValueError, other.nodeType + raise ValueError, "Node type '%s' (%d) not supported." % (_reverseNodeTypes[other.nodeType], other.nodeType) def Node_xpath(node, expr, variables=None, namespaces=None): context = libxml2mod.xmlXPathNewContext(Node_ownerDocument(node))