2009-07-17 Richard Guenther <rguenther@suse.de>
[official-gcc.git] / libjava / gnu / xml / stream / XMLParser.h
blob319c2c4a3855ab0a4faa0716408f440fd8fd06a6
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
4 #ifndef __gnu_xml_stream_XMLParser__
5 #define __gnu_xml_stream_XMLParser__
7 #pragma interface
9 #include <java/lang/Object.h>
10 #include <gcj/array.h>
12 extern "Java"
14 namespace gnu
16 namespace java
18 namespace lang
20 class CPStringBuilder;
23 namespace xml
25 namespace stream
27 class XMLParser;
28 class XMLParser$Attribute;
29 class XMLParser$ContentModel;
30 class XMLParser$ContentParticle;
31 class XMLParser$Doctype;
32 class XMLParser$ElementContentModel;
33 class XMLParser$ExternalIds;
34 class XMLParser$Input;
38 namespace javax
40 namespace xml
42 namespace namespace$
44 class NamespaceContext;
45 class QName;
47 namespace stream
49 class Location;
50 class XMLReporter;
51 class XMLResolver;
57 class gnu::xml::stream::XMLParser : public ::java::lang::Object
60 public:
61 XMLParser(::java::io::InputStream *, ::java::lang::String *, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, ::javax::xml::stream::XMLReporter *, ::javax::xml::stream::XMLResolver *);
62 XMLParser(::java::io::Reader *, ::java::lang::String *, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, jboolean, ::javax::xml::stream::XMLReporter *, ::javax::xml::stream::XMLResolver *);
63 virtual ::java::lang::String * getNamespaceURI(::java::lang::String *);
64 virtual ::java::lang::String * getPrefix(::java::lang::String *);
65 virtual ::java::util::Iterator * getPrefixes(::java::lang::String *);
66 virtual void close();
67 virtual ::javax::xml::namespace$::NamespaceContext * getNamespaceContext();
68 virtual jint getAttributeCount();
69 virtual ::java::lang::String * getAttributeLocalName(jint);
70 virtual ::java::lang::String * getAttributeNamespace(jint);
71 virtual ::java::lang::String * getAttributePrefix(jint);
72 virtual ::javax::xml::namespace$::QName * getAttributeName(jint);
73 virtual ::java::lang::String * getAttributeType(jint);
74 private:
75 ::java::lang::String * getAttributeType(::java::lang::String *, ::java::lang::String *);
76 public:
77 virtual ::java::lang::String * getAttributeValue(jint);
78 virtual ::java::lang::String * getAttributeValue(::java::lang::String *, ::java::lang::String *);
79 public: // actually package-private
80 virtual jboolean isAttributeDeclared(jint);
81 public:
82 virtual ::java::lang::String * getCharacterEncodingScheme();
83 virtual ::java::lang::String * getElementText();
84 virtual ::java::lang::String * getEncoding();
85 virtual jint getEventType();
86 virtual ::java::lang::String * getLocalName();
87 virtual ::javax::xml::stream::Location * getLocation();
88 virtual ::javax::xml::namespace$::QName * getName();
89 virtual jint getNamespaceCount();
90 virtual ::java::lang::String * getNamespacePrefix(jint);
91 virtual ::java::lang::String * getNamespaceURI();
92 virtual ::java::lang::String * getNamespaceURI(jint);
93 virtual ::java::lang::String * getPIData();
94 virtual ::java::lang::String * getPITarget();
95 virtual ::java::lang::String * getPrefix();
96 virtual ::java::lang::Object * getProperty(::java::lang::String *);
97 virtual ::java::lang::String * getText();
98 virtual JArray< jchar > * getTextCharacters();
99 virtual jint getTextCharacters(jint, JArray< jchar > *, jint, jint);
100 virtual jint getTextLength();
101 virtual jint getTextStart();
102 virtual ::java::lang::String * getVersion();
103 virtual jboolean hasName();
104 virtual jboolean hasText();
105 virtual jboolean isAttributeSpecified(jint);
106 virtual jboolean isCharacters();
107 virtual jboolean isEndElement();
108 virtual jboolean isStandalone();
109 virtual jboolean isStartElement();
110 virtual jboolean isWhiteSpace();
111 virtual jint nextTag();
112 virtual void require(jint, ::java::lang::String *, ::java::lang::String *);
113 virtual jboolean standaloneSet();
114 virtual jboolean hasNext();
115 virtual jint next();
116 public: // actually package-private
117 virtual ::java::lang::String * getCurrentElement();
118 private:
119 void mark(jint);
120 void reset();
121 jint read();
122 jint read(JArray< jint > *, jint, jint);
123 jint readCh();
124 void require(jchar);
125 void require(::java::lang::String *);
126 jboolean tryRead(jchar);
127 jboolean tryRead(::java::lang::String *);
128 void readUntil(::java::lang::String *);
129 jboolean tryWhitespace();
130 void skipWhitespace();
131 void requireWhitespace();
132 public: // actually package-private
133 virtual ::java::lang::String * getXMLBase();
134 private:
135 void pushInput(::java::lang::String *, ::java::lang::String *, jboolean, jboolean);
136 void pushInput(::java::lang::String *, ::gnu::xml::stream::XMLParser$ExternalIds *, jboolean, jboolean);
137 void pushInput(::gnu::xml::stream::XMLParser$Input *);
138 public: // actually package-private
139 static ::java::lang::String * canonicalize(::java::lang::String *);
140 public:
141 static ::java::lang::String * absolutize(::java::lang::String *, ::java::lang::String *);
142 private:
143 static jboolean isURLScheme(::java::lang::String *);
144 public: // actually package-private
145 static ::java::io::InputStream * resolve(::java::lang::String *);
146 private:
147 void popInput();
148 void readTextDecl();
149 void readXMLDecl();
150 void readDoctypeDecl();
151 void checkDoctype();
152 void readMarkupdecl(jboolean);
153 void readElementDecl();
154 void readContentspec(::java::lang::String *);
155 ::gnu::xml::stream::XMLParser$ElementContentModel * readElements(::gnu::java::lang::CPStringBuilder *);
156 ::gnu::xml::stream::XMLParser$ContentParticle * readContentParticle(::gnu::java::lang::CPStringBuilder *);
157 void readAttlistDecl();
158 void readAttDef(::java::lang::String *);
159 ::java::lang::String * readAttType(::gnu::java::lang::CPStringBuilder *, ::java::util::HashSet *);
160 void readEnumeration(jboolean, ::gnu::java::lang::CPStringBuilder *, ::java::util::HashSet *);
161 void readNotationType(::gnu::java::lang::CPStringBuilder *, ::java::util::HashSet *);
162 void readDefault(::java::lang::String *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *, ::java::util::HashSet *);
163 void readEntityDecl(jboolean);
164 void readNotationDecl(jboolean);
165 ::gnu::xml::stream::XMLParser$ExternalIds * readExternalIds(jboolean, jboolean);
166 jint readStartElement();
167 jboolean attributeSpecified(::java::lang::String *);
168 void readAttribute(::java::lang::String *);
169 jboolean addNamespace(::gnu::xml::stream::XMLParser$Attribute *);
170 void readEndElement();
171 void endElementValidationHook();
172 void readComment(jboolean);
173 void readPI(jboolean);
174 void readReference();
175 void readCDSect();
176 jint readCharData(::java::lang::String *);
177 void expandEntity(::java::lang::String *, jboolean, jboolean);
178 jboolean isUnparsedEntity(::java::lang::String *);
179 void readEq();
180 jint literalReadCh(jboolean);
181 ::java::lang::String * readLiteral(jint, jboolean);
182 ::java::lang::StringBuffer * normalize(::java::lang::StringBuffer *);
183 void normalizeCRLF(::java::lang::StringBuffer *);
184 void expandPEReference();
185 JArray< jchar > * readCharacterRef(jint);
186 ::java::lang::String * readNmtoken(jboolean);
187 ::java::lang::String * readNmtoken(jboolean, ::java::lang::StringBuffer *);
188 public:
189 static jboolean isXML11Char(jint);
190 static jboolean isXML11RestrictedChar(jint);
191 private:
192 jboolean isNmtoken(::java::lang::String *, jboolean);
193 public:
194 static jboolean isNameStartCharacter(jint, jboolean);
195 static jboolean isNameCharacter(jint, jboolean);
196 static jboolean isLetter(jint);
197 static jboolean isDigit(jint);
198 static jboolean isCombiningChar(jint);
199 static jboolean isExtender(jint);
200 static jboolean isChar(jint);
201 private:
202 ::java::lang::String * intern(::java::lang::String *);
203 void error(::java::lang::String *);
204 void error(::java::lang::String *, ::java::lang::Object *);
205 void validateStartElement(::java::lang::String *);
206 void validateEndElement();
207 void validatePCData(::java::lang::String *);
208 void validateElementContent(::gnu::xml::stream::XMLParser$ElementContentModel *, ::java::util::LinkedList *);
209 ::java::lang::String * createRegularExpression(::gnu::xml::stream::XMLParser$ElementContentModel *);
210 public: // actually package-private
211 virtual void validateDoctype();
212 public:
213 static void main(JArray< ::java::lang::String * > *);
214 private:
215 static ::java::lang::String * encodeText(::java::lang::String *);
216 public: // actually package-private
217 static ::java::lang::String * access$0(::gnu::xml::stream::XMLParser *, ::java::lang::String *);
218 static jboolean access$1(::gnu::xml::stream::XMLParser *);
219 static ::gnu::xml::stream::XMLParser$Input * access$2(::gnu::xml::stream::XMLParser *);
220 static ::java::util::LinkedList * access$3(::gnu::xml::stream::XMLParser *);
221 private:
222 static const jint INIT = 0;
223 static const jint PROLOG = 1;
224 static const jint CONTENT = 2;
225 static const jint EMPTY_ELEMENT = 3;
226 static const jint MISC = 4;
227 static const jint LIT_ENTITY_REF = 2;
228 static const jint LIT_NORMALIZE = 4;
229 static const jint LIT_ATTRIBUTE = 8;
230 static const jint LIT_DISABLE_PE = 16;
231 static const jint LIT_DISABLE_CREF = 32;
232 static const jint LIT_DISABLE_EREF = 64;
233 static const jint LIT_PUBID = 256;
234 public: // actually package-private
235 static const jint ATTRIBUTE_DEFAULT_UNDECLARED = 30;
236 static const jint ATTRIBUTE_DEFAULT_SPECIFIED = 31;
237 static const jint ATTRIBUTE_DEFAULT_IMPLIED = 32;
238 static const jint ATTRIBUTE_DEFAULT_REQUIRED = 33;
239 static const jint ATTRIBUTE_DEFAULT_FIXED = 34;
240 static const jint START_ENTITY = 50;
241 static const jint END_ENTITY = 51;
242 private:
243 ::gnu::xml::stream::XMLParser$Input * __attribute__((aligned(__alignof__( ::java::lang::Object)))) input;
244 ::java::util::LinkedList * inputStack;
245 ::java::util::LinkedList * startEntityStack;
246 ::java::util::LinkedList * endEntityStack;
247 jint state;
248 jint event;
249 ::java::util::LinkedList * stack;
250 ::java::util::LinkedList * namespaces;
251 ::java::util::LinkedList * bases;
252 ::java::util::ArrayList * attrs;
253 ::java::lang::StringBuffer * buf;
254 ::java::lang::StringBuffer * nmtokenBuf;
255 ::java::lang::StringBuffer * literalBuf;
256 JArray< jint > * tmpBuf;
257 ::gnu::xml::stream::XMLParser$ContentModel * currentContentModel;
258 ::java::util::LinkedList * validationStack;
259 ::java::util::HashSet * ids;
260 ::java::util::HashSet * idrefs;
261 ::java::lang::String * piTarget;
262 ::java::lang::String * piData;
263 ::java::lang::String * xmlVersion;
264 ::java::lang::String * xmlEncoding;
265 ::java::lang::Boolean * xmlStandalone;
266 public: // actually package-private
267 ::gnu::xml::stream::XMLParser$Doctype * doctype;
268 private:
269 jboolean expandPE;
270 jboolean peIsError;
271 jboolean validating;
272 jboolean stringInterning;
273 jboolean coalescing;
274 jboolean replaceERefs;
275 jboolean externalEntities;
276 jboolean supportDTD;
277 jboolean namespaceAware;
278 jboolean baseAware;
279 jboolean extendedEventTypes;
280 public: // actually package-private
281 ::javax::xml::stream::XMLReporter * reporter;
282 ::javax::xml::stream::XMLResolver * resolver;
283 private:
284 static ::java::lang::String * TEST_START_ELEMENT;
285 static ::java::lang::String * TEST_END_ELEMENT;
286 static ::java::lang::String * TEST_COMMENT;
287 static ::java::lang::String * TEST_PI;
288 static ::java::lang::String * TEST_CDATA;
289 static ::java::lang::String * TEST_XML_DECL;
290 static ::java::lang::String * TEST_DOCTYPE_DECL;
291 static ::java::lang::String * TEST_ELEMENT_DECL;
292 static ::java::lang::String * TEST_ATTLIST_DECL;
293 static ::java::lang::String * TEST_ENTITY_DECL;
294 static ::java::lang::String * TEST_NOTATION_DECL;
295 static ::java::lang::String * TEST_KET;
296 static ::java::lang::String * TEST_END_COMMENT;
297 static ::java::lang::String * TEST_END_PI;
298 static ::java::lang::String * TEST_END_CDATA;
299 static ::java::util::LinkedHashMap * PREDEFINED_ENTITIES;
300 public:
301 static ::java::lang::Class class$;
304 #endif // __gnu_xml_stream_XMLParser__