ReactOS 0.4.16-dev-2132-g3885311
entities.h
Go to the documentation of this file.
1/*
2 * Summary: interface for the XML entities handling
3 * Description: this module provides some of the entity API needed
4 * for the parser and applications.
5 *
6 * Copy: See Copyright for the status of this software.
7 *
8 * Author: Daniel Veillard
9 */
10
11#ifndef __XML_ENTITIES_H__
12#define __XML_ENTITIES_H__
13
14#include <libxml/xmlversion.h>
15#define XML_TREE_INTERNALS
16#include <libxml/tree.h>
17#undef XML_TREE_INTERNALS
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23/*
24 * The different valid entity types.
25 */
26typedef enum {
34
35/*
36 * An unit of storage for an entity, contains the string, the value
37 * and the linkind data needed for the linking in the hash table.
38 */
39
40struct _xmlEntity {
41 void *_private; /* application data */
42 xmlElementType type; /* XML_ENTITY_DECL, must be second ! */
43 const xmlChar *name; /* Entity name */
44 struct _xmlNode *children; /* First child link */
45 struct _xmlNode *last; /* Last child link */
46 struct _xmlDtd *parent; /* -> DTD */
47 struct _xmlNode *next; /* next sibling link */
48 struct _xmlNode *prev; /* previous sibling link */
49 struct _xmlDoc *doc; /* the containing document */
50
51 xmlChar *orig; /* content without ref substitution */
52 xmlChar *content; /* content or ndata if unparsed */
53 int length; /* the content length */
54 xmlEntityType etype; /* The entity type */
55 const xmlChar *ExternalID; /* External identifier for PUBLIC */
56 const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC Entity */
57
58 struct _xmlEntity *nexte; /* unused */
59 const xmlChar *URI; /* the full URI as computed */
60 int owner; /* does the entity own the childrens */
61 int flags; /* various flags */
62 unsigned long expandedSize; /* expanded size */
63};
64
65/*
66 * All entities are stored in an hash table.
67 * There is 2 separate hash tables for global and parameter entities.
68 */
69
72
73/*
74 * External functions:
75 */
76
77#ifdef LIBXML_LEGACY_ENABLED
79XMLPUBFUN void
80 xmlInitializePredefinedEntities (void);
81#endif /* LIBXML_LEGACY_ENABLED */
82
83XMLPUBFUN xmlEntityPtr
84 xmlNewEntity (xmlDocPtr doc,
85 const xmlChar *name,
86 int type,
87 const xmlChar *ExternalID,
88 const xmlChar *SystemID,
89 const xmlChar *content);
90XMLPUBFUN void
91 xmlFreeEntity (xmlEntityPtr entity);
92XMLPUBFUN xmlEntityPtr
93 xmlAddDocEntity (xmlDocPtr doc,
94 const xmlChar *name,
95 int type,
96 const xmlChar *ExternalID,
97 const xmlChar *SystemID,
98 const xmlChar *content);
99XMLPUBFUN xmlEntityPtr
100 xmlAddDtdEntity (xmlDocPtr doc,
101 const xmlChar *name,
102 int type,
103 const xmlChar *ExternalID,
104 const xmlChar *SystemID,
105 const xmlChar *content);
106XMLPUBFUN xmlEntityPtr
108XMLPUBFUN xmlEntityPtr
109 xmlGetDocEntity (const xmlDoc *doc,
110 const xmlChar *name);
111XMLPUBFUN xmlEntityPtr
112 xmlGetDtdEntity (xmlDocPtr doc,
113 const xmlChar *name);
114XMLPUBFUN xmlEntityPtr
115 xmlGetParameterEntity (xmlDocPtr doc,
116 const xmlChar *name);
117#ifdef LIBXML_LEGACY_ENABLED
119XMLPUBFUN const xmlChar *
120 xmlEncodeEntities (xmlDocPtr doc,
121 const xmlChar *input);
122#endif /* LIBXML_LEGACY_ENABLED */
125 const xmlChar *input);
127 xmlEncodeSpecialChars (const xmlDoc *doc,
128 const xmlChar *input);
131#ifdef LIBXML_TREE_ENABLED
133 xmlCopyEntitiesTable (xmlEntitiesTablePtr table);
134#endif /* LIBXML_TREE_ENABLED */
135XMLPUBFUN void
137#ifdef LIBXML_OUTPUT_ENABLED
138XMLPUBFUN void
139 xmlDumpEntitiesTable (xmlBufferPtr buf,
141XMLPUBFUN void
142 xmlDumpEntityDecl (xmlBufferPtr buf,
143 xmlEntityPtr ent);
144#endif /* LIBXML_OUTPUT_ENABLED */
145#ifdef LIBXML_LEGACY_ENABLED
146XMLPUBFUN void
147 xmlCleanupPredefinedEntities(void);
148#endif /* LIBXML_LEGACY_ENABLED */
149
150
151#ifdef __cplusplus
152}
153#endif
154
155# endif /* __XML_ENTITIES_H__ */
content
Definition: atl_ax.c:994
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLenum GLenum GLenum input
Definition: glext.h:9031
XMLPUBFUN xmlEntityPtr xmlNewEntity(xmlDocPtr doc, const xmlChar *name, int type, const xmlChar *ExternalID, const xmlChar *SystemID, const xmlChar *content)
XMLPUBFUN xmlEntityPtr xmlGetDtdEntity(xmlDocPtr doc, const xmlChar *name)
XMLPUBFUN xmlEntitiesTablePtr xmlCreateEntitiesTable(void)
XMLPUBFUN xmlEntityPtr xmlAddDocEntity(xmlDocPtr doc, const xmlChar *name, int type, const xmlChar *ExternalID, const xmlChar *SystemID, const xmlChar *content)
XMLPUBFUN xmlChar * xmlEncodeSpecialChars(const xmlDoc *doc, const xmlChar *input)
XMLPUBFUN void xmlFreeEntity(xmlEntityPtr entity)
XMLPUBFUN xmlEntityPtr xmlGetDocEntity(const xmlDoc *doc, const xmlChar *name)
XMLPUBFUN xmlEntityPtr xmlGetPredefinedEntity(const xmlChar *name)
xmlEntityType
Definition: entities.h:26
@ XML_EXTERNAL_GENERAL_PARSED_ENTITY
Definition: entities.h:28
@ XML_INTERNAL_PREDEFINED_ENTITY
Definition: entities.h:32
@ XML_EXTERNAL_GENERAL_UNPARSED_ENTITY
Definition: entities.h:29
@ XML_INTERNAL_GENERAL_ENTITY
Definition: entities.h:27
@ XML_INTERNAL_PARAMETER_ENTITY
Definition: entities.h:30
@ XML_EXTERNAL_PARAMETER_ENTITY
Definition: entities.h:31
XMLPUBFUN void xmlFreeEntitiesTable(xmlEntitiesTablePtr table)
xmlEntitiesTable * xmlEntitiesTablePtr
Definition: entities.h:71
XMLPUBFUN xmlEntityPtr xmlAddDtdEntity(xmlDocPtr doc, const xmlChar *name, int type, const xmlChar *ExternalID, const xmlChar *SystemID, const xmlChar *content)
XMLPUBFUN xmlEntityPtr xmlGetParameterEntity(xmlDocPtr doc, const xmlChar *name)
XMLPUBFUN xmlChar * xmlEncodeEntitiesReentrant(xmlDocPtr doc, const xmlChar *input)
xmlChar * orig
Definition: entities.h:51
struct _xmlEntity * nexte
Definition: entities.h:58
const xmlChar * SystemID
Definition: entities.h:56
int length
Definition: entities.h:53
xmlChar * content
Definition: entities.h:52
int flags
Definition: entities.h:61
struct _xmlNode * prev
Definition: entities.h:48
const xmlChar * URI
Definition: entities.h:59
unsigned long expandedSize
Definition: entities.h:62
xmlEntityType etype
Definition: entities.h:54
const xmlChar * name
Definition: entities.h:43
const xmlChar * ExternalID
Definition: entities.h:55
struct _xmlNode * last
Definition: entities.h:45
void * _private
Definition: entities.h:41
struct _xmlNode * children
Definition: entities.h:44
struct _xmlDtd * parent
Definition: entities.h:46
xmlElementType type
Definition: entities.h:42
struct _xmlDoc * doc
Definition: entities.h:49
int owner
Definition: entities.h:60
struct _xmlNode * next
Definition: entities.h:47
Definition: actctx.c:446
Definition: name.c:39
#define XMLPUBFUN
Definition: xmlexports.h:30
unsigned char xmlChar
Definition: xmlstring.h:28
#define XML_DEPRECATED
Definition: xmlversion.h:475