~ubuntu-branches/ubuntu/hardy/openbabel/hardy

« back to all changes in this revision

Viewing changes to windows/libxml/entities.h

  • Committer: Bazaar Package Importer
  • Author(s): Jonathan Riddell
  • Date: 2007-08-06 17:28:40 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20070806172840-22hoqb3ve230qav1
Tags: 2.1.1-0ubuntu1
* New upstream release
* New so version 2

Show diffs side-by-side

added added

removed removed

Lines of Context:
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
 
#include <libxml/tree.h>
16
 
 
17
 
#ifdef __cplusplus
18
 
extern "C" {
19
 
#endif
20
 
 
21
 
/*
22
 
 * The different valid entity types.
23
 
 */
24
 
typedef enum {
25
 
    XML_INTERNAL_GENERAL_ENTITY = 1,
26
 
    XML_EXTERNAL_GENERAL_PARSED_ENTITY = 2,
27
 
    XML_EXTERNAL_GENERAL_UNPARSED_ENTITY = 3,
28
 
    XML_INTERNAL_PARAMETER_ENTITY = 4,
29
 
    XML_EXTERNAL_PARAMETER_ENTITY = 5,
30
 
    XML_INTERNAL_PREDEFINED_ENTITY = 6
31
 
} xmlEntityType;
32
 
 
33
 
/*
34
 
 * An unit of storage for an entity, contains the string, the value
35
 
 * and the linkind data needed for the linking in the hash table.
36
 
 */
37
 
 
38
 
struct _xmlEntity {
39
 
    void           *_private;           /* application data */
40
 
    xmlElementType          type;       /* XML_ENTITY_DECL, must be second ! */
41
 
    const xmlChar          *name;       /* Entity name */
42
 
    struct _xmlNode    *children;       /* First child link */
43
 
    struct _xmlNode        *last;       /* Last child link */
44
 
    struct _xmlDtd       *parent;       /* -> DTD */
45
 
    struct _xmlNode        *next;       /* next sibling link  */
46
 
    struct _xmlNode        *prev;       /* previous sibling link  */
47
 
    struct _xmlDoc          *doc;       /* the containing document */
48
 
 
49
 
    xmlChar                *orig;       /* content without ref substitution */
50
 
    xmlChar             *content;       /* content or ndata if unparsed */
51
 
    int                   length;       /* the content length */
52
 
    xmlEntityType          etype;       /* The entity type */
53
 
    const xmlChar    *ExternalID;       /* External identifier for PUBLIC */
54
 
    const xmlChar      *SystemID;       /* URI for a SYSTEM or PUBLIC Entity */
55
 
 
56
 
    struct _xmlEntity     *nexte;       /* unused */
57
 
    const xmlChar           *URI;       /* the full URI as computed */
58
 
    int                    owner;       /* does the entity own the childrens */
59
 
};
60
 
 
61
 
/*
62
 
 * All entities are stored in an hash table.
63
 
 * There is 2 separate hash tables for global and parameter entities.
64
 
 */
65
 
 
66
 
typedef struct _xmlHashTable xmlEntitiesTable;
67
 
typedef xmlEntitiesTable *xmlEntitiesTablePtr;
68
 
 
69
 
/*
70
 
 * External functions:
71
 
 */
72
 
 
73
 
#ifdef LIBXML_LEGACY_ENABLED
74
 
XMLPUBFUN void XMLCALL          
75
 
                xmlInitializePredefinedEntities (void);
76
 
#endif /* LIBXML_LEGACY_ENABLED */
77
 
XMLPUBFUN xmlEntityPtr XMLCALL
78
 
                        xmlAddDocEntity         (xmlDocPtr doc,
79
 
                                                 const xmlChar *name,
80
 
                                                 int type,
81
 
                                                 const xmlChar *ExternalID,
82
 
                                                 const xmlChar *SystemID,
83
 
                                                 const xmlChar *content);
84
 
XMLPUBFUN xmlEntityPtr XMLCALL          
85
 
                        xmlAddDtdEntity         (xmlDocPtr doc,
86
 
                                                 const xmlChar *name,
87
 
                                                 int type,
88
 
                                                 const xmlChar *ExternalID,
89
 
                                                 const xmlChar *SystemID,
90
 
                                                 const xmlChar *content);
91
 
XMLPUBFUN xmlEntityPtr XMLCALL          
92
 
                        xmlGetPredefinedEntity  (const xmlChar *name);
93
 
XMLPUBFUN xmlEntityPtr XMLCALL          
94
 
                        xmlGetDocEntity         (xmlDocPtr doc,
95
 
                                                 const xmlChar *name);
96
 
XMLPUBFUN xmlEntityPtr XMLCALL          
97
 
                        xmlGetDtdEntity         (xmlDocPtr doc,
98
 
                                                 const xmlChar *name);
99
 
XMLPUBFUN xmlEntityPtr XMLCALL          
100
 
                        xmlGetParameterEntity   (xmlDocPtr doc,
101
 
                                                 const xmlChar *name);
102
 
#ifdef LIBXML_LEGACY_ENABLED
103
 
XMLPUBFUN const xmlChar * XMLCALL               
104
 
                        xmlEncodeEntities       (xmlDocPtr doc,
105
 
                                                 const xmlChar *input);
106
 
#endif /* LIBXML_LEGACY_ENABLED */
107
 
XMLPUBFUN xmlChar * XMLCALL             
108
 
                        xmlEncodeEntitiesReentrant(xmlDocPtr doc,
109
 
                                                 const xmlChar *input);
110
 
XMLPUBFUN xmlChar * XMLCALL             
111
 
                        xmlEncodeSpecialChars   (xmlDocPtr doc,
112
 
                                                 const xmlChar *input);
113
 
XMLPUBFUN xmlEntitiesTablePtr XMLCALL   
114
 
                        xmlCreateEntitiesTable  (void);
115
 
#ifdef LIBXML_TREE_ENABLED
116
 
XMLPUBFUN xmlEntitiesTablePtr XMLCALL   
117
 
                        xmlCopyEntitiesTable    (xmlEntitiesTablePtr table);
118
 
#endif /* LIBXML_TREE_ENABLED */
119
 
XMLPUBFUN void XMLCALL                  
120
 
                        xmlFreeEntitiesTable    (xmlEntitiesTablePtr table);
121
 
#ifdef LIBXML_OUTPUT_ENABLED
122
 
XMLPUBFUN void XMLCALL                  
123
 
                        xmlDumpEntitiesTable    (xmlBufferPtr buf,
124
 
                                                 xmlEntitiesTablePtr table);
125
 
XMLPUBFUN void XMLCALL                  
126
 
                        xmlDumpEntityDecl       (xmlBufferPtr buf,
127
 
                                                 xmlEntityPtr ent);
128
 
#endif /* LIBXML_OUTPUT_ENABLED */
129
 
#ifdef LIBXML_LEGACY_ENABLED
130
 
XMLPUBFUN void XMLCALL                  
131
 
                        xmlCleanupPredefinedEntities(void);
132
 
#endif /* LIBXML_LEGACY_ENABLED */
133
 
 
134
 
 
135
 
#ifdef __cplusplus
136
 
}
137
 
#endif
138
 
 
139
 
# endif /* __XML_ENTITIES_H__ */