(root)/
libxml2-2.12.3/
include/
libxml/
xpointer.h
       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  #if defined(LIBXML_XPTR_LOCS_ENABLED)
      32  /*
      33   * A Location Set
      34   */
      35  typedef struct _xmlLocationSet xmlLocationSet;
      36  typedef xmlLocationSet *xmlLocationSetPtr;
      37  struct _xmlLocationSet {
      38      int locNr;		      /* number of locations in the set */
      39      int locMax;		      /* size of the array as allocated */
      40      xmlXPathObjectPtr *locTab;/* array of locations */
      41  };
      42  
      43  /*
      44   * Handling of location sets.
      45   */
      46  
      47  XML_DEPRECATED
      48  XMLPUBFUN xmlLocationSetPtr
      49  		    xmlXPtrLocationSetCreate	(xmlXPathObjectPtr val);
      50  XML_DEPRECATED
      51  XMLPUBFUN void
      52  		    xmlXPtrFreeLocationSet	(xmlLocationSetPtr obj);
      53  XML_DEPRECATED
      54  XMLPUBFUN xmlLocationSetPtr
      55  		    xmlXPtrLocationSetMerge	(xmlLocationSetPtr val1,
      56  						 xmlLocationSetPtr val2);
      57  XML_DEPRECATED
      58  XMLPUBFUN xmlXPathObjectPtr
      59  		    xmlXPtrNewRange		(xmlNodePtr start,
      60  						 int startindex,
      61  						 xmlNodePtr end,
      62  						 int endindex);
      63  XML_DEPRECATED
      64  XMLPUBFUN xmlXPathObjectPtr
      65  		    xmlXPtrNewRangePoints	(xmlXPathObjectPtr start,
      66  						 xmlXPathObjectPtr end);
      67  XML_DEPRECATED
      68  XMLPUBFUN xmlXPathObjectPtr
      69  		    xmlXPtrNewRangeNodePoint	(xmlNodePtr start,
      70  						 xmlXPathObjectPtr end);
      71  XML_DEPRECATED
      72  XMLPUBFUN xmlXPathObjectPtr
      73  		    xmlXPtrNewRangePointNode	(xmlXPathObjectPtr start,
      74  						 xmlNodePtr end);
      75  XML_DEPRECATED
      76  XMLPUBFUN xmlXPathObjectPtr
      77  		    xmlXPtrNewRangeNodes	(xmlNodePtr start,
      78  						 xmlNodePtr end);
      79  XML_DEPRECATED
      80  XMLPUBFUN xmlXPathObjectPtr
      81  		    xmlXPtrNewLocationSetNodes	(xmlNodePtr start,
      82  						 xmlNodePtr end);
      83  XML_DEPRECATED
      84  XMLPUBFUN xmlXPathObjectPtr
      85  		    xmlXPtrNewLocationSetNodeSet(xmlNodeSetPtr set);
      86  XML_DEPRECATED
      87  XMLPUBFUN xmlXPathObjectPtr
      88  		    xmlXPtrNewRangeNodeObject	(xmlNodePtr start,
      89  						 xmlXPathObjectPtr end);
      90  XML_DEPRECATED
      91  XMLPUBFUN xmlXPathObjectPtr
      92  		    xmlXPtrNewCollapsedRange	(xmlNodePtr start);
      93  XML_DEPRECATED
      94  XMLPUBFUN void
      95  		    xmlXPtrLocationSetAdd	(xmlLocationSetPtr cur,
      96  						 xmlXPathObjectPtr val);
      97  XML_DEPRECATED
      98  XMLPUBFUN xmlXPathObjectPtr
      99  		    xmlXPtrWrapLocationSet	(xmlLocationSetPtr val);
     100  XML_DEPRECATED
     101  XMLPUBFUN void
     102  		    xmlXPtrLocationSetDel	(xmlLocationSetPtr cur,
     103  						 xmlXPathObjectPtr val);
     104  XML_DEPRECATED
     105  XMLPUBFUN void
     106  		    xmlXPtrLocationSetRemove	(xmlLocationSetPtr cur,
     107  						 int val);
     108  #endif /* defined(LIBXML_XPTR_LOCS_ENABLED) */
     109  
     110  /*
     111   * Functions.
     112   */
     113  XMLPUBFUN xmlXPathContextPtr
     114  		    xmlXPtrNewContext		(xmlDocPtr doc,
     115  						 xmlNodePtr here,
     116  						 xmlNodePtr origin);
     117  XMLPUBFUN xmlXPathObjectPtr
     118  		    xmlXPtrEval			(const xmlChar *str,
     119  						 xmlXPathContextPtr ctx);
     120  
     121  #if defined(LIBXML_XPTR_LOCS_ENABLED)
     122  XML_DEPRECATED
     123  XMLPUBFUN void
     124  		    xmlXPtrRangeToFunction	(xmlXPathParserContextPtr ctxt,
     125  						 int nargs);
     126  XML_DEPRECATED
     127  XMLPUBFUN xmlNodePtr
     128  		    xmlXPtrBuildNodeList	(xmlXPathObjectPtr obj);
     129  XML_DEPRECATED
     130  XMLPUBFUN void
     131  		    xmlXPtrEvalRangePredicate	(xmlXPathParserContextPtr ctxt);
     132  #endif /* defined(LIBXML_XPTR_LOCS_ENABLED) */
     133  #ifdef __cplusplus
     134  }
     135  #endif
     136  
     137  #endif /* LIBXML_XPTR_ENABLED */
     138  #endif /* __XML_XPTR_H__ */