summaryrefslogtreecommitdiffstats
path: root/libxml2/os400/libxmlrpg/entities.rpgle
blob: eeec1b6db19313282d6c132e2ba0ee87929d58a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
      * Summary: interface for the XML entities handling
      * Description: this module provides some of the entity API needed
      *              for the parser and applications.
      *
      * Copy: See Copyright for the status of this software.
      *
      * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.

      /if not defined(XML_ENTITIES_H__)
      /define XML_ENTITIES_H__

      /include "libxmlrpg/xmlversion"
      /include "libxmlrpg/xmlTypesC"
      /include "libxmlrpg/tree"

      * The different valid entity types.

     d xmlEntityType   s                   based(######typedef######)
     d                                     like(xmlCenum)
     d  XML_INTERNAL_GENERAL_ENTITY...
     d                 c                   1
     d  XML_EXTERNAL_GENERAL_PARSED_ENTITY...
     d                 c                   2
     d  XML_EXTERNAL_GENERAL_UNPARSED_ENTITY...
     d                 c                   3
     d  XML_INTERNAL_PARAMETER_ENTITY...
     d                 c                   4
     d  XML_EXTERNAL_PARAMETER_ENTITY...
     d                 c                   5
     d  XML_INTERNAL_PREDEFINED_ENTITY...
     d                 c                   6

      * An unit of storage for an entity, contains the string, the value
      * and the linkind data needed for the linking in the hash table.

     d xmlEntity       ds                  based(xmlEntityPtr)
     d                                     align qualified
     d  #private                       *                                        void *
     d  type                               like(xmlElementType)                 XML_ENTITY_DECL
     d  name                           *                                        const xmlChar *
     d  children                           like(xmlNodePtr)                     First child link
     d  last                               like(xmlNodePtr)                     Last child link
     d  parent                             like(xmlDtdPtr)                      -> DTD
     d  next                               like(xmlNodePtr)                     next sibling link
     d  prev                               like(xmlNodePtr)                     prev sibling link
     d  doc                                like(xmlDocPtr)                      containing document
     d  orig                           *                                        xmlChar *
     d  content                        *                                        xmlChar *
     d  length                             like(xmlCint)                        content length
     d  etype                              like(xmlEntityType)                  The entity type
     d  ExternalID                     *                                        const xmlChar *
     d  SystemlID                      *                                        const xmlChar *
     d  nexte                              like(xmlEntityPtr)                   unused
     d  URI                            *                                        const xmlChar *
     d  owner                              like(xmlCint)                        Owns children ?
     d  checked                            like(xmlCint)                        Content checked ?

      * All entities are stored in an hash table.
      * There is 2 separate hash tables for global and parameter entities.

     d xmlEntitiesTablePtr...
     d                 s               *   based(######typedef######)

      * External functions:

      /if defined(LIBXML_LEGACY_ENABLED)
     d xmlInitializePredefinedEntities...
     d                 pr                  extproc(
     d                                      'xmlInitializePredefinedEntities')
      /endif                                                                    LIBXML_LEGACY_ENABLD

     d xmlNewEntity    pr                  extproc('xmlNewEntity')
     d                                     like(xmlEntityPtr)
     d  doc                                value like(xmlDocPtr)
     d  name                           *   value options(*string)               const xmlChar *
     d  type                               value like(xmlCint)
     d  ExternalID                     *   value options(*string)               const xmlChar *
     d  SystemID                       *   value options(*string)               const xmlChar *
     d  content                        *   value options(*string)               const xmlChar *

     d xmlAddDocEntity...
     d                 pr                  extproc('xmlAddDocEntity')
     d                                     like(xmlEntityPtr)
     d  doc                                value like(xmlDocPtr)
     d  name                           *   value options(*string)               const xmlChar *
     d  type                               value like(xmlCint)
     d  ExternalID                     *   value options(*string)               const xmlChar *
     d  SystemID                       *   value options(*string)               const xmlChar *
     d  content                        *   value options(*string)               const xmlChar *

     d xmlAddDtdEntity...
     d                 pr                  extproc('xmlAddDtdEntity')
     d                                     like(xmlEntityPtr)
     d  doc                                value like(xmlDocPtr)
     d  name                           *   value options(*string)               const xmlChar *
     d  type                               value like(xmlCint)
     d  ExternalID                     *   value options(*string)               const xmlChar *
     d  SystemID                       *   value options(*string)               const xmlChar *
     d  content                        *   value options(*string)               const xmlChar *

     d xmlGetPredefinedEntity...
     d                 pr                  extproc('xmlGetPredefinedEntity')
     d                                     like(xmlEntityPtr)
     d  name                           *   value options(*string)               const xmlChar *

     d xmlGetDocEntity...
     d                 pr                  extproc('xmlGetDocEntity')
     d                                     like(xmlEntityPtr)
     d  doc                                value like(xmlDocPtr)
     d  name                           *   value options(*string)               const xmlChar *

     d xmlGetDtdEntity...
     d                 pr                  extproc('xmlGetDtdEntity')
     d                                     like(xmlEntityPtr)
     d  doc                                value like(xmlDocPtr)
     d  name                           *   value options(*string)               const xmlChar *

     d xmlGetParameterEntity...
     d                 pr                  extproc('xmlGetParameterEntity')
     d                                     like(xmlEntityPtr)
     d  doc                                value like(xmlDocPtr)
     d  name                           *   value options(*string)               const xmlChar *


      /if defined(LIBXML_LEGACY_ENABLED)
     d xmlEncodeEntities...
     d                 pr              *   extproc('xmlEncodeEntities')         xmlChar *
     d  doc                                value like(xmlDocPtr)
     d  input                          *   value options(*string)               const xmlChar *
      /endif                                                                    LIBXML_LEGACY_ENABLD

     d xmlEncodeEntitiesReentrant...
     d                 pr              *   extproc(                             xmlChar *
     d                                      'xmlEncodeEntitiesReentrant')
     d  doc                                value like(xmlDocPtr)
     d  input                          *   value options(*string)               const xmlChar *
XMLPU
     d xmlEncodeSpecialChars...
     d                 pr              *   extproc('xmlSpecialChars')           xmlChar *
     d  doc                                value like(xmlDocPtr)
     d  input                          *   value options(*string)               const xmlChar *
XMLPU
     d xmlCreateEntitiesTable...
     d                 pr                  extproc('xmlCreateEntitiesTable')
     d                                     like(xmlEntitiesTablePtr)

      /if defined(LIBXML_TREE_ENABLED)
     d xmlCopyEntitiesTable...
     d                 pr                  extproc('xmlCopyEntitiesTable')
     d                                     like(xmlEntitiesTablePtr)
     d  table                              value like(xmlEntitiesTablePtr)
      /endif                                                                    LIBXML_TREE_ENABLED

     d xmlFreeEntitiesTable...
     d                 pr                  extproc('xmlFreeEntitiesTable')
     d  table                              value like(xmlEntitiesTablePtr)
XMLPU
      /if defined(LIBXML_OUTPUT_ENABLED)
     d xmlDumpEntitiesTable...
     d                 pr                  extproc('xmlDumpEntitiesTable')
     d  buf                                value like(xmlBufferPtr)
     d  table                              value like(xmlEntitiesTablePtr)
XMLPU
     d xmlDumpEntityDecl...
     d                 pr                  extproc('xmlDumpEntityDecl')
     d  buf                                value like(xmlBufferPtr)
     d  ent                                value like(xmlEntityPtr)
      /endif                                                                    LIBXML_OUTPUT_ENABLD

      /if defined(LIBXML_LEGACY_ENABLED)
     d xmlCleanupPredefinedEntities...
     d                 pr                  extproc(
XMLPUd                                      'xmlCleanupPredefinedEntities')
      /endif                                                                    LIBXML_LEGACY_ENABLD

      /endif                                                                    XML_ENTITIES_H__