mirror of
https://github.com/GNOME/libxml2.git
synced 2025-02-17 18:19:32 +08:00
Did the boring cleanup job now that stuff works okay again:
- xpath.[ch] xpointer.c: restaured the Binary and API compatibility cleaned up the parser internals, refactored XPath code, added new compilation based APIs and cleanly separated public and private APIs. Daniel
This commit is contained in:
parent
d007d6c53e
commit
afcbe1cb12
@ -1,3 +1,10 @@
|
||||
Mon Mar 19 11:54:31 CET 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
|
||||
|
||||
* xpath.[ch] xpointer.c: restaured the Binary and API compatibility
|
||||
cleaned up the parser internals, refactored XPath code, added
|
||||
new compilation based APIs and cleanly separated public and
|
||||
private APIs.
|
||||
|
||||
Mon Mar 19 00:59:25 CET 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
|
||||
|
||||
* xpath.h: the comp field must be added at the end to avoid
|
||||
|
@ -262,18 +262,9 @@ typedef void (*xmlXPathFunction) (xmlXPathParserContextPtr ctxt, int nargs);
|
||||
************************************************************************/
|
||||
|
||||
/**
|
||||
* Evaluation functions.
|
||||
* Objects and Nodesets handling
|
||||
*/
|
||||
void xmlXPathInit (void);
|
||||
xmlXPathContextPtr xmlXPathNewContext (xmlDocPtr doc);
|
||||
void xmlXPathFreeContext (xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEval (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEvalXPtrExpr (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
void xmlXPathFreeObject (xmlXPathObjectPtr obj);
|
||||
xmlXPathObjectPtr xmlXPathEvalExpression (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlNodeSetPtr xmlXPathNodeSetCreate (xmlNodePtr val);
|
||||
void xmlXPathFreeNodeSetList (xmlXPathObjectPtr obj);
|
||||
void xmlXPathFreeNodeSet (xmlNodeSetPtr obj);
|
||||
@ -281,6 +272,28 @@ xmlXPathObjectPtr xmlXPathObjectCopy (xmlXPathObjectPtr val);
|
||||
int xmlXPathCmpNodes (xmlNodePtr node1,
|
||||
xmlNodePtr node2);
|
||||
|
||||
/**
|
||||
* Context handling
|
||||
*/
|
||||
void xmlXPathInit (void);
|
||||
xmlXPathContextPtr xmlXPathNewContext (xmlDocPtr doc);
|
||||
void xmlXPathFreeContext (xmlXPathContextPtr ctxt);
|
||||
|
||||
/**
|
||||
* Evaluation functions.
|
||||
*/
|
||||
xmlXPathObjectPtr xmlXPathEval (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEvalXPtrExpr (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEvalExpression (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
/**
|
||||
* Separate compilation/evaluation entry points
|
||||
*/
|
||||
xmlXPathCompExprPtr xmlXPathCompile (const xmlChar *str);
|
||||
xmlXPathObjectPtr xmlXPathCompiledEval (xmlXPathCompExprPtr comp,
|
||||
xmlXPathContextPtr ctx);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
33
xpath.h
33
xpath.h
@ -262,18 +262,9 @@ typedef void (*xmlXPathFunction) (xmlXPathParserContextPtr ctxt, int nargs);
|
||||
************************************************************************/
|
||||
|
||||
/**
|
||||
* Evaluation functions.
|
||||
* Objects and Nodesets handling
|
||||
*/
|
||||
void xmlXPathInit (void);
|
||||
xmlXPathContextPtr xmlXPathNewContext (xmlDocPtr doc);
|
||||
void xmlXPathFreeContext (xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEval (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEvalXPtrExpr (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
void xmlXPathFreeObject (xmlXPathObjectPtr obj);
|
||||
xmlXPathObjectPtr xmlXPathEvalExpression (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlNodeSetPtr xmlXPathNodeSetCreate (xmlNodePtr val);
|
||||
void xmlXPathFreeNodeSetList (xmlXPathObjectPtr obj);
|
||||
void xmlXPathFreeNodeSet (xmlNodeSetPtr obj);
|
||||
@ -281,6 +272,28 @@ xmlXPathObjectPtr xmlXPathObjectCopy (xmlXPathObjectPtr val);
|
||||
int xmlXPathCmpNodes (xmlNodePtr node1,
|
||||
xmlNodePtr node2);
|
||||
|
||||
/**
|
||||
* Context handling
|
||||
*/
|
||||
void xmlXPathInit (void);
|
||||
xmlXPathContextPtr xmlXPathNewContext (xmlDocPtr doc);
|
||||
void xmlXPathFreeContext (xmlXPathContextPtr ctxt);
|
||||
|
||||
/**
|
||||
* Evaluation functions.
|
||||
*/
|
||||
xmlXPathObjectPtr xmlXPathEval (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEvalXPtrExpr (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
xmlXPathObjectPtr xmlXPathEvalExpression (const xmlChar *str,
|
||||
xmlXPathContextPtr ctxt);
|
||||
/**
|
||||
* Separate compilation/evaluation entry points
|
||||
*/
|
||||
xmlXPathCompExprPtr xmlXPathCompile (const xmlChar *str);
|
||||
xmlXPathObjectPtr xmlXPathCompiledEval (xmlXPathCompExprPtr comp,
|
||||
xmlXPathContextPtr ctx);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -982,7 +982,6 @@ xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) {
|
||||
|
||||
CUR_PTR = buffer;
|
||||
xmlXPathEvalExpr(ctxt);
|
||||
xmlXPathRunEval(ctxt);
|
||||
CUR_PTR=left;
|
||||
#ifdef XPTR_XMLNS_SCHEME
|
||||
} else if (xmlStrEqual(name, (xmlChar *) "xmlns")) {
|
||||
|
Loading…
Reference in New Issue
Block a user