ReactOS  0.4.14-dev-342-gdc047f9
xpointer.h
Go to the documentation of this file.
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,
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,
99 XMLPUBFUN xmlXPathObjectPtr XMLCALL
100  xmlXPtrEval (const xmlChar *str,
101  xmlXPathContextPtr ctx);
102 XMLPUBFUN void XMLCALL
103  xmlXPtrRangeToFunction (xmlXPathParserContextPtr ctxt,
104  int nargs);
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__ */
voidpf uLong int origin
Definition: ioapi.h:142
#define XMLPUBFUN
Definition: xmlexports.h:30
GLuint GLuint end
Definition: gl.h:1545
const WCHAR * str
GLuint GLfloat * val
Definition: glext.h:7180
Definition: tree.h:489
unsigned char xmlChar
Definition: xmlstring.h:28
GLuint start
Definition: gl.h:1545
Definition: tree.h:551
#define XMLCALL
Definition: _set.h:46