1 #include <Config/Parser.d>
2 #include <__oo2c.h>
3 #include <setjmp.h>
4
Config_Parser__InitBuilder(Config_Parser__Builder b)5 static void Config_Parser__InitBuilder(Config_Parser__Builder b) {
6 register OOC_INT64 i0;
7
8 i0 = (OOC_INT64)b;
9 *(OOC_INT64*)(_check_pointer(i0, 1584)) = 0;
10 *(OOC_INT64*)((_check_pointer(i0, 1601))+24) = 0;
11 *(OOC_INT64*)((_check_pointer(i0, 1622))+16) = 0;
12 *(OOC_INT64*)((_check_pointer(i0, 1647))+32) = 0;
13 *(OOC_INT64*)((_check_pointer(i0, 1674))+72) = 0;
14 return;
15 ;
16 }
17
Config_Parser__NewBuilder(void)18 static Config_Parser__Builder Config_Parser__NewBuilder(void) {
19 register OOC_INT64 i0;
20
21 i0 = (OOC_INT64)RT0__NewObject(_td_Config_Parser__Builder.baseTypes[0]);
22 Config_Parser__InitBuilder((Config_Parser__Builder)i0);
23 return (Config_Parser__Builder)i0;
24 ;
25 }
26
Config_Parser__InitNode(Config_Parser__Node node,Config_Parser__Element parent,XML_Locator__Locator l,struct XML_Locator__Position * pos,RT0__Struct pos__tag)27 static void Config_Parser__InitNode(Config_Parser__Node node, Config_Parser__Element parent, XML_Locator__Locator l, struct XML_Locator__Position *pos, RT0__Struct pos__tag) {
28 register OOC_INT64 i0,i1,i2;
29
30 i0 = (OOC_INT64)node;
31 i1 = (OOC_INT64)parent;
32 *(OOC_INT64*)((_check_pointer(i0, 1980))+40) = i1;
33 *(OOC_INT64*)(_check_pointer(i0, 2008)) = 0;
34 i1 = (OOC_INT64)l;
35 i2 = i1==0;
36 if (i2) goto l3;
37 _copy_block((_check_pointer(i1, 2101)),((_check_pointer(i0, 2091))+8),32);
38 goto l4;
39 l3:
40 _copy_block((OOC_INT64)pos,((_check_pointer(i0, 2059))+8),32);
41 l4:
42 return;
43 ;
44 }
45
Config_Parser__InitElement(Config_Parser__Element e,Config_Parser__Element parent,struct XML_Locator__Position * pos,RT0__Struct pos__tag,XML_UnicodeBuffer__CharArray name,XML_Builder__AttributeList attrList)46 static void Config_Parser__InitElement(Config_Parser__Element e, Config_Parser__Element parent, struct XML_Locator__Position *pos, RT0__Struct pos__tag, XML_UnicodeBuffer__CharArray name, XML_Builder__AttributeList attrList) {
47 register OOC_INT64 i0,i1;
48
49 i0 = (OOC_INT64)parent;
50 i1 = (OOC_INT64)e;
51 Config_Parser__InitNode((Config_Parser__Node)i1, (Config_Parser__Element)i0, (XML_Locator__Locator)(OOC_INT64)0, (void*)(OOC_INT64)pos, (RT0__Struct)((OOC_INT64)pos__tag));
52 i0 = (OOC_INT64)name;
53 *(OOC_INT64*)((_check_pointer(i1, 2356))+48) = i0;
54 i0 = (OOC_INT64)attrList;
55 *(OOC_INT64*)((_check_pointer(i1, 2377))+56) = i0;
56 *(OOC_INT64*)((_check_pointer(i1, 2406))+64) = (OOC_INT64)0;
57 *(OOC_INT64*)((_check_pointer(i1, 2429))+72) = (OOC_INT64)0;
58 return;
59 ;
60 }
61
Config_Parser__NewElement(Config_Parser__Element parent,struct XML_Locator__Position * pos,RT0__Struct pos__tag,XML_UnicodeBuffer__CharArray name,XML_Builder__AttributeList attrList)62 static Config_Parser__Element Config_Parser__NewElement(Config_Parser__Element parent, struct XML_Locator__Position *pos, RT0__Struct pos__tag, XML_UnicodeBuffer__CharArray name, XML_Builder__AttributeList attrList) {
63 register OOC_INT64 i0,i1,i2,i3;
64
65 i0 = (OOC_INT64)RT0__NewObject(_td_Config_Parser__Element.baseTypes[0]);
66 i1 = (OOC_INT64)attrList;
67 i2 = (OOC_INT64)name;
68 i3 = (OOC_INT64)parent;
69 Config_Parser__InitElement((Config_Parser__Element)i0, (Config_Parser__Element)i3, (void*)(OOC_INT64)pos, (RT0__Struct)((OOC_INT64)pos__tag), (XML_UnicodeBuffer__CharArray)i2, (XML_Builder__AttributeList)i1);
70 return (Config_Parser__Element)i0;
71 ;
72 }
73
Config_Parser__InitCharData(Config_Parser__CharData charData,Config_Parser__Element parent,XML_Locator__Locator l,XML_UnicodeBuffer__CharArray str)74 static void Config_Parser__InitCharData(Config_Parser__CharData charData, Config_Parser__Element parent, XML_Locator__Locator l, XML_UnicodeBuffer__CharArray str) {
75 register OOC_INT64 i0,i1,i2;
76 struct XML_Locator__Position pos;
77
78 i0 = (OOC_INT64)l;
79 i1 = (OOC_INT64)parent;
80 i2 = (OOC_INT64)charData;
81 Config_Parser__InitNode((Config_Parser__Node)i2, (Config_Parser__Element)i1, (XML_Locator__Locator)i0, (void*)(OOC_INT64)&pos, (RT0__Struct)((OOC_INT64)&_td_XML_Locator__Position));
82 i0 = (OOC_INT64)str;
83 *(OOC_INT64*)((_check_pointer(i2, 3024))+48) = i0;
84 return;
85 ;
86 }
87
Config_Parser__NewCharData(Config_Parser__Element parent,XML_Locator__Locator l,XML_UnicodeBuffer__CharArray str)88 static Config_Parser__CharData Config_Parser__NewCharData(Config_Parser__Element parent, XML_Locator__Locator l, XML_UnicodeBuffer__CharArray str) {
89 register OOC_INT64 i0,i1,i2,i3;
90
91 i0 = (OOC_INT64)RT0__NewObject(_td_Config_Parser__CharData.baseTypes[0]);
92 i1 = (OOC_INT64)str;
93 i2 = (OOC_INT64)l;
94 i3 = (OOC_INT64)parent;
95 Config_Parser__InitCharData((Config_Parser__CharData)i0, (Config_Parser__Element)i3, (XML_Locator__Locator)i2, (XML_UnicodeBuffer__CharArray)i1);
96 return (Config_Parser__CharData)i0;
97 ;
98 }
99
Config_Parser__BuilderDesc_SetLocator(Config_Parser__Builder b,XML_Locator__Locator l)100 void Config_Parser__BuilderDesc_SetLocator(Config_Parser__Builder b, XML_Locator__Locator l) {
101 register OOC_INT64 i0,i1;
102
103 i0 = (OOC_INT64)b;
104 i1 = (OOC_INT64)l;
105 *(OOC_INT64*)(_check_pointer(i0, 3386)) = i1;
106 return;
107 ;
108 }
109
Config_Parser__BuilderDesc_SetErrorListener(Config_Parser__Builder b,XML_Locator__ErrorListener errorListener)110 void Config_Parser__BuilderDesc_SetErrorListener(Config_Parser__Builder b, XML_Locator__ErrorListener errorListener) {
111 register OOC_INT64 i0,i1;
112
113 i0 = (OOC_INT64)b;
114 i1 = (OOC_INT64)errorListener;
115 *(OOC_INT64*)((_check_pointer(i0, 3508))+8) = i1;
116 return;
117 ;
118 }
119
Config_Parser__BuilderDesc_StartElement(Config_Parser__Builder b,XML_DTD__NamespaceDeclaration namespaceURI,XML_UnicodeBuffer__CharArray localName)120 void Config_Parser__BuilderDesc_StartElement(Config_Parser__Builder b, XML_DTD__NamespaceDeclaration namespaceURI, XML_UnicodeBuffer__CharArray localName) {
121 register OOC_INT64 i0,i1;
122
123 i0 = (OOC_INT64)b;
124 i1 = (OOC_INT64)localName;
125 *(OOC_INT64*)((_check_pointer(i0, 3720))+32) = i1;
126 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 3767));
127 _copy_block((_check_pointer(i1, 3770)),((_check_pointer(i0, 3753))+40),32);
128 i1 = (OOC_INT64)XML_Builder__NewAttributeList();
129 *(OOC_INT64*)((_check_pointer(i0, 3778))+72) = i1;
130 return;
131 ;
132 }
133
Config_Parser__BuilderDesc_Attribute(Config_Parser__Builder b,XML_DTD__NamespaceDeclaration namespaceURI,XML_UnicodeBuffer__CharArray localName,XML_DTD__AttrDecl attrDecl,XML_DTD__AttValue value,OOC_CHAR8 specified)134 void Config_Parser__BuilderDesc_Attribute(Config_Parser__Builder b, XML_DTD__NamespaceDeclaration namespaceURI, XML_UnicodeBuffer__CharArray localName, XML_DTD__AttrDecl attrDecl, XML_DTD__AttValue value, OOC_CHAR8 specified) {
135 register OOC_INT64 i0,i1,i2,i3,i4,i5,i6;
136
137 i0 = (OOC_INT64)b;
138 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 4306));
139 i2 = (OOC_INT64)namespaceURI;
140 i3 = (OOC_INT64)localName;
141 i4 = (OOC_INT64)attrDecl;
142 i5 = (OOC_INT64)value;
143 i6 = specified;
144 i1 = (OOC_INT64)XML_Builder__NewAttribute((XML_DTD__NamespaceDeclaration)i2, (XML_UnicodeBuffer__CharArray)i3, (XML_DTD__AttrDecl)i4, (XML_DTD__AttValue)i5, i6, (XML_Locator__Locator)i1);
145 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4165))+72);
146 XML_Builder__AttributeListDesc_Append((XML_Builder__AttributeList)i0, (XML_Builder__Attribute)i1);
147 return;
148 ;
149 }
150
Config_Parser__BuilderDesc_AttributesDone(Config_Parser__Builder b)151 void Config_Parser__BuilderDesc_AttributesDone(Config_Parser__Builder b) {
152 register OOC_INT64 i0,i1,i2,i3;
153 Config_Parser__Element element;
154
155 i0 = (OOC_INT64)b;
156 i1 = _check_pointer(i0, 4444);
157 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4499))+72);
158 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4456))+32);
159 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4434))+24);
160 i1 = (OOC_INT64)Config_Parser__NewElement((Config_Parser__Element)i3, (void*)((_check_pointer(i0, 4444))+40), (RT0__Struct)((OOC_INT64)&_td_XML_Locator__Position), (XML_UnicodeBuffer__CharArray)i2, (XML_Builder__AttributeList)i1);
161 element = (Config_Parser__Element)i1;
162 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4525))+24);
163 i2 = i2==(OOC_INT64)0;
164 if (i2) goto l7;
165 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4661))+24);
166 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i2, 4668))+64);
167 i2 = i2==(OOC_INT64)0;
168 if (i2) goto l5;
169 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4747))+24);
170 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i2, 4754))+72);
171 *(OOC_INT64*)(_check_pointer(i2, 4767)) = i1;
172 goto l6;
173 l5:
174 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4699))+24);
175 *(OOC_INT64*)((_check_pointer(i2, 4706))+64) = i1;
176 l6:
177 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 4807))+24);
178 *(OOC_INT64*)((_check_pointer(i2, 4814))+72) = i1;
179 goto l8;
180 l7:
181 *(OOC_INT64*)((_check_pointer(i0, 4552))+16) = i1;
182 *(OOC_INT64*)((_check_pointer(i0, 4578))+24) = i1;
183 l8:
184 *(OOC_INT64*)((_check_pointer(i0, 4853))+24) = i1;
185 return;
186 ;
187 }
188
Config_Parser__BuilderDesc_EndElement(Config_Parser__Builder b,XML_DTD__NamespaceDeclaration namespaceURI,XML_UnicodeBuffer__CharArray localName)189 void Config_Parser__BuilderDesc_EndElement(Config_Parser__Builder b, XML_DTD__NamespaceDeclaration namespaceURI, XML_UnicodeBuffer__CharArray localName) {
190 register OOC_INT64 i0,i1,i2;
191
192 i0 = (OOC_INT64)b;
193 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5050))+24);
194 i1 = i1!=(OOC_INT64)0;
195 if (i1) goto l3;
196 i1=0u;
197 goto l5;
198 l3:
199 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5069))+24);
200 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 5076))+48);
201 i2 = (OOC_INT64)localName;
202 i1 = (
203 _cmp16((const void*)(_check_pointer(i1, 5082)),(const void*)(_check_pointer(i2, 5095))))==0;
204
205 l5:
206 if (!i1) goto l7;
207 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5122))+24);
208 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 5129))+40);
209 *(OOC_INT64*)((_check_pointer(i0, 5110))+24) = i1;
210 l7:
211 return;
212 ;
213 }
214
Config_Parser__BuilderDesc_Characters(Config_Parser__Builder b,XML_DTD__StringVar chars,OOC_LEN chars_0d,OOC_INT32 charsStart,OOC_INT32 charsEnd,OOC_INT8 elementWhitespace)215 void Config_Parser__BuilderDesc_Characters(Config_Parser__Builder b, XML_DTD__StringVar chars, OOC_LEN chars_0d, OOC_INT32 charsStart, OOC_INT32 charsEnd, OOC_INT8 elementWhitespace) {
216 register OOC_INT64 i0,i1,i2,i3,i4,i5,i6,i7;
217 OOC_INT32 len;
218 XML_UnicodeBuffer__CharArray ptr;
219 OOC_INT32 i;
220 Config_Parser__CharData charData;
221
222 i0 = (OOC_INT64)b;
223 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5470))+24);
224 i1 = i1!=(OOC_INT64)0;
225 if (!i1) goto l15;
226 i1 = charsEnd;
227 i2 = charsStart;
228 i1 = i1-i2;
229 len = i1;
230 i3 = (OOC_INT64)RT0__NewObject(_td_XML_UnicodeBuffer__CharArray.baseTypes[0], (i1+1));
231 ptr = (XML_UnicodeBuffer__CharArray)i3;
232 i = 0;
233 i4 = 0<i1;
234 if (!i4) goto l10;
235 i4=i2;i2=0;
236 l5_loop:
237 i5 = _check_pointer(i3, 5588);
238 i6 = OOC_ARRAY_LENGTH(i5, 0);
239 i7 = *(OOC_UINT16*)((OOC_INT64)chars+(_check_index(i4, chars_0d, OOC_UINT32, 5600))*2);
240 *(OOC_UINT16*)(i5+(_check_index(i2, i6, OOC_UINT32, 5588))*2) = i7;
241 i2 = i2+1;
242 i = i2;
243 i4 = i4+1;
244 i5 = i2<i1;
245 if (i5) goto l5_loop;
246 l10:
247 i2 = _check_pointer(i3, 5635);
248 i4 = OOC_ARRAY_LENGTH(i2, 0);
249 *(OOC_UINT16*)(i2+(_check_index(i1, i4, OOC_UINT32, 5635))*2) = 0u;
250 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 5697));
251 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5687))+24);
252 i1 = (OOC_INT64)Config_Parser__NewCharData((Config_Parser__Element)i2, (XML_Locator__Locator)i1, (XML_UnicodeBuffer__CharArray)i3);
253 charData = (Config_Parser__CharData)i1;
254 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5719))+24);
255 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i2, 5726))+64);
256 i2 = i2==(OOC_INT64)0;
257 if (i2) goto l13;
258 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5806))+24);
259 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i2, 5813))+72);
260 *(OOC_INT64*)(_check_pointer(i2, 5826)) = i1;
261 goto l14;
262 l13:
263 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5757))+24);
264 *(OOC_INT64*)((_check_pointer(i2, 5764))+64) = i1;
265 l14:
266 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 5867))+24);
267 *(OOC_INT64*)((_check_pointer(i0, 5874))+72) = i1;
268 l15:
269 return;
270 ;
271 }
272
Config_Parser__NewFile(Object__String filePath)273 Config_Parser__Parser Config_Parser__NewFile(Object__String filePath) {
274 register OOC_INT64 i0,i1,i2,i3;
275 Config_Parser__Parser p;
276 Object__CharsLatin1 chars;
277
278 i0 = (OOC_INT64)RT0__NewObject(_td_Config_Parser__Parser.baseTypes[0]);
279 p = (Config_Parser__Parser)i0;
280 i1 = (OOC_INT64)Config_Parser__NewBuilder();
281 *(OOC_INT64*)((_check_pointer(i0, 6069))+8) = i1;
282 i1 = (OOC_INT64)filePath;
283 i1 = (OOC_INT64)OS_Path__Encode((Object__String)i1);
284 chars = (Object__CharsLatin1)i1;
285 i2 = OOC_ARRAY_LENGTH((_check_pointer(i1, 6176)), 0);
286 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 6195))+8);
287 i1 = (OOC_INT64)XML_Parser__NewFile((void*)(_check_pointer(i1, 6176)), i2, (URI__URI)0, (XML_UnicodeCodec__Factory)0, (XML_EntityResolver__Resolver)0, (XML_Builder__Builder)i3);
288 *(OOC_INT64*)(_check_pointer(i0, 6137)) = i1;
289 return (Config_Parser__Parser)i0;
290 ;
291 }
292
Config_Parser__NewChannel(IO__ByteChannel ch)293 Config_Parser__Parser Config_Parser__NewChannel(IO__ByteChannel ch) {
294 register OOC_INT64 i0,i1,i2;
295 Config_Parser__Parser p;
296
297 i0 = (OOC_INT64)RT0__NewObject(_td_Config_Parser__Parser.baseTypes[0]);
298 p = (Config_Parser__Parser)i0;
299 i1 = (OOC_INT64)Config_Parser__NewBuilder();
300 *(OOC_INT64*)((_check_pointer(i0, 6351))+8) = i1;
301 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 6440))+8);
302 i2 = (OOC_INT64)ch;
303 i1 = (OOC_INT64)XML_Parser__NewChannel((IO__ByteChannel)i2, (URI__URI)0, (XML_UnicodeCodec__Factory)0, (XML_EntityResolver__Resolver)0, (XML_Builder__Builder)i1);
304 *(OOC_INT64*)(_check_pointer(i0, 6383)) = i1;
305 return (Config_Parser__Parser)i0;
306 ;
307 }
308
Config_Parser__ParserDesc_ParseDocument(Config_Parser__Parser p)309 void Config_Parser__ParserDesc_ParseDocument(Config_Parser__Parser p) {
310 register OOC_INT64 i0,i1;
311
312 i0 = (OOC_INT64)p;
313 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 6553));
314 XML_Parser__ParserDesc_ParseDocument((XML_Parser__Parser)i1);
315 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 6599))+8);
316 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 6608))+16);
317 *(OOC_INT64*)((_check_pointer(i0, 6588))+24) = i1;
318 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 6641))+8);
319 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 6650))+8);
320 *(OOC_INT64*)((_check_pointer(i0, 6621))+32) = i1;
321 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 6686));
322 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 6697));
323 *(OOC_INT64*)((_check_pointer(i0, 6672))+16) = i1;
324 return;
325 ;
326 }
327
Config_Parser__NodeDesc_IsWhitespace(Config_Parser__Node node)328 OOC_CHAR8 Config_Parser__NodeDesc_IsWhitespace(Config_Parser__Node node) {
329 register OOC_INT64 i0,i1,i2,i3;
330 XML_UnicodeBuffer__CharArray str;
331 OOC_INT32 i;
332
333 i0 = (OOC_INT64)node;
334 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 6843)))), &_td_Config_Parser__ElementDesc);
335 if (i1) goto l24;
336 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 6885)))), &_td_Config_Parser__CharDataDesc);
337 if (i1) goto l5;
338 _failed_with(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 6879)))), 6879);
339 goto l25;
340 l5:
341 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 6916))+48);
342 str = (XML_UnicodeBuffer__CharArray)i0;
343 i = 0;
344 i1 = _check_pointer(i0, 6956);
345 i2 = OOC_ARRAY_LENGTH(i1, 0);
346 i1 = *(OOC_UINT16*)(i1+(_check_index(0, i2, OOC_UINT32, 6956))*2);
347 i1 = i1!=0u;
348 if (i1) goto l8;
349 i1=0u;
350 goto l10;
351 l8:
352 i1 = _check_pointer(i0, 6972);
353 i2 = OOC_ARRAY_LENGTH(i1, 0);
354 i1 = *(OOC_UINT16*)(i1+(_check_index(0, i2, OOC_UINT32, 6972))*2);
355 i1 = (OOC_UINT16)i1<=(OOC_UINT16)32u;
356
357 l10:
358 if (i1) goto l12;
359 i1=0;
360 goto l22;
361 l12:
362 i1=0;
363 l13_loop:
364 i1 = i1+1;
365 i = i1;
366 i2 = _check_pointer(i0, 6956);
367 i3 = OOC_ARRAY_LENGTH(i2, 0);
368 i2 = *(OOC_UINT16*)(i2+(_check_index(i1, i3, OOC_UINT32, 6956))*2);
369 i2 = i2!=0u;
370 if (i2) goto l16;
371 i2=0u;
372 goto l18;
373 l16:
374 i2 = _check_pointer(i0, 6972);
375 i3 = OOC_ARRAY_LENGTH(i2, 0);
376 i2 = *(OOC_UINT16*)(i2+(_check_index(i1, i3, OOC_UINT32, 6972))*2);
377 i2 = (OOC_UINT16)i2<=(OOC_UINT16)32u;
378
379 l18:
380 if (i2) goto l13_loop;
381 l22:
382 i0 = _check_pointer(i0, 7031);
383 i2 = OOC_ARRAY_LENGTH(i0, 0);
384 i0 = *(OOC_UINT16*)(i0+(_check_index(i1, i2, OOC_UINT32, 7031))*2);
385 return (i0==0u);
386 goto l25;
387 l24:
388 return 0u;
389 l25:
390 _failed_function(6754); return 0;
391 ;
392 }
393
Config_Parser__NodeDesc_HasNoElementContent(Config_Parser__Node node)394 OOC_CHAR8 Config_Parser__NodeDesc_HasNoElementContent(Config_Parser__Node node) {
395 register OOC_INT64 i0,i1;
396 Config_Parser__Node ptr;
397
398 i0 = (OOC_INT64)node;
399 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7171)))), &_td_Config_Parser__ElementDesc);
400 if (i1) goto l7;
401 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7376)))), &_td_Config_Parser__CharDataDesc);
402 if (i1) goto l5;
403 _failed_with(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7370)))), 7370);
404 goto l19;
405 l5:
406 return 1u;
407 goto l19;
408 l7:
409 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 7201))+64);
410 ptr = (Config_Parser__Node)i0;
411 i1 = i0!=(OOC_INT64)0;
412 if (!i1) goto l18;
413 l10_loop:
414 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7255)))), &_td_Config_Parser__ElementDesc);
415 if (!i1) goto l13;
416 return 0u;
417 l13:
418 i0 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 7326));
419 ptr = (Config_Parser__Node)i0;
420 i1 = i0!=(OOC_INT64)0;
421 if (i1) goto l10_loop;
422 l18:
423 return 1u;
424 l19:
425 _failed_function(7095); return 0;
426 ;
427 }
428
Config_Parser__NodeDesc_IsEmpty(Config_Parser__Node node)429 OOC_CHAR8 Config_Parser__NodeDesc_IsEmpty(Config_Parser__Node node) {
430 register OOC_INT64 i0,i1;
431
432 i0 = (OOC_INT64)node;
433 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7510)))), &_td_Config_Parser__ElementDesc);
434 if (i1) goto l7;
435 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7568)))), &_td_Config_Parser__CharDataDesc);
436 if (i1) goto l5;
437 _failed_with(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7562)))), 7562);
438 goto l8;
439 l5:
440 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 7600))+48);
441 return ((
442 _cmp16((const void*)(_check_pointer(i0, 7608)),(const void*)((OOC_CHAR16[]){0})))==0);
443 goto l8;
444 l7:
445 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 7541))+64);
446 return (i0==(OOC_INT64)0);
447 l8:
448 _failed_function(7467); return 0;
449 ;
450 }
451
Config_Parser__NodeDesc_GetCharDataContent(Config_Parser__Node node)452 XML_UnicodeBuffer__CharArray Config_Parser__NodeDesc_GetCharDataContent(Config_Parser__Node node) {
453 register OOC_INT64 i0,i1,i2,i3,i4;
454 OOC_INT32 len;
455 Config_Parser__Node ptr;
456 XML_UnicodeBuffer__CharArray str;
457
458 i0 = (OOC_INT64)node;
459 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 7779)))), &_td_Config_Parser__ElementDesc);
460 if (i1) goto l7;
461 i1 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 8277)))), &_td_Config_Parser__CharDataDesc);
462 if (i1) goto l5;
463 _failed_with(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 8271)))), 8271);
464 goto l29;
465 l5:
466 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 8308))+48);
467 return (XML_UnicodeBuffer__CharArray)i0;
468 goto l29;
469 l7:
470 len = 0;
471 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 7825))+64);
472 ptr = (Config_Parser__Node)i1;
473 i2 = i1!=(OOC_INT64)0;
474 if (i2) goto l10;
475 i1=0;
476 goto l20;
477 l10:
478 i2=0;
479 l11_loop:
480 i3 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i1, 7879)))), &_td_Config_Parser__CharDataDesc);
481 if (i3) goto l14;
482 return (XML_UnicodeBuffer__CharArray)(OOC_INT64)0;
483
484 goto l15;
485 l14:
486 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 7936))+48);
487 i4 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 7936))+48);
488 i3 = OOC_ARRAY_LENGTH((_check_pointer(i3, 7944)), 0);
489 i3 = LongStrings__Length((void*)(_check_pointer(i4, 7944)), i3);
490 i2 = i2+i3;
491 len = i2;
492
493 l15:
494 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 8013));
495 ptr = (Config_Parser__Node)i1;
496 i3 = i1!=(OOC_INT64)0;
497 if (i3) goto l11_loop;
498 l19:
499 i1=i2;
500 l20:
501 i1 = (OOC_INT64)RT0__NewObject(_td_XML_UnicodeBuffer__CharArray.baseTypes[0], (i1+1));
502 str = (XML_UnicodeBuffer__CharArray)i1;
503 i2 = OOC_ARRAY_LENGTH((_check_pointer(i1, 8085)), 0);
504 _copy_16((const void*)((OOC_CHAR16[]){0}),(void*)(_check_pointer(i1, 8085)),i2);
505 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 8106))+64);
506 ptr = (Config_Parser__Node)i0;
507 i2 = i0!=(OOC_INT64)0;
508 if (!i2) goto l28;
509 l23_loop:
510 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer((_type_guard(i0, ((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 8176)))), &_td_Config_Parser__CharDataDesc, 8176)), 8185))+48);
511 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer((_type_guard(i0, ((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 8176)))), &_td_Config_Parser__CharDataDesc, 8176)), 8185))+48);
512 i2 = OOC_ARRAY_LENGTH((_check_pointer(i2, 8193)), 0);
513 i4 = OOC_ARRAY_LENGTH((_check_pointer(i1, 8199)), 0);
514 LongStrings__Append((void*)(_check_pointer(i3, 8193)), i2, (void*)(_check_pointer(i1, 8199)), i4);
515 i0 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 8221));
516 ptr = (Config_Parser__Node)i0;
517 i2 = i0!=(OOC_INT64)0;
518 if (i2) goto l23_loop;
519 l28:
520 return (XML_UnicodeBuffer__CharArray)i1;
521 l29:
522 _failed_function(7664); return 0;
523 ;
524 }
525
OOC_Config_Parser_init(void)526 void OOC_Config_Parser_init(void) {
527
528 return;
529 ;
530 }
531
OOC_Config_Parser_destroy(void)532 void OOC_Config_Parser_destroy(void) {
533 }
534
535 /* --- */
536