1 #include <OOC/Doc/TextBuffer.d>
2 #include <__oo2c.h>
3 #include <setjmp.h>
4 
OOC_Doc_TextBuffer__New(void)5 OOC_Doc_TextBuffer__Buffer OOC_Doc_TextBuffer__New(void) {
6   register OOC_INT64 i0,i1,i2;
7   OOC_Doc_TextBuffer__Buffer b;
8 
9   i0 = (OOC_INT64)RT0__NewObject(_td_OOC_Doc_TextBuffer__Buffer.baseTypes[0]);
10   b = (OOC_Doc_TextBuffer__Buffer)i0;
11   *(OOC_INT64*)(_check_pointer(i0, 1196)) = ((OOC_INT64)RT0__NewObject(_td_OOC_Scanner_InputBuffer__CharArray.baseTypes[0], 2032));
12   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 1220));
13   i1 = _check_pointer(i1, 1225);
14   i2 = OOC_ARRAY_LENGTH(i1, 0);
15   *(OOC_UINT8*)(i1+(_check_index(0, i2, OOC_UINT8, 1225))) = 0u;
16   *(OOC_INT32*)((_check_pointer(i0, 1241))+8) = 0;
17   return (OOC_Doc_TextBuffer__Buffer)i0;
18   ;
19 }
20 
OOC_Doc_TextBuffer__BufferDesc_Clear(OOC_Doc_TextBuffer__Buffer b)21 void OOC_Doc_TextBuffer__BufferDesc_Clear(OOC_Doc_TextBuffer__Buffer b) {
22   register OOC_INT64 i0,i1,i2;
23 
24   i0 = (OOC_INT64)b;
25   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 1321));
26   i1 = _check_pointer(i1, 1326);
27   i2 = OOC_ARRAY_LENGTH(i1, 0);
28   *(OOC_UINT8*)(i1+(_check_index(0, i2, OOC_UINT8, 1326))) = 0u;
29   *(OOC_INT32*)((_check_pointer(i0, 1342))+8) = 0;
30   return;
31   ;
32 }
33 
OOC_Doc_TextBuffer__Extend(OOC_Doc_TextBuffer__Buffer b,OOC_INT32 to)34 static void OOC_Doc_TextBuffer__Extend(OOC_Doc_TextBuffer__Buffer b, OOC_INT32 to) {
35   register OOC_INT64 i0,i1,i2,i3;
36   OOC_INT32 i;
37   OOC_Scanner_InputBuffer__CharArray s;
38 
39   i0 = (OOC_INT64)b;
40   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 1474));
41   i1 = OOC_ARRAY_LENGTH((_check_pointer(i1, 1479)), 0);
42   i = i1;
43   i2 = to;
44   i3 = i1<=i2;
45   if (!i3) goto l9;
46 l4_loop:
47   i1 = i1+2048;
48   i = i1;
49   i3 = i1<=i2;
50   if (i3) goto l4_loop;
51 l9:
52   i1 = (OOC_INT64)RT0__NewObject(_td_OOC_Scanner_InputBuffer__CharArray.baseTypes[0], i1);
53   s = (OOC_Scanner_InputBuffer__CharArray)i1;
54   i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 1564));
55   i3 = OOC_ARRAY_LENGTH((_check_pointer(i1, 1573)), 0);
56   _copy_8((const void*)(_check_pointer(i2, 1569)),(void*)(_check_pointer(i1, 1573)),i3);
57   *(OOC_INT64*)(_check_pointer(i0, 1582)) = i1;
58   return;
59   ;
60 }
61 
OOC_Doc_TextBuffer__BufferDesc_Append(OOC_Doc_TextBuffer__Buffer b,const OOC_CHAR8 str[],OOC_LEN str_0d)62 void OOC_Doc_TextBuffer__BufferDesc_Append(OOC_Doc_TextBuffer__Buffer b, const OOC_CHAR8 str[], OOC_LEN str_0d) {
63   register OOC_INT64 i0,i1,i2,i3;
64   OOC_INT32 len;
65 
66   i0 = Strings__Length((void*)(OOC_INT64)str, str_0d);
67   len = i0;
68   i1 = (OOC_INT64)b;
69   i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 1762));
70   i3 = *(OOC_INT32*)((_check_pointer(i1, 1743))+8);
71   i2 = OOC_ARRAY_LENGTH((_check_pointer(i2, 1767)), 0);
72   i2 = (i3+i0)>=i2;
73   if (!i2) goto l4;
74   i2 = *(OOC_INT32*)((_check_pointer(i1, 1794))+8);
75   OOC_Doc_TextBuffer__Extend((OOC_Doc_TextBuffer__Buffer)i1, (i2+i0));
76 l4:
77   i2 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 1840));
78   i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i1, 1840));
79   i2 = OOC_ARRAY_LENGTH((_check_pointer(i2, 1845)), 0);
80   Strings__Append((void*)(OOC_INT64)str, str_0d, (void*)(_check_pointer(i3, 1845)), i2);
81   i2 = *(OOC_INT32*)((_check_pointer(i1, 1859))+8);
82   *(OOC_INT32*)((_check_pointer(i1, 1859))+8) = (i2+i0);
83   return;
84   ;
85 }
86 
OOC_Doc_TextBuffer__BufferDesc_AppendEOL(OOC_Doc_TextBuffer__Buffer b)87 void OOC_Doc_TextBuffer__BufferDesc_AppendEOL(OOC_Doc_TextBuffer__Buffer b) {
88   register OOC_INT64 i0,i1,i2,i3;
89 
90   i0 = (OOC_INT64)b;
91   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 1954));
92   i2 = *(OOC_INT32*)((_check_pointer(i0, 1937))+8);
93   i1 = OOC_ARRAY_LENGTH((_check_pointer(i1, 1959)), 0);
94   i1 = (i2+1)>=i1;
95   if (!i1) goto l3;
96   i1 = *(OOC_INT32*)((_check_pointer(i0, 1986))+8);
97   OOC_Doc_TextBuffer__Extend((OOC_Doc_TextBuffer__Buffer)i0, (i1+1));
98 l3:
99   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 2009));
100   i1 = _check_pointer(i1, 2014);
101   i2 = *(OOC_INT32*)((_check_pointer(i0, 2016))+8);
102   i3 = OOC_ARRAY_LENGTH(i1, 0);
103   *(OOC_UINT8*)(i1+(_check_index(i2, i3, OOC_UINT32, 2014))) = 10u;
104   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 2046));
105   i1 = _check_pointer(i1, 2051);
106   i2 = *(OOC_INT32*)((_check_pointer(i0, 2053))+8);
107   i3 = OOC_ARRAY_LENGTH(i1, 0);
108   *(OOC_UINT8*)(i1+(_check_index((i2+1), i3, OOC_UINT32, 2051))) = 0u;
109   i1 = *(OOC_INT32*)((_check_pointer(i0, 2079))+8);
110   *(OOC_INT32*)((_check_pointer(i0, 2079))+8) = (i1+1);
111   return;
112   ;
113 }
114 
OOC_Doc_TextBuffer__BufferDesc_AppendSpaces(OOC_Doc_TextBuffer__Buffer b,OOC_INT32 len)115 void OOC_Doc_TextBuffer__BufferDesc_AppendSpaces(OOC_Doc_TextBuffer__Buffer b, OOC_INT32 len) {
116   register OOC_INT64 i0,i1,i2,i3,i4,i5;
117   OOC_INT32 i;
118 
119   i0 = (OOC_INT64)b;
120   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 2214));
121   i2 = *(OOC_INT32*)((_check_pointer(i0, 2195))+8);
122   i3 = len;
123   i1 = OOC_ARRAY_LENGTH((_check_pointer(i1, 2219)), 0);
124   i1 = (i2+i3)>=i1;
125   if (!i1) goto l3;
126   i1 = *(OOC_INT32*)((_check_pointer(i0, 2246))+8);
127   OOC_Doc_TextBuffer__Extend((OOC_Doc_TextBuffer__Buffer)i0, (i1+i3));
128 l3:
129   i1 = *(OOC_INT32*)((_check_pointer(i0, 2290))+8);
130   i2 = *(OOC_INT32*)((_check_pointer(i0, 2280))+8);
131   i = i2;
132   i1 = i1+i3;
133   i4 = i2<i1;
134   if (!i4) goto l11;
135 l6_loop:
136   i4 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 2312));
137   i4 = _check_pointer(i4, 2317);
138   i5 = OOC_ARRAY_LENGTH(i4, 0);
139   *(OOC_UINT8*)(i4+(_check_index(i2, i5, OOC_UINT32, 2317))) = 32u;
140   i2 = i2+1;
141   i = i2;
142   i4 = i2<i1;
143   if (i4) goto l6_loop;
144 l11:
145   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 2342));
146   i1 = _check_pointer(i1, 2347);
147   i2 = *(OOC_INT32*)((_check_pointer(i0, 2349))+8);
148   i4 = OOC_ARRAY_LENGTH(i1, 0);
149   *(OOC_UINT8*)(i1+(_check_index((i2+i3), i4, OOC_UINT32, 2347))) = 0u;
150   i1 = *(OOC_INT32*)((_check_pointer(i0, 2377))+8);
151   *(OOC_INT32*)((_check_pointer(i0, 2377))+8) = (i1+i3);
152   return;
153   ;
154 }
155 
OOC_Doc_TextBuffer__BufferDesc_AppendSubstring(OOC_Doc_TextBuffer__Buffer b,const OOC_CHAR8 str[],OOC_LEN str_0d,OOC_INT32 start,OOC_INT32 end)156 void OOC_Doc_TextBuffer__BufferDesc_AppendSubstring(OOC_Doc_TextBuffer__Buffer b, const OOC_CHAR8 str[], OOC_LEN str_0d, OOC_INT32 start, OOC_INT32 end) {
157   register OOC_INT64 i0,i1,i2,i3,i4,i5,i6,i7,i8;
158   OOC_INT32 len;
159   OOC_INT32 i;
160 
161   i0 = end;
162   i1 = start;
163   i2 = i0-i1;
164   len = i2;
165   i3 = (OOC_INT64)b;
166   i4 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i3, 2626));
167   i5 = *(OOC_INT32*)((_check_pointer(i3, 2607))+8);
168   i4 = OOC_ARRAY_LENGTH((_check_pointer(i4, 2631)), 0);
169   i4 = (i5+i2)>=i4;
170   if (!i4) goto l3;
171   i4 = *(OOC_INT32*)((_check_pointer(i3, 2658))+8);
172   OOC_Doc_TextBuffer__Extend((OOC_Doc_TextBuffer__Buffer)i3, (i4+i2));
173 l3:
174   i = i1;
175   i4 = i1<i0;
176   if (!i4) goto l11;
177   i4 = (i1*(-1))+i1;
178 
179 l6_loop:
180   i5 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i3, 2716));
181   i5 = _check_pointer(i5, 2721);
182   i6 = *(OOC_INT32*)((_check_pointer(i3, 2731))+8);
183   i7 = OOC_ARRAY_LENGTH(i5, 0);
184   i8 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(i1, str_0d, OOC_UINT32, 2744)));
185   *(OOC_UINT8*)(i5+(_check_index((i4+i6), i7, OOC_UINT32, 2721))) = i8;
186   i1 = i1+1;
187   i = i1;
188   i4 = i4+1;
189   i5 = i1<i0;
190   if (i5) goto l6_loop;
191 l11:
192   i0 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i3, 2762));
193   i0 = _check_pointer(i0, 2767);
194   i1 = *(OOC_INT32*)((_check_pointer(i3, 2769))+8);
195   i4 = OOC_ARRAY_LENGTH(i0, 0);
196   *(OOC_UINT8*)(i0+(_check_index((i1+i2), i4, OOC_UINT32, 2767))) = 0u;
197   i0 = *(OOC_INT32*)((_check_pointer(i3, 2797))+8);
198   *(OOC_INT32*)((_check_pointer(i3, 2797))+8) = (i0+i2);
199   return;
200   ;
201 }
202 
OOC_Doc_TextBuffer__BufferDesc_AppendNoLB(OOC_Doc_TextBuffer__Buffer b,const OOC_CHAR8 str[],OOC_LEN str_0d)203 void OOC_Doc_TextBuffer__BufferDesc_AppendNoLB(OOC_Doc_TextBuffer__Buffer b, const OOC_CHAR8 str[], OOC_LEN str_0d) {
204   register OOC_INT64 i0,i1,i2,i3,i4,i5;
205   OOC_INT32 i;
206   OOC_INT32 count;
207   OOC_INT32 j;
208 
209   i = 0;
210   count = 0;
211   i0 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(0, str_0d, OOC_UINT32, 2976)));
212   i0 = i0!=0u;
213   if (i0) goto l3;
214   i0=0;i1=0;
215   goto l13;
216 l3:
217   i0=0;i1=0;
218 l4_loop:
219   i2 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(i0, str_0d, OOC_UINT32, 3002)));
220   i2 = i2==10u;
221   if (!i2) goto l8;
222   i1 = i1+1;
223   count = i1;
224 
225 l8:
226   i0 = i0+1;
227   i = i0;
228   i2 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(i0, str_0d, OOC_UINT32, 2976)));
229   i2 = i2!=0u;
230   if (i2) goto l4_loop;
231 l13:
232   i2 = (OOC_INT64)b;
233   i3 = *(OOC_INT32*)((_check_pointer(i2, 3098))+8);
234   OOC_Doc_TextBuffer__Extend((OOC_Doc_TextBuffer__Buffer)i2, ((i3+i0)+i1));
235   i = 0;
236   i0 = *(OOC_INT32*)((_check_pointer(i2, 3137))+8);
237   j = i0;
238   i1 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(0, str_0d, OOC_UINT32, 3158)));
239   i1 = i1!=0u;
240   if (!i1) goto l34;
241   i1=i0;i0=0;
242 l17_loop:
243   i3 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(i0, str_0d, OOC_UINT32, 3184)));
244   i3 = i3==10u;
245   if (i3) goto l20;
246   i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 3359));
247   i3 = _check_pointer(i3, 3364);
248   i4 = OOC_ARRAY_LENGTH(i3, 0);
249   i5 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(i0, str_0d, OOC_UINT32, 3374)));
250   *(OOC_UINT8*)(i3+(_check_index(i1, i4, OOC_UINT32, 3364))) = i5;
251 
252   goto l29;
253 l20:
254   i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 3219));
255   i3 = _check_pointer(i3, 3224);
256   i4 = OOC_ARRAY_LENGTH(i3, 0);
257   *(OOC_UINT8*)(i3+(_check_index(i1, i4, OOC_UINT32, 3224))) = 32u;
258   i3 = i0>0;
259   if (i3) goto l23;
260   i3=0u;
261   goto l25;
262 l23:
263   i3 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index((i0-1), str_0d, OOC_UINT32, 3261)));
264   i3 = i3==46u;
265 
266 l25:
267   if (!i3) goto l29;
268   i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 3290));
269   i3 = _check_pointer(i3, 3295);
270   i4 = OOC_ARRAY_LENGTH(i3, 0);
271   i1 = i1+1;
272   *(OOC_UINT8*)(i3+(_check_index(i1, i4, OOC_UINT32, 3295))) = 32u;
273 
274 l29:
275   i0 = i0+1;
276   i = i0;
277   i1 = i1+1;
278   j = i1;
279   i3 = *(OOC_UINT8*)((OOC_INT64)str+(_check_index(i0, str_0d, OOC_UINT32, 3158)));
280   i3 = i3!=0u;
281   if (i3) goto l17_loop;
282 l33:
283   i0=i1;
284 l34:
285   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 3427));
286   i1 = _check_pointer(i1, 3432);
287   i3 = OOC_ARRAY_LENGTH(i1, 0);
288   *(OOC_UINT8*)(i1+(_check_index(i0, i3, OOC_UINT32, 3432))) = 0u;
289   *(OOC_INT32*)((_check_pointer(i2, 3448))+8) = i0;
290   return;
291   ;
292 }
293 
OOC_Doc_TextBuffer__BufferDesc_Capitalize(OOC_Doc_TextBuffer__Buffer b,OOC_INT32 start,OOC_INT32 end)294 void OOC_Doc_TextBuffer__BufferDesc_Capitalize(OOC_Doc_TextBuffer__Buffer b, OOC_INT32 start, OOC_INT32 end) {
295   register OOC_INT64 i0,i1,i2,i3,i4,i5,i6;
296 
297   i0 = start;
298   i1 = end;
299   i2 = i0!=i1;
300   if (!i2) goto l8;
301   i2 = (OOC_INT64)b;
302 
303 l3_loop:
304   i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 3577));
305   i3 = _check_pointer(i3, 3582);
306   i4 = OOC_ARRAY_LENGTH(i3, 0);
307   i5 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 3599));
308   i5 = _check_pointer(i5, 3604);
309   i6 = OOC_ARRAY_LENGTH(i5, 0);
310   i5 = *(OOC_UINT8*)(i5+(_check_index(i0, i6, OOC_UINT32, 3604)));
311   *(OOC_UINT8*)(i3+(_check_index(i0, i4, OOC_UINT32, 3582))) = (_cap(i5));
312   i0 = i0+1;
313   start = i0;
314   i3 = i0!=i1;
315   if (i3) goto l3_loop;
316 l8:
317   return;
318   ;
319 }
320 
OOC_Doc_TextBuffer__FormatBlock(OOC_Doc_TextBuffer__Buffer dest,OOC_Doc_TextBuffer__Buffer source,OOC_INT32 indent,OOC_INT32 scrWidth,OOC_INT32 offsetFirst)321 void OOC_Doc_TextBuffer__FormatBlock(OOC_Doc_TextBuffer__Buffer dest, OOC_Doc_TextBuffer__Buffer source, OOC_INT32 indent, OOC_INT32 scrWidth, OOC_INT32 offsetFirst) {
322   register OOC_INT64 i0,i1,i2,i3,i4,i5;
323   OOC_Scanner_InputBuffer__CharArray s;
324   OOC_CHAR8 firstLine;
325   OOC_INT32 i;
326   OOC_INT32 start;
327   OOC_INT32 end;
328   auto OOC_INT32 OOC_Doc_TextBuffer__FormatBlock_LastWord(OOC_Scanner_InputBuffer__CharArray s, OOC_INT32 sLen, OOC_INT32 start, OOC_INT32 width);
329 
330     OOC_INT32 OOC_Doc_TextBuffer__FormatBlock_LastWord(OOC_Scanner_InputBuffer__CharArray s, OOC_INT32 sLen, OOC_INT32 start, OOC_INT32 width) {
331       register OOC_INT64 i0,i1,i2,i3,i4,i5;
332 
333       i0 = start;
334       i1 = width;
335       i1 = i0+i1;
336       i2 = sLen;
337       i3 = i1<i2;
338       if (i3) goto l3;
339       return i2;
340       goto l51;
341 l3:
342       i = i1;
343       i2 = i1!=i0;
344       if (i2) goto l6;
345       i2=0u;
346       goto l8;
347 l6:
348       i2 = (OOC_INT64)s;
349       i2 = _check_pointer(i2, 4568);
350       i3 = OOC_ARRAY_LENGTH(i2, 0);
351       i2 = *(OOC_UINT8*)(i2+(_check_index(i1, i3, OOC_UINT32, 4568)));
352       i2 = (OOC_UINT8)i2>(OOC_UINT8)32u;
353 
354 l8:
355       if (i2) goto l10;
356       i2=i1;
357       goto l20;
358 l10:
359       i2 = (OOC_INT64)s;
360       i3=i1;
361 l11_loop:
362       i3 = i3-1;
363       i = i3;
364       i4 = i3!=i0;
365       if (i4) goto l14;
366       i4=0u;
367       goto l16;
368 l14:
369       i4 = _check_pointer(i2, 4568);
370       i5 = OOC_ARRAY_LENGTH(i4, 0);
371       i4 = *(OOC_UINT8*)(i4+(_check_index(i3, i5, OOC_UINT32, 4568)));
372       i4 = (OOC_UINT8)i4>(OOC_UINT8)32u;
373 
374 l16:
375       if (i4) goto l11_loop;
376 l19:
377       i2=i3;
378 l20:
379       i3 = i2!=i0;
380       if (i3) goto l23;
381       i3=0u;
382       goto l25;
383 l23:
384       i3 = (OOC_INT64)s;
385       i3 = _check_pointer(i3, 4718);
386       i4 = OOC_ARRAY_LENGTH(i3, 0);
387       i3 = *(OOC_UINT8*)(i3+(_check_index((i2-1), i4, OOC_UINT32, 4718)));
388       i3 = (OOC_UINT8)i3<=(OOC_UINT8)32u;
389 
390 l25:
391       if (!i3) goto l37;
392       i3 = (OOC_INT64)s;
393 
394 l28_loop:
395       i2 = i2-1;
396       i = i2;
397       i4 = i2!=i0;
398       if (i4) goto l31;
399       i4=0u;
400       goto l33;
401 l31:
402       i4 = _check_pointer(i3, 4718);
403       i5 = OOC_ARRAY_LENGTH(i4, 0);
404       i4 = *(OOC_UINT8*)(i4+(_check_index((i2-1), i5, OOC_UINT32, 4718)));
405       i4 = (OOC_UINT8)i4<=(OOC_UINT8)32u;
406 
407 l33:
408       if (i4) goto l28_loop;
409 l37:
410       i0 = i2==i0;
411       if (i0) goto l40;
412       return i2;
413       goto l51;
414 l40:
415       i = i1;
416       i0 = (OOC_INT64)s;
417       i2 = _check_pointer(i0, 4883);
418       i3 = OOC_ARRAY_LENGTH(i2, 0);
419       i2 = *(OOC_UINT8*)(i2+(_check_index(i1, i3, OOC_UINT32, 4883)));
420       i2 = (OOC_UINT8)i2>(OOC_UINT8)32u;
421       if (i2) goto l44_loop;
422       i0=i1;
423       goto l49;
424 l44_loop:
425       i1 = i1+1;
426       i = i1;
427       i2 = _check_pointer(i0, 4883);
428       i3 = OOC_ARRAY_LENGTH(i2, 0);
429       i2 = *(OOC_UINT8*)(i2+(_check_index(i1, i3, OOC_UINT32, 4883)));
430       i2 = (OOC_UINT8)i2>(OOC_UINT8)32u;
431       if (i2) goto l44_loop;
432 l48:
433       i0=i1;
434 l49:
435       return i0;
436 l51:
437       _failed_function(4309); return 0;
438       ;
439     }
440 
441 
442   i0 = scrWidth;
443   i1 = indent;
444   i0 = (i0-i1)<32;
445   if (!i0) goto l4;
446   scrWidth = (i1+32);
447 
448 l4:
449   i0 = (OOC_INT64)source;
450   i1 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 5285));
451   s = (OOC_Scanner_InputBuffer__CharArray)i1;
452   i0 = *(OOC_INT32*)((_check_pointer(i0, 5311))+8);
453   i0 = i0==0;
454   if (!i0) goto l7;
455   i0 = (OOC_INT64)dest;
456   OOC_Doc_TextBuffer__BufferDesc_AppendEOL((OOC_Doc_TextBuffer__Buffer)i0);
457   return;
458 l7:
459   firstLine = 1u;
460   i = 0;
461   i0 = _check_pointer(i1, 5454);
462   i1 = OOC_ARRAY_LENGTH(i0, 0);
463   i0 = *(OOC_UINT8*)(i0+(_check_index(0, i1, OOC_UINT32, 5454)));
464   i0 = i0!=0u;
465   if (!i0) goto l47;
466   i0=0;
467 l10_loop:
468   i1 = (OOC_INT64)s;
469   i2 = _check_pointer(i1, 5522);
470   i3 = OOC_ARRAY_LENGTH(i2, 0);
471   i2 = *(OOC_UINT8*)(i2+(_check_index(i0, i3, OOC_UINT32, 5522)));
472   i2 = (OOC_UINT8)0u<(OOC_UINT8)i2;
473   if (i2) goto l13;
474   i2=0u;
475   goto l15;
476 l13:
477   i2 = _check_pointer(i1, 5531);
478   i3 = OOC_ARRAY_LENGTH(i2, 0);
479   i2 = *(OOC_UINT8*)(i2+(_check_index(i0, i3, OOC_UINT32, 5531)));
480   i2 = (OOC_UINT8)i2<=(OOC_UINT8)32u;
481 
482 l15:
483   if (!i2) goto l27;
484 l18_loop:
485   i0 = i0+1;
486   i = i0;
487   i2 = _check_pointer(i1, 5522);
488   i3 = OOC_ARRAY_LENGTH(i2, 0);
489   i2 = *(OOC_UINT8*)(i2+(_check_index(i0, i3, OOC_UINT32, 5522)));
490   i2 = (OOC_UINT8)0u<(OOC_UINT8)i2;
491   if (i2) goto l21;
492   i2=0u;
493   goto l23;
494 l21:
495   i2 = _check_pointer(i1, 5531);
496   i3 = OOC_ARRAY_LENGTH(i2, 0);
497   i2 = *(OOC_UINT8*)(i2+(_check_index(i0, i3, OOC_UINT32, 5531)));
498   i2 = (OOC_UINT8)i2<=(OOC_UINT8)32u;
499 
500 l23:
501   if (i2) goto l18_loop;
502 l27:
503   i2 = _check_pointer(i1, 5591);
504   i3 = OOC_ARRAY_LENGTH(i2, 0);
505   i2 = *(OOC_UINT8*)(i2+(_check_index(i0, i3, OOC_UINT32, 5591)));
506   i2 = i2!=0u;
507   if (!i2) goto l42;
508   start = i0;
509   i2 = firstLine;
510   if (i2) goto l33;
511   i2 = (OOC_INT64)source;
512   i3 = indent;
513   i4 = scrWidth;
514   i2 = *(OOC_INT32*)((_check_pointer(i2, 6130))+8);
515   i0 = OOC_Doc_TextBuffer__FormatBlock_LastWord((OOC_Scanner_InputBuffer__CharArray)i1, i2, i0, (i4-i3));
516   end = i0;
517   i1 = indent;
518   i2 = (OOC_INT64)dest;
519   OOC_Doc_TextBuffer__BufferDesc_AppendSpaces((OOC_Doc_TextBuffer__Buffer)i2, i1);
520 
521   goto l41;
522 l33:
523   i2 = offsetFirst;
524   i3 = i2<0;
525   if (i3) goto l36;
526   i3 = (OOC_INT64)source;
527   i4 = indent;
528   i5 = scrWidth;
529   i3 = *(OOC_INT32*)((_check_pointer(i3, 5890))+8);
530   i0 = OOC_Doc_TextBuffer__FormatBlock_LastWord((OOC_Scanner_InputBuffer__CharArray)i1, i3, i0, ((i5-i4)-i2));
531   end = i0;
532 
533   goto l37;
534 l36:
535   i3 = (OOC_INT64)source;
536   i4 = scrWidth;
537   i3 = *(OOC_INT32*)((_check_pointer(i3, 5801))+8);
538   i0 = OOC_Doc_TextBuffer__FormatBlock_LastWord((OOC_Scanner_InputBuffer__CharArray)i1, i3, i0, (i4+i2));
539   end = i0;
540 
541 l37:
542   i1 = offsetFirst;
543   i2 = i1>=0;
544   if (!i2) goto l40;
545   i2 = indent;
546   i3 = (OOC_INT64)dest;
547   OOC_Doc_TextBuffer__BufferDesc_AppendSpaces((OOC_Doc_TextBuffer__Buffer)i3, (i1+i2));
548 l40:
549   firstLine = 0u;
550 
551 l41:
552   i1 = (OOC_INT64)s;
553   i2 = OOC_ARRAY_LENGTH((_check_pointer(i1, 6254)), 0);
554   i3 = start;
555   i4 = (OOC_INT64)dest;
556   OOC_Doc_TextBuffer__BufferDesc_AppendSubstring((OOC_Doc_TextBuffer__Buffer)i4, (void*)(_check_pointer(i1, 6254)), i2, i3, i0);
557   OOC_Doc_TextBuffer__BufferDesc_AppendEOL((OOC_Doc_TextBuffer__Buffer)i4);
558   i = i0;
559 
560 l42:
561   i1 = (OOC_INT64)s;
562   i1 = _check_pointer(i1, 5454);
563   i2 = OOC_ARRAY_LENGTH(i1, 0);
564   i1 = *(OOC_UINT8*)(i1+(_check_index(i0, i2, OOC_UINT32, 5454)));
565   i1 = i1!=0u;
566   if (i1) goto l10_loop;
567 l47:
568   return;
569   ;
570 }
571 
OOC_Doc_TextBuffer__FormatBlockHTML(OOC_Doc_TextBuffer__Buffer dest,OOC_Doc_TextBuffer__Buffer source,OOC_INT32 indent,OOC_INT32 scrWidth,OOC_INT32 offsetFirst)572 void OOC_Doc_TextBuffer__FormatBlockHTML(OOC_Doc_TextBuffer__Buffer dest, OOC_Doc_TextBuffer__Buffer source, OOC_INT32 indent, OOC_INT32 scrWidth, OOC_INT32 offsetFirst) {
573   register OOC_INT64 i0,i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13;
574   OOC_Scanner_InputBuffer__CharArray s;
575   OOC_CHAR8 firstLine;
576   OOC_INT32 i;
577   OOC_INT32 start;
578   OOC_INT32 end;
579   auto OOC_INT32 OOC_Doc_TextBuffer__FormatBlockHTML_LastWord(OOC_Scanner_InputBuffer__CharArray s, OOC_INT32 sLen, OOC_INT32 start, OOC_INT32 width);
580 
581     OOC_INT32 OOC_Doc_TextBuffer__FormatBlockHTML_LastWord(OOC_Scanner_InputBuffer__CharArray s, OOC_INT32 sLen, OOC_INT32 start, OOC_INT32 width) {
582       register OOC_INT64 i0,i1,i2,i3,i4,i5,i6,i7,i8;
583       OOC_INT32 j;
584       OOC_INT32 lastWord;
585       OOC_INT32 len;
586 
587       i0 = start;
588       j = i0;
589       lastWord = (-1);
590       len = 0;
591       i1 = (OOC_INT64)s;
592       i2 = _check_pointer(i1, 7329);
593       i3 = OOC_ARRAY_LENGTH(i2, 0);
594       i2 = *(OOC_UINT8*)(i2+(_check_index(i0, i3, OOC_UINT32, 7329)));
595       i3 = width;
596       i2 = i2!=0u;
597       if (i2) goto l3;
598       i2=i0;i0=0;i1=(-1);
599       goto l70;
600 l3:
601       i2=i0;i4=0;i5=(-1);i6=1u;
602 l4_loop:
603       i7 = _check_pointer(i1, 7355);
604       i8 = OOC_ARRAY_LENGTH(i7, 0);
605       i7 = *(OOC_UINT8*)(i7+(_check_index(i2, i8, OOC_UINT32, 7355)));
606       i7 = i7==38u;
607       if (i7) goto l47;
608       i7 = _check_pointer(i1, 7488);
609       i8 = OOC_ARRAY_LENGTH(i7, 0);
610       i7 = *(OOC_UINT8*)(i7+(_check_index(i2, i8, OOC_UINT32, 7488)));
611       i7 = i7==60u;
612       if (i7) goto l28;
613       i7 = _check_pointer(i1, 7600);
614       i8 = OOC_ARRAY_LENGTH(i7, 0);
615       i7 = *(OOC_UINT8*)(i7+(_check_index(i2, i8, OOC_UINT32, 7600)));
616       i7 = (OOC_UINT8)i7<=(OOC_UINT8)32u;
617       if (i7) goto l11;
618       i2 = i2+1;
619       j = i2;
620       i4 = i4+1;
621       len = i4;
622       i6 = i5<0;
623 
624       goto l65;
625 l11:
626       i7 = i2!=i0;
627       if (i7) goto l14;
628       i7=0u;
629       goto l16;
630 l14:
631       i7 = _check_pointer(i1, 7646);
632       i8 = OOC_ARRAY_LENGTH(i7, 0);
633       i7 = *(OOC_UINT8*)(i7+(_check_index((i2-1), i8, OOC_UINT32, 7646)));
634       i7 = (OOC_UINT8)i7>(OOC_UINT8)32u;
635 
636 l16:
637       if (i7) goto l18;
638       i2 = i2+1;
639       j = i2;
640       i4 = i4+1;
641       len = i4;
642       i6 = i5<0;
643 
644       goto l65;
645 l18:
646       i7 = i4>i3;
647       if (i7) goto l21;
648       lastWord = i2;
649       i5 = i2+1;
650       j = i5;
651       i4 = i4+1;
652       len = i4;
653       i6 = i2<0;
654       {register OOC_INT64 h0=i2;i2=i5;i5=h0;}
655       goto l65;
656 l21:
657       if (i6) goto l23;
658       return i5;
659       goto l65;
660 l23:
661       return i2;
662       goto l65;
663 l28:
664       i6 = _check_pointer(i1, 7522);
665       i7 = OOC_ARRAY_LENGTH(i6, 0);
666       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7522)));
667       i6 = i6!=0u;
668       if (i6) goto l31;
669       i6=0u;
670       goto l33;
671 l31:
672       i6 = _check_pointer(i1, 7536);
673       i7 = OOC_ARRAY_LENGTH(i6, 0);
674       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7536)));
675       i6 = i6!=62u;
676 
677 l33:
678       if (!i6) goto l45;
679 l36_loop:
680       i2 = i2+1;
681       j = i2;
682       i6 = _check_pointer(i1, 7522);
683       i7 = OOC_ARRAY_LENGTH(i6, 0);
684       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7522)));
685       i6 = i6!=0u;
686       if (i6) goto l39;
687       i6=0u;
688       goto l41;
689 l39:
690       i6 = _check_pointer(i1, 7536);
691       i7 = OOC_ARRAY_LENGTH(i6, 0);
692       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7536)));
693       i6 = i6!=62u;
694 
695 l41:
696       if (i6) goto l36_loop;
697 l45:
698       i6 = i5<0;
699 
700       goto l65;
701 l47:
702       i6 = _check_pointer(i1, 7389);
703       i7 = OOC_ARRAY_LENGTH(i6, 0);
704       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7389)));
705       i6 = i6!=0u;
706       if (i6) goto l50;
707       i6=0u;
708       goto l52;
709 l50:
710       i6 = _check_pointer(i1, 7403);
711       i7 = OOC_ARRAY_LENGTH(i6, 0);
712       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7403)));
713       i6 = i6!=59u;
714 
715 l52:
716       if (!i6) goto l64;
717 l55_loop:
718       i2 = i2+1;
719       j = i2;
720       i6 = _check_pointer(i1, 7389);
721       i7 = OOC_ARRAY_LENGTH(i6, 0);
722       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7389)));
723       i6 = i6!=0u;
724       if (i6) goto l58;
725       i6=0u;
726       goto l60;
727 l58:
728       i6 = _check_pointer(i1, 7403);
729       i7 = OOC_ARRAY_LENGTH(i6, 0);
730       i6 = *(OOC_UINT8*)(i6+(_check_index(i2, i7, OOC_UINT32, 7403)));
731       i6 = i6!=59u;
732 
733 l60:
734       if (i6) goto l55_loop;
735 l64:
736       i4 = i4+1;
737       len = i4;
738       i6 = i5<0;
739 
740 l65:
741       i7 = _check_pointer(i1, 7329);
742       i8 = OOC_ARRAY_LENGTH(i7, 0);
743       i7 = *(OOC_UINT8*)(i7+(_check_index(i2, i8, OOC_UINT32, 7329)));
744       i7 = i7!=0u;
745       if (i7) goto l4_loop;
746 l69:
747       i0=i4;i1=i5;
748 l70:
749       i0 = i0>i3;
750       if (i0) goto l73;
751       return i2;
752       goto l78;
753 l73:
754       i0 = i1<0;
755       if (i0) goto l76;
756       return i1;
757       goto l78;
758 l76:
759       return i2;
760 l78:
761       _failed_function(7156); return 0;
762       ;
763     }
764 
765 
766   i0 = scrWidth;
767   i1 = indent;
768   i2 = (i0-i1)<32;
769   if (!i2) goto l4;
770   i0 = i1+32;
771   scrWidth = i0;
772 
773 l4:
774   i2 = (OOC_INT64)source;
775   i3 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i2, 8352));
776   s = (OOC_Scanner_InputBuffer__CharArray)i3;
777   i4 = *(OOC_INT32*)((_check_pointer(i2, 8378))+8);
778   i4 = i4==0;
779   if (!i4) goto l7;
780   i4 = (OOC_INT64)dest;
781   OOC_Doc_TextBuffer__BufferDesc_AppendEOL((OOC_Doc_TextBuffer__Buffer)i4);
782   return;
783 l7:
784   firstLine = 1u;
785   i = 0;
786   i4 = _check_pointer(i3, 8521);
787   i5 = OOC_ARRAY_LENGTH(i4, 0);
788   i4 = *(OOC_UINT8*)(i4+(_check_index(0, i5, OOC_UINT32, 8521)));
789   i4 = i4!=0u;
790   if (!i4) goto l46;
791   i4 = i0-i1;
792   i5 = offsetFirst;
793   i6 = i5+i1;
794   i0 = i0+i5;
795   i7 = i4-i5;
796   i8 = (OOC_INT64)dest;
797   i9 = i5>=0;
798   i5 = i5<0;
799   i10=0;i11=1u;
800 l10_loop:
801   i12 = _check_pointer(i3, 8589);
802   i13 = OOC_ARRAY_LENGTH(i12, 0);
803   i12 = *(OOC_UINT8*)(i12+(_check_index(i10, i13, OOC_UINT32, 8589)));
804   i12 = (OOC_UINT8)0u<(OOC_UINT8)i12;
805   if (i12) goto l13;
806   i12=0u;
807   goto l15;
808 l13:
809   i12 = _check_pointer(i3, 8598);
810   i13 = OOC_ARRAY_LENGTH(i12, 0);
811   i12 = *(OOC_UINT8*)(i12+(_check_index(i10, i13, OOC_UINT32, 8598)));
812   i12 = (OOC_UINT8)i12<=(OOC_UINT8)32u;
813 
814 l15:
815   if (!i12) goto l27;
816 l18_loop:
817   i10 = i10+1;
818   i = i10;
819   i12 = _check_pointer(i3, 8589);
820   i13 = OOC_ARRAY_LENGTH(i12, 0);
821   i12 = *(OOC_UINT8*)(i12+(_check_index(i10, i13, OOC_UINT32, 8589)));
822   i12 = (OOC_UINT8)0u<(OOC_UINT8)i12;
823   if (i12) goto l21;
824   i12=0u;
825   goto l23;
826 l21:
827   i12 = _check_pointer(i3, 8598);
828   i13 = OOC_ARRAY_LENGTH(i12, 0);
829   i12 = *(OOC_UINT8*)(i12+(_check_index(i10, i13, OOC_UINT32, 8598)));
830   i12 = (OOC_UINT8)i12<=(OOC_UINT8)32u;
831 
832 l23:
833   if (i12) goto l18_loop;
834 l27:
835   i12 = _check_pointer(i3, 8658);
836   i13 = OOC_ARRAY_LENGTH(i12, 0);
837   i12 = *(OOC_UINT8*)(i12+(_check_index(i10, i13, OOC_UINT32, 8658)));
838   i12 = i12!=0u;
839   if (!i12) goto l41;
840   start = i10;
841   if (i11) goto l33;
842   i12 = *(OOC_INT32*)((_check_pointer(i2, 9197))+8);
843   i12 = OOC_Doc_TextBuffer__FormatBlockHTML_LastWord((OOC_Scanner_InputBuffer__CharArray)i3, i12, i10, i4);
844   end = i12;
845   OOC_Doc_TextBuffer__BufferDesc_AppendSpaces((OOC_Doc_TextBuffer__Buffer)i8, i1);
846 
847   goto l40;
848 l33:
849   if (i5) goto l35;
850   i11 = *(OOC_INT32*)((_check_pointer(i2, 8957))+8);
851   i11 = OOC_Doc_TextBuffer__FormatBlockHTML_LastWord((OOC_Scanner_InputBuffer__CharArray)i3, i11, i10, i7);
852   end = i11;
853 
854   goto l37;
855 l35:
856   i11 = *(OOC_INT32*)((_check_pointer(i2, 8868))+8);
857   i11 = OOC_Doc_TextBuffer__FormatBlockHTML_LastWord((OOC_Scanner_InputBuffer__CharArray)i3, i11, i10, i0);
858   end = i11;
859 
860 l37:
861   if (!i9) goto l39;
862   OOC_Doc_TextBuffer__BufferDesc_AppendSpaces((OOC_Doc_TextBuffer__Buffer)i8, i6);
863 l39:
864   firstLine = 0u;
865   i12=i11;i11=0u;
866 l40:
867   i13 = OOC_ARRAY_LENGTH((_check_pointer(i3, 9321)), 0);
868   OOC_Doc_TextBuffer__BufferDesc_AppendSubstring((OOC_Doc_TextBuffer__Buffer)i8, (void*)(_check_pointer(i3, 9321)), i13, i10, i12);
869   OOC_Doc_TextBuffer__BufferDesc_AppendEOL((OOC_Doc_TextBuffer__Buffer)i8);
870   i = i12;
871   i10=i12;
872 l41:
873   i12 = _check_pointer(i3, 8521);
874   i13 = OOC_ARRAY_LENGTH(i12, 0);
875   i12 = *(OOC_UINT8*)(i12+(_check_index(i10, i13, OOC_UINT32, 8521)));
876   i12 = i12!=0u;
877   if (i12) goto l10_loop;
878 l46:
879   return;
880   ;
881 }
882 
OOC_Doc_TextBuffer__IndentBlock(OOC_Doc_TextBuffer__Buffer dest,OOC_Doc_TextBuffer__Buffer source,OOC_INT32 indent)883 void OOC_Doc_TextBuffer__IndentBlock(OOC_Doc_TextBuffer__Buffer dest, OOC_Doc_TextBuffer__Buffer source, OOC_INT32 indent) {
884   register OOC_INT64 i0,i1,i2,i3,i4,i5,i6;
885   OOC_Scanner_InputBuffer__CharArray s;
886   OOC_INT32 i;
887   OOC_INT32 start;
888 
889   i0 = (OOC_INT64)source;
890   i0 = (OOC_INT64)*(OOC_INT64*)(_check_pointer(i0, 9565));
891   s = (OOC_Scanner_InputBuffer__CharArray)i0;
892   i = 0;
893   i1 = _check_pointer(i0, 9596);
894   i2 = OOC_ARRAY_LENGTH(i1, 0);
895   i1 = *(OOC_UINT8*)(i1+(_check_index(0, i2, OOC_UINT32, 9596)));
896   i1 = i1!=0u;
897   if (!i1) goto l29;
898   i1 = (OOC_INT64)dest;
899   i2 = indent;
900   i3=0;
901 l3_loop:
902   start = i3;
903   i4 = _check_pointer(i0, 9641);
904   i5 = OOC_ARRAY_LENGTH(i4, 0);
905   i4 = *(OOC_UINT8*)(i4+(_check_index(i3, i5, OOC_UINT32, 9641)));
906   i4 = i4!=0u;
907   if (i4) goto l6;
908   i4=0u;
909   goto l8;
910 l6:
911   i4 = _check_pointer(i0, 9655);
912   i5 = OOC_ARRAY_LENGTH(i4, 0);
913   i4 = *(OOC_UINT8*)(i4+(_check_index(i3, i5, OOC_UINT32, 9655)));
914   i4 = i4!=10u;
915 
916 l8:
917   if (i4) goto l10;
918   i4=i3;
919   goto l20;
920 l10:
921   i4=i3;
922 l11_loop:
923   i4 = i4+1;
924   i = i4;
925   i5 = _check_pointer(i0, 9641);
926   i6 = OOC_ARRAY_LENGTH(i5, 0);
927   i5 = *(OOC_UINT8*)(i5+(_check_index(i4, i6, OOC_UINT32, 9641)));
928   i5 = i5!=0u;
929   if (i5) goto l14;
930   i5=0u;
931   goto l16;
932 l14:
933   i5 = _check_pointer(i0, 9655);
934   i6 = OOC_ARRAY_LENGTH(i5, 0);
935   i5 = *(OOC_UINT8*)(i5+(_check_index(i4, i6, OOC_UINT32, 9655)));
936   i5 = i5!=10u;
937 
938 l16:
939   if (i5) goto l11_loop;
940 l20:
941   i5 = _check_pointer(i0, 9717);
942   i6 = OOC_ARRAY_LENGTH(i5, 0);
943   i5 = *(OOC_UINT8*)(i5+(_check_index(i4, i6, OOC_UINT32, 9717)));
944   i5 = i5==10u;
945   if (!i5) goto l24;
946   i4 = i4+1;
947   i = i4;
948 
949 l24:
950   OOC_Doc_TextBuffer__BufferDesc_AppendSpaces((OOC_Doc_TextBuffer__Buffer)i1, i2);
951   i5 = OOC_ARRAY_LENGTH((_check_pointer(i0, 9835)), 0);
952   OOC_Doc_TextBuffer__BufferDesc_AppendSubstring((OOC_Doc_TextBuffer__Buffer)i1, (void*)(_check_pointer(i0, 9835)), i5, i3, i4);
953   i3 = _check_pointer(i0, 9596);
954   i5 = OOC_ARRAY_LENGTH(i3, 0);
955   i3 = *(OOC_UINT8*)(i3+(_check_index(i4, i5, OOC_UINT32, 9596)));
956   i3 = i3!=0u;
957   if (!i3) goto l29;
958   i3=i4;
959   goto l3_loop;
960 l29:
961   return;
962   ;
963 }
964 
OOC_OOC_Doc_TextBuffer_init(void)965 void OOC_OOC_Doc_TextBuffer_init(void) {
966 
967   return;
968   ;
969 }
970 
OOC_OOC_Doc_TextBuffer_destroy(void)971 void OOC_OOC_Doc_TextBuffer_destroy(void) {
972 }
973 
974 /* --- */
975