axmol/cocos2dx/platform/third_party/linux/libxml2/libxml/xpathInternals.h

631 lines
19 KiB
C
Raw Normal View History

new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/config/ftconfig.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/config/ftheader.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/config/ftmodule.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/config/ftoption.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/config/ftstdlib.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/freetype.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftadvanc.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftbbox.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftbdf.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftbitmap.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftbzip2.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftcache.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftchapters.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftcid.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/fterrdef.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/fterrors.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftgasp.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftglyph.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftgxval.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftgzip.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftimage.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftincrem.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftlcdfil.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftlist.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftlzw.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftmac.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftmm.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftmodapi.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftmoderr.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftotval.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftoutln.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftpfr.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftrender.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftsizes.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftsnames.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftstroke.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftsynth.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftsystem.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/fttrigon.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/fttypes.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftwinfnt.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ftxf86.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/autohint.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftcalc.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftdebug.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftdriver.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftgloadr.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftmemory.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftobjs.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftpic.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftrfork.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftserv.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftstream.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/fttrace.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/ftvalid.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/internal.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/psaux.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/pshints.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svbdf.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svcid.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svgldict.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svgxval.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svkern.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svmm.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svotval.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svpfr.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svpostnm.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svpscmap.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svpsinfo.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svsfnt.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svttcmap.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svtteng.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svttglyf.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svwinfnt.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/services/svxf86nm.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/sfnt.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/t1types.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/internal/tttypes.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/t1tables.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ttnameid.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/tttables.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/tttags.h new file: cocos2dx/platform/third_party/linux/libfreetype2/freetype/ttunpat.h new file: cocos2dx/platform/third_party/linux/libfreetype2/ft2build.h new file: cocos2dx/platform/third_party/linux/libjpeg/cderror.h new file: cocos2dx/platform/third_party/linux/libjpeg/cdjpeg.h new file: cocos2dx/platform/third_party/linux/libjpeg/jconfig.h new file: cocos2dx/platform/third_party/linux/libjpeg/jdct.h new file: cocos2dx/platform/third_party/linux/libjpeg/jerror.h new file: cocos2dx/platform/third_party/linux/libjpeg/jinclude.h new file: cocos2dx/platform/third_party/linux/libjpeg/jmemsys.h new file: cocos2dx/platform/third_party/linux/libjpeg/jmorecfg.h new file: cocos2dx/platform/third_party/linux/libjpeg/jpegint.h new file: cocos2dx/platform/third_party/linux/libjpeg/jpeglib.h new file: cocos2dx/platform/third_party/linux/libjpeg/jversion.h new file: cocos2dx/platform/third_party/linux/libjpeg/transupp.h new file: cocos2dx/platform/third_party/linux/libpng/PngFile.h new file: cocos2dx/platform/third_party/linux/libpng/cexcept.h new file: cocos2dx/platform/third_party/linux/libpng/config.h new file: cocos2dx/platform/third_party/linux/libpng/png.h new file: cocos2dx/platform/third_party/linux/libpng/pngconf.h new file: cocos2dx/platform/third_party/linux/libpng/pngpriv.h new file: cocos2dx/platform/third_party/linux/libpng/readpng.h new file: cocos2dx/platform/third_party/linux/libpng/readpng2.h new file: cocos2dx/platform/third_party/linux/libpng/resource.h new file: cocos2dx/platform/third_party/linux/libpng/writepng.h new file: cocos2dx/platform/third_party/linux/libraries/libfreetype.a new file: cocos2dx/platform/third_party/linux/libraries/libjpeg.a new file: cocos2dx/platform/third_party/linux/libraries/libpng.a new file: cocos2dx/platform/third_party/linux/libraries/libpng15.a new file: cocos2dx/platform/third_party/linux/libraries/libxml2.a new file: cocos2dx/platform/third_party/linux/libxml2/libxml/DOCBparser.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/HTMLparser.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/HTMLtree.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/Makefile new file: cocos2dx/platform/third_party/linux/libxml2/libxml/Makefile.am new file: cocos2dx/platform/third_party/linux/libxml2/libxml/Makefile.in new file: cocos2dx/platform/third_party/linux/libxml2/libxml/SAX.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/SAX2.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/c14n.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/catalog.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/chvalid.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/debugXML.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/dict.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/encoding.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/entities.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/globals.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/hash.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/list.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/nanoftp.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/nanohttp.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/parser.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/parserInternals.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/pattern.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/relaxng.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/schemasInternals.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/schematron.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/threads.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/tree.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/uri.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/valid.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xinclude.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xlink.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlIO.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlautomata.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlerror.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlexports.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlmemory.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlmodule.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlreader.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlregexp.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlsave.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlschemas.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlschemastypes.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlstring.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlunicode.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlversion.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlversion.h.in new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xmlwriter.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xpath.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xpathInternals.h new file: cocos2dx/platform/third_party/linux/libxml2/libxml/xpointer.h HelloWorld/Classes/ HelloWorld/android/assets HelloWorld/postCompiled.sh installLinuxLib.sh
2011-08-25 19:08:55 +08:00
/*
* Summary: internal interfaces for XML Path Language implementation
* Description: internal interfaces for XML Path Language implementation
* used to build new modules on top of XPath like XPointer and
* XSLT
*
* Copy: See Copyright for the status of this software.
*
* Author: Daniel Veillard
*/
#ifndef __XML_XPATH_INTERNALS_H__
#define __XML_XPATH_INTERNALS_H__
#include <libxml/xmlversion.h>
#include <libxml/xpath.h>
#ifdef LIBXML_XPATH_ENABLED
#ifdef __cplusplus
extern "C" {
#endif
/************************************************************************
* *
* Helpers *
* *
************************************************************************/
/*
* Many of these macros may later turn into functions. They
* shouldn't be used in #ifdef's preprocessor instructions.
*/
/**
* xmlXPathSetError:
* @ctxt: an XPath parser context
* @err: an xmlXPathError code
*
* Raises an error.
*/
#define xmlXPathSetError(ctxt, err) \
{ xmlXPatherror((ctxt), __FILE__, __LINE__, (err)); \
if ((ctxt) != NULL) (ctxt)->error = (err); }
/**
* xmlXPathSetArityError:
* @ctxt: an XPath parser context
*
* Raises an XPATH_INVALID_ARITY error.
*/
#define xmlXPathSetArityError(ctxt) \
xmlXPathSetError((ctxt), XPATH_INVALID_ARITY)
/**
* xmlXPathSetTypeError:
* @ctxt: an XPath parser context
*
* Raises an XPATH_INVALID_TYPE error.
*/
#define xmlXPathSetTypeError(ctxt) \
xmlXPathSetError((ctxt), XPATH_INVALID_TYPE)
/**
* xmlXPathGetError:
* @ctxt: an XPath parser context
*
* Get the error code of an XPath context.
*
* Returns the context error.
*/
#define xmlXPathGetError(ctxt) ((ctxt)->error)
/**
* xmlXPathCheckError:
* @ctxt: an XPath parser context
*
* Check if an XPath error was raised.
*
* Returns true if an error has been raised, false otherwise.
*/
#define xmlXPathCheckError(ctxt) ((ctxt)->error != XPATH_EXPRESSION_OK)
/**
* xmlXPathGetDocument:
* @ctxt: an XPath parser context
*
* Get the document of an XPath context.
*
* Returns the context document.
*/
#define xmlXPathGetDocument(ctxt) ((ctxt)->context->doc)
/**
* xmlXPathGetContextNode:
* @ctxt: an XPath parser context
*
* Get the context node of an XPath context.
*
* Returns the context node.
*/
#define xmlXPathGetContextNode(ctxt) ((ctxt)->context->node)
XMLPUBFUN int XMLCALL
xmlXPathPopBoolean (xmlXPathParserContextPtr ctxt);
XMLPUBFUN double XMLCALL
xmlXPathPopNumber (xmlXPathParserContextPtr ctxt);
XMLPUBFUN xmlChar * XMLCALL
xmlXPathPopString (xmlXPathParserContextPtr ctxt);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathPopNodeSet (xmlXPathParserContextPtr ctxt);
XMLPUBFUN void * XMLCALL
xmlXPathPopExternal (xmlXPathParserContextPtr ctxt);
/**
* xmlXPathReturnBoolean:
* @ctxt: an XPath parser context
* @val: a boolean
*
* Pushes the boolean @val on the context stack.
*/
#define xmlXPathReturnBoolean(ctxt, val) \
valuePush((ctxt), xmlXPathNewBoolean(val))
/**
* xmlXPathReturnTrue:
* @ctxt: an XPath parser context
*
* Pushes true on the context stack.
*/
#define xmlXPathReturnTrue(ctxt) xmlXPathReturnBoolean((ctxt), 1)
/**
* xmlXPathReturnFalse:
* @ctxt: an XPath parser context
*
* Pushes false on the context stack.
*/
#define xmlXPathReturnFalse(ctxt) xmlXPathReturnBoolean((ctxt), 0)
/**
* xmlXPathReturnNumber:
* @ctxt: an XPath parser context
* @val: a double
*
* Pushes the double @val on the context stack.
*/
#define xmlXPathReturnNumber(ctxt, val) \
valuePush((ctxt), xmlXPathNewFloat(val))
/**
* xmlXPathReturnString:
* @ctxt: an XPath parser context
* @str: a string
*
* Pushes the string @str on the context stack.
*/
#define xmlXPathReturnString(ctxt, str) \
valuePush((ctxt), xmlXPathWrapString(str))
/**
* xmlXPathReturnEmptyString:
* @ctxt: an XPath parser context
*
* Pushes an empty string on the stack.
*/
#define xmlXPathReturnEmptyString(ctxt) \
valuePush((ctxt), xmlXPathNewCString(""))
/**
* xmlXPathReturnNodeSet:
* @ctxt: an XPath parser context
* @ns: a node-set
*
* Pushes the node-set @ns on the context stack.
*/
#define xmlXPathReturnNodeSet(ctxt, ns) \
valuePush((ctxt), xmlXPathWrapNodeSet(ns))
/**
* xmlXPathReturnEmptyNodeSet:
* @ctxt: an XPath parser context
*
* Pushes an empty node-set on the context stack.
*/
#define xmlXPathReturnEmptyNodeSet(ctxt) \
valuePush((ctxt), xmlXPathNewNodeSet(NULL))
/**
* xmlXPathReturnExternal:
* @ctxt: an XPath parser context
* @val: user data
*
* Pushes user data on the context stack.
*/
#define xmlXPathReturnExternal(ctxt, val) \
valuePush((ctxt), xmlXPathWrapExternal(val))
/**
* xmlXPathStackIsNodeSet:
* @ctxt: an XPath parser context
*
* Check if the current value on the XPath stack is a node set or
* an XSLT value tree.
*
* Returns true if the current object on the stack is a node-set.
*/
#define xmlXPathStackIsNodeSet(ctxt) \
(((ctxt)->value != NULL) \
&& (((ctxt)->value->type == XPATH_NODESET) \
|| ((ctxt)->value->type == XPATH_XSLT_TREE)))
/**
* xmlXPathStackIsExternal:
* @ctxt: an XPath parser context
*
* Checks if the current value on the XPath stack is an external
* object.
*
* Returns true if the current object on the stack is an external
* object.
*/
#define xmlXPathStackIsExternal(ctxt) \
((ctxt->value != NULL) && (ctxt->value->type == XPATH_USERS))
/**
* xmlXPathEmptyNodeSet:
* @ns: a node-set
*
* Empties a node-set.
*/
#define xmlXPathEmptyNodeSet(ns) \
{ while ((ns)->nodeNr > 0) (ns)->nodeTab[(ns)->nodeNr--] = NULL; }
/**
* CHECK_ERROR:
*
* Macro to return from the function if an XPath error was detected.
*/
#define CHECK_ERROR \
if (ctxt->error != XPATH_EXPRESSION_OK) return
/**
* CHECK_ERROR0:
*
* Macro to return 0 from the function if an XPath error was detected.
*/
#define CHECK_ERROR0 \
if (ctxt->error != XPATH_EXPRESSION_OK) return(0)
/**
* XP_ERROR:
* @X: the error code
*
* Macro to raise an XPath error and return.
*/
#define XP_ERROR(X) \
{ xmlXPathErr(ctxt, X); return; }
/**
* XP_ERROR0:
* @X: the error code
*
* Macro to raise an XPath error and return 0.
*/
#define XP_ERROR0(X) \
{ xmlXPathErr(ctxt, X); return(0); }
/**
* CHECK_TYPE:
* @typeval: the XPath type
*
* Macro to check that the value on top of the XPath stack is of a given
* type.
*/
#define CHECK_TYPE(typeval) \
if ((ctxt->value == NULL) || (ctxt->value->type != typeval)) \
XP_ERROR(XPATH_INVALID_TYPE)
/**
* CHECK_TYPE0:
* @typeval: the XPath type
*
* Macro to check that the value on top of the XPath stack is of a given
* type. Return(0) in case of failure
*/
#define CHECK_TYPE0(typeval) \
if ((ctxt->value == NULL) || (ctxt->value->type != typeval)) \
XP_ERROR0(XPATH_INVALID_TYPE)
/**
* CHECK_ARITY:
* @x: the number of expected args
*
* Macro to check that the number of args passed to an XPath function matches.
*/
#define CHECK_ARITY(x) \
if (ctxt == NULL) return; \
if (nargs != (x)) \
XP_ERROR(XPATH_INVALID_ARITY);
/**
* CAST_TO_STRING:
*
* Macro to try to cast the value on the top of the XPath stack to a string.
*/
#define CAST_TO_STRING \
if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_STRING)) \
xmlXPathStringFunction(ctxt, 1);
/**
* CAST_TO_NUMBER:
*
* Macro to try to cast the value on the top of the XPath stack to a number.
*/
#define CAST_TO_NUMBER \
if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_NUMBER)) \
xmlXPathNumberFunction(ctxt, 1);
/**
* CAST_TO_BOOLEAN:
*
* Macro to try to cast the value on the top of the XPath stack to a boolean.
*/
#define CAST_TO_BOOLEAN \
if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_BOOLEAN)) \
xmlXPathBooleanFunction(ctxt, 1);
/*
* Variable Lookup forwarding.
*/
XMLPUBFUN void XMLCALL
xmlXPathRegisterVariableLookup (xmlXPathContextPtr ctxt,
xmlXPathVariableLookupFunc f,
void *data);
/*
* Function Lookup forwarding.
*/
XMLPUBFUN void XMLCALL
xmlXPathRegisterFuncLookup (xmlXPathContextPtr ctxt,
xmlXPathFuncLookupFunc f,
void *funcCtxt);
/*
* Error reporting.
*/
XMLPUBFUN void XMLCALL
xmlXPatherror (xmlXPathParserContextPtr ctxt,
const char *file,
int line,
int no);
XMLPUBFUN void XMLCALL
xmlXPathErr (xmlXPathParserContextPtr ctxt,
int error);
#ifdef LIBXML_DEBUG_ENABLED
XMLPUBFUN void XMLCALL
xmlXPathDebugDumpObject (FILE *output,
xmlXPathObjectPtr cur,
int depth);
XMLPUBFUN void XMLCALL
xmlXPathDebugDumpCompExpr(FILE *output,
xmlXPathCompExprPtr comp,
int depth);
#endif
/**
* NodeSet handling.
*/
XMLPUBFUN int XMLCALL
xmlXPathNodeSetContains (xmlNodeSetPtr cur,
xmlNodePtr val);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathDifference (xmlNodeSetPtr nodes1,
xmlNodeSetPtr nodes2);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathIntersection (xmlNodeSetPtr nodes1,
xmlNodeSetPtr nodes2);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathDistinctSorted (xmlNodeSetPtr nodes);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathDistinct (xmlNodeSetPtr nodes);
XMLPUBFUN int XMLCALL
xmlXPathHasSameNodes (xmlNodeSetPtr nodes1,
xmlNodeSetPtr nodes2);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathNodeLeadingSorted (xmlNodeSetPtr nodes,
xmlNodePtr node);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathLeadingSorted (xmlNodeSetPtr nodes1,
xmlNodeSetPtr nodes2);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathNodeLeading (xmlNodeSetPtr nodes,
xmlNodePtr node);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathLeading (xmlNodeSetPtr nodes1,
xmlNodeSetPtr nodes2);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathNodeTrailingSorted (xmlNodeSetPtr nodes,
xmlNodePtr node);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathTrailingSorted (xmlNodeSetPtr nodes1,
xmlNodeSetPtr nodes2);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathNodeTrailing (xmlNodeSetPtr nodes,
xmlNodePtr node);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathTrailing (xmlNodeSetPtr nodes1,
xmlNodeSetPtr nodes2);
/**
* Extending a context.
*/
XMLPUBFUN int XMLCALL
xmlXPathRegisterNs (xmlXPathContextPtr ctxt,
const xmlChar *prefix,
const xmlChar *ns_uri);
XMLPUBFUN const xmlChar * XMLCALL
xmlXPathNsLookup (xmlXPathContextPtr ctxt,
const xmlChar *prefix);
XMLPUBFUN void XMLCALL
xmlXPathRegisteredNsCleanup (xmlXPathContextPtr ctxt);
XMLPUBFUN int XMLCALL
xmlXPathRegisterFunc (xmlXPathContextPtr ctxt,
const xmlChar *name,
xmlXPathFunction f);
XMLPUBFUN int XMLCALL
xmlXPathRegisterFuncNS (xmlXPathContextPtr ctxt,
const xmlChar *name,
const xmlChar *ns_uri,
xmlXPathFunction f);
XMLPUBFUN int XMLCALL
xmlXPathRegisterVariable (xmlXPathContextPtr ctxt,
const xmlChar *name,
xmlXPathObjectPtr value);
XMLPUBFUN int XMLCALL
xmlXPathRegisterVariableNS (xmlXPathContextPtr ctxt,
const xmlChar *name,
const xmlChar *ns_uri,
xmlXPathObjectPtr value);
XMLPUBFUN xmlXPathFunction XMLCALL
xmlXPathFunctionLookup (xmlXPathContextPtr ctxt,
const xmlChar *name);
XMLPUBFUN xmlXPathFunction XMLCALL
xmlXPathFunctionLookupNS (xmlXPathContextPtr ctxt,
const xmlChar *name,
const xmlChar *ns_uri);
XMLPUBFUN void XMLCALL
xmlXPathRegisteredFuncsCleanup (xmlXPathContextPtr ctxt);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathVariableLookup (xmlXPathContextPtr ctxt,
const xmlChar *name);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathVariableLookupNS (xmlXPathContextPtr ctxt,
const xmlChar *name,
const xmlChar *ns_uri);
XMLPUBFUN void XMLCALL
xmlXPathRegisteredVariablesCleanup(xmlXPathContextPtr ctxt);
/**
* Utilities to extend XPath.
*/
XMLPUBFUN xmlXPathParserContextPtr XMLCALL
xmlXPathNewParserContext (const xmlChar *str,
xmlXPathContextPtr ctxt);
XMLPUBFUN void XMLCALL
xmlXPathFreeParserContext (xmlXPathParserContextPtr ctxt);
/* TODO: remap to xmlXPathValuePop and Push. */
XMLPUBFUN xmlXPathObjectPtr XMLCALL
valuePop (xmlXPathParserContextPtr ctxt);
XMLPUBFUN int XMLCALL
valuePush (xmlXPathParserContextPtr ctxt,
xmlXPathObjectPtr value);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathNewString (const xmlChar *val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathNewCString (const char *val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathWrapString (xmlChar *val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathWrapCString (char * val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathNewFloat (double val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathNewBoolean (int val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathNewNodeSet (xmlNodePtr val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathNewValueTree (xmlNodePtr val);
XMLPUBFUN void XMLCALL
xmlXPathNodeSetAdd (xmlNodeSetPtr cur,
xmlNodePtr val);
XMLPUBFUN void XMLCALL
xmlXPathNodeSetAddUnique (xmlNodeSetPtr cur,
xmlNodePtr val);
XMLPUBFUN void XMLCALL
xmlXPathNodeSetAddNs (xmlNodeSetPtr cur,
xmlNodePtr node,
xmlNsPtr ns);
XMLPUBFUN void XMLCALL
xmlXPathNodeSetSort (xmlNodeSetPtr set);
XMLPUBFUN void XMLCALL
xmlXPathRoot (xmlXPathParserContextPtr ctxt);
XMLPUBFUN void XMLCALL
xmlXPathEvalExpr (xmlXPathParserContextPtr ctxt);
XMLPUBFUN xmlChar * XMLCALL
xmlXPathParseName (xmlXPathParserContextPtr ctxt);
XMLPUBFUN xmlChar * XMLCALL
xmlXPathParseNCName (xmlXPathParserContextPtr ctxt);
/*
* Existing functions.
*/
XMLPUBFUN double XMLCALL
xmlXPathStringEvalNumber (const xmlChar *str);
XMLPUBFUN int XMLCALL
xmlXPathEvaluatePredicateResult (xmlXPathParserContextPtr ctxt,
xmlXPathObjectPtr res);
XMLPUBFUN void XMLCALL
xmlXPathRegisterAllFunctions (xmlXPathContextPtr ctxt);
XMLPUBFUN xmlNodeSetPtr XMLCALL
xmlXPathNodeSetMerge (xmlNodeSetPtr val1,
xmlNodeSetPtr val2);
XMLPUBFUN void XMLCALL
xmlXPathNodeSetDel (xmlNodeSetPtr cur,
xmlNodePtr val);
XMLPUBFUN void XMLCALL
xmlXPathNodeSetRemove (xmlNodeSetPtr cur,
int val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathNewNodeSetList (xmlNodeSetPtr val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathWrapNodeSet (xmlNodeSetPtr val);
XMLPUBFUN xmlXPathObjectPtr XMLCALL
xmlXPathWrapExternal (void *val);
XMLPUBFUN int XMLCALL xmlXPathEqualValues(xmlXPathParserContextPtr ctxt);
XMLPUBFUN int XMLCALL xmlXPathNotEqualValues(xmlXPathParserContextPtr ctxt);
XMLPUBFUN int XMLCALL xmlXPathCompareValues(xmlXPathParserContextPtr ctxt, int inf, int strict);
XMLPUBFUN void XMLCALL xmlXPathValueFlipSign(xmlXPathParserContextPtr ctxt);
XMLPUBFUN void XMLCALL xmlXPathAddValues(xmlXPathParserContextPtr ctxt);
XMLPUBFUN void XMLCALL xmlXPathSubValues(xmlXPathParserContextPtr ctxt);
XMLPUBFUN void XMLCALL xmlXPathMultValues(xmlXPathParserContextPtr ctxt);
XMLPUBFUN void XMLCALL xmlXPathDivValues(xmlXPathParserContextPtr ctxt);
XMLPUBFUN void XMLCALL xmlXPathModValues(xmlXPathParserContextPtr ctxt);
XMLPUBFUN int XMLCALL xmlXPathIsNodeType(const xmlChar *name);
/*
* Some of the axis navigation routines.
*/
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextSelf(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextChild(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextDescendant(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextDescendantOrSelf(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextParent(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextAncestorOrSelf(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextFollowingSibling(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextFollowing(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextNamespace(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextAttribute(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextPreceding(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextAncestor(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
XMLPUBFUN xmlNodePtr XMLCALL xmlXPathNextPrecedingSibling(xmlXPathParserContextPtr ctxt,
xmlNodePtr cur);
/*
* The official core of XPath functions.
*/
XMLPUBFUN void XMLCALL xmlXPathLastFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathPositionFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathCountFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathIdFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathLocalNameFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathNamespaceURIFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathStringFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathStringLengthFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathConcatFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathContainsFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathStartsWithFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathSubstringFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathSubstringBeforeFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathSubstringAfterFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathNormalizeFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathTranslateFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathNotFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathTrueFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathFalseFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathLangFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathNumberFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathSumFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathFloorFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathCeilingFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathRoundFunction(xmlXPathParserContextPtr ctxt, int nargs);
XMLPUBFUN void XMLCALL xmlXPathBooleanFunction(xmlXPathParserContextPtr ctxt, int nargs);
/**
* Really internal functions
*/
XMLPUBFUN void XMLCALL xmlXPathNodeSetFreeNs(xmlNsPtr ns);
#ifdef __cplusplus
}
#endif
#endif /* LIBXML_XPATH_ENABLED */
#endif /* ! __XML_XPATH_INTERNALS_H__ */