Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
hhhrrrttt222111
GitHub Repository: hhhrrrttt222111/Dorkify
Path: blob/master/venv/Lib/site-packages/lxml/includes/libxml/parserInternals.h
811 views
1
/*
2
* Summary: internals routines and limits exported by the parser.
3
* Description: this module exports a number of internal parsing routines
4
* they are not really all intended for applications but
5
* can prove useful doing low level processing.
6
*
7
* Copy: See Copyright for the status of this software.
8
*
9
* Author: Daniel Veillard
10
*/
11
12
#ifndef __XML_PARSER_INTERNALS_H__
13
#define __XML_PARSER_INTERNALS_H__
14
15
#include <libxml/xmlversion.h>
16
#include <libxml/parser.h>
17
#include <libxml/HTMLparser.h>
18
#include <libxml/chvalid.h>
19
20
#ifdef __cplusplus
21
extern "C" {
22
#endif
23
24
/**
25
* xmlParserMaxDepth:
26
*
27
* arbitrary depth limit for the XML documents that we allow to
28
* process. This is not a limitation of the parser but a safety
29
* boundary feature, use XML_PARSE_HUGE option to override it.
30
*/
31
XMLPUBVAR unsigned int xmlParserMaxDepth;
32
33
/**
34
* XML_MAX_TEXT_LENGTH:
35
*
36
* Maximum size allowed for a single text node when building a tree.
37
* This is not a limitation of the parser but a safety boundary feature,
38
* use XML_PARSE_HUGE option to override it.
39
* Introduced in 2.9.0
40
*/
41
#define XML_MAX_TEXT_LENGTH 10000000
42
43
/**
44
* XML_MAX_NAME_LENGTH:
45
*
46
* Maximum size allowed for a markup identitier
47
* This is not a limitation of the parser but a safety boundary feature,
48
* use XML_PARSE_HUGE option to override it.
49
* Note that with the use of parsing dictionaries overriding the limit
50
* may result in more runtime memory usage in face of "unfriendly' content
51
* Introduced in 2.9.0
52
*/
53
#define XML_MAX_NAME_LENGTH 50000
54
55
/**
56
* XML_MAX_DICTIONARY_LIMIT:
57
*
58
* Maximum size allowed by the parser for a dictionary by default
59
* This is not a limitation of the parser but a safety boundary feature,
60
* use XML_PARSE_HUGE option to override it.
61
* Introduced in 2.9.0
62
*/
63
#define XML_MAX_DICTIONARY_LIMIT 10000000
64
65
/**
66
* XML_MAX_LOOKUP_LIMIT:
67
*
68
* Maximum size allowed by the parser for ahead lookup
69
* This is an upper boundary enforced by the parser to avoid bad
70
* behaviour on "unfriendly' content
71
* Introduced in 2.9.0
72
*/
73
#define XML_MAX_LOOKUP_LIMIT 10000000
74
75
/**
76
* XML_MAX_NAMELEN:
77
*
78
* Identifiers can be longer, but this will be more costly
79
* at runtime.
80
*/
81
#define XML_MAX_NAMELEN 100
82
83
/**
84
* INPUT_CHUNK:
85
*
86
* The parser tries to always have that amount of input ready.
87
* One of the point is providing context when reporting errors.
88
*/
89
#define INPUT_CHUNK 250
90
91
/************************************************************************
92
* *
93
* UNICODE version of the macros. *
94
* *
95
************************************************************************/
96
/**
97
* IS_BYTE_CHAR:
98
* @c: an byte value (int)
99
*
100
* Macro to check the following production in the XML spec:
101
*
102
* [2] Char ::= #x9 | #xA | #xD | [#x20...]
103
* any byte character in the accepted range
104
*/
105
#define IS_BYTE_CHAR(c) xmlIsChar_ch(c)
106
107
/**
108
* IS_CHAR:
109
* @c: an UNICODE value (int)
110
*
111
* Macro to check the following production in the XML spec:
112
*
113
* [2] Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD]
114
* | [#x10000-#x10FFFF]
115
* any Unicode character, excluding the surrogate blocks, FFFE, and FFFF.
116
*/
117
#define IS_CHAR(c) xmlIsCharQ(c)
118
119
/**
120
* IS_CHAR_CH:
121
* @c: an xmlChar (usually an unsigned char)
122
*
123
* Behaves like IS_CHAR on single-byte value
124
*/
125
#define IS_CHAR_CH(c) xmlIsChar_ch(c)
126
127
/**
128
* IS_BLANK:
129
* @c: an UNICODE value (int)
130
*
131
* Macro to check the following production in the XML spec:
132
*
133
* [3] S ::= (#x20 | #x9 | #xD | #xA)+
134
*/
135
#define IS_BLANK(c) xmlIsBlankQ(c)
136
137
/**
138
* IS_BLANK_CH:
139
* @c: an xmlChar value (normally unsigned char)
140
*
141
* Behaviour same as IS_BLANK
142
*/
143
#define IS_BLANK_CH(c) xmlIsBlank_ch(c)
144
145
/**
146
* IS_BASECHAR:
147
* @c: an UNICODE value (int)
148
*
149
* Macro to check the following production in the XML spec:
150
*
151
* [85] BaseChar ::= ... long list see REC ...
152
*/
153
#define IS_BASECHAR(c) xmlIsBaseCharQ(c)
154
155
/**
156
* IS_DIGIT:
157
* @c: an UNICODE value (int)
158
*
159
* Macro to check the following production in the XML spec:
160
*
161
* [88] Digit ::= ... long list see REC ...
162
*/
163
#define IS_DIGIT(c) xmlIsDigitQ(c)
164
165
/**
166
* IS_DIGIT_CH:
167
* @c: an xmlChar value (usually an unsigned char)
168
*
169
* Behaves like IS_DIGIT but with a single byte argument
170
*/
171
#define IS_DIGIT_CH(c) xmlIsDigit_ch(c)
172
173
/**
174
* IS_COMBINING:
175
* @c: an UNICODE value (int)
176
*
177
* Macro to check the following production in the XML spec:
178
*
179
* [87] CombiningChar ::= ... long list see REC ...
180
*/
181
#define IS_COMBINING(c) xmlIsCombiningQ(c)
182
183
/**
184
* IS_COMBINING_CH:
185
* @c: an xmlChar (usually an unsigned char)
186
*
187
* Always false (all combining chars > 0xff)
188
*/
189
#define IS_COMBINING_CH(c) 0
190
191
/**
192
* IS_EXTENDER:
193
* @c: an UNICODE value (int)
194
*
195
* Macro to check the following production in the XML spec:
196
*
197
*
198
* [89] Extender ::= #x00B7 | #x02D0 | #x02D1 | #x0387 | #x0640 |
199
* #x0E46 | #x0EC6 | #x3005 | [#x3031-#x3035] |
200
* [#x309D-#x309E] | [#x30FC-#x30FE]
201
*/
202
#define IS_EXTENDER(c) xmlIsExtenderQ(c)
203
204
/**
205
* IS_EXTENDER_CH:
206
* @c: an xmlChar value (usually an unsigned char)
207
*
208
* Behaves like IS_EXTENDER but with a single-byte argument
209
*/
210
#define IS_EXTENDER_CH(c) xmlIsExtender_ch(c)
211
212
/**
213
* IS_IDEOGRAPHIC:
214
* @c: an UNICODE value (int)
215
*
216
* Macro to check the following production in the XML spec:
217
*
218
*
219
* [86] Ideographic ::= [#x4E00-#x9FA5] | #x3007 | [#x3021-#x3029]
220
*/
221
#define IS_IDEOGRAPHIC(c) xmlIsIdeographicQ(c)
222
223
/**
224
* IS_LETTER:
225
* @c: an UNICODE value (int)
226
*
227
* Macro to check the following production in the XML spec:
228
*
229
*
230
* [84] Letter ::= BaseChar | Ideographic
231
*/
232
#define IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c))
233
234
/**
235
* IS_LETTER_CH:
236
* @c: an xmlChar value (normally unsigned char)
237
*
238
* Macro behaves like IS_LETTER, but only check base chars
239
*
240
*/
241
#define IS_LETTER_CH(c) xmlIsBaseChar_ch(c)
242
243
/**
244
* IS_ASCII_LETTER:
245
* @c: an xmlChar value
246
*
247
* Macro to check [a-zA-Z]
248
*
249
*/
250
#define IS_ASCII_LETTER(c) (((0x41 <= (c)) && ((c) <= 0x5a)) || \
251
((0x61 <= (c)) && ((c) <= 0x7a)))
252
253
/**
254
* IS_ASCII_DIGIT:
255
* @c: an xmlChar value
256
*
257
* Macro to check [0-9]
258
*
259
*/
260
#define IS_ASCII_DIGIT(c) ((0x30 <= (c)) && ((c) <= 0x39))
261
262
/**
263
* IS_PUBIDCHAR:
264
* @c: an UNICODE value (int)
265
*
266
* Macro to check the following production in the XML spec:
267
*
268
*
269
* [13] PubidChar ::= #x20 | #xD | #xA | [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]
270
*/
271
#define IS_PUBIDCHAR(c) xmlIsPubidCharQ(c)
272
273
/**
274
* IS_PUBIDCHAR_CH:
275
* @c: an xmlChar value (normally unsigned char)
276
*
277
* Same as IS_PUBIDCHAR but for single-byte value
278
*/
279
#define IS_PUBIDCHAR_CH(c) xmlIsPubidChar_ch(c)
280
281
/**
282
* SKIP_EOL:
283
* @p: and UTF8 string pointer
284
*
285
* Skips the end of line chars.
286
*/
287
#define SKIP_EOL(p) \
288
if (*(p) == 0x13) { p++ ; if (*(p) == 0x10) p++; } \
289
if (*(p) == 0x10) { p++ ; if (*(p) == 0x13) p++; }
290
291
/**
292
* MOVETO_ENDTAG:
293
* @p: and UTF8 string pointer
294
*
295
* Skips to the next '>' char.
296
*/
297
#define MOVETO_ENDTAG(p) \
298
while ((*p) && (*(p) != '>')) (p)++
299
300
/**
301
* MOVETO_STARTTAG:
302
* @p: and UTF8 string pointer
303
*
304
* Skips to the next '<' char.
305
*/
306
#define MOVETO_STARTTAG(p) \
307
while ((*p) && (*(p) != '<')) (p)++
308
309
/**
310
* Global variables used for predefined strings.
311
*/
312
XMLPUBVAR const xmlChar xmlStringText[];
313
XMLPUBVAR const xmlChar xmlStringTextNoenc[];
314
XMLPUBVAR const xmlChar xmlStringComment[];
315
316
/*
317
* Function to finish the work of the macros where needed.
318
*/
319
XMLPUBFUN int XMLCALL xmlIsLetter (int c);
320
321
/**
322
* Parser context.
323
*/
324
XMLPUBFUN xmlParserCtxtPtr XMLCALL
325
xmlCreateFileParserCtxt (const char *filename);
326
XMLPUBFUN xmlParserCtxtPtr XMLCALL
327
xmlCreateURLParserCtxt (const char *filename,
328
int options);
329
XMLPUBFUN xmlParserCtxtPtr XMLCALL
330
xmlCreateMemoryParserCtxt(const char *buffer,
331
int size);
332
XMLPUBFUN xmlParserCtxtPtr XMLCALL
333
xmlCreateEntityParserCtxt(const xmlChar *URL,
334
const xmlChar *ID,
335
const xmlChar *base);
336
XMLPUBFUN int XMLCALL
337
xmlSwitchEncoding (xmlParserCtxtPtr ctxt,
338
xmlCharEncoding enc);
339
XMLPUBFUN int XMLCALL
340
xmlSwitchToEncoding (xmlParserCtxtPtr ctxt,
341
xmlCharEncodingHandlerPtr handler);
342
XMLPUBFUN int XMLCALL
343
xmlSwitchInputEncoding (xmlParserCtxtPtr ctxt,
344
xmlParserInputPtr input,
345
xmlCharEncodingHandlerPtr handler);
346
347
#ifdef IN_LIBXML
348
/* internal error reporting */
349
XMLPUBFUN void XMLCALL
350
__xmlErrEncoding (xmlParserCtxtPtr ctxt,
351
xmlParserErrors xmlerr,
352
const char *msg,
353
const xmlChar * str1,
354
const xmlChar * str2) LIBXML_ATTR_FORMAT(3,0);
355
#endif
356
357
/**
358
* Input Streams.
359
*/
360
XMLPUBFUN xmlParserInputPtr XMLCALL
361
xmlNewStringInputStream (xmlParserCtxtPtr ctxt,
362
const xmlChar *buffer);
363
XMLPUBFUN xmlParserInputPtr XMLCALL
364
xmlNewEntityInputStream (xmlParserCtxtPtr ctxt,
365
xmlEntityPtr entity);
366
XMLPUBFUN int XMLCALL
367
xmlPushInput (xmlParserCtxtPtr ctxt,
368
xmlParserInputPtr input);
369
XMLPUBFUN xmlChar XMLCALL
370
xmlPopInput (xmlParserCtxtPtr ctxt);
371
XMLPUBFUN void XMLCALL
372
xmlFreeInputStream (xmlParserInputPtr input);
373
XMLPUBFUN xmlParserInputPtr XMLCALL
374
xmlNewInputFromFile (xmlParserCtxtPtr ctxt,
375
const char *filename);
376
XMLPUBFUN xmlParserInputPtr XMLCALL
377
xmlNewInputStream (xmlParserCtxtPtr ctxt);
378
379
/**
380
* Namespaces.
381
*/
382
XMLPUBFUN xmlChar * XMLCALL
383
xmlSplitQName (xmlParserCtxtPtr ctxt,
384
const xmlChar *name,
385
xmlChar **prefix);
386
387
/**
388
* Generic production rules.
389
*/
390
XMLPUBFUN const xmlChar * XMLCALL
391
xmlParseName (xmlParserCtxtPtr ctxt);
392
XMLPUBFUN xmlChar * XMLCALL
393
xmlParseNmtoken (xmlParserCtxtPtr ctxt);
394
XMLPUBFUN xmlChar * XMLCALL
395
xmlParseEntityValue (xmlParserCtxtPtr ctxt,
396
xmlChar **orig);
397
XMLPUBFUN xmlChar * XMLCALL
398
xmlParseAttValue (xmlParserCtxtPtr ctxt);
399
XMLPUBFUN xmlChar * XMLCALL
400
xmlParseSystemLiteral (xmlParserCtxtPtr ctxt);
401
XMLPUBFUN xmlChar * XMLCALL
402
xmlParsePubidLiteral (xmlParserCtxtPtr ctxt);
403
XMLPUBFUN void XMLCALL
404
xmlParseCharData (xmlParserCtxtPtr ctxt,
405
int cdata);
406
XMLPUBFUN xmlChar * XMLCALL
407
xmlParseExternalID (xmlParserCtxtPtr ctxt,
408
xmlChar **publicID,
409
int strict);
410
XMLPUBFUN void XMLCALL
411
xmlParseComment (xmlParserCtxtPtr ctxt);
412
XMLPUBFUN const xmlChar * XMLCALL
413
xmlParsePITarget (xmlParserCtxtPtr ctxt);
414
XMLPUBFUN void XMLCALL
415
xmlParsePI (xmlParserCtxtPtr ctxt);
416
XMLPUBFUN void XMLCALL
417
xmlParseNotationDecl (xmlParserCtxtPtr ctxt);
418
XMLPUBFUN void XMLCALL
419
xmlParseEntityDecl (xmlParserCtxtPtr ctxt);
420
XMLPUBFUN int XMLCALL
421
xmlParseDefaultDecl (xmlParserCtxtPtr ctxt,
422
xmlChar **value);
423
XMLPUBFUN xmlEnumerationPtr XMLCALL
424
xmlParseNotationType (xmlParserCtxtPtr ctxt);
425
XMLPUBFUN xmlEnumerationPtr XMLCALL
426
xmlParseEnumerationType (xmlParserCtxtPtr ctxt);
427
XMLPUBFUN int XMLCALL
428
xmlParseEnumeratedType (xmlParserCtxtPtr ctxt,
429
xmlEnumerationPtr *tree);
430
XMLPUBFUN int XMLCALL
431
xmlParseAttributeType (xmlParserCtxtPtr ctxt,
432
xmlEnumerationPtr *tree);
433
XMLPUBFUN void XMLCALL
434
xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt);
435
XMLPUBFUN xmlElementContentPtr XMLCALL
436
xmlParseElementMixedContentDecl
437
(xmlParserCtxtPtr ctxt,
438
int inputchk);
439
XMLPUBFUN xmlElementContentPtr XMLCALL
440
xmlParseElementChildrenContentDecl
441
(xmlParserCtxtPtr ctxt,
442
int inputchk);
443
XMLPUBFUN int XMLCALL
444
xmlParseElementContentDecl(xmlParserCtxtPtr ctxt,
445
const xmlChar *name,
446
xmlElementContentPtr *result);
447
XMLPUBFUN int XMLCALL
448
xmlParseElementDecl (xmlParserCtxtPtr ctxt);
449
XMLPUBFUN void XMLCALL
450
xmlParseMarkupDecl (xmlParserCtxtPtr ctxt);
451
XMLPUBFUN int XMLCALL
452
xmlParseCharRef (xmlParserCtxtPtr ctxt);
453
XMLPUBFUN xmlEntityPtr XMLCALL
454
xmlParseEntityRef (xmlParserCtxtPtr ctxt);
455
XMLPUBFUN void XMLCALL
456
xmlParseReference (xmlParserCtxtPtr ctxt);
457
XMLPUBFUN void XMLCALL
458
xmlParsePEReference (xmlParserCtxtPtr ctxt);
459
XMLPUBFUN void XMLCALL
460
xmlParseDocTypeDecl (xmlParserCtxtPtr ctxt);
461
#ifdef LIBXML_SAX1_ENABLED
462
XMLPUBFUN const xmlChar * XMLCALL
463
xmlParseAttribute (xmlParserCtxtPtr ctxt,
464
xmlChar **value);
465
XMLPUBFUN const xmlChar * XMLCALL
466
xmlParseStartTag (xmlParserCtxtPtr ctxt);
467
XMLPUBFUN void XMLCALL
468
xmlParseEndTag (xmlParserCtxtPtr ctxt);
469
#endif /* LIBXML_SAX1_ENABLED */
470
XMLPUBFUN void XMLCALL
471
xmlParseCDSect (xmlParserCtxtPtr ctxt);
472
XMLPUBFUN void XMLCALL
473
xmlParseContent (xmlParserCtxtPtr ctxt);
474
XMLPUBFUN void XMLCALL
475
xmlParseElement (xmlParserCtxtPtr ctxt);
476
XMLPUBFUN xmlChar * XMLCALL
477
xmlParseVersionNum (xmlParserCtxtPtr ctxt);
478
XMLPUBFUN xmlChar * XMLCALL
479
xmlParseVersionInfo (xmlParserCtxtPtr ctxt);
480
XMLPUBFUN xmlChar * XMLCALL
481
xmlParseEncName (xmlParserCtxtPtr ctxt);
482
XMLPUBFUN const xmlChar * XMLCALL
483
xmlParseEncodingDecl (xmlParserCtxtPtr ctxt);
484
XMLPUBFUN int XMLCALL
485
xmlParseSDDecl (xmlParserCtxtPtr ctxt);
486
XMLPUBFUN void XMLCALL
487
xmlParseXMLDecl (xmlParserCtxtPtr ctxt);
488
XMLPUBFUN void XMLCALL
489
xmlParseTextDecl (xmlParserCtxtPtr ctxt);
490
XMLPUBFUN void XMLCALL
491
xmlParseMisc (xmlParserCtxtPtr ctxt);
492
XMLPUBFUN void XMLCALL
493
xmlParseExternalSubset (xmlParserCtxtPtr ctxt,
494
const xmlChar *ExternalID,
495
const xmlChar *SystemID);
496
/**
497
* XML_SUBSTITUTE_NONE:
498
*
499
* If no entities need to be substituted.
500
*/
501
#define XML_SUBSTITUTE_NONE 0
502
/**
503
* XML_SUBSTITUTE_REF:
504
*
505
* Whether general entities need to be substituted.
506
*/
507
#define XML_SUBSTITUTE_REF 1
508
/**
509
* XML_SUBSTITUTE_PEREF:
510
*
511
* Whether parameter entities need to be substituted.
512
*/
513
#define XML_SUBSTITUTE_PEREF 2
514
/**
515
* XML_SUBSTITUTE_BOTH:
516
*
517
* Both general and parameter entities need to be substituted.
518
*/
519
#define XML_SUBSTITUTE_BOTH 3
520
521
XMLPUBFUN xmlChar * XMLCALL
522
xmlStringDecodeEntities (xmlParserCtxtPtr ctxt,
523
const xmlChar *str,
524
int what,
525
xmlChar end,
526
xmlChar end2,
527
xmlChar end3);
528
XMLPUBFUN xmlChar * XMLCALL
529
xmlStringLenDecodeEntities (xmlParserCtxtPtr ctxt,
530
const xmlChar *str,
531
int len,
532
int what,
533
xmlChar end,
534
xmlChar end2,
535
xmlChar end3);
536
537
/*
538
* Generated by MACROS on top of parser.c c.f. PUSH_AND_POP.
539
*/
540
XMLPUBFUN int XMLCALL nodePush (xmlParserCtxtPtr ctxt,
541
xmlNodePtr value);
542
XMLPUBFUN xmlNodePtr XMLCALL nodePop (xmlParserCtxtPtr ctxt);
543
XMLPUBFUN int XMLCALL inputPush (xmlParserCtxtPtr ctxt,
544
xmlParserInputPtr value);
545
XMLPUBFUN xmlParserInputPtr XMLCALL inputPop (xmlParserCtxtPtr ctxt);
546
XMLPUBFUN const xmlChar * XMLCALL namePop (xmlParserCtxtPtr ctxt);
547
XMLPUBFUN int XMLCALL namePush (xmlParserCtxtPtr ctxt,
548
const xmlChar *value);
549
550
/*
551
* other commodities shared between parser.c and parserInternals.
552
*/
553
XMLPUBFUN int XMLCALL xmlSkipBlankChars (xmlParserCtxtPtr ctxt);
554
XMLPUBFUN int XMLCALL xmlStringCurrentChar (xmlParserCtxtPtr ctxt,
555
const xmlChar *cur,
556
int *len);
557
XMLPUBFUN void XMLCALL xmlParserHandlePEReference(xmlParserCtxtPtr ctxt);
558
XMLPUBFUN int XMLCALL xmlCheckLanguageID (const xmlChar *lang);
559
560
/*
561
* Really core function shared with HTML parser.
562
*/
563
XMLPUBFUN int XMLCALL xmlCurrentChar (xmlParserCtxtPtr ctxt,
564
int *len);
565
XMLPUBFUN int XMLCALL xmlCopyCharMultiByte (xmlChar *out,
566
int val);
567
XMLPUBFUN int XMLCALL xmlCopyChar (int len,
568
xmlChar *out,
569
int val);
570
XMLPUBFUN void XMLCALL xmlNextChar (xmlParserCtxtPtr ctxt);
571
XMLPUBFUN void XMLCALL xmlParserInputShrink (xmlParserInputPtr in);
572
573
#ifdef LIBXML_HTML_ENABLED
574
/*
575
* Actually comes from the HTML parser but launched from the init stuff.
576
*/
577
XMLPUBFUN void XMLCALL htmlInitAutoClose (void);
578
XMLPUBFUN htmlParserCtxtPtr XMLCALL htmlCreateFileParserCtxt(const char *filename,
579
const char *encoding);
580
#endif
581
582
/*
583
* Specific function to keep track of entities references
584
* and used by the XSLT debugger.
585
*/
586
#ifdef LIBXML_LEGACY_ENABLED
587
/**
588
* xmlEntityReferenceFunc:
589
* @ent: the entity
590
* @firstNode: the fist node in the chunk
591
* @lastNode: the last nod in the chunk
592
*
593
* Callback function used when one needs to be able to track back the
594
* provenance of a chunk of nodes inherited from an entity replacement.
595
*/
596
typedef void (*xmlEntityReferenceFunc) (xmlEntityPtr ent,
597
xmlNodePtr firstNode,
598
xmlNodePtr lastNode);
599
600
XMLPUBFUN void XMLCALL xmlSetEntityReferenceFunc (xmlEntityReferenceFunc func);
601
602
XMLPUBFUN xmlChar * XMLCALL
603
xmlParseQuotedString (xmlParserCtxtPtr ctxt);
604
XMLPUBFUN void XMLCALL
605
xmlParseNamespace (xmlParserCtxtPtr ctxt);
606
XMLPUBFUN xmlChar * XMLCALL
607
xmlNamespaceParseNSDef (xmlParserCtxtPtr ctxt);
608
XMLPUBFUN xmlChar * XMLCALL
609
xmlScanName (xmlParserCtxtPtr ctxt);
610
XMLPUBFUN xmlChar * XMLCALL
611
xmlNamespaceParseNCName (xmlParserCtxtPtr ctxt);
612
XMLPUBFUN void XMLCALL xmlParserHandleReference(xmlParserCtxtPtr ctxt);
613
XMLPUBFUN xmlChar * XMLCALL
614
xmlNamespaceParseQName (xmlParserCtxtPtr ctxt,
615
xmlChar **prefix);
616
/**
617
* Entities
618
*/
619
XMLPUBFUN xmlChar * XMLCALL
620
xmlDecodeEntities (xmlParserCtxtPtr ctxt,
621
int len,
622
int what,
623
xmlChar end,
624
xmlChar end2,
625
xmlChar end3);
626
XMLPUBFUN void XMLCALL
627
xmlHandleEntity (xmlParserCtxtPtr ctxt,
628
xmlEntityPtr entity);
629
630
#endif /* LIBXML_LEGACY_ENABLED */
631
632
#ifdef IN_LIBXML
633
/*
634
* internal only
635
*/
636
XMLPUBFUN void XMLCALL
637
xmlErrMemory (xmlParserCtxtPtr ctxt,
638
const char *extra);
639
#endif
640
641
#ifdef __cplusplus
642
}
643
#endif
644
#endif /* __XML_PARSER_INTERNALS_H__ */
645
646