summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Veillard <veillard@redhat.com>2013-04-01 16:37:05 +0800
committerDaniel Veillard <veillard@redhat.com>2013-04-01 16:42:12 +0800
commit54ae471c147d280a137474c25fd76ca1f566efac (patch)
tree7f86c4372fcf782136596197c676373a677bb80b
parent28876afb4e67f9f4292fc2a7134f6b97f0618b7d (diff)
downloadlibxml2-54ae471c147d280a137474c25fd76ca1f566efac.tar.gz
Regenerated API, and testapi, rebuild documentation
After the previous commit adding 2 new entry points
-rw-r--r--doc/devhelp/libxml2-tree.html1
-rw-r--r--doc/devhelp/libxml2-xmlversion.html5
-rw-r--r--doc/devhelp/libxml2-xpath.html10
-rw-r--r--doc/devhelp/libxml2.devhelp3
-rw-r--r--doc/libxml2-api.xml25
-rw-r--r--doc/libxml2-refs.xml43
-rw-r--r--testapi.c93
7 files changed, 170 insertions, 10 deletions
diff --git a/doc/devhelp/libxml2-tree.html b/doc/devhelp/libxml2-tree.html
index 9386b60d..90c3903a 100644
--- a/doc/devhelp/libxml2-tree.html
+++ b/doc/devhelp/libxml2-tree.html
@@ -812,6 +812,7 @@ The content of this structure is not made public by the API.
int nodeInfoMax : Max depth of the parsing stack
<a href="libxml2-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> * nodeInfoTab : array of nodeInfos
int input_id : we need to label inputs
+ unsigned long sizeentcopy : volume of entity copy
} xmlParserCtxt;
</pre><p/>
</div>
diff --git a/doc/devhelp/libxml2-xmlversion.html b/doc/devhelp/libxml2-xmlversion.html
index 69a04e24..81786140 100644
--- a/doc/devhelp/libxml2-xmlversion.html
+++ b/doc/devhelp/libxml2-xmlversion.html
@@ -83,6 +83,7 @@
#define <a href="#DEBUG_MEMORY_LOCATION">DEBUG_MEMORY_LOCATION</a>;
#define <a href="#LIBXML_ATTR_FORMAT">LIBXML_ATTR_FORMAT</a>;
#define <a href="#LIBXML_TEST_VERSION">LIBXML_TEST_VERSION</a>;
+#define <a href="#LIBXML_THREAD_ALLOC_ENABLED">LIBXML_THREAD_ALLOC_ENABLED</a>;
#define <a href="#LIBXML_XPATH_ENABLED">LIBXML_XPATH_ENABLED</a>;
#define <a href="#LIBXML_PATTERN_ENABLED">LIBXML_PATTERN_ENABLED</a>;
#define <a href="#LIBXML_VALID_ENABLED">LIBXML_VALID_ENABLED</a>;
@@ -221,6 +222,10 @@ void <a href="#xmlCheckVersion">xmlCheckVersion</a> (int version);
</pre><p>Macro to check that the libxml version in use is compatible with the version the software has been compiled against</p>
</div>
<hr/>
+ <div class="refsect2" lang="en"><h3><a name="LIBXML_THREAD_ALLOC_ENABLED">Macro </a>LIBXML_THREAD_ALLOC_ENABLED</h3><pre class="programlisting">#define <a href="#LIBXML_THREAD_ALLOC_ENABLED">LIBXML_THREAD_ALLOC_ENABLED</a>;
+</pre><p>Whether the allocation hooks are per-thread</p>
+</div>
+ <hr/>
<div class="refsect2" lang="en"><h3><a name="LIBXML_THREAD_ENABLED">Macro </a>LIBXML_THREAD_ENABLED</h3><pre class="programlisting">#define <a href="#LIBXML_THREAD_ENABLED">LIBXML_THREAD_ENABLED</a>;
</pre><p>Whether the thread support is configured in</p>
</div>
diff --git a/doc/devhelp/libxml2-xpath.html b/doc/devhelp/libxml2-xpath.html
index d2a0afcb..640c715a 100644
--- a/doc/devhelp/libxml2-xpath.html
+++ b/doc/devhelp/libxml2-xpath.html
@@ -70,6 +70,7 @@ typedef <a href="libxml2-xpath.html#xmlXPathAxis">xmlXPathAxis</a> * <a href="#x
typedef struct _xmlXPathParserContext <a href="#xmlXPathParserContext">xmlXPathParserContext</a>;
int <a href="#xmlXPathCastNodeSetToBoolean">xmlXPathCastNodeSetToBoolean</a> (<a href="libxml2-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns);
typedef <a href="libxml2-xpath.html#xmlXPathFunction">xmlXPathFunction</a> <a href="#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a> (void * ctxt, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ns_uri);
+<a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> <a href="#xmlXPathNodeEval">xmlXPathNodeEval</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str, <br/> <a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlXPathCastNodeToString">xmlXPathCastNodeToString</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node);
int <a href="#xmlXPathIsNaN">xmlXPathIsNaN</a> (double val);
int <a href="#xmlXPathContextSetCache">xmlXPathContextSetCache</a> (<a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br/> int active, <br/> int value, <br/> int options);
@@ -104,6 +105,7 @@ int <a href="#xmlXPathCmpNodes">xmlXPathCmpNodes</a> (<a href="libxml2-tree.htm
<a href="libxml2-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> <a href="#xmlXPathCtxtCompile">xmlXPathCtxtCompile</a> (<a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str);
typedef void <a href="#xmlXPathEvalFunc">xmlXPathEvalFunc</a> (<a href="libxml2-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br/> int nargs);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlXPathCastBooleanToString">xmlXPathCastBooleanToString</a> (int val);
+int <a href="#xmlXPathSetContextNode">xmlXPathSetContextNode</a> (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> <a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx);
int <a href="#xmlXPathCastNumberToBoolean">xmlXPathCastNumberToBoolean</a> (double val);
void <a href="#xmlXPathFreeNodeSet">xmlXPathFreeNodeSet</a> (<a href="libxml2-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> obj);
void <a href="#xmlXPathFreeCompExpr">xmlXPathFreeCompExpr</a> (<a href="libxml2-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp);
@@ -514,6 +516,10 @@ The content of this structure is not made public by the API.
</pre><p>Create a new <a href="libxml2-xpath.html#xmlXPathContext">xmlXPathContext</a></p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-xpath.html#xmlXPathContext">xmlXPathContext</a> just allocated. The caller will need to free it.</td></tr></tbody></table></div></div>
<hr/>
+ <div class="refsect2" lang="en"><h3><a name="xmlXPathNodeEval"/>xmlXPathNodeEval ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> xmlXPathNodeEval (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * str, <br/> <a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br/>
+</pre><p>Evaluate the XPath Location Path in the given context. The node 'node' is set as the context node. The context node is not restored.</p>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to to use as the context node</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div></div>
+ <hr/>
<div class="refsect2" lang="en"><h3><a name="xmlXPathNodeSetCreate"/>xmlXPathNodeSetCreate ()</h3><pre class="programlisting"><a href="libxml2-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> xmlXPathNodeSetCreate (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br/>
</pre><p>Create a new <a href="libxml2-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> of type double and of value @val</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an initial xmlNodePtr, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div></div>
@@ -526,6 +532,10 @@ The content of this structure is not made public by the API.
</pre><p>Call this routine to speed up XPath computation on static documents. This stamps all the element nodes with the document order Like for line information, the order is kept in the element-&gt;content field, the value stored is actually - the node number (starting at -1) to be able to differentiate from line numbers.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an input document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements found in the document or -1 in case of error.</td></tr></tbody></table></div></div>
<hr/>
+ <div class="refsect2" lang="en"><h3><a name="xmlXPathSetContextNode"/>xmlXPathSetContextNode ()</h3><pre class="programlisting">int xmlXPathSetContextNode (<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br/> <a href="libxml2-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br/>
+</pre><p>Sets 'node' as the context node. The node must be in the same document as that associated with the context.</p>
+<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to to use as the context node</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error or 0 if successful</td></tr></tbody></table></div></div>
+ <hr/>
</div>
</div>
</body>
diff --git a/doc/devhelp/libxml2.devhelp b/doc/devhelp/libxml2.devhelp
index 3005571d..8939af02 100644
--- a/doc/devhelp/libxml2.devhelp
+++ b/doc/devhelp/libxml2.devhelp
@@ -122,6 +122,7 @@
<function name="LIBXML_SCHEMAS_ENABLED" link="libxml2-xmlversion.html#LIBXML_SCHEMAS_ENABLED"/>
<function name="LIBXML_SCHEMATRON_ENABLED" link="libxml2-xmlversion.html#LIBXML_SCHEMATRON_ENABLED"/>
<function name="LIBXML_TEST_VERSION" link="libxml2-xmlversion.html#LIBXML_TEST_VERSION"/>
+ <function name="LIBXML_THREAD_ALLOC_ENABLED" link="libxml2-xmlversion.html#LIBXML_THREAD_ALLOC_ENABLED"/>
<function name="LIBXML_THREAD_ENABLED" link="libxml2-xmlversion.html#LIBXML_THREAD_ENABLED"/>
<function name="LIBXML_TREE_ENABLED" link="libxml2-xmlversion.html#LIBXML_TREE_ENABLED"/>
<function name="LIBXML_UNICODE_ENABLED" link="libxml2-xmlversion.html#LIBXML_UNICODE_ENABLED"/>
@@ -3481,6 +3482,7 @@
<function name="xmlXPathNextPreceding ()" link="libxml2-xpathInternals.html#xmlXPathNextPreceding"/>
<function name="xmlXPathNextPrecedingSibling ()" link="libxml2-xpathInternals.html#xmlXPathNextPrecedingSibling"/>
<function name="xmlXPathNextSelf ()" link="libxml2-xpathInternals.html#xmlXPathNextSelf"/>
+ <function name="xmlXPathNodeEval ()" link="libxml2-xpath.html#xmlXPathNodeEval"/>
<function name="xmlXPathNodeLeading ()" link="libxml2-xpathInternals.html#xmlXPathNodeLeading"/>
<function name="xmlXPathNodeLeadingSorted ()" link="libxml2-xpathInternals.html#xmlXPathNodeLeadingSorted"/>
<function name="xmlXPathNodeSetAdd ()" link="libxml2-xpathInternals.html#xmlXPathNodeSetAdd"/>
@@ -3523,6 +3525,7 @@
<function name="xmlXPathRegisteredVariablesCleanup ()" link="libxml2-xpathInternals.html#xmlXPathRegisteredVariablesCleanup"/>
<function name="xmlXPathRoot ()" link="libxml2-xpathInternals.html#xmlXPathRoot"/>
<function name="xmlXPathRoundFunction ()" link="libxml2-xpathInternals.html#xmlXPathRoundFunction"/>
+ <function name="xmlXPathSetContextNode ()" link="libxml2-xpath.html#xmlXPathSetContextNode"/>
<function name="xmlXPathStartsWithFunction ()" link="libxml2-xpathInternals.html#xmlXPathStartsWithFunction"/>
<function name="xmlXPathStringEvalNumber ()" link="libxml2-xpathInternals.html#xmlXPathStringEvalNumber"/>
<function name="xmlXPathStringFunction ()" link="libxml2-xpathInternals.html#xmlXPathStringFunction"/>
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
index 0e9b0754..a70c374c 100644
--- a/doc/libxml2-api.xml
+++ b/doc/libxml2-api.xml
@@ -3418,6 +3418,7 @@
<exports symbol='DEBUG_MEMORY_LOCATION' type='macro'/>
<exports symbol='LIBXML_ATTR_FORMAT' type='macro'/>
<exports symbol='LIBXML_TEST_VERSION' type='macro'/>
+ <exports symbol='LIBXML_THREAD_ALLOC_ENABLED' type='macro'/>
<exports symbol='LIBXML_XPATH_ENABLED' type='macro'/>
<exports symbol='LIBXML_PATTERN_ENABLED' type='macro'/>
<exports symbol='LIBXML_VALID_ENABLED' type='macro'/>
@@ -3591,6 +3592,7 @@
<exports symbol='xmlXPathNINF' type='variable'/>
<exports symbol='xmlXPathCastNodeSetToBoolean' type='function'/>
<exports symbol='xmlXPathFuncLookupFunc' type='function'/>
+ <exports symbol='xmlXPathNodeEval' type='function'/>
<exports symbol='xmlXPathCastNodeToString' type='function'/>
<exports symbol='xmlXPathIsNaN' type='function'/>
<exports symbol='xmlXPathContextSetCache' type='function'/>
@@ -3625,6 +3627,7 @@
<exports symbol='xmlXPathCtxtCompile' type='function'/>
<exports symbol='xmlXPathEvalFunc' type='function'/>
<exports symbol='xmlXPathCastBooleanToString' type='function'/>
+ <exports symbol='xmlXPathSetContextNode' type='function'/>
<exports symbol='xmlXPathCastNumberToBoolean' type='function'/>
<exports symbol='xmlXPathFreeNodeSet' type='function'/>
<exports symbol='xmlXPathFreeCompExpr' type='function'/>
@@ -4047,6 +4050,9 @@
<macro name='LIBXML_TEST_VERSION' file='xmlversion'>
<info>Macro to check that the libxml version in use is compatible with the version the software has been compiled against</info>
</macro>
+ <macro name='LIBXML_THREAD_ALLOC_ENABLED' file='xmlversion'>
+ <info>Whether the allocation hooks are per-thread</info>
+ </macro>
<macro name='LIBXML_THREAD_ENABLED' file='xmlversion'>
<info>Whether the thread support is configured in</info>
</macro>
@@ -6184,7 +6190,8 @@ set at the end of parsing'/>
<field name='URI' type='const xmlChar *' info=' the full URI as computed'/>
<field name='owner' type='int' info=' does the entity own the childrens'/>
<field name='checked' type='int' info=' was the entity content checked this is also used to count entites
-* references done from that entity'/>
+* references done from that entity
+* and if it contains &apos;&lt;&apos;'/>
</struct>
<typedef name='xmlEntityPtr' file='tree' type='xmlEntity *'/>
<typedef name='xmlEntityType' file='entities' type='enum'/>
@@ -6434,6 +6441,7 @@ actually an xmlCharEncoding'/>
<field name='nodeInfoMax' type='int' info=' Max depth of the parsing stack'/>
<field name='nodeInfoTab' type='xmlParserNodeInfo *' info=' array of nodeInfos'/>
<field name='input_id' type='int' info=' we need to label inputs'/>
+ <field name='sizeentcopy' type='unsigned long' info=' volume of entity copy'/>
</struct>
<typedef name='xmlParserCtxtPtr' file='tree' type='xmlParserCtxt *'/>
<typedef name='xmlParserErrors' file='xmlerror' type='enum'/>
@@ -17899,6 +17907,14 @@ Could we use @subtypes for this?'/>
<arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
<arg name='cur' type='xmlNodePtr' info='the current node in the traversal'/>
</function>
+ <function name='xmlXPathNodeEval' file='xpath' module='xpath'>
+ <cond>defined(LIBXML_XPATH_ENABLED)</cond>
+ <info>Evaluate the XPath Location Path in the given context. The node &apos;node&apos; is set as the context node. The context node is not restored.</info>
+ <return type='xmlXPathObjectPtr' info='the xmlXPathObjectPtr resulting from the evaluation or NULL. the caller has to free the object.'/>
+ <arg name='node' type='xmlNodePtr' info='the node to to use as the context node'/>
+ <arg name='str' type='const xmlChar *' info='the XPath expression'/>
+ <arg name='ctx' type='xmlXPathContextPtr' info='the XPath context'/>
+ </function>
<function name='xmlXPathNodeLeading' file='xpathInternals' module='xpath'>
<cond>defined(LIBXML_XPATH_ENABLED)</cond>
<info>Implements the EXSLT - Sets leading() function: node-set set:leading (node-set, node-set) @nodes is sorted by document order, then #exslSetsNodeLeadingSorted is called.</info>
@@ -18185,6 +18201,13 @@ Could we use @subtypes for this?'/>
<arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
<arg name='nargs' type='int' info='the number of arguments'/>
</function>
+ <function name='xmlXPathSetContextNode' file='xpath' module='xpath'>
+ <cond>defined(LIBXML_XPATH_ENABLED)</cond>
+ <info>Sets &apos;node&apos; as the context node. The node must be in the same document as that associated with the context.</info>
+ <return type='int' info='-1 in case of error or 0 if successful'/>
+ <arg name='node' type='xmlNodePtr' info='the node to to use as the context node'/>
+ <arg name='ctx' type='xmlXPathContextPtr' info='the XPath context'/>
+ </function>
<function name='xmlXPathStartsWithFunction' file='xpathInternals' module='xpath'>
<cond>defined(LIBXML_XPATH_ENABLED)</cond>
<info>Implement the starts-with() XPath function boolean starts-with(string, string) The starts-with function returns true if the first argument string starts with the second argument string, and otherwise returns false.</info>
diff --git a/doc/libxml2-refs.xml b/doc/libxml2-refs.xml
index 7831c217..c36e7f4c 100644
--- a/doc/libxml2-refs.xml
+++ b/doc/libxml2-refs.xml
@@ -86,6 +86,7 @@
<reference name='LIBXML_SCHEMAS_ENABLED' href='html/libxml-xmlversion.html#LIBXML_SCHEMAS_ENABLED'/>
<reference name='LIBXML_SCHEMATRON_ENABLED' href='html/libxml-xmlversion.html#LIBXML_SCHEMATRON_ENABLED'/>
<reference name='LIBXML_TEST_VERSION' href='html/libxml-xmlversion.html#LIBXML_TEST_VERSION'/>
+ <reference name='LIBXML_THREAD_ALLOC_ENABLED' href='html/libxml-xmlversion.html#LIBXML_THREAD_ALLOC_ENABLED'/>
<reference name='LIBXML_THREAD_ENABLED' href='html/libxml-xmlversion.html#LIBXML_THREAD_ENABLED'/>
<reference name='LIBXML_TREE_ENABLED' href='html/libxml-xmlversion.html#LIBXML_TREE_ENABLED'/>
<reference name='LIBXML_UNICODE_ENABLED' href='html/libxml-xmlversion.html#LIBXML_UNICODE_ENABLED'/>
@@ -3461,6 +3462,7 @@
<reference name='xmlXPathNextPreceding' href='html/libxml-xpathInternals.html#xmlXPathNextPreceding'/>
<reference name='xmlXPathNextPrecedingSibling' href='html/libxml-xpathInternals.html#xmlXPathNextPrecedingSibling'/>
<reference name='xmlXPathNextSelf' href='html/libxml-xpathInternals.html#xmlXPathNextSelf'/>
+ <reference name='xmlXPathNodeEval' href='html/libxml-xpath.html#xmlXPathNodeEval'/>
<reference name='xmlXPathNodeLeading' href='html/libxml-xpathInternals.html#xmlXPathNodeLeading'/>
<reference name='xmlXPathNodeLeadingSorted' href='html/libxml-xpathInternals.html#xmlXPathNodeLeadingSorted'/>
<reference name='xmlXPathNodeSetAdd' href='html/libxml-xpathInternals.html#xmlXPathNodeSetAdd'/>
@@ -3522,6 +3524,7 @@
<reference name='xmlXPathRoot' href='html/libxml-xpathInternals.html#xmlXPathRoot'/>
<reference name='xmlXPathRoundFunction' href='html/libxml-xpathInternals.html#xmlXPathRoundFunction'/>
<reference name='xmlXPathSetArityError' href='html/libxml-xpathInternals.html#xmlXPathSetArityError'/>
+ <reference name='xmlXPathSetContextNode' href='html/libxml-xpath.html#xmlXPathSetContextNode'/>
<reference name='xmlXPathSetError' href='html/libxml-xpathInternals.html#xmlXPathSetError'/>
<reference name='xmlXPathSetTypeError' href='html/libxml-xpathInternals.html#xmlXPathSetTypeError'/>
<reference name='xmlXPathStackIsExternal' href='html/libxml-xpathInternals.html#xmlXPathStackIsExternal'/>
@@ -3673,6 +3676,7 @@
<ref name='LIBXML_SCHEMAS_ENABLED'/>
<ref name='LIBXML_SCHEMATRON_ENABLED'/>
<ref name='LIBXML_TEST_VERSION'/>
+ <ref name='LIBXML_THREAD_ALLOC_ENABLED'/>
<ref name='LIBXML_THREAD_ENABLED'/>
<ref name='LIBXML_TREE_ENABLED'/>
<ref name='LIBXML_UNICODE_ENABLED'/>
@@ -7094,6 +7098,7 @@
<ref name='xmlXPathNextPreceding'/>
<ref name='xmlXPathNextPrecedingSibling'/>
<ref name='xmlXPathNextSelf'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPathNodeLeading'/>
<ref name='xmlXPathNodeLeadingSorted'/>
<ref name='xmlXPathNodeSetAdd'/>
@@ -7155,6 +7160,7 @@
<ref name='xmlXPathRoot'/>
<ref name='xmlXPathRoundFunction'/>
<ref name='xmlXPathSetArityError'/>
+ <ref name='xmlXPathSetContextNode'/>
<ref name='xmlXPathSetError'/>
<ref name='xmlXPathSetTypeError'/>
<ref name='xmlXPathStackIsExternal'/>
@@ -7970,6 +7976,7 @@
<ref name='xmlXPathNewNodeSetList'/>
<ref name='xmlXPathNewString'/>
<ref name='xmlXPathNewValueTree'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPathObjectCopy'/>
<ref name='xmlXPathVariableLookup'/>
<ref name='xmlXPathVariableLookupFunc'/>
@@ -8514,6 +8521,7 @@
<ref name='xmlXPathIsNodeType'/>
<ref name='xmlXPathNewParserContext'/>
<ref name='xmlXPathNewString'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPathNsLookup'/>
<ref name='xmlXPathRegisterFunc'/>
<ref name='xmlXPathRegisterFuncNS'/>
@@ -9811,6 +9819,7 @@
<ref name='xmlXPathNextPreceding'/>
<ref name='xmlXPathNextPrecedingSibling'/>
<ref name='xmlXPathNextSelf'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPathNodeLeading'/>
<ref name='xmlXPathNodeLeadingSorted'/>
<ref name='xmlXPathNodeSetAdd'/>
@@ -9821,6 +9830,7 @@
<ref name='xmlXPathNodeSetDel'/>
<ref name='xmlXPathNodeTrailing'/>
<ref name='xmlXPathNodeTrailingSorted'/>
+ <ref name='xmlXPathSetContextNode'/>
<ref name='xmlXPtrNewCollapsedRange'/>
<ref name='xmlXPtrNewContext'/>
<ref name='xmlXPtrNewLocationSetNodes'/>
@@ -10603,6 +10613,7 @@
<ref name='xmlXPathFunctionLookup'/>
<ref name='xmlXPathFunctionLookupNS'/>
<ref name='xmlXPathNewParserContext'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPathNsLookup'/>
<ref name='xmlXPathRegisterAllFunctions'/>
<ref name='xmlXPathRegisterFunc'/>
@@ -10615,6 +10626,7 @@
<ref name='xmlXPathRegisteredFuncsCleanup'/>
<ref name='xmlXPathRegisteredNsCleanup'/>
<ref name='xmlXPathRegisteredVariablesCleanup'/>
+ <ref name='xmlXPathSetContextNode'/>
<ref name='xmlXPathVariableLookup'/>
<ref name='xmlXPathVariableLookupNS'/>
<ref name='xmlXPtrEval'/>
@@ -14006,6 +14018,7 @@
<ref name='LIBXML_SCHEMAS_ENABLED'/>
<ref name='LIBXML_SCHEMATRON_ENABLED'/>
<ref name='LIBXML_TEST_VERSION'/>
+ <ref name='LIBXML_THREAD_ALLOC_ENABLED'/>
<ref name='LIBXML_THREAD_ENABLED'/>
<ref name='LIBXML_TREE_ENABLED'/>
<ref name='LIBXML_UNICODE_ENABLED'/>
@@ -14207,6 +14220,7 @@
<ref name='xmlXPathNAN'/>
<ref name='xmlXPathNINF'/>
<ref name='xmlXPathNewContext'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPathNodeSetCreate'/>
<ref name='xmlXPathNodeSetGetLength'/>
<ref name='xmlXPathNodeSetIsEmpty'/>
@@ -14219,6 +14233,7 @@
<ref name='xmlXPathPINF'/>
<ref name='xmlXPathParserContext'/>
<ref name='xmlXPathParserContextPtr'/>
+ <ref name='xmlXPathSetContextNode'/>
<ref name='xmlXPathType'/>
<ref name='xmlXPathTypePtr'/>
<ref name='xmlXPathVariable'/>
@@ -15736,6 +15751,7 @@
<ref name='xmlXPathEvalExpression'/>
<ref name='xmlXPathEvalPredicate'/>
<ref name='xmlXPathEvaluatePredicateResult'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPtrEval'/>
<ref name='xmlXPtrEvalRangePredicate'/>
</word>
@@ -16476,6 +16492,7 @@
</word>
<word name='Location'>
<ref name='xmlXPathEval'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPtrEval'/>
<ref name='xmlXPtrEvalRangePredicate'/>
</word>
@@ -17078,6 +17095,7 @@
<word name='Path'>
<ref name='xmlGetNodePath'/>
<ref name='xmlXPathEval'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPtrEval'/>
</word>
<word name='People'>
@@ -17794,6 +17812,7 @@
<ref name='xmlXPathNodeLeadingSorted'/>
<ref name='xmlXPathNodeTrailing'/>
<ref name='xmlXPathNodeTrailingSorted'/>
+ <ref name='xmlXPathSetContextNode'/>
<ref name='xmlXPathTrailing'/>
<ref name='xmlXPathTrailingSorted'/>
</word>
@@ -19148,6 +19167,7 @@
<ref name='xmlXPathObjectCopy'/>
</word>
<word name='allocation'>
+ <ref name='LIBXML_THREAD_ALLOC_ENABLED'/>
<ref name='htmlNewParserCtxt'/>
<ref name='xmlBufferSetAllocationScheme'/>
<ref name='xmlGetBufferAllocationScheme'/>
@@ -20970,6 +20990,7 @@
</word>
<word name='contains'>
<ref name='XML_SCHEMAS_ATTRGROUP_HAS_REFS'/>
+ <ref name='_xmlEntity'/>
<ref name='xmlCurrentChar'/>
<ref name='xmlParseEntityRef'/>
<ref name='xmlParsePEReference'/>
@@ -22599,6 +22620,7 @@
<ref name='xmlXPathEvalFunc'/>
<ref name='xmlXPathEvalPredicate'/>
<ref name='xmlXPathEvaluatePredicateResult'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPtrBuildNodeList'/>
<ref name='xmlXPtrEval'/>
</word>
@@ -23751,6 +23773,9 @@
<word name='holds'>
<ref name='xmlBufferWriteQuotedString'/>
</word>
+ <word name='hooks'>
+ <ref name='LIBXML_THREAD_ALLOC_ENABLED'/>
+ </word>
<word name='host'>
<ref name='xmlNanoFTPProxy'/>
<ref name='xmlNanoFTPScanProxy'/>
@@ -24806,14 +24831,6 @@
<ref name='xmlUTF8Strndup'/>
<ref name='xmlUTF8Strsize'/>
</word>
- <word name='length'>
- <ref name='xmlExpGetLanguage'/>
- <ref name='xmlExpGetStart'/>
- <ref name='xmlExpNewAtom'/>
- <ref name='xmlRelaxNGValidatePushCData'/>
- <ref name='xmlSplitQName3'/>
- <ref name='xmlValidatePushCData'/>
- </word>
<word name='length-1'>
<ref name='xmlXPathNodeSetItem'/>
</word>
@@ -26683,6 +26700,9 @@
<ref name='xmlValidateElementDecl'/>
<ref name='xmlXPathContextSetCache'/>
</word>
+ <word name='per-thread'>
+ <ref name='LIBXML_THREAD_ALLOC_ENABLED'/>
+ </word>
<word name='performance'>
<ref name='xmlGetBufferAllocationScheme'/>
<ref name='xmlSetBufferAllocationScheme'/>
@@ -28074,6 +28094,7 @@
<ref name='xmlSchemaSAXUnplug'/>
<ref name='xmlTextReaderSetErrorHandler'/>
<ref name='xmlTextReaderSetStructuredErrorHandler'/>
+ <ref name='xmlXPathNodeEval'/>
</word>
<word name='restrict'>
<ref name='xmlParseExternalID'/>
@@ -28289,6 +28310,7 @@
<ref name='xmlXPathNextFollowing'/>
<ref name='xmlXPathNextPreceding'/>
<ref name='xmlXPathNormalizeFunction'/>
+ <ref name='xmlXPathSetContextNode'/>
</word>
<word name='save'>
<ref name='htmlNodeDumpFileFormat'/>
@@ -29527,6 +29549,7 @@
<ref name='xmlTextReaderSetParserProp'/>
<ref name='xmlUnsetNsProp'/>
<ref name='xmlUnsetProp'/>
+ <ref name='xmlXPathSetContextNode'/>
</word>
<word name='successfully'>
<ref name='xmlTextReaderNext'/>
@@ -30601,6 +30624,9 @@
<ref name='xmlSAXParseFileWithData'/>
<ref name='xmlSAXParseMemoryWithData'/>
</word>
+ <word name='volume'>
+ <ref name='_xmlParserCtxt'/>
+ </word>
</letter>
</chunk>
<chunk name='chunk27'>
@@ -31978,6 +32004,7 @@
<ref name='xmlXPathNewNodeSetList'/>
<ref name='xmlXPathNewString'/>
<ref name='xmlXPathNewValueTree'/>
+ <ref name='xmlXPathNodeEval'/>
<ref name='xmlXPathWrapNodeSet'/>
<ref name='xmlXPtrEval'/>
<ref name='xmlXPtrLocationSetAdd'/>
diff --git a/testapi.c b/testapi.c
index 289100e8..c745ec35 100644
--- a/testapi.c
+++ b/testapi.c
@@ -46852,6 +46852,54 @@ test_xmlXPathNewContext(void) {
static int
+test_xmlXPathNodeEval(void) {
+ int test_ret = 0;
+
+#if defined(LIBXML_XPATH_ENABLED)
+ int mem_base;
+ xmlXPathObjectPtr ret_val;
+ xmlNodePtr node; /* the node to to use as the context node */
+ int n_node;
+ xmlChar * str; /* the XPath expression */
+ int n_str;
+ xmlXPathContextPtr ctx; /* the XPath context */
+ int n_ctx;
+
+ for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_str = 0;n_str < gen_nb_const_xmlChar_ptr;n_str++) {
+ for (n_ctx = 0;n_ctx < gen_nb_xmlXPathContextPtr;n_ctx++) {
+ mem_base = xmlMemBlocks();
+ node = gen_xmlNodePtr(n_node, 0);
+ str = gen_const_xmlChar_ptr(n_str, 1);
+ ctx = gen_xmlXPathContextPtr(n_ctx, 2);
+
+ ret_val = xmlXPathNodeEval(node, (const xmlChar *)str, ctx);
+ desret_xmlXPathObjectPtr(ret_val);
+ call_tests++;
+ des_xmlNodePtr(n_node, node, 0);
+ des_const_xmlChar_ptr(n_str, (const xmlChar *)str, 1);
+ des_xmlXPathContextPtr(n_ctx, ctx, 2);
+ xmlResetLastError();
+ if (mem_base != xmlMemBlocks()) {
+ printf("Leak of %d blocks found in xmlXPathNodeEval",
+ xmlMemBlocks() - mem_base);
+ test_ret++;
+ printf(" %d", n_node);
+ printf(" %d", n_str);
+ printf(" %d", n_ctx);
+ printf("\n");
+ }
+ }
+ }
+ }
+ function_tests++;
+#endif
+
+ return(test_ret);
+}
+
+
+static int
test_xmlXPathNodeSetCreate(void) {
int test_ret = 0;
@@ -46952,11 +47000,52 @@ test_xmlXPathOrderDocElems(void) {
return(test_ret);
}
+
+static int
+test_xmlXPathSetContextNode(void) {
+ int test_ret = 0;
+
+#if defined(LIBXML_XPATH_ENABLED)
+ int mem_base;
+ int ret_val;
+ xmlNodePtr node; /* the node to to use as the context node */
+ int n_node;
+ xmlXPathContextPtr ctx; /* the XPath context */
+ int n_ctx;
+
+ for (n_node = 0;n_node < gen_nb_xmlNodePtr;n_node++) {
+ for (n_ctx = 0;n_ctx < gen_nb_xmlXPathContextPtr;n_ctx++) {
+ mem_base = xmlMemBlocks();
+ node = gen_xmlNodePtr(n_node, 0);
+ ctx = gen_xmlXPathContextPtr(n_ctx, 1);
+
+ ret_val = xmlXPathSetContextNode(node, ctx);
+ desret_int(ret_val);
+ call_tests++;
+ des_xmlNodePtr(n_node, node, 0);
+ des_xmlXPathContextPtr(n_ctx, ctx, 1);
+ xmlResetLastError();
+ if (mem_base != xmlMemBlocks()) {
+ printf("Leak of %d blocks found in xmlXPathSetContextNode",
+ xmlMemBlocks() - mem_base);
+ test_ret++;
+ printf(" %d", n_node);
+ printf(" %d", n_ctx);
+ printf("\n");
+ }
+ }
+ }
+ function_tests++;
+#endif
+
+ return(test_ret);
+}
+
static int
test_xpath(void) {
int test_ret = 0;
- if (quiet == 0) printf("Testing xpath : 30 of 38 functions ...\n");
+ if (quiet == 0) printf("Testing xpath : 32 of 40 functions ...\n");
test_ret += test_xmlXPathCastBooleanToNumber();
test_ret += test_xmlXPathCastBooleanToString();
test_ret += test_xmlXPathCastNodeSetToBoolean();
@@ -46987,9 +47076,11 @@ test_xpath(void) {
test_ret += test_xmlXPathIsInf();
test_ret += test_xmlXPathIsNaN();
test_ret += test_xmlXPathNewContext();
+ test_ret += test_xmlXPathNodeEval();
test_ret += test_xmlXPathNodeSetCreate();
test_ret += test_xmlXPathObjectCopy();
test_ret += test_xmlXPathOrderDocElems();
+ test_ret += test_xmlXPathSetContextNode();
if (test_ret != 0)
printf("Module xpath: %d errors\n", test_ret);