Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
wine-mirror
GitHub Repository: wine-mirror/wine
Path: blob/master/libs/xml2/include/libxml/xpointer.h
4394 views
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__ */
139
140