Annotation of embedaddon/libxml2/include/libxml/xpointer.h, revision 1.1.1.1

1.1       misho       1: /*
                      2:  * Summary: API to handle XML Pointers
                      3:  * Description: API to handle XML Pointers
                      4:  * Base implementation was made accordingly to
                      5:  * W3C Candidate Recommendation 7 June 2000
                      6:  * http://www.w3.org/TR/2000/CR-xptr-20000607
                      7:  *
                      8:  * Added support for the element() scheme described in:
                      9:  * W3C Proposed Recommendation 13 November 2002
                     10:  * http://www.w3.org/TR/2002/PR-xptr-element-20021113/  
                     11:  *
                     12:  * Copy: See Copyright for the status of this software.
                     13:  *
                     14:  * Author: Daniel Veillard
                     15:  */
                     16: 
                     17: #ifndef __XML_XPTR_H__
                     18: #define __XML_XPTR_H__
                     19: 
                     20: #include <libxml/xmlversion.h>
                     21: 
                     22: #ifdef LIBXML_XPTR_ENABLED
                     23: 
                     24: #include <libxml/tree.h>
                     25: #include <libxml/xpath.h>
                     26: 
                     27: #ifdef __cplusplus
                     28: extern "C" {
                     29: #endif
                     30: 
                     31: /*
                     32:  * A Location Set
                     33:  */
                     34: typedef struct _xmlLocationSet xmlLocationSet;
                     35: typedef xmlLocationSet *xmlLocationSetPtr;
                     36: struct _xmlLocationSet {
                     37:     int locNr;               /* number of locations in the set */
                     38:     int locMax;                      /* size of the array as allocated */
                     39:     xmlXPathObjectPtr *locTab;/* array of locations */
                     40: };
                     41: 
                     42: /*
                     43:  * Handling of location sets.
                     44:  */
                     45: 
                     46: XMLPUBFUN xmlLocationSetPtr XMLCALL                    
                     47:                    xmlXPtrLocationSetCreate    (xmlXPathObjectPtr val);
                     48: XMLPUBFUN void XMLCALL                 
                     49:                    xmlXPtrFreeLocationSet      (xmlLocationSetPtr obj);
                     50: XMLPUBFUN xmlLocationSetPtr XMLCALL    
                     51:                    xmlXPtrLocationSetMerge     (xmlLocationSetPtr val1,
                     52:                                                 xmlLocationSetPtr val2);
                     53: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     54:                    xmlXPtrNewRange             (xmlNodePtr start,
                     55:                                                 int startindex,
                     56:                                                 xmlNodePtr end,
                     57:                                                 int endindex);
                     58: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     59:                    xmlXPtrNewRangePoints       (xmlXPathObjectPtr start,
                     60:                                                 xmlXPathObjectPtr end);
                     61: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     62:                    xmlXPtrNewRangeNodePoint    (xmlNodePtr start,
                     63:                                                 xmlXPathObjectPtr end);
                     64: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     65:                    xmlXPtrNewRangePointNode    (xmlXPathObjectPtr start,
                     66:                                                 xmlNodePtr end);
                     67: XMLPUBFUN xmlXPathObjectPtr XMLCALL                    
                     68:                    xmlXPtrNewRangeNodes        (xmlNodePtr start,
                     69:                                                 xmlNodePtr end);
                     70: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     71:                    xmlXPtrNewLocationSetNodes  (xmlNodePtr start,
                     72:                                                 xmlNodePtr end);
                     73: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     74:                    xmlXPtrNewLocationSetNodeSet(xmlNodeSetPtr set);
                     75: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     76:                    xmlXPtrNewRangeNodeObject   (xmlNodePtr start,
                     77:                                                 xmlXPathObjectPtr end);
                     78: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     79:                    xmlXPtrNewCollapsedRange    (xmlNodePtr start);
                     80: XMLPUBFUN void XMLCALL                 
                     81:                    xmlXPtrLocationSetAdd       (xmlLocationSetPtr cur,
                     82:                                                 xmlXPathObjectPtr val);
                     83: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                     84:                    xmlXPtrWrapLocationSet      (xmlLocationSetPtr val);
                     85: XMLPUBFUN void XMLCALL                 
                     86:                    xmlXPtrLocationSetDel       (xmlLocationSetPtr cur,
                     87:                                                 xmlXPathObjectPtr val);
                     88: XMLPUBFUN void XMLCALL                 
                     89:                    xmlXPtrLocationSetRemove    (xmlLocationSetPtr cur,
                     90:                                                 int val);
                     91: 
                     92: /*
                     93:  * Functions.
                     94:  */
                     95: XMLPUBFUN xmlXPathContextPtr XMLCALL   
                     96:                    xmlXPtrNewContext           (xmlDocPtr doc,
                     97:                                                 xmlNodePtr here,
                     98:                                                 xmlNodePtr origin);
                     99: XMLPUBFUN xmlXPathObjectPtr XMLCALL    
                    100:                    xmlXPtrEval                 (const xmlChar *str,
                    101:                                                 xmlXPathContextPtr ctx);
                    102: XMLPUBFUN void XMLCALL                                     
                    103:                    xmlXPtrRangeToFunction      (xmlXPathParserContextPtr ctxt,
                    104:                                                         int nargs);
                    105: XMLPUBFUN xmlNodePtr XMLCALL           
                    106:                    xmlXPtrBuildNodeList        (xmlXPathObjectPtr obj);
                    107: XMLPUBFUN void XMLCALL         
                    108:                    xmlXPtrEvalRangePredicate   (xmlXPathParserContextPtr ctxt);
                    109: #ifdef __cplusplus
                    110: }
                    111: #endif
                    112: 
                    113: #endif /* LIBXML_XPTR_ENABLED */
                    114: #endif /* __XML_XPTR_H__ */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>