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