ReactOS 0.4.16-dev-2132-g3885311
tree.h
Go to the documentation of this file.
1/*
2 * Summary: interfaces for tree manipulation
3 * Description: this module describes the structures found in an tree resulting
4 * from an XML or HTML parsing, as well as the API provided for
5 * various processing on that tree
6 *
7 * Copy: See Copyright for the status of this software.
8 *
9 * Author: Daniel Veillard
10 */
11
12#ifndef XML_TREE_INTERNALS
13
14/*
15 * Emulate circular dependency for backward compatibility
16 */
17#include <libxml/parser.h>
18
19#else /* XML_TREE_INTERNALS */
20
21#ifndef __XML_TREE_H__
22#define __XML_TREE_H__
23
24#include <stdio.h>
25#include <limits.h>
26#include <libxml/xmlversion.h>
27#include <libxml/xmlstring.h>
28#include <libxml/xmlmemory.h>
29#include <libxml/xmlregexp.h>
30
31#ifdef __cplusplus
32extern "C" {
33#endif
34
35/*
36 * Some of the basic types pointer to structures:
37 */
38/* xmlIO.h */
39typedef struct _xmlParserInputBuffer xmlParserInputBuffer;
40typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
41
42typedef struct _xmlOutputBuffer xmlOutputBuffer;
43typedef xmlOutputBuffer *xmlOutputBufferPtr;
44
45/* parser.h */
46typedef struct _xmlParserInput xmlParserInput;
47typedef xmlParserInput *xmlParserInputPtr;
48
49typedef struct _xmlParserCtxt xmlParserCtxt;
50typedef xmlParserCtxt *xmlParserCtxtPtr;
51
52typedef struct _xmlSAXLocator xmlSAXLocator;
53typedef xmlSAXLocator *xmlSAXLocatorPtr;
54
55typedef struct _xmlSAXHandler xmlSAXHandler;
56typedef xmlSAXHandler *xmlSAXHandlerPtr;
57
58/* entities.h */
59typedef struct _xmlEntity xmlEntity;
60typedef xmlEntity *xmlEntityPtr;
61
67#define BASE_BUFFER_SIZE 4096
68
76/* #define LIBXML_NAMESPACE_DICT */
77
85typedef enum {
86 XML_BUFFER_ALLOC_DOUBLEIT, /* double each time one need to grow */
87 XML_BUFFER_ALLOC_EXACT, /* grow only to the minimal size */
88 XML_BUFFER_ALLOC_IMMUTABLE, /* immutable buffer, deprecated */
89 XML_BUFFER_ALLOC_IO, /* special allocation scheme used for I/O */
90 XML_BUFFER_ALLOC_HYBRID, /* exact up to a threshold, and doubleit thereafter */
91 XML_BUFFER_ALLOC_BOUNDED /* limit the upper size of the buffer */
92} xmlBufferAllocationScheme;
93
100typedef struct _xmlBuffer xmlBuffer;
101typedef xmlBuffer *xmlBufferPtr;
102struct _xmlBuffer {
103 xmlChar *content; /* The buffer content UTF8 */
104 unsigned int use; /* The buffer size used */
105 unsigned int size; /* The buffer size */
106 xmlBufferAllocationScheme alloc; /* The realloc method */
107 xmlChar *contentIO; /* in IO mode we may have a different base */
108};
109
116typedef struct _xmlBuf xmlBuf;
117
125typedef xmlBuf *xmlBufPtr;
126
127/*
128 * A few public routines for xmlBuf. As those are expected to be used
129 * mostly internally the bulk of the routines are internal in buf.h
130 */
131XMLPUBFUN xmlChar* xmlBufContent (const xmlBuf* buf);
132XMLPUBFUN xmlChar* xmlBufEnd (xmlBufPtr buf);
133XMLPUBFUN size_t xmlBufUse (const xmlBufPtr buf);
134XMLPUBFUN size_t xmlBufShrink (xmlBufPtr buf, size_t len);
135
136/*
137 * LIBXML2_NEW_BUFFER:
138 *
139 * Macro used to express that the API use the new buffers for
140 * xmlParserInputBuffer and xmlOutputBuffer. The change was
141 * introduced in 2.9.0.
142 */
143#define LIBXML2_NEW_BUFFER
144
151#define XML_XML_NAMESPACE \
152 (const xmlChar *) "http://www.w3.org/XML/1998/namespace"
153
159#define XML_XML_ID (const xmlChar *) "xml:id"
160
161/*
162 * The different element types carried by an XML tree.
163 *
164 * NOTE: This is synchronized with DOM Level1 values
165 * See http://www.w3.org/TR/REC-DOM-Level-1/
166 *
167 * Actually this had diverged a bit, and now XML_DOCUMENT_TYPE_NODE should
168 * be deprecated to use an XML_DTD_NODE.
169 */
170typedef enum {
171 XML_ELEMENT_NODE= 1,
172 XML_ATTRIBUTE_NODE= 2,
173 XML_TEXT_NODE= 3,
174 XML_CDATA_SECTION_NODE= 4,
175 XML_ENTITY_REF_NODE= 5,
176 XML_ENTITY_NODE= 6,
177 XML_PI_NODE= 7,
178 XML_COMMENT_NODE= 8,
179 XML_DOCUMENT_NODE= 9,
180 XML_DOCUMENT_TYPE_NODE= 10,
181 XML_DOCUMENT_FRAG_NODE= 11,
182 XML_NOTATION_NODE= 12,
183 XML_HTML_DOCUMENT_NODE= 13,
184 XML_DTD_NODE= 14,
185 XML_ELEMENT_DECL= 15,
186 XML_ATTRIBUTE_DECL= 16,
187 XML_ENTITY_DECL= 17,
188 XML_NAMESPACE_DECL= 18,
189 XML_XINCLUDE_START= 19,
190 XML_XINCLUDE_END= 20
191 /* XML_DOCB_DOCUMENT_NODE= 21 */ /* removed */
192} xmlElementType;
193
195/* For backward compatibility */
196#define XML_DOCB_DOCUMENT_NODE 21
205typedef struct _xmlNotation xmlNotation;
206typedef xmlNotation *xmlNotationPtr;
207struct _xmlNotation {
208 const xmlChar *name; /* Notation name */
209 const xmlChar *PublicID; /* Public identifier, if any */
210 const xmlChar *SystemID; /* System identifier, if any */
211};
212
219typedef enum {
220 XML_ATTRIBUTE_CDATA = 1,
221 XML_ATTRIBUTE_ID,
222 XML_ATTRIBUTE_IDREF ,
223 XML_ATTRIBUTE_IDREFS,
224 XML_ATTRIBUTE_ENTITY,
225 XML_ATTRIBUTE_ENTITIES,
226 XML_ATTRIBUTE_NMTOKEN,
227 XML_ATTRIBUTE_NMTOKENS,
228 XML_ATTRIBUTE_ENUMERATION,
229 XML_ATTRIBUTE_NOTATION
230} xmlAttributeType;
231
238typedef enum {
239 XML_ATTRIBUTE_NONE = 1,
240 XML_ATTRIBUTE_REQUIRED,
241 XML_ATTRIBUTE_IMPLIED,
242 XML_ATTRIBUTE_FIXED
243} xmlAttributeDefault;
244
251typedef struct _xmlEnumeration xmlEnumeration;
252typedef xmlEnumeration *xmlEnumerationPtr;
253struct _xmlEnumeration {
254 struct _xmlEnumeration *next; /* next one */
255 const xmlChar *name; /* Enumeration name */
256};
257
264typedef struct _xmlAttribute xmlAttribute;
265typedef xmlAttribute *xmlAttributePtr;
266struct _xmlAttribute {
267 void *_private; /* application data */
268 xmlElementType type; /* XML_ATTRIBUTE_DECL, must be second ! */
269 const xmlChar *name; /* Attribute name */
270 struct _xmlNode *children; /* NULL */
271 struct _xmlNode *last; /* NULL */
272 struct _xmlDtd *parent; /* -> DTD */
273 struct _xmlNode *next; /* next sibling link */
274 struct _xmlNode *prev; /* previous sibling link */
275 struct _xmlDoc *doc; /* the containing document */
276
277 struct _xmlAttribute *nexth; /* next in hash table */
278 xmlAttributeType atype; /* The attribute type */
279 xmlAttributeDefault def; /* the default */
280 const xmlChar *defaultValue; /* or the default value */
281 xmlEnumerationPtr tree; /* or the enumeration tree if any */
282 const xmlChar *prefix; /* the namespace prefix if any */
283 const xmlChar *elem; /* Element holding the attribute */
284};
285
291typedef enum {
292 XML_ELEMENT_CONTENT_PCDATA = 1,
293 XML_ELEMENT_CONTENT_ELEMENT,
294 XML_ELEMENT_CONTENT_SEQ,
295 XML_ELEMENT_CONTENT_OR
296} xmlElementContentType;
297
303typedef enum {
304 XML_ELEMENT_CONTENT_ONCE = 1,
305 XML_ELEMENT_CONTENT_OPT,
306 XML_ELEMENT_CONTENT_MULT,
307 XML_ELEMENT_CONTENT_PLUS
308} xmlElementContentOccur;
309
317typedef struct _xmlElementContent xmlElementContent;
318typedef xmlElementContent *xmlElementContentPtr;
319struct _xmlElementContent {
320 xmlElementContentType type; /* PCDATA, ELEMENT, SEQ or OR */
321 xmlElementContentOccur ocur; /* ONCE, OPT, MULT or PLUS */
322 const xmlChar *name; /* Element name */
323 struct _xmlElementContent *c1; /* first child */
324 struct _xmlElementContent *c2; /* second child */
325 struct _xmlElementContent *parent; /* parent */
326 const xmlChar *prefix; /* Namespace prefix */
327};
328
335typedef enum {
336 XML_ELEMENT_TYPE_UNDEFINED = 0,
337 XML_ELEMENT_TYPE_EMPTY = 1,
338 XML_ELEMENT_TYPE_ANY,
339 XML_ELEMENT_TYPE_MIXED,
340 XML_ELEMENT_TYPE_ELEMENT
341} xmlElementTypeVal;
342
349typedef struct _xmlElement xmlElement;
350typedef xmlElement *xmlElementPtr;
351struct _xmlElement {
352 void *_private; /* application data */
353 xmlElementType type; /* XML_ELEMENT_DECL, must be second ! */
354 const xmlChar *name; /* Element name */
355 struct _xmlNode *children; /* NULL */
356 struct _xmlNode *last; /* NULL */
357 struct _xmlDtd *parent; /* -> DTD */
358 struct _xmlNode *next; /* next sibling link */
359 struct _xmlNode *prev; /* previous sibling link */
360 struct _xmlDoc *doc; /* the containing document */
361
362 xmlElementTypeVal etype; /* The type */
363 xmlElementContentPtr content; /* the allowed element content */
364 xmlAttributePtr attributes; /* List of the declared attributes */
365 const xmlChar *prefix; /* the namespace prefix if any */
366#ifdef LIBXML_REGEXP_ENABLED
367 xmlRegexpPtr contModel; /* the validating regexp */
368#else
369 void *contModel;
370#endif
371};
372
373
379#define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL
380typedef xmlElementType xmlNsType;
381
392typedef struct _xmlNs xmlNs;
393typedef xmlNs *xmlNsPtr;
394struct _xmlNs {
395 struct _xmlNs *next; /* next Ns link for this node */
396 xmlNsType type; /* global or local */
397 const xmlChar *href; /* URL for the namespace */
398 const xmlChar *prefix; /* prefix for the namespace */
399 void *_private; /* application data */
400 struct _xmlDoc *context; /* normally an xmlDoc */
401};
402
409typedef struct _xmlDtd xmlDtd;
410typedef xmlDtd *xmlDtdPtr;
411struct _xmlDtd {
412 void *_private; /* application data */
413 xmlElementType type; /* XML_DTD_NODE, must be second ! */
414 const xmlChar *name; /* Name of the DTD */
415 struct _xmlNode *children; /* the value of the property link */
416 struct _xmlNode *last; /* last child link */
417 struct _xmlDoc *parent; /* child->parent link */
418 struct _xmlNode *next; /* next sibling link */
419 struct _xmlNode *prev; /* previous sibling link */
420 struct _xmlDoc *doc; /* the containing document */
421
422 /* End of common part */
423 void *notations; /* Hash table for notations if any */
424 void *elements; /* Hash table for elements if any */
425 void *attributes; /* Hash table for attributes if any */
426 void *entities; /* Hash table for entities if any */
427 const xmlChar *ExternalID; /* External identifier for PUBLIC DTD */
428 const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC DTD */
429 void *pentities; /* Hash table for param entities if any */
430};
431
437typedef struct _xmlAttr xmlAttr;
438typedef xmlAttr *xmlAttrPtr;
439struct _xmlAttr {
440 void *_private; /* application data */
441 xmlElementType type; /* XML_ATTRIBUTE_NODE, must be second ! */
442 const xmlChar *name; /* the name of the property */
443 struct _xmlNode *children; /* the value of the property */
444 struct _xmlNode *last; /* NULL */
445 struct _xmlNode *parent; /* child->parent link */
446 struct _xmlAttr *next; /* next sibling link */
447 struct _xmlAttr *prev; /* previous sibling link */
448 struct _xmlDoc *doc; /* the containing document */
449 xmlNs *ns; /* pointer to the associated namespace */
450 xmlAttributeType atype; /* the attribute type if validating */
451 void *psvi; /* for type/PSVI information */
452};
453
460typedef struct _xmlID xmlID;
461typedef xmlID *xmlIDPtr;
462struct _xmlID {
463 struct _xmlID *next; /* next ID */
464 const xmlChar *value; /* The ID name */
465 xmlAttrPtr attr; /* The attribute holding it */
466 const xmlChar *name; /* The attribute if attr is not available */
467 int lineno; /* The line number if attr is not available */
468 struct _xmlDoc *doc; /* The document holding the ID */
469};
470
477typedef struct _xmlRef xmlRef;
478typedef xmlRef *xmlRefPtr;
479struct _xmlRef {
480 struct _xmlRef *next; /* next Ref */
481 const xmlChar *value; /* The Ref name */
482 xmlAttrPtr attr; /* The attribute holding it */
483 const xmlChar *name; /* The attribute if attr is not available */
484 int lineno; /* The line number if attr is not available */
485};
486
492typedef struct _xmlNode xmlNode;
493typedef xmlNode *xmlNodePtr;
494struct _xmlNode {
495 void *_private; /* application data */
496 xmlElementType type; /* type number, must be second ! */
497 const xmlChar *name; /* the name of the node, or the entity */
498 struct _xmlNode *children; /* parent->childs link */
499 struct _xmlNode *last; /* last child link */
500 struct _xmlNode *parent; /* child->parent link */
501 struct _xmlNode *next; /* next sibling link */
502 struct _xmlNode *prev; /* previous sibling link */
503 struct _xmlDoc *doc; /* the containing document */
504
505 /* End of common part */
506 xmlNs *ns; /* pointer to the associated namespace */
507 xmlChar *content; /* the content */
508 struct _xmlAttr *properties;/* properties list */
509 xmlNs *nsDef; /* namespace definitions on this node */
510 void *psvi; /* for type/PSVI information */
511 unsigned short line; /* line number */
512 unsigned short extra; /* extra data for XPath/XSLT */
513};
514
520#define XML_GET_CONTENT(n) \
521 ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content)
522
528#define XML_GET_LINE(n) \
529 (xmlGetLineNo(n))
530
537typedef enum {
538 XML_DOC_WELLFORMED = 1<<0, /* document is XML well formed */
539 XML_DOC_NSVALID = 1<<1, /* document is Namespace valid */
540 XML_DOC_OLD10 = 1<<2, /* parsed with old XML-1.0 parser */
541 XML_DOC_DTDVALID = 1<<3, /* DTD validation was successful */
542 XML_DOC_XINCLUDE = 1<<4, /* XInclude substitution was done */
543 XML_DOC_USERBUILT = 1<<5, /* Document was built using the API
544 and not by parsing an instance */
545 XML_DOC_INTERNAL = 1<<6, /* built for internal processing */
546 XML_DOC_HTML = 1<<7 /* parsed or built HTML document */
547} xmlDocProperties;
548
554typedef struct _xmlDoc xmlDoc;
555typedef xmlDoc *xmlDocPtr;
556struct _xmlDoc {
557 void *_private; /* application data */
558 xmlElementType type; /* XML_DOCUMENT_NODE, must be second ! */
559 char *name; /* name/filename/URI of the document */
560 struct _xmlNode *children; /* the document tree */
561 struct _xmlNode *last; /* last child link */
562 struct _xmlNode *parent; /* child->parent link */
563 struct _xmlNode *next; /* next sibling link */
564 struct _xmlNode *prev; /* previous sibling link */
565 struct _xmlDoc *doc; /* autoreference to itself */
566
567 /* End of common part */
568 int compression;/* level of zlib compression */
569 int standalone; /* standalone document (no external refs)
570 1 if standalone="yes"
571 0 if standalone="no"
572 -1 if there is no XML declaration
573 -2 if there is an XML declaration, but no
574 standalone attribute was specified */
575 struct _xmlDtd *intSubset; /* the document internal subset */
576 struct _xmlDtd *extSubset; /* the document external subset */
577 struct _xmlNs *oldNs; /* Global namespace, the old way */
578 const xmlChar *version; /* the XML version string */
579 const xmlChar *encoding; /* actual encoding, if any */
580 void *ids; /* Hash table for ID attributes if any */
581 void *refs; /* Hash table for IDREFs attributes if any */
582 const xmlChar *URL; /* The URI for that document */
583 int charset; /* unused */
584 struct _xmlDict *dict; /* dict used to allocate names or NULL */
585 void *psvi; /* for type/PSVI information */
586 int parseFlags; /* set of xmlParserOption used to parse the
587 document */
588 int properties; /* set of xmlDocProperties for this document
589 set at the end of parsing */
590};
591
592
593typedef struct _xmlDOMWrapCtxt xmlDOMWrapCtxt;
594typedef xmlDOMWrapCtxt *xmlDOMWrapCtxtPtr;
595
607typedef xmlNsPtr (*xmlDOMWrapAcquireNsFunction) (xmlDOMWrapCtxtPtr ctxt,
608 xmlNodePtr node,
609 const xmlChar *nsName,
610 const xmlChar *nsPrefix);
611
617struct _xmlDOMWrapCtxt {
618 void * _private;
619 /*
620 * The type of this context, just in case we need specialized
621 * contexts in the future.
622 */
623 int type;
624 /*
625 * Internal namespace map used for various operations.
626 */
627 void * namespaceMap;
628 /*
629 * Use this one to acquire an xmlNsPtr intended for node->ns.
630 * (Note that this is not intended for elem->nsDef).
631 */
632 xmlDOMWrapAcquireNsFunction getNsForNodeFunc;
633};
634
641typedef void (*xmlRegisterNodeFunc) (xmlNodePtr node);
642
649typedef void (*xmlDeregisterNodeFunc) (xmlNodePtr node);
650
657#ifndef xmlChildrenNode
658#define xmlChildrenNode children
659#endif
660
667#ifndef xmlRootNode
668#define xmlRootNode children
669#endif
670
671/*
672 * Variables.
673 */
674
676#define XML_GLOBALS_TREE \
677 XML_OP(xmlBufferAllocScheme, xmlBufferAllocationScheme, XML_DEPRECATED) \
678 XML_OP(xmlDefaultBufferSize, int, XML_DEPRECATED) \
679 XML_OP(xmlRegisterNodeDefaultValue, xmlRegisterNodeFunc, XML_DEPRECATED) \
680 XML_OP(xmlDeregisterNodeDefaultValue, xmlDeregisterNodeFunc, \
681 XML_DEPRECATED)
682
683#define XML_OP XML_DECLARE_GLOBAL
684XML_GLOBALS_TREE
685#undef XML_OP
686
687#if defined(LIBXML_THREAD_ENABLED) && !defined(XML_GLOBALS_NO_REDEFINITION)
688 #define xmlBufferAllocScheme XML_GLOBAL_MACRO(xmlBufferAllocScheme)
689 #define xmlDefaultBufferSize XML_GLOBAL_MACRO(xmlDefaultBufferSize)
690 #define xmlRegisterNodeDefaultValue \
691 XML_GLOBAL_MACRO(xmlRegisterNodeDefaultValue)
692 #define xmlDeregisterNodeDefaultValue \
693 XML_GLOBAL_MACRO(xmlDeregisterNodeDefaultValue)
694#endif
697/*
698 * Some helper functions
699 */
700XMLPUBFUN int
701 xmlValidateNCName (const xmlChar *value,
702 int space);
703
704#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
705XMLPUBFUN int
706 xmlValidateQName (const xmlChar *value,
707 int space);
708XMLPUBFUN int
709 xmlValidateName (const xmlChar *value,
710 int space);
711XMLPUBFUN int
712 xmlValidateNMToken (const xmlChar *value,
713 int space);
714#endif
715
717 xmlBuildQName (const xmlChar *ncname,
718 const xmlChar *prefix,
720 int len);
722 xmlSplitQName2 (const xmlChar *name,
723 xmlChar **prefix);
724XMLPUBFUN const xmlChar *
725 xmlSplitQName3 (const xmlChar *name,
726 int *len);
727
728/*
729 * Handling Buffers, the old ones see @xmlBuf for the new ones.
730 */
731
732XMLPUBFUN void
733 xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme);
734XMLPUBFUN xmlBufferAllocationScheme
735 xmlGetBufferAllocationScheme(void);
736
737XMLPUBFUN xmlBufferPtr
738 xmlBufferCreate (void);
739XMLPUBFUN xmlBufferPtr
740 xmlBufferCreateSize (size_t size);
741XMLPUBFUN xmlBufferPtr
742 xmlBufferCreateStatic (void *mem,
743 size_t size);
744XMLPUBFUN int
745 xmlBufferResize (xmlBufferPtr buf,
746 unsigned int size);
747XMLPUBFUN void
748 xmlBufferFree (xmlBufferPtr buf);
749XMLPUBFUN int
750 xmlBufferDump (FILE *file,
751 xmlBufferPtr buf);
752XMLPUBFUN int
753 xmlBufferAdd (xmlBufferPtr buf,
754 const xmlChar *str,
755 int len);
756XMLPUBFUN int
757 xmlBufferAddHead (xmlBufferPtr buf,
758 const xmlChar *str,
759 int len);
760XMLPUBFUN int
761 xmlBufferCat (xmlBufferPtr buf,
762 const xmlChar *str);
763XMLPUBFUN int
764 xmlBufferCCat (xmlBufferPtr buf,
765 const char *str);
766XMLPUBFUN int
767 xmlBufferShrink (xmlBufferPtr buf,
768 unsigned int len);
769XMLPUBFUN int
770 xmlBufferGrow (xmlBufferPtr buf,
771 unsigned int len);
772XMLPUBFUN void
773 xmlBufferEmpty (xmlBufferPtr buf);
774XMLPUBFUN const xmlChar*
775 xmlBufferContent (const xmlBuffer *buf);
777 xmlBufferDetach (xmlBufferPtr buf);
778XMLPUBFUN void
779 xmlBufferSetAllocationScheme(xmlBufferPtr buf,
780 xmlBufferAllocationScheme scheme);
781XMLPUBFUN int
782 xmlBufferLength (const xmlBuffer *buf);
783
784/*
785 * Creating/freeing new structures.
786 */
787XMLPUBFUN xmlDtdPtr
788 xmlCreateIntSubset (xmlDocPtr doc,
789 const xmlChar *name,
790 const xmlChar *ExternalID,
791 const xmlChar *SystemID);
792XMLPUBFUN xmlDtdPtr
793 xmlNewDtd (xmlDocPtr doc,
794 const xmlChar *name,
795 const xmlChar *ExternalID,
796 const xmlChar *SystemID);
797XMLPUBFUN xmlDtdPtr
798 xmlGetIntSubset (const xmlDoc *doc);
799XMLPUBFUN void
800 xmlFreeDtd (xmlDtdPtr cur);
801#ifdef LIBXML_LEGACY_ENABLED
803XMLPUBFUN xmlNsPtr
804 xmlNewGlobalNs (xmlDocPtr doc,
805 const xmlChar *href,
806 const xmlChar *prefix);
807#endif /* LIBXML_LEGACY_ENABLED */
808XMLPUBFUN xmlNsPtr
809 xmlNewNs (xmlNodePtr node,
810 const xmlChar *href,
811 const xmlChar *prefix);
812XMLPUBFUN void
813 xmlFreeNs (xmlNsPtr cur);
814XMLPUBFUN void
815 xmlFreeNsList (xmlNsPtr cur);
816XMLPUBFUN xmlDocPtr
817 xmlNewDoc (const xmlChar *version);
818XMLPUBFUN void
819 xmlFreeDoc (xmlDocPtr cur);
820XMLPUBFUN xmlAttrPtr
821 xmlNewDocProp (xmlDocPtr doc,
822 const xmlChar *name,
823 const xmlChar *value);
824#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
825 defined(LIBXML_SCHEMAS_ENABLED)
826XMLPUBFUN xmlAttrPtr
827 xmlNewProp (xmlNodePtr node,
828 const xmlChar *name,
829 const xmlChar *value);
830#endif
831XMLPUBFUN xmlAttrPtr
832 xmlNewNsProp (xmlNodePtr node,
833 xmlNsPtr ns,
834 const xmlChar *name,
835 const xmlChar *value);
836XMLPUBFUN xmlAttrPtr
837 xmlNewNsPropEatName (xmlNodePtr node,
838 xmlNsPtr ns,
839 xmlChar *name,
840 const xmlChar *value);
841XMLPUBFUN void
842 xmlFreePropList (xmlAttrPtr cur);
843XMLPUBFUN void
844 xmlFreeProp (xmlAttrPtr cur);
845XMLPUBFUN xmlAttrPtr
846 xmlCopyProp (xmlNodePtr target,
847 xmlAttrPtr cur);
848XMLPUBFUN xmlAttrPtr
849 xmlCopyPropList (xmlNodePtr target,
850 xmlAttrPtr cur);
851#ifdef LIBXML_TREE_ENABLED
852XMLPUBFUN xmlDtdPtr
853 xmlCopyDtd (xmlDtdPtr dtd);
854#endif /* LIBXML_TREE_ENABLED */
855#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
856XMLPUBFUN xmlDocPtr
857 xmlCopyDoc (xmlDocPtr doc,
858 int recursive);
859#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
860/*
861 * Creating new nodes.
862 */
863XMLPUBFUN xmlNodePtr
864 xmlNewDocNode (xmlDocPtr doc,
865 xmlNsPtr ns,
866 const xmlChar *name,
867 const xmlChar *content);
868XMLPUBFUN xmlNodePtr
869 xmlNewDocNodeEatName (xmlDocPtr doc,
870 xmlNsPtr ns,
871 xmlChar *name,
872 const xmlChar *content);
873XMLPUBFUN xmlNodePtr
874 xmlNewNode (xmlNsPtr ns,
875 const xmlChar *name);
876XMLPUBFUN xmlNodePtr
877 xmlNewNodeEatName (xmlNsPtr ns,
878 xmlChar *name);
879#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
880XMLPUBFUN xmlNodePtr
881 xmlNewChild (xmlNodePtr parent,
882 xmlNsPtr ns,
883 const xmlChar *name,
884 const xmlChar *content);
885#endif
886XMLPUBFUN xmlNodePtr
887 xmlNewDocText (const xmlDoc *doc,
888 const xmlChar *content);
889XMLPUBFUN xmlNodePtr
890 xmlNewText (const xmlChar *content);
891XMLPUBFUN xmlNodePtr
892 xmlNewDocPI (xmlDocPtr doc,
893 const xmlChar *name,
894 const xmlChar *content);
895XMLPUBFUN xmlNodePtr
896 xmlNewPI (const xmlChar *name,
897 const xmlChar *content);
898XMLPUBFUN xmlNodePtr
899 xmlNewDocTextLen (xmlDocPtr doc,
900 const xmlChar *content,
901 int len);
902XMLPUBFUN xmlNodePtr
903 xmlNewTextLen (const xmlChar *content,
904 int len);
905XMLPUBFUN xmlNodePtr
906 xmlNewDocComment (xmlDocPtr doc,
907 const xmlChar *content);
908XMLPUBFUN xmlNodePtr
909 xmlNewComment (const xmlChar *content);
910XMLPUBFUN xmlNodePtr
911 xmlNewCDataBlock (xmlDocPtr doc,
912 const xmlChar *content,
913 int len);
914XMLPUBFUN xmlNodePtr
915 xmlNewCharRef (xmlDocPtr doc,
916 const xmlChar *name);
917XMLPUBFUN xmlNodePtr
918 xmlNewReference (const xmlDoc *doc,
919 const xmlChar *name);
920XMLPUBFUN xmlNodePtr
921 xmlCopyNode (xmlNodePtr node,
922 int recursive);
923XMLPUBFUN xmlNodePtr
924 xmlDocCopyNode (xmlNodePtr node,
925 xmlDocPtr doc,
926 int recursive);
927XMLPUBFUN xmlNodePtr
928 xmlDocCopyNodeList (xmlDocPtr doc,
929 xmlNodePtr node);
930XMLPUBFUN xmlNodePtr
931 xmlCopyNodeList (xmlNodePtr node);
932#ifdef LIBXML_TREE_ENABLED
933XMLPUBFUN xmlNodePtr
934 xmlNewTextChild (xmlNodePtr parent,
935 xmlNsPtr ns,
936 const xmlChar *name,
937 const xmlChar *content);
938XMLPUBFUN xmlNodePtr
939 xmlNewDocRawNode (xmlDocPtr doc,
940 xmlNsPtr ns,
941 const xmlChar *name,
942 const xmlChar *content);
943XMLPUBFUN xmlNodePtr
944 xmlNewDocFragment (xmlDocPtr doc);
945#endif /* LIBXML_TREE_ENABLED */
946
947/*
948 * Navigating.
949 */
950XMLPUBFUN long
951 xmlGetLineNo (const xmlNode *node);
952#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED)
954 xmlGetNodePath (const xmlNode *node);
955#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) */
956XMLPUBFUN xmlNodePtr
957 xmlDocGetRootElement (const xmlDoc *doc);
958XMLPUBFUN xmlNodePtr
959 xmlGetLastChild (const xmlNode *parent);
960XMLPUBFUN int
961 xmlNodeIsText (const xmlNode *node);
962XMLPUBFUN int
963 xmlIsBlankNode (const xmlNode *node);
964
965/*
966 * Changing the structure.
967 */
968#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
969XMLPUBFUN xmlNodePtr
970 xmlDocSetRootElement (xmlDocPtr doc,
971 xmlNodePtr root);
972#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
973#ifdef LIBXML_TREE_ENABLED
974XMLPUBFUN void
975 xmlNodeSetName (xmlNodePtr cur,
976 const xmlChar *name);
977#endif /* LIBXML_TREE_ENABLED */
978XMLPUBFUN xmlNodePtr
979 xmlAddChild (xmlNodePtr parent,
980 xmlNodePtr cur);
981XMLPUBFUN xmlNodePtr
982 xmlAddChildList (xmlNodePtr parent,
983 xmlNodePtr cur);
984#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
985XMLPUBFUN xmlNodePtr
986 xmlReplaceNode (xmlNodePtr old,
987 xmlNodePtr cur);
988#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
989#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
990 defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
991XMLPUBFUN xmlNodePtr
992 xmlAddPrevSibling (xmlNodePtr cur,
993 xmlNodePtr elem);
994#endif /* LIBXML_TREE_ENABLED || LIBXML_HTML_ENABLED || LIBXML_SCHEMAS_ENABLED */
995XMLPUBFUN xmlNodePtr
996 xmlAddSibling (xmlNodePtr cur,
997 xmlNodePtr elem);
998XMLPUBFUN xmlNodePtr
999 xmlAddNextSibling (xmlNodePtr cur,
1000 xmlNodePtr elem);
1001XMLPUBFUN void
1002 xmlUnlinkNode (xmlNodePtr cur);
1003XMLPUBFUN xmlNodePtr
1004 xmlTextMerge (xmlNodePtr first,
1005 xmlNodePtr second);
1006XMLPUBFUN int
1007 xmlTextConcat (xmlNodePtr node,
1008 const xmlChar *content,
1009 int len);
1010XMLPUBFUN void
1011 xmlFreeNodeList (xmlNodePtr cur);
1012XMLPUBFUN void
1013 xmlFreeNode (xmlNodePtr cur);
1014XMLPUBFUN void
1015 xmlSetTreeDoc (xmlNodePtr tree,
1016 xmlDocPtr doc);
1017XMLPUBFUN void
1018 xmlSetListDoc (xmlNodePtr list,
1019 xmlDocPtr doc);
1020/*
1021 * Namespaces.
1022 */
1023XMLPUBFUN xmlNsPtr
1024 xmlSearchNs (xmlDocPtr doc,
1025 xmlNodePtr node,
1026 const xmlChar *nameSpace);
1027XMLPUBFUN xmlNsPtr
1028 xmlSearchNsByHref (xmlDocPtr doc,
1029 xmlNodePtr node,
1030 const xmlChar *href);
1031#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \
1032 defined(LIBXML_SCHEMAS_ENABLED)
1033XMLPUBFUN xmlNsPtr *
1034 xmlGetNsList (const xmlDoc *doc,
1035 const xmlNode *node);
1036#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) */
1037
1038XMLPUBFUN void
1039 xmlSetNs (xmlNodePtr node,
1040 xmlNsPtr ns);
1041XMLPUBFUN xmlNsPtr
1042 xmlCopyNamespace (xmlNsPtr cur);
1043XMLPUBFUN xmlNsPtr
1044 xmlCopyNamespaceList (xmlNsPtr cur);
1045
1046/*
1047 * Changing the content.
1048 */
1049#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \
1050 defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
1051XMLPUBFUN xmlAttrPtr
1052 xmlSetProp (xmlNodePtr node,
1053 const xmlChar *name,
1054 const xmlChar *value);
1055XMLPUBFUN xmlAttrPtr
1056 xmlSetNsProp (xmlNodePtr node,
1057 xmlNsPtr ns,
1058 const xmlChar *name,
1059 const xmlChar *value);
1060#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \
1061 defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */
1063 xmlGetNoNsProp (const xmlNode *node,
1064 const xmlChar *name);
1066 xmlGetProp (const xmlNode *node,
1067 const xmlChar *name);
1068XMLPUBFUN xmlAttrPtr
1069 xmlHasProp (const xmlNode *node,
1070 const xmlChar *name);
1071XMLPUBFUN xmlAttrPtr
1072 xmlHasNsProp (const xmlNode *node,
1073 const xmlChar *name,
1074 const xmlChar *nameSpace);
1076 xmlGetNsProp (const xmlNode *node,
1077 const xmlChar *name,
1078 const xmlChar *nameSpace);
1079XMLPUBFUN xmlNodePtr
1080 xmlStringGetNodeList (const xmlDoc *doc,
1081 const xmlChar *value);
1082XMLPUBFUN xmlNodePtr
1083 xmlStringLenGetNodeList (const xmlDoc *doc,
1084 const xmlChar *value,
1085 int len);
1087 xmlNodeListGetString (xmlDocPtr doc,
1088 const xmlNode *list,
1089 int inLine);
1090#ifdef LIBXML_TREE_ENABLED
1092 xmlNodeListGetRawString (const xmlDoc *doc,
1093 const xmlNode *list,
1094 int inLine);
1095#endif /* LIBXML_TREE_ENABLED */
1096XMLPUBFUN void
1097 xmlNodeSetContent (xmlNodePtr cur,
1098 const xmlChar *content);
1099#ifdef LIBXML_TREE_ENABLED
1100XMLPUBFUN void
1101 xmlNodeSetContentLen (xmlNodePtr cur,
1102 const xmlChar *content,
1103 int len);
1104#endif /* LIBXML_TREE_ENABLED */
1105XMLPUBFUN void
1106 xmlNodeAddContent (xmlNodePtr cur,
1107 const xmlChar *content);
1108XMLPUBFUN void
1109 xmlNodeAddContentLen (xmlNodePtr cur,
1110 const xmlChar *content,
1111 int len);
1113 xmlNodeGetContent (const xmlNode *cur);
1114
1115XMLPUBFUN int
1116 xmlNodeBufGetContent (xmlBufferPtr buffer,
1117 const xmlNode *cur);
1118XMLPUBFUN int
1119 xmlBufGetNodeContent (xmlBufPtr buf,
1120 const xmlNode *cur);
1121
1123 xmlNodeGetLang (const xmlNode *cur);
1124XMLPUBFUN int
1125 xmlNodeGetSpacePreserve (const xmlNode *cur);
1126#ifdef LIBXML_TREE_ENABLED
1127XMLPUBFUN void
1128 xmlNodeSetLang (xmlNodePtr cur,
1129 const xmlChar *lang);
1130XMLPUBFUN void
1131 xmlNodeSetSpacePreserve (xmlNodePtr cur,
1132 int val);
1133#endif /* LIBXML_TREE_ENABLED */
1135 xmlNodeGetBase (const xmlDoc *doc,
1136 const xmlNode *cur);
1137#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
1138XMLPUBFUN void
1139 xmlNodeSetBase (xmlNodePtr cur,
1140 const xmlChar *uri);
1141#endif
1142
1143/*
1144 * Removing content.
1145 */
1146XMLPUBFUN int
1147 xmlRemoveProp (xmlAttrPtr cur);
1148#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
1149XMLPUBFUN int
1150 xmlUnsetNsProp (xmlNodePtr node,
1151 xmlNsPtr ns,
1152 const xmlChar *name);
1153XMLPUBFUN int
1154 xmlUnsetProp (xmlNodePtr node,
1155 const xmlChar *name);
1156#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
1157
1158/*
1159 * Internal, don't use.
1160 */
1161XMLPUBFUN void
1162 xmlBufferWriteCHAR (xmlBufferPtr buf,
1163 const xmlChar *string);
1164XMLPUBFUN void
1165 xmlBufferWriteChar (xmlBufferPtr buf,
1166 const char *string);
1167XMLPUBFUN void
1168 xmlBufferWriteQuotedString(xmlBufferPtr buf,
1169 const xmlChar *string);
1170
1171#ifdef LIBXML_OUTPUT_ENABLED
1172XMLPUBFUN void xmlAttrSerializeTxtContent(xmlBufferPtr buf,
1173 xmlDocPtr doc,
1174 xmlAttrPtr attr,
1175 const xmlChar *string);
1176#endif /* LIBXML_OUTPUT_ENABLED */
1177
1178#ifdef LIBXML_TREE_ENABLED
1179/*
1180 * Namespace handling.
1181 */
1182XMLPUBFUN int
1183 xmlReconciliateNs (xmlDocPtr doc,
1184 xmlNodePtr tree);
1185#endif
1186
1187#ifdef LIBXML_OUTPUT_ENABLED
1188/*
1189 * Saving.
1190 */
1191XMLPUBFUN void
1192 xmlDocDumpFormatMemory (xmlDocPtr cur,
1193 xmlChar **mem,
1194 int *size,
1195 int format);
1196XMLPUBFUN void
1197 xmlDocDumpMemory (xmlDocPtr cur,
1198 xmlChar **mem,
1199 int *size);
1200XMLPUBFUN void
1201 xmlDocDumpMemoryEnc (xmlDocPtr out_doc,
1202 xmlChar **doc_txt_ptr,
1203 int * doc_txt_len,
1204 const char *txt_encoding);
1205XMLPUBFUN void
1206 xmlDocDumpFormatMemoryEnc(xmlDocPtr out_doc,
1207 xmlChar **doc_txt_ptr,
1208 int * doc_txt_len,
1209 const char *txt_encoding,
1210 int format);
1211XMLPUBFUN int
1212 xmlDocFormatDump (FILE *f,
1213 xmlDocPtr cur,
1214 int format);
1215XMLPUBFUN int
1216 xmlDocDump (FILE *f,
1217 xmlDocPtr cur);
1218XMLPUBFUN void
1219 xmlElemDump (FILE *f,
1220 xmlDocPtr doc,
1221 xmlNodePtr cur);
1222XMLPUBFUN int
1223 xmlSaveFile (const char *filename,
1224 xmlDocPtr cur);
1225XMLPUBFUN int
1226 xmlSaveFormatFile (const char *filename,
1227 xmlDocPtr cur,
1228 int format);
1229XMLPUBFUN size_t
1230 xmlBufNodeDump (xmlBufPtr buf,
1231 xmlDocPtr doc,
1232 xmlNodePtr cur,
1233 int level,
1234 int format);
1235XMLPUBFUN int
1236 xmlNodeDump (xmlBufferPtr buf,
1237 xmlDocPtr doc,
1238 xmlNodePtr cur,
1239 int level,
1240 int format);
1241
1242XMLPUBFUN int
1243 xmlSaveFileTo (xmlOutputBufferPtr buf,
1244 xmlDocPtr cur,
1245 const char *encoding);
1246XMLPUBFUN int
1247 xmlSaveFormatFileTo (xmlOutputBufferPtr buf,
1248 xmlDocPtr cur,
1249 const char *encoding,
1250 int format);
1251XMLPUBFUN void
1252 xmlNodeDumpOutput (xmlOutputBufferPtr buf,
1253 xmlDocPtr doc,
1254 xmlNodePtr cur,
1255 int level,
1256 int format,
1257 const char *encoding);
1258
1259XMLPUBFUN int
1260 xmlSaveFormatFileEnc (const char *filename,
1261 xmlDocPtr cur,
1262 const char *encoding,
1263 int format);
1264
1265XMLPUBFUN int
1266 xmlSaveFileEnc (const char *filename,
1267 xmlDocPtr cur,
1268 const char *encoding);
1269
1270#endif /* LIBXML_OUTPUT_ENABLED */
1271/*
1272 * XHTML
1273 */
1274XMLPUBFUN int
1275 xmlIsXHTML (const xmlChar *systemID,
1276 const xmlChar *publicID);
1277
1278/*
1279 * Compression.
1280 */
1281XMLPUBFUN int
1282 xmlGetDocCompressMode (const xmlDoc *doc);
1283XMLPUBFUN void
1284 xmlSetDocCompressMode (xmlDocPtr doc,
1285 int mode);
1286XMLPUBFUN int
1287 xmlGetCompressMode (void);
1288XMLPUBFUN void
1289 xmlSetCompressMode (int mode);
1290
1291/*
1292* DOM-wrapper helper functions.
1293*/
1294XMLPUBFUN xmlDOMWrapCtxtPtr
1295 xmlDOMWrapNewCtxt (void);
1296XMLPUBFUN void
1297 xmlDOMWrapFreeCtxt (xmlDOMWrapCtxtPtr ctxt);
1298XMLPUBFUN int
1299 xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt,
1300 xmlNodePtr elem,
1301 int options);
1302XMLPUBFUN int
1303 xmlDOMWrapAdoptNode (xmlDOMWrapCtxtPtr ctxt,
1304 xmlDocPtr sourceDoc,
1305 xmlNodePtr node,
1306 xmlDocPtr destDoc,
1307 xmlNodePtr destParent,
1308 int options);
1309XMLPUBFUN int
1310 xmlDOMWrapRemoveNode (xmlDOMWrapCtxtPtr ctxt,
1311 xmlDocPtr doc,
1312 xmlNodePtr node,
1313 int options);
1314XMLPUBFUN int
1315 xmlDOMWrapCloneNode (xmlDOMWrapCtxtPtr ctxt,
1316 xmlDocPtr sourceDoc,
1317 xmlNodePtr node,
1318 xmlNodePtr *clonedNode,
1319 xmlDocPtr destDoc,
1320 xmlNodePtr destParent,
1321 int deep,
1322 int options);
1323
1324#ifdef LIBXML_TREE_ENABLED
1325/*
1326 * 5 interfaces from DOM ElementTraversal, but different in entities
1327 * traversal.
1328 */
1329XMLPUBFUN unsigned long
1330 xmlChildElementCount (xmlNodePtr parent);
1331XMLPUBFUN xmlNodePtr
1332 xmlNextElementSibling (xmlNodePtr node);
1333XMLPUBFUN xmlNodePtr
1334 xmlFirstElementChild (xmlNodePtr parent);
1335XMLPUBFUN xmlNodePtr
1336 xmlLastElementChild (xmlNodePtr parent);
1337XMLPUBFUN xmlNodePtr
1338 xmlPreviousElementSibling (xmlNodePtr node);
1339#endif
1340
1341XMLPUBFUN xmlRegisterNodeFunc
1342 xmlRegisterNodeDefault (xmlRegisterNodeFunc func);
1343XMLPUBFUN xmlDeregisterNodeFunc
1344 xmlDeregisterNodeDefault (xmlDeregisterNodeFunc func);
1345XMLPUBFUN xmlRegisterNodeFunc
1346 xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func);
1347XMLPUBFUN xmlDeregisterNodeFunc
1348 xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func);
1349
1350XML_DEPRECATED XMLPUBFUN xmlBufferAllocationScheme
1351 xmlThrDefBufferAllocScheme (xmlBufferAllocationScheme v);
1354
1355#ifdef __cplusplus
1356}
1357#endif
1358
1359#endif /* __XML_TREE_H__ */
1360
1361#endif /* XML_TREE_INTERNALS */
_In_ fcb _In_ chunk _In_ uint64_t _In_ uint64_t _In_ bool _In_opt_ void _In_opt_ PIRP _In_ LIST_ENTRY _In_ uint8_t compression
Definition: btrfs_drv.h:1365
struct _tree tree
xmlChar * xmlBufEnd(xmlBufPtr buf)
Definition: buf.c:508
xmlChar * xmlBufContent(const xmlBuf *buf)
Definition: buf.c:490
size_t xmlBufUse(const xmlBufPtr buf)
Definition: buf.c:570
size_t xmlBufShrink(xmlBufPtr buf, size_t len)
Definition: buf.c:328
CFF_Charset charset
Definition: cffcmap.c:138
Definition: list.h:37
content
Definition: atl_ax.c:994
static const WCHAR version[]
Definition: asmname.c:66
r parent
Definition: btrfs.c:3010
FxCollectionEntry * cur
GLint level
Definition: gl.h:1546
const GLdouble * v
Definition: gl.h:2040
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLenum func
Definition: glext.h:6028
GLuint * ids
Definition: glext.h:5907
GLuint buffer
Definition: glext.h:5915
GLsizeiptr size
Definition: glext.h:5919
GLfloat f
Definition: glext.h:7540
GLenum mode
Definition: glext.h:6217
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
const GLint * first
Definition: glext.h:5794
GLuint GLfloat * val
Definition: glext.h:7180
GLenum GLsizei len
Definition: glext.h:6722
@ extra
Definition: id3.c:95
const char * filename
Definition: ioapi.h:137
static UINT UINT last
Definition: font.c:45
static char memory[1024 *256]
Definition: process.c:122
static size_t elem
Definition: string.c:71
const char * uri
Definition: sec_mgr.c:1588
static unsigned __int64 next
Definition: rand_nt.c:6
#define alloc
Definition: rosglue.h:13
const WCHAR * str
DWORD scheme
xmlBufferAllocationScheme xmlThrDefBufferAllocScheme(xmlBufferAllocationScheme v)
Definition: globals.c:1026
xmlRegisterNodeFunc xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func)
Definition: globals.c:1146
xmlDeregisterNodeFunc xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func)
Definition: globals.c:1161
int xmlThrDefDefaultBufferSize(int v)
Definition: globals.c:1035
Definition: buf.c:43
Definition: dict.c:59
Definition: cookie.c:202
Definition: http.c:7252
Definition: fci.c:127
Definition: format.c:58
Definition: parser.c:49
Definition: mem.c:349
Definition: name.c:39
Definition: mxnamespace.c:38
Definition: tools.h:99
Character const *const prefix
Definition: tempnam.cpp:195
Definition: dlist.c:348
Definition: pdh_main.c:96
static const WCHAR lang[]
Definition: wbemdisp.c:287
#define XMLPUBFUN
Definition: xmlexports.h:30
unsigned char xmlChar
Definition: xmlstring.h:28
#define XML_DEPRECATED
Definition: xmlversion.h:475