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