1 #include <URI.d>
2 #include <__oo2c.h>
3 #include <setjmp.h>
4
URI__InitURI(URI__URI uri,Object__String schemeId)5 void URI__InitURI(URI__URI uri, Object__String schemeId) {
6 register OOC_INT64 i0,i1;
7
8 i0 = (OOC_INT64)uri;
9 i1 = (OOC_INT64)schemeId;
10 *(OOC_INT64*)(_check_pointer(i0, 5312)) = i1;
11 return;
12 ;
13 }
14
URI__URIDesc_Clone(URI__URI uri)15 URI__URI URI__URIDesc_Clone(URI__URI uri) {
16
17 _failed_function(5383); return 0;
18 ;
19 }
20
URI__URIDesc_Copy(URI__URI uri,URI__URI dest)21 void URI__URIDesc_Copy(URI__URI uri, URI__URI dest) {
22 register OOC_INT64 i0,i1;
23
24 i0 = (OOC_INT64)uri;
25 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 5820));
26 i1 = i1==0;
27 if (i1) goto l3;
28 i1 = (OOC_INT64)dest;
29 i0 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 5907));
30 *(OOC_INT64*)(_check_pointer(i1, 5890)) = i0;
31 goto l4;
32 l3:
33 i0 = (OOC_INT64)dest;
34 *(OOC_INT64*)(_check_pointer(i0, 5853)) = 0;
35 l4:
36 return;
37 ;
38 }
39
URI__URIDesc_SetSchemeId(URI__URI uri,Object__String schemeId)40 void URI__URIDesc_SetSchemeId(URI__URI uri, Object__String schemeId) {
41 register OOC_INT64 i0,i1;
42
43 i0 = (OOC_INT64)uri;
44 i1 = (OOC_INT64)schemeId;
45 *(OOC_INT64*)(_check_pointer(i0, 6136)) = i1;
46 return;
47 ;
48 }
49
URI__URIDesc_WriteXML(URI__URI uri,TextRider__Writer w)50 void URI__URIDesc_WriteXML(URI__URI uri, TextRider__Writer w) {
51
52 return;
53 ;
54 }
55
URI__URIDesc_ToString(URI__URI uri)56 Object__String8 URI__URIDesc_ToString(URI__URI uri) {
57
58 _failed_function(6384); return 0;
59 ;
60 }
61
URI__URIDesc_AppendScheme(URI__URI uri,ADT_StringBuffer__StringBuffer sb)62 void URI__URIDesc_AppendScheme(URI__URI uri, ADT_StringBuffer__StringBuffer sb) {
63 register OOC_INT64 i0,i1;
64
65 i0 = (OOC_INT64)uri;
66 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 6779));
67 i1 = i1!=0;
68 if (!i1) goto l4;
69 i1 = (OOC_INT64)sb;
70 i0 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 6821));
71 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i1, 6810)))), ADT_StringBuffer__StringBufferDesc_Append)),ADT_StringBuffer__StringBufferDesc_Append)((ADT_StringBuffer__StringBuffer)i1, (Object__Object)i0);
72 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i1, 6842)))), ADT_StringBuffer__StringBufferDesc_Append)),ADT_StringBuffer__StringBufferDesc_Append)((ADT_StringBuffer__StringBuffer)i1, (Object__Object)((OOC_INT64)_c0));
73 l4:
74 return;
75 ;
76 }
77
URI__URIDesc_MakeRelative(URI__URI uri,URI__HierarchicalURI baseURI)78 URI__URI URI__URIDesc_MakeRelative(URI__URI uri, URI__HierarchicalURI baseURI) {
79 register OOC_INT64 i0;
80
81 i0 = (OOC_INT64)uri;
82 return (URI__URI)i0;
83 ;
84 }
85
URI__URIDesc_GetChannel(URI__URI uri,OOC_INT8 mode)86 IO__ByteChannel URI__URIDesc_GetChannel(URI__URI uri, OOC_INT8 mode) {
87 register OOC_INT64 i0;
88
89 i0 = (OOC_INT64)RT0__NewObject(_td_IO__NotImplemented.baseTypes[0]);
90 IO__ErrorDesc_INIT((IO__Error)i0, (Object__String)(OOC_INT64)0);
91 Exception__Raise((void*)i0);
92 _failed_function(7633); return 0;
93 ;
94 }
95
URI__InitOpaqueURI(URI__OpaqueURI uri,Object__String schemeId)96 void URI__InitOpaqueURI(URI__OpaqueURI uri, Object__String schemeId) {
97 register OOC_INT64 i0,i1;
98
99 i0 = (OOC_INT64)schemeId;
100 i1 = (OOC_INT64)uri;
101 URI__InitURI((URI__URI)i1, (Object__String)i0);
102 return;
103 ;
104 }
105
URI__OpaqueURIDesc_ParseOpaquePart(URI__OpaqueURI uri,Object__CharsLatin1 str,OOC_INT16 offset)106 void URI__OpaqueURIDesc_ParseOpaquePart(URI__OpaqueURI uri, Object__CharsLatin1 str, OOC_INT16 offset) {
107
108 return;
109 ;
110 }
111
URI__InitAuthority(URI__Authority auth)112 void URI__InitAuthority(URI__Authority auth) {
113
114 return;
115 ;
116 }
117
URI__AuthorityDesc_Clone(URI__Authority auth)118 URI__Authority URI__AuthorityDesc_Clone(URI__Authority auth) {
119
120 _failed_function(9874); return 0;
121 ;
122 }
123
URI__AuthorityDesc_Copy(URI__Authority auth,URI__Authority dest)124 void URI__AuthorityDesc_Copy(URI__Authority auth, URI__Authority dest) {
125
126 return;
127 ;
128 }
129
URI__AuthorityDesc_ParseAuthority(URI__Authority auth,Object__CharsLatin1 str,OOC_INT16 offset)130 void URI__AuthorityDesc_ParseAuthority(URI__Authority auth, Object__CharsLatin1 str, OOC_INT16 offset) {
131
132 return;
133 ;
134 }
135
URI__AuthorityDesc_WriteXML(URI__Authority auth,TextRider__Writer w)136 void URI__AuthorityDesc_WriteXML(URI__Authority auth, TextRider__Writer w) {
137
138 return;
139 ;
140 }
141
URI__AuthorityDesc_Append(URI__Authority auth,ADT_StringBuffer__StringBuffer sb)142 void URI__AuthorityDesc_Append(URI__Authority auth, ADT_StringBuffer__StringBuffer sb) {
143
144 return;
145 ;
146 }
147
URI__InitQuery(URI__Query query)148 void URI__InitQuery(URI__Query query) {
149
150 return;
151 ;
152 }
153
URI__QueryDesc_Clone(URI__Query query)154 URI__Query URI__QueryDesc_Clone(URI__Query query) {
155
156 _failed_function(11393); return 0;
157 ;
158 }
159
URI__QueryDesc_Copy(URI__Query query,URI__Query dest)160 void URI__QueryDesc_Copy(URI__Query query, URI__Query dest) {
161
162 return;
163 ;
164 }
165
URI__QueryDesc_ParseQuery(URI__Query query,Object__CharsLatin1 str,OOC_INT16 offset)166 void URI__QueryDesc_ParseQuery(URI__Query query, Object__CharsLatin1 str, OOC_INT16 offset) {
167
168 return;
169 ;
170 }
171
URI__QueryDesc_WriteXML(URI__Query query,TextRider__Writer w)172 void URI__QueryDesc_WriteXML(URI__Query query, TextRider__Writer w) {
173
174 return;
175 ;
176 }
177
URI__QueryDesc_Append(URI__Query query,ADT_StringBuffer__StringBuffer sb)178 void URI__QueryDesc_Append(URI__Query query, ADT_StringBuffer__StringBuffer sb) {
179
180 return;
181 ;
182 }
183
URI__InitHierarchicalURI(URI__HierarchicalURI uri,Object__String schemeId,URI__Authority authority,URI__Query query)184 void URI__InitHierarchicalURI(URI__HierarchicalURI uri, Object__String schemeId, URI__Authority authority, URI__Query query) {
185 register OOC_INT64 i0,i1;
186
187 i0 = (OOC_INT64)schemeId;
188 i1 = (OOC_INT64)uri;
189 URI__InitURI((URI__URI)i1, (Object__String)i0);
190 i0 = (OOC_INT64)authority;
191 *(OOC_INT64*)((_check_pointer(i1, 12971))+8) = i0;
192 i0 = (OOC_INT64)query;
193 *(OOC_INT64*)((_check_pointer(i1, 13004))+16) = i0;
194 return;
195 ;
196 }
197
URI__HierarchicalURIDesc_AuthorityMandatory(URI__HierarchicalURI uri)198 OOC_CHAR8 URI__HierarchicalURIDesc_AuthorityMandatory(URI__HierarchicalURI uri) {
199
200 return 0u;
201 ;
202 }
203
URI__HierarchicalURIDesc_Copy(URI__HierarchicalURI uri,URI__URI dest)204 void URI__HierarchicalURIDesc_Copy(URI__HierarchicalURI uri, URI__URI dest) {
205 register OOC_INT64 i0,i1,i2,i3;
206
207 i0 = (OOC_INT64)dest;
208 i1 = (OOC_INT64)uri;
209 URI__URIDesc_Copy((URI__URI)i1, (URI__URI)i0);
210 i2 = OOC_TYPE_TEST(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 13542)))), &_td_URI__HierarchicalURIDesc);
211 if (i2) goto l3;
212 _failed_with(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 13533)))), 13533);
213 goto l12;
214 l3:
215 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 13576))+8);
216 i2 = i2!=(OOC_INT64)0;
217 if (i2) goto l6;
218 *(OOC_INT64*)((_check_pointer(i0, 13674))+8) = (OOC_INT64)0;
219 goto l7;
220 l6:
221 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 13630))+8);
222 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 13630))+8);
223 i2 = (OOC_INT64)OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 13641)))), URI__AuthorityDesc_Clone)),URI__AuthorityDesc_Clone)((URI__Authority)i3);
224 *(OOC_INT64*)((_check_pointer(i0, 13612))+8) = i2;
225 l7:
226 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 13717))+16);
227 i2 = i2!=(OOC_INT64)0;
228 if (i2) goto l10;
229 *(OOC_INT64*)((_check_pointer(i0, 13803))+16) = (OOC_INT64)0;
230 goto l12;
231 l10:
232 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 13763))+16);
233 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 13763))+16);
234 i1 = (OOC_INT64)OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 13770)))), URI__QueryDesc_Clone)),URI__QueryDesc_Clone)((URI__Query)i1);
235 *(OOC_INT64*)((_check_pointer(i0, 13749))+16) = i1;
236 l12:
237 return;
238 ;
239 }
240
URI__HierarchicalURIDesc_NewAuthority(URI__HierarchicalURI uri)241 URI__Authority URI__HierarchicalURIDesc_NewAuthority(URI__HierarchicalURI uri) {
242
243 _failed_function(13893); return 0;
244 ;
245 }
246
URI__HierarchicalURIDesc_SetAuthority(URI__HierarchicalURI uri,URI__Authority auth)247 void URI__HierarchicalURIDesc_SetAuthority(URI__HierarchicalURI uri, URI__Authority auth) {
248 register OOC_INT64 i0,i1;
249
250 i0 = (OOC_INT64)uri;
251 i1 = (OOC_INT64)auth;
252 *(OOC_INT64*)((_check_pointer(i0, 14372))+8) = i1;
253 return;
254 ;
255 }
256
URI__HierarchicalURIDesc_NewQuery(URI__HierarchicalURI uri)257 URI__Query URI__HierarchicalURIDesc_NewQuery(URI__HierarchicalURI uri) {
258
259 _failed_function(14457); return 0;
260 ;
261 }
262
URI__HierarchicalURIDesc_SetQuery(URI__HierarchicalURI uri,URI__Query query)263 void URI__HierarchicalURIDesc_SetQuery(URI__HierarchicalURI uri, URI__Query query) {
264 register OOC_INT64 i0,i1;
265
266 i0 = (OOC_INT64)uri;
267 i1 = (OOC_INT64)query;
268 *(OOC_INT64*)((_check_pointer(i0, 14893))+16) = i1;
269 return;
270 ;
271 }
272
URI__HierarchicalURIDesc_ResolveRelative(URI__HierarchicalURI uri,URI__HierarchicalURI baseURI)273 void URI__HierarchicalURIDesc_ResolveRelative(URI__HierarchicalURI uri, URI__HierarchicalURI baseURI) {
274 register OOC_INT64 i0,i1;
275
276 i0 = (OOC_INT64)uri;
277 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 15229));
278 i1 = i1==0;
279 if (!i1) goto l3;
280 i1 = (OOC_INT64)baseURI;
281 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 15282));
282 *(OOC_INT64*)(_check_pointer(i0, 15261)) = i1;
283 l3:
284 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 15313))+8);
285 i1 = i1==0;
286 if (!i1) goto l6;
287 i1 = (OOC_INT64)baseURI;
288 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 15368))+8);
289 *(OOC_INT64*)((_check_pointer(i0, 15346))+8) = i1;
290 l6:
291 return;
292 ;
293 }
294
URI__HierarchicalURIDesc_ClearPath(URI__HierarchicalURI uri)295 void URI__HierarchicalURIDesc_ClearPath(URI__HierarchicalURI uri) {
296
297 return;
298 ;
299 }
300
URI__HierarchicalURIDesc_ParsePath(URI__HierarchicalURI uri,Object__CharsLatin1 str,OOC_CHAR8 absolute,OOC_INT16 offset)301 void URI__HierarchicalURIDesc_ParsePath(URI__HierarchicalURI uri, Object__CharsLatin1 str, OOC_CHAR8 absolute, OOC_INT16 offset) {
302
303 return;
304 ;
305 }
306
URI__HierarchicalURIDesc_MakeRelative(URI__HierarchicalURI uri,URI__HierarchicalURI baseURI)307 URI__URI URI__HierarchicalURIDesc_MakeRelative(URI__HierarchicalURI uri, URI__HierarchicalURI baseURI) {
308 register OOC_INT64 i0,i1,i2,i3,i4;
309 ADT_StringBuffer__StringBuffer a1;
310 ADT_StringBuffer__StringBuffer a2;
311 URI__URI copy;
312 auto OOC_CHAR8 URI__HierarchicalURIDesc_MakeRelative_Equal(Object__String s1, Object__String s2);
313
314 OOC_CHAR8 URI__HierarchicalURIDesc_MakeRelative_Equal(Object__String s1, Object__String s2) {
315 register OOC_INT64 i0,i1;
316
317 i0 = (OOC_INT64)s1;
318 i1 = (OOC_INT64)s2;
319 i0 = OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 16460)))), Object__StringDesc_Equals)),Object__StringDesc_Equals)((Object__String)i0, (Object__Object)i1);
320 return i0;
321 ;
322 }
323
324
325 i0 = (OOC_INT64)baseURI;
326 i1 = i0==(OOC_INT64)0;
327 if (i1) goto l21;
328 i1 = (OOC_INT64)uri;
329 i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 16626));
330 i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 16626));
331 i4 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 16650));
332 i2 = OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 16635)))), Object__StringDesc_Equals)),Object__StringDesc_Equals)((Object__String)i3, (Object__Object)i4);
333 i2 = !i2;
334 if (i2) goto l19;
335 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 16766))+8);
336 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 16795))+8);
337 i2 = (i2==(OOC_INT64)0)!=(i3==(OOC_INT64)0);
338 if (i2) goto l17;
339 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 17133))+8);
340 i2 = i2!=(OOC_INT64)0;
341 if (!i2) goto l22;
342 i2 = (OOC_INT64)ADT_StringBuffer__New((Object__String)((OOC_INT64)_c1));
343 a1 = (ADT_StringBuffer__StringBuffer)i2;
344 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 17194))+8);
345 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 17194))+8);
346 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i3, 17205)))), URI__AuthorityDesc_Append)),URI__AuthorityDesc_Append)((URI__Authority)i1, (ADT_StringBuffer__StringBuffer)i2);
347 i1 = (OOC_INT64)ADT_StringBuffer__New((Object__String)((OOC_INT64)_c2));
348 a2 = (ADT_StringBuffer__StringBuffer)i1;
349 i3 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 17261))+8);
350 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 17261))+8);
351 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i3, 17272)))), URI__AuthorityDesc_Append)),URI__AuthorityDesc_Append)((URI__Authority)i0, (ADT_StringBuffer__StringBuffer)i1);
352 i0 = *(OOC_INT32*)((_check_pointer(i2, 17299))+4);
353 i3 = *(OOC_INT32*)((_check_pointer(i1, 17311))+4);
354 i0 = i0!=i3;
355 if (i0) goto l11;
356 i0 = (OOC_INT64)OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i1, 17347)))), ADT_StringBuffer__StringBufferDesc_ToString)),ADT_StringBuffer__StringBufferDesc_ToString)((ADT_StringBuffer__StringBuffer)i1);
357 i1 = (OOC_INT64)OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 17332)))), ADT_StringBuffer__StringBufferDesc_ToString)),ADT_StringBuffer__StringBufferDesc_ToString)((ADT_StringBuffer__StringBuffer)i2);
358 i0 = URI__HierarchicalURIDesc_MakeRelative_Equal((Object__String)i1, (Object__String)i0);
359 i0 = !i0;
360
361 goto l13;
362 l11:
363 i0=1u;
364 l13:
365 if (!i0) goto l22;
366 i0 = (OOC_INT64)uri;
367 return (URI__URI)i0;
368 goto l22;
369 l17:
370 return (URI__URI)i1;
371 goto l22;
372 l19:
373 return (URI__URI)i1;
374 goto l22;
375 l21:
376 i0 = (OOC_INT64)uri;
377 return (URI__URI)i0;
378 l22:
379 i0 = (OOC_INT64)uri;
380 i0 = (OOC_INT64)OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 17529)))), URI__URIDesc_Clone)),URI__URIDesc_Clone)((URI__URI)i0);
381 copy = (URI__URI)i0;
382 *(OOC_INT64*)(_check_pointer(i0, 17548)) = (OOC_INT64)0;
383 *(OOC_INT64*)((_check_pointer((_type_guard(i0, ((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 17576)))), &_td_URI__HierarchicalURIDesc, 17576)), 17592))+8) = (OOC_INT64)0;
384 return (URI__URI)(_type_guard(i0, ((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 17628)))), &_td_URI__HierarchicalURIDesc, 17628));
385 ;
386 }
387
URI__HierarchicalURIDesc_AppendPath(URI__HierarchicalURI uri,ADT_StringBuffer__StringBuffer sb)388 void URI__HierarchicalURIDesc_AppendPath(URI__HierarchicalURI uri, ADT_StringBuffer__StringBuffer sb) {
389
390 return;
391 ;
392 }
393
URI__InitFragment(URI__Fragment frag)394 void URI__InitFragment(URI__Fragment frag) {
395
396 return;
397 ;
398 }
399
URI__FragmentDesc_Clone(URI__Fragment frag)400 URI__Fragment URI__FragmentDesc_Clone(URI__Fragment frag) {
401
402 _failed_function(18086); return 0;
403 ;
404 }
405
URI__FragmentDesc_Copy(URI__Fragment frag,URI__Fragment dest)406 void URI__FragmentDesc_Copy(URI__Fragment frag, URI__Fragment dest) {
407
408 return;
409 ;
410 }
411
URI__FragmentDesc_ParseFragment(URI__Fragment frag,Object__CharsLatin1 str,OOC_INT16 offset)412 void URI__FragmentDesc_ParseFragment(URI__Fragment frag, Object__CharsLatin1 str, OOC_INT16 offset) {
413
414 return;
415 ;
416 }
417
URI__FragmentDesc_WriteXML(URI__Fragment frag,TextRider__Writer w)418 void URI__FragmentDesc_WriteXML(URI__Fragment frag, TextRider__Writer w) {
419
420 return;
421 ;
422 }
423
URI__FragmentDesc_Append(URI__Fragment frag,ADT_StringBuffer__StringBuffer sb)424 void URI__FragmentDesc_Append(URI__Fragment frag, ADT_StringBuffer__StringBuffer sb) {
425
426 return;
427 ;
428 }
429
URI__NewReference(URI__URI uri,URI__Fragment fragment)430 URI__Reference URI__NewReference(URI__URI uri, URI__Fragment fragment) {
431 register OOC_INT64 i0,i1;
432 URI__Reference ref;
433
434 i0 = (OOC_INT64)RT0__NewObject(_td_URI__Reference.baseTypes[0]);
435 ref = (URI__Reference)i0;
436 i1 = (OOC_INT64)uri;
437 *(OOC_INT64*)(_check_pointer(i0, 19667)) = i1;
438 i1 = (OOC_INT64)fragment;
439 *(OOC_INT64*)((_check_pointer(i0, 19688))+8) = i1;
440 return (URI__Reference)i0;
441 ;
442 }
443
URI__ReferenceDesc_WriteXML(URI__Reference ref,TextRider__Writer w)444 void URI__ReferenceDesc_WriteXML(URI__Reference ref, TextRider__Writer w) {
445 register OOC_INT64 i0,i1,i2,i3;
446
447 i0 = (OOC_INT64)w;
448 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 19922)))), TextRider__WriterDesc_WriteString)),TextRider__WriterDesc_WriteString)((TextRider__Writer)i0, (OOC_CHAR8*)"\012<uri-reference>", 17);
449 i1 = (OOC_INT64)ref;
450 i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 19978));
451 i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 19978));
452 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 19983)))), URI__URIDesc_WriteXML)),URI__URIDesc_WriteXML)((URI__URI)i3, (TextRider__Writer)i0);
453 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 20010))+8);
454 i2 = i2!=0;
455 if (!i2) goto l4;
456 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 20042))+8);
457 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i1, 20042))+8);
458 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 20052)))), URI__FragmentDesc_WriteXML)),URI__FragmentDesc_WriteXML)((URI__Fragment)i1, (TextRider__Writer)i0);
459 l4:
460 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 20081)))), TextRider__WriterDesc_WriteString)),TextRider__WriterDesc_WriteString)((TextRider__Writer)i0, (OOC_CHAR8*)"\012</uri-reference>", 18);
461 return;
462 ;
463 }
464
URI__ReferenceDesc_ToString(URI__Reference ref)465 Object__String8 URI__ReferenceDesc_ToString(URI__Reference ref) {
466 register OOC_INT64 i0,i1,i2;
467 ADT_StringBuffer__StringBuffer sb;
468 Object__String str;
469
470 i0 = (OOC_INT64)ref;
471 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 20447));
472 i1 = i1!=0;
473 if (i1) goto l3;
474 i1 = (OOC_INT64)ADT_StringBuffer__New((Object__String)((OOC_INT64)_c3));
475 sb = (ADT_StringBuffer__StringBuffer)i1;
476
477 goto l4;
478 l3:
479 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 20497));
480 i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 20497));
481 i1 = (OOC_INT64)OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i1, 20501)))), URI__URIDesc_ToString)),URI__URIDesc_ToString)((URI__URI)i2);
482 i1 = (OOC_INT64)ADT_StringBuffer__New((Object__String)i1);
483 sb = (ADT_StringBuffer__StringBuffer)i1;
484
485 l4:
486 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 20578))+8);
487 i2 = i2!=0;
488 if (!i2) goto l7;
489 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 20609))+8);
490 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 20609))+8);
491 OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 20618)))), URI__FragmentDesc_Append)),URI__FragmentDesc_Append)((URI__Fragment)i0, (ADT_StringBuffer__StringBuffer)i1);
492 l7:
493 i0 = (OOC_INT64)OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i1, 20653)))), ADT_StringBuffer__StringBufferDesc_ToString)),ADT_StringBuffer__StringBufferDesc_ToString)((ADT_StringBuffer__StringBuffer)i1);
494 str = (Object__String)i0;
495 return (Object__String8)(_type_guard(i0, ((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i0, 20688)))), &_td_Object__String8Desc, 20688));
496 ;
497 }
498
URI__RegisterScheme(URI__URI scheme)499 void URI__RegisterScheme(URI__URI scheme) {
500 auto void URI__RegisterScheme_Append(URI__List *list);
501
502 void URI__RegisterScheme_Append(URI__List *list) {
503 register OOC_INT64 i0,i1,i2,i3;
504
505 i0 = (OOC_INT64)*list;
506 i1 = i0==(OOC_INT64)0;
507 if (i1) goto l7;
508 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 21345))+8);
509 i2 = (OOC_INT64)scheme;
510 i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 21314));
511 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 21352));
512 i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 21314));
513 i1 = OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i3, 21323)))), Object__StringDesc_EqualsIgnoreCase)),Object__StringDesc_EqualsIgnoreCase)((Object__String)i2, (Object__Object)i1);
514 if (i1) goto l5;
515 URI__RegisterScheme_Append((void*)(_check_pointer(i0, 21430)));
516 goto l8;
517 l5:
518 i1 = (OOC_INT64)scheme;
519 *(OOC_INT64*)((_check_pointer(i0, 21380))+8) = i1;
520 goto l8;
521 l7:
522 i0 = (OOC_INT64)RT0__NewObject(_td_URI__List.baseTypes[0]);
523 *list = (URI__List)i0;
524 *(OOC_INT64*)(_check_pointer(i0, 21250)) = (OOC_INT64)0;
525 i0 = (OOC_INT64)*list;
526 i1 = (OOC_INT64)scheme;
527 *(OOC_INT64*)((_check_pointer(i0, 21277))+8) = i1;
528 l8:
529 return;
530 ;
531 }
532
533
534 URI__RegisterScheme_Append((void*)(OOC_INT64)&URI__schemeList);
535 return;
536 ;
537 }
538
URI__GetScheme(Object__String name)539 URI__URI URI__GetScheme(Object__String name) {
540 register OOC_INT64 i0,i1,i2;
541 URI__List scheme;
542
543 i0 = (OOC_INT64)URI__schemeList;
544 scheme = (URI__List)i0;
545 i1 = i0!=(OOC_INT64)0;
546 if (i1) goto l3;
547 i1=0u;
548 goto l5;
549 l3:
550 i1 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 21857))+8);
551 i2 = (OOC_INT64)name;
552 i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 21864));
553 i1 = OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i2, 21833)))), Object__StringDesc_EqualsIgnoreCase)),Object__StringDesc_EqualsIgnoreCase)((Object__String)i2, (Object__Object)i1);
554 i1 = !i1;
555
556 l5:
557 if (!i1) goto l17;
558 i1 = (OOC_INT64)name;
559
560 l8_loop:
561 i0 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 21900));
562 scheme = (URI__List)i0;
563 i2 = i0!=(OOC_INT64)0;
564 if (i2) goto l11;
565 i2=0u;
566 goto l13;
567 l11:
568 i2 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 21857))+8);
569 i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 21864));
570 i2 = OOC_TBCALL(((OOC_INT64)OOC_TBPROC_ADR(((OOC_INT64)OOC_TYPE_TAG((_check_pointer(i1, 21833)))), Object__StringDesc_EqualsIgnoreCase)),Object__StringDesc_EqualsIgnoreCase)((Object__String)i1, (Object__Object)i2);
571 i2 = !i2;
572
573 l13:
574 if (i2) goto l8_loop;
575 l17:
576 i1 = i0==(OOC_INT64)0;
577 if (i1) goto l20;
578 i0 = (OOC_INT64)*(OOC_INT64*)((_check_pointer(i0, 21988))+8);
579 return (URI__URI)i0;
580 goto l21;
581 l20:
582 return (URI__URI)(OOC_INT64)0;
583 l21:
584 _failed_function(21532); return 0;
585 ;
586 }
587
OOC_URI_init(void)588 void OOC_URI_init(void) {
589 _c0 = Object__NewLatin1Char(58u);
590 _c1 = Object__NewLatin1Region((OOC_CHAR8*)"", 1, 0, 0);
591 _c2 = Object__NewLatin1Region((OOC_CHAR8*)"", 1, 0, 0);
592 _c3 = Object__NewLatin1Region((OOC_CHAR8*)"", 1, 0, 0);
593
594 URI__schemeList = (URI__List)(OOC_INT64)0;
595 return;
596 ;
597 }
598
OOC_URI_destroy(void)599 void OOC_URI_destroy(void) {
600 }
601
602 /* --- */
603