Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
hhhrrrttt222111
GitHub Repository: hhhrrrttt222111/Dorkify
Path: blob/master/venv/Lib/site-packages/lxml/includes/libxml/xmlreader.h
811 views
1
/*
2
* Summary: the XMLReader implementation
3
* Description: API of the XML streaming API based on C# interfaces.
4
*
5
* Copy: See Copyright for the status of this software.
6
*
7
* Author: Daniel Veillard
8
*/
9
10
#ifndef __XML_XMLREADER_H__
11
#define __XML_XMLREADER_H__
12
13
#include <libxml/xmlversion.h>
14
#include <libxml/tree.h>
15
#include <libxml/xmlIO.h>
16
#ifdef LIBXML_SCHEMAS_ENABLED
17
#include <libxml/relaxng.h>
18
#include <libxml/xmlschemas.h>
19
#endif
20
21
#ifdef __cplusplus
22
extern "C" {
23
#endif
24
25
/**
26
* xmlParserSeverities:
27
*
28
* How severe an error callback is when the per-reader error callback API
29
* is used.
30
*/
31
typedef enum {
32
XML_PARSER_SEVERITY_VALIDITY_WARNING = 1,
33
XML_PARSER_SEVERITY_VALIDITY_ERROR = 2,
34
XML_PARSER_SEVERITY_WARNING = 3,
35
XML_PARSER_SEVERITY_ERROR = 4
36
} xmlParserSeverities;
37
38
#ifdef LIBXML_READER_ENABLED
39
40
/**
41
* xmlTextReaderMode:
42
*
43
* Internal state values for the reader.
44
*/
45
typedef enum {
46
XML_TEXTREADER_MODE_INITIAL = 0,
47
XML_TEXTREADER_MODE_INTERACTIVE = 1,
48
XML_TEXTREADER_MODE_ERROR = 2,
49
XML_TEXTREADER_MODE_EOF =3,
50
XML_TEXTREADER_MODE_CLOSED = 4,
51
XML_TEXTREADER_MODE_READING = 5
52
} xmlTextReaderMode;
53
54
/**
55
* xmlParserProperties:
56
*
57
* Some common options to use with xmlTextReaderSetParserProp, but it
58
* is better to use xmlParserOption and the xmlReaderNewxxx and
59
* xmlReaderForxxx APIs now.
60
*/
61
typedef enum {
62
XML_PARSER_LOADDTD = 1,
63
XML_PARSER_DEFAULTATTRS = 2,
64
XML_PARSER_VALIDATE = 3,
65
XML_PARSER_SUBST_ENTITIES = 4
66
} xmlParserProperties;
67
68
/**
69
* xmlReaderTypes:
70
*
71
* Predefined constants for the different types of nodes.
72
*/
73
typedef enum {
74
XML_READER_TYPE_NONE = 0,
75
XML_READER_TYPE_ELEMENT = 1,
76
XML_READER_TYPE_ATTRIBUTE = 2,
77
XML_READER_TYPE_TEXT = 3,
78
XML_READER_TYPE_CDATA = 4,
79
XML_READER_TYPE_ENTITY_REFERENCE = 5,
80
XML_READER_TYPE_ENTITY = 6,
81
XML_READER_TYPE_PROCESSING_INSTRUCTION = 7,
82
XML_READER_TYPE_COMMENT = 8,
83
XML_READER_TYPE_DOCUMENT = 9,
84
XML_READER_TYPE_DOCUMENT_TYPE = 10,
85
XML_READER_TYPE_DOCUMENT_FRAGMENT = 11,
86
XML_READER_TYPE_NOTATION = 12,
87
XML_READER_TYPE_WHITESPACE = 13,
88
XML_READER_TYPE_SIGNIFICANT_WHITESPACE = 14,
89
XML_READER_TYPE_END_ELEMENT = 15,
90
XML_READER_TYPE_END_ENTITY = 16,
91
XML_READER_TYPE_XML_DECLARATION = 17
92
} xmlReaderTypes;
93
94
/**
95
* xmlTextReader:
96
*
97
* Structure for an xmlReader context.
98
*/
99
typedef struct _xmlTextReader xmlTextReader;
100
101
/**
102
* xmlTextReaderPtr:
103
*
104
* Pointer to an xmlReader context.
105
*/
106
typedef xmlTextReader *xmlTextReaderPtr;
107
108
/*
109
* Constructors & Destructor
110
*/
111
XMLPUBFUN xmlTextReaderPtr XMLCALL
112
xmlNewTextReader (xmlParserInputBufferPtr input,
113
const char *URI);
114
XMLPUBFUN xmlTextReaderPtr XMLCALL
115
xmlNewTextReaderFilename(const char *URI);
116
117
XMLPUBFUN void XMLCALL
118
xmlFreeTextReader (xmlTextReaderPtr reader);
119
120
XMLPUBFUN int XMLCALL
121
xmlTextReaderSetup(xmlTextReaderPtr reader,
122
xmlParserInputBufferPtr input, const char *URL,
123
const char *encoding, int options);
124
125
/*
126
* Iterators
127
*/
128
XMLPUBFUN int XMLCALL
129
xmlTextReaderRead (xmlTextReaderPtr reader);
130
131
#ifdef LIBXML_WRITER_ENABLED
132
XMLPUBFUN xmlChar * XMLCALL
133
xmlTextReaderReadInnerXml(xmlTextReaderPtr reader);
134
135
XMLPUBFUN xmlChar * XMLCALL
136
xmlTextReaderReadOuterXml(xmlTextReaderPtr reader);
137
#endif
138
139
XMLPUBFUN xmlChar * XMLCALL
140
xmlTextReaderReadString (xmlTextReaderPtr reader);
141
XMLPUBFUN int XMLCALL
142
xmlTextReaderReadAttributeValue(xmlTextReaderPtr reader);
143
144
/*
145
* Attributes of the node
146
*/
147
XMLPUBFUN int XMLCALL
148
xmlTextReaderAttributeCount(xmlTextReaderPtr reader);
149
XMLPUBFUN int XMLCALL
150
xmlTextReaderDepth (xmlTextReaderPtr reader);
151
XMLPUBFUN int XMLCALL
152
xmlTextReaderHasAttributes(xmlTextReaderPtr reader);
153
XMLPUBFUN int XMLCALL
154
xmlTextReaderHasValue(xmlTextReaderPtr reader);
155
XMLPUBFUN int XMLCALL
156
xmlTextReaderIsDefault (xmlTextReaderPtr reader);
157
XMLPUBFUN int XMLCALL
158
xmlTextReaderIsEmptyElement(xmlTextReaderPtr reader);
159
XMLPUBFUN int XMLCALL
160
xmlTextReaderNodeType (xmlTextReaderPtr reader);
161
XMLPUBFUN int XMLCALL
162
xmlTextReaderQuoteChar (xmlTextReaderPtr reader);
163
XMLPUBFUN int XMLCALL
164
xmlTextReaderReadState (xmlTextReaderPtr reader);
165
XMLPUBFUN int XMLCALL
166
xmlTextReaderIsNamespaceDecl(xmlTextReaderPtr reader);
167
168
XMLPUBFUN const xmlChar * XMLCALL
169
xmlTextReaderConstBaseUri (xmlTextReaderPtr reader);
170
XMLPUBFUN const xmlChar * XMLCALL
171
xmlTextReaderConstLocalName (xmlTextReaderPtr reader);
172
XMLPUBFUN const xmlChar * XMLCALL
173
xmlTextReaderConstName (xmlTextReaderPtr reader);
174
XMLPUBFUN const xmlChar * XMLCALL
175
xmlTextReaderConstNamespaceUri(xmlTextReaderPtr reader);
176
XMLPUBFUN const xmlChar * XMLCALL
177
xmlTextReaderConstPrefix (xmlTextReaderPtr reader);
178
XMLPUBFUN const xmlChar * XMLCALL
179
xmlTextReaderConstXmlLang (xmlTextReaderPtr reader);
180
XMLPUBFUN const xmlChar * XMLCALL
181
xmlTextReaderConstString (xmlTextReaderPtr reader,
182
const xmlChar *str);
183
XMLPUBFUN const xmlChar * XMLCALL
184
xmlTextReaderConstValue (xmlTextReaderPtr reader);
185
186
/*
187
* use the Const version of the routine for
188
* better performance and simpler code
189
*/
190
XMLPUBFUN xmlChar * XMLCALL
191
xmlTextReaderBaseUri (xmlTextReaderPtr reader);
192
XMLPUBFUN xmlChar * XMLCALL
193
xmlTextReaderLocalName (xmlTextReaderPtr reader);
194
XMLPUBFUN xmlChar * XMLCALL
195
xmlTextReaderName (xmlTextReaderPtr reader);
196
XMLPUBFUN xmlChar * XMLCALL
197
xmlTextReaderNamespaceUri(xmlTextReaderPtr reader);
198
XMLPUBFUN xmlChar * XMLCALL
199
xmlTextReaderPrefix (xmlTextReaderPtr reader);
200
XMLPUBFUN xmlChar * XMLCALL
201
xmlTextReaderXmlLang (xmlTextReaderPtr reader);
202
XMLPUBFUN xmlChar * XMLCALL
203
xmlTextReaderValue (xmlTextReaderPtr reader);
204
205
/*
206
* Methods of the XmlTextReader
207
*/
208
XMLPUBFUN int XMLCALL
209
xmlTextReaderClose (xmlTextReaderPtr reader);
210
XMLPUBFUN xmlChar * XMLCALL
211
xmlTextReaderGetAttributeNo (xmlTextReaderPtr reader,
212
int no);
213
XMLPUBFUN xmlChar * XMLCALL
214
xmlTextReaderGetAttribute (xmlTextReaderPtr reader,
215
const xmlChar *name);
216
XMLPUBFUN xmlChar * XMLCALL
217
xmlTextReaderGetAttributeNs (xmlTextReaderPtr reader,
218
const xmlChar *localName,
219
const xmlChar *namespaceURI);
220
XMLPUBFUN xmlParserInputBufferPtr XMLCALL
221
xmlTextReaderGetRemainder (xmlTextReaderPtr reader);
222
XMLPUBFUN xmlChar * XMLCALL
223
xmlTextReaderLookupNamespace(xmlTextReaderPtr reader,
224
const xmlChar *prefix);
225
XMLPUBFUN int XMLCALL
226
xmlTextReaderMoveToAttributeNo(xmlTextReaderPtr reader,
227
int no);
228
XMLPUBFUN int XMLCALL
229
xmlTextReaderMoveToAttribute(xmlTextReaderPtr reader,
230
const xmlChar *name);
231
XMLPUBFUN int XMLCALL
232
xmlTextReaderMoveToAttributeNs(xmlTextReaderPtr reader,
233
const xmlChar *localName,
234
const xmlChar *namespaceURI);
235
XMLPUBFUN int XMLCALL
236
xmlTextReaderMoveToFirstAttribute(xmlTextReaderPtr reader);
237
XMLPUBFUN int XMLCALL
238
xmlTextReaderMoveToNextAttribute(xmlTextReaderPtr reader);
239
XMLPUBFUN int XMLCALL
240
xmlTextReaderMoveToElement (xmlTextReaderPtr reader);
241
XMLPUBFUN int XMLCALL
242
xmlTextReaderNormalization (xmlTextReaderPtr reader);
243
XMLPUBFUN const xmlChar * XMLCALL
244
xmlTextReaderConstEncoding (xmlTextReaderPtr reader);
245
246
/*
247
* Extensions
248
*/
249
XMLPUBFUN int XMLCALL
250
xmlTextReaderSetParserProp (xmlTextReaderPtr reader,
251
int prop,
252
int value);
253
XMLPUBFUN int XMLCALL
254
xmlTextReaderGetParserProp (xmlTextReaderPtr reader,
255
int prop);
256
XMLPUBFUN xmlNodePtr XMLCALL
257
xmlTextReaderCurrentNode (xmlTextReaderPtr reader);
258
259
XMLPUBFUN int XMLCALL
260
xmlTextReaderGetParserLineNumber(xmlTextReaderPtr reader);
261
262
XMLPUBFUN int XMLCALL
263
xmlTextReaderGetParserColumnNumber(xmlTextReaderPtr reader);
264
265
XMLPUBFUN xmlNodePtr XMLCALL
266
xmlTextReaderPreserve (xmlTextReaderPtr reader);
267
#ifdef LIBXML_PATTERN_ENABLED
268
XMLPUBFUN int XMLCALL
269
xmlTextReaderPreservePattern(xmlTextReaderPtr reader,
270
const xmlChar *pattern,
271
const xmlChar **namespaces);
272
#endif /* LIBXML_PATTERN_ENABLED */
273
XMLPUBFUN xmlDocPtr XMLCALL
274
xmlTextReaderCurrentDoc (xmlTextReaderPtr reader);
275
XMLPUBFUN xmlNodePtr XMLCALL
276
xmlTextReaderExpand (xmlTextReaderPtr reader);
277
XMLPUBFUN int XMLCALL
278
xmlTextReaderNext (xmlTextReaderPtr reader);
279
XMLPUBFUN int XMLCALL
280
xmlTextReaderNextSibling (xmlTextReaderPtr reader);
281
XMLPUBFUN int XMLCALL
282
xmlTextReaderIsValid (xmlTextReaderPtr reader);
283
#ifdef LIBXML_SCHEMAS_ENABLED
284
XMLPUBFUN int XMLCALL
285
xmlTextReaderRelaxNGValidate(xmlTextReaderPtr reader,
286
const char *rng);
287
XMLPUBFUN int XMLCALL
288
xmlTextReaderRelaxNGValidateCtxt(xmlTextReaderPtr reader,
289
xmlRelaxNGValidCtxtPtr ctxt,
290
int options);
291
292
XMLPUBFUN int XMLCALL
293
xmlTextReaderRelaxNGSetSchema(xmlTextReaderPtr reader,
294
xmlRelaxNGPtr schema);
295
XMLPUBFUN int XMLCALL
296
xmlTextReaderSchemaValidate (xmlTextReaderPtr reader,
297
const char *xsd);
298
XMLPUBFUN int XMLCALL
299
xmlTextReaderSchemaValidateCtxt(xmlTextReaderPtr reader,
300
xmlSchemaValidCtxtPtr ctxt,
301
int options);
302
XMLPUBFUN int XMLCALL
303
xmlTextReaderSetSchema (xmlTextReaderPtr reader,
304
xmlSchemaPtr schema);
305
#endif
306
XMLPUBFUN const xmlChar * XMLCALL
307
xmlTextReaderConstXmlVersion(xmlTextReaderPtr reader);
308
XMLPUBFUN int XMLCALL
309
xmlTextReaderStandalone (xmlTextReaderPtr reader);
310
311
312
/*
313
* Index lookup
314
*/
315
XMLPUBFUN long XMLCALL
316
xmlTextReaderByteConsumed (xmlTextReaderPtr reader);
317
318
/*
319
* New more complete APIs for simpler creation and reuse of readers
320
*/
321
XMLPUBFUN xmlTextReaderPtr XMLCALL
322
xmlReaderWalker (xmlDocPtr doc);
323
XMLPUBFUN xmlTextReaderPtr XMLCALL
324
xmlReaderForDoc (const xmlChar * cur,
325
const char *URL,
326
const char *encoding,
327
int options);
328
XMLPUBFUN xmlTextReaderPtr XMLCALL
329
xmlReaderForFile (const char *filename,
330
const char *encoding,
331
int options);
332
XMLPUBFUN xmlTextReaderPtr XMLCALL
333
xmlReaderForMemory (const char *buffer,
334
int size,
335
const char *URL,
336
const char *encoding,
337
int options);
338
XMLPUBFUN xmlTextReaderPtr XMLCALL
339
xmlReaderForFd (int fd,
340
const char *URL,
341
const char *encoding,
342
int options);
343
XMLPUBFUN xmlTextReaderPtr XMLCALL
344
xmlReaderForIO (xmlInputReadCallback ioread,
345
xmlInputCloseCallback ioclose,
346
void *ioctx,
347
const char *URL,
348
const char *encoding,
349
int options);
350
351
XMLPUBFUN int XMLCALL
352
xmlReaderNewWalker (xmlTextReaderPtr reader,
353
xmlDocPtr doc);
354
XMLPUBFUN int XMLCALL
355
xmlReaderNewDoc (xmlTextReaderPtr reader,
356
const xmlChar * cur,
357
const char *URL,
358
const char *encoding,
359
int options);
360
XMLPUBFUN int XMLCALL
361
xmlReaderNewFile (xmlTextReaderPtr reader,
362
const char *filename,
363
const char *encoding,
364
int options);
365
XMLPUBFUN int XMLCALL
366
xmlReaderNewMemory (xmlTextReaderPtr reader,
367
const char *buffer,
368
int size,
369
const char *URL,
370
const char *encoding,
371
int options);
372
XMLPUBFUN int XMLCALL
373
xmlReaderNewFd (xmlTextReaderPtr reader,
374
int fd,
375
const char *URL,
376
const char *encoding,
377
int options);
378
XMLPUBFUN int XMLCALL
379
xmlReaderNewIO (xmlTextReaderPtr reader,
380
xmlInputReadCallback ioread,
381
xmlInputCloseCallback ioclose,
382
void *ioctx,
383
const char *URL,
384
const char *encoding,
385
int options);
386
/*
387
* Error handling extensions
388
*/
389
typedef void * xmlTextReaderLocatorPtr;
390
391
/**
392
* xmlTextReaderErrorFunc:
393
* @arg: the user argument
394
* @msg: the message
395
* @severity: the severity of the error
396
* @locator: a locator indicating where the error occurred
397
*
398
* Signature of an error callback from a reader parser
399
*/
400
typedef void (XMLCALL *xmlTextReaderErrorFunc)(void *arg,
401
const char *msg,
402
xmlParserSeverities severity,
403
xmlTextReaderLocatorPtr locator);
404
XMLPUBFUN int XMLCALL
405
xmlTextReaderLocatorLineNumber(xmlTextReaderLocatorPtr locator);
406
XMLPUBFUN xmlChar * XMLCALL
407
xmlTextReaderLocatorBaseURI (xmlTextReaderLocatorPtr locator);
408
XMLPUBFUN void XMLCALL
409
xmlTextReaderSetErrorHandler(xmlTextReaderPtr reader,
410
xmlTextReaderErrorFunc f,
411
void *arg);
412
XMLPUBFUN void XMLCALL
413
xmlTextReaderSetStructuredErrorHandler(xmlTextReaderPtr reader,
414
xmlStructuredErrorFunc f,
415
void *arg);
416
XMLPUBFUN void XMLCALL
417
xmlTextReaderGetErrorHandler(xmlTextReaderPtr reader,
418
xmlTextReaderErrorFunc *f,
419
void **arg);
420
421
#endif /* LIBXML_READER_ENABLED */
422
423
#ifdef __cplusplus
424
}
425
#endif
426
427
#endif /* __XML_XMLREADER_H__ */
428
429
430