00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __XML_XPTR_H__
00018 #define __XML_XPTR_H__
00019
00020 #include <libxml/xmlversion.h>
00021
00022 #ifdef LIBXML_XPTR_ENABLED
00023
00024 #include <libxml/tree.h>
00025 #include <libxml/xpath.h>
00026
00027 #ifdef __cplusplus
00028 extern "C" {
00029 #endif
00030
00031
00032
00033
00034 typedef struct _xmlLocationSet xmlLocationSet;
00035 typedef xmlLocationSet *xmlLocationSetPtr;
00036 struct _xmlLocationSet {
00037 int locNr;
00038 int locMax;
00039 xmlXPathObjectPtr *locTab;
00040 };
00041
00042
00043
00044
00045
00046 XMLPUBFUN xmlLocationSetPtr XMLCALL
00047 xmlXPtrLocationSetCreate (xmlXPathObjectPtr val);
00048 XMLPUBFUN void XMLCALL
00049 xmlXPtrFreeLocationSet (xmlLocationSetPtr obj);
00050 XMLPUBFUN xmlLocationSetPtr XMLCALL
00051 xmlXPtrLocationSetMerge (xmlLocationSetPtr val1,
00052 xmlLocationSetPtr val2);
00053 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00054 xmlXPtrNewRange (xmlNodePtr start,
00055 int startindex,
00056 xmlNodePtr end,
00057 int endindex);
00058 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00059 xmlXPtrNewRangePoints (xmlXPathObjectPtr start,
00060 xmlXPathObjectPtr end);
00061 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00062 xmlXPtrNewRangeNodePoint (xmlNodePtr start,
00063 xmlXPathObjectPtr end);
00064 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00065 xmlXPtrNewRangePointNode (xmlXPathObjectPtr start,
00066 xmlNodePtr end);
00067 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00068 xmlXPtrNewRangeNodes (xmlNodePtr start,
00069 xmlNodePtr end);
00070 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00071 xmlXPtrNewLocationSetNodes (xmlNodePtr start,
00072 xmlNodePtr end);
00073 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00074 xmlXPtrNewLocationSetNodeSet(xmlNodeSetPtr set);
00075 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00076 xmlXPtrNewRangeNodeObject (xmlNodePtr start,
00077 xmlXPathObjectPtr end);
00078 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00079 xmlXPtrNewCollapsedRange (xmlNodePtr start);
00080 XMLPUBFUN void XMLCALL
00081 xmlXPtrLocationSetAdd (xmlLocationSetPtr cur,
00082 xmlXPathObjectPtr val);
00083 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00084 xmlXPtrWrapLocationSet (xmlLocationSetPtr val);
00085 XMLPUBFUN void XMLCALL
00086 xmlXPtrLocationSetDel (xmlLocationSetPtr cur,
00087 xmlXPathObjectPtr val);
00088 XMLPUBFUN void XMLCALL
00089 xmlXPtrLocationSetRemove (xmlLocationSetPtr cur,
00090 int val);
00091
00092
00093
00094
00095 XMLPUBFUN xmlXPathContextPtr XMLCALL
00096 xmlXPtrNewContext (xmlDocPtr doc,
00097 xmlNodePtr here,
00098 xmlNodePtr origin);
00099 XMLPUBFUN xmlXPathObjectPtr XMLCALL
00100 xmlXPtrEval (const xmlChar *str,
00101 xmlXPathContextPtr ctx);
00102 XMLPUBFUN void XMLCALL
00103 xmlXPtrRangeToFunction (xmlXPathParserContextPtr ctxt,
00104 int nargs);
00105 XMLPUBFUN xmlNodePtr XMLCALL
00106 xmlXPtrBuildNodeList (xmlXPathObjectPtr obj);
00107 XMLPUBFUN void XMLCALL
00108 xmlXPtrEvalRangePredicate (xmlXPathParserContextPtr ctxt);
00109 #ifdef __cplusplus
00110 }
00111 #endif
00112
00113 #endif
00114 #endif