File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / libxml2 / include / libxml / xpointer.h
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Sun Jun 15 19:53:38 2014 UTC (10 years, 2 months ago) by misho
Branches: libxml2, MAIN
CVS tags: v2_9_1p0, v2_9_1, HEAD
libxml2 2.9.1

    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>