Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

xpointer.h

Go to the documentation of this file.
00001 /*
00002  * xpointer.h : API to handle XML Pointers
00003  *
00004  * World Wide Web Consortium Working Draft 03-March-1998 
00005  * http://www.w3.org/TR/1998/WD-xptr-19980303
00006  *
00007  * See Copyright for the status of this software.
00008  *
00009  * daniel@veillard.com
00010  */
00011 
00012 #ifndef __XML_XPTR_H__
00013 #define __XML_XPTR_H__
00014 
00015 #include <libxml/xmlversion.h>
00016 #include <libxml/tree.h>
00017 #include <libxml/xpath.h>
00018 
00019 #ifdef __cplusplus
00020 extern "C" {
00021 #endif
00022 
00023 /*
00024  * A Location Set
00025  */
00026 typedef struct _xmlLocationSet xmlLocationSet;
00027 typedef xmlLocationSet *xmlLocationSetPtr;
00028 struct _xmlLocationSet {
00029     int locNr;                /* number of locations in the set */
00030     int locMax;               /* size of the array as allocated */
00031     xmlXPathObjectPtr *locTab;/* array of locations */
00032 };
00033 
00034 /*
00035  * Handling of location sets.
00036  */
00037 
00038 XMLPUBFUN xmlLocationSetPtr XMLCALL                     
00039                     xmlXPtrLocationSetCreate    (xmlXPathObjectPtr val);
00040 XMLPUBFUN void XMLCALL                  
00041                     xmlXPtrFreeLocationSet      (xmlLocationSetPtr obj);
00042 XMLPUBFUN xmlLocationSetPtr XMLCALL     
00043                     xmlXPtrLocationSetMerge     (xmlLocationSetPtr val1,
00044                                                  xmlLocationSetPtr val2);
00045 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00046                     xmlXPtrNewRange             (xmlNodePtr start,
00047                                                  int startindex,
00048                                                  xmlNodePtr end,
00049                                                  int endindex);
00050 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00051                     xmlXPtrNewRangePoints       (xmlXPathObjectPtr start,
00052                                                  xmlXPathObjectPtr end);
00053 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00054                     xmlXPtrNewRangeNodePoint    (xmlNodePtr start,
00055                                                  xmlXPathObjectPtr end);
00056 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00057                     xmlXPtrNewRangePointNode    (xmlXPathObjectPtr start,
00058                                                  xmlNodePtr end);
00059 XMLPUBFUN xmlXPathObjectPtr XMLCALL                     
00060                     xmlXPtrNewRangeNodes        (xmlNodePtr start,
00061                                                  xmlNodePtr end);
00062 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00063                     xmlXPtrNewLocationSetNodes  (xmlNodePtr start,
00064                                                  xmlNodePtr end);
00065 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00066                     xmlXPtrNewLocationSetNodeSet(xmlNodeSetPtr set);
00067 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00068                     xmlXPtrNewRangeNodeObject   (xmlNodePtr start,
00069                                                  xmlXPathObjectPtr end);
00070 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00071                     xmlXPtrNewCollapsedRange    (xmlNodePtr start);
00072 XMLPUBFUN void XMLCALL                  
00073                     xmlXPtrLocationSetAdd       (xmlLocationSetPtr cur,
00074                                                  xmlXPathObjectPtr val);
00075 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00076                     xmlXPtrWrapLocationSet      (xmlLocationSetPtr val);
00077 XMLPUBFUN void XMLCALL                  
00078                     xmlXPtrLocationSetDel       (xmlLocationSetPtr cur,
00079                                                  xmlXPathObjectPtr val);
00080 XMLPUBFUN void XMLCALL                  
00081                     xmlXPtrLocationSetRemove    (xmlLocationSetPtr cur,
00082                                                  int val);
00083 
00084 /*
00085  * Functions.
00086  */
00087 XMLPUBFUN xmlXPathContextPtr XMLCALL    
00088                     xmlXPtrNewContext           (xmlDocPtr doc,
00089                                                  xmlNodePtr here,
00090                                                  xmlNodePtr origin);
00091 XMLPUBFUN xmlXPathObjectPtr XMLCALL     
00092                     xmlXPtrEval                 (const xmlChar *str,
00093                                                  xmlXPathContextPtr ctx);
00094 XMLPUBFUN void XMLCALL                                      
00095                     xmlXPtrRangeToFunction      (xmlXPathParserContextPtr ctxt,
00096                                                  int nargs);
00097 XMLPUBFUN xmlNodePtr XMLCALL            
00098                     xmlXPtrBuildNodeList        (xmlXPathObjectPtr obj);
00099 XMLPUBFUN void XMLCALL          
00100                     xmlXPtrEvalRangePredicate   (xmlXPathParserContextPtr ctxt);
00101 
00102 #ifdef __cplusplus
00103 }
00104 #endif
00105 #endif /* __XML_XPTR_H__ */
00106 

Generated on Wed Mar 16 00:10:28 2005 for Dibbler - a portable DHCPv6 by  doxygen 1.3.9.1