1 /* This C file is generated by NIT to compile module compiling_writer. */
2 #include "compiling_writer._sep.h"
3 val_t
compiling_writer___Writer___add(val_t p0
, val_t p1
){
4 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
8 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9 fra
.me
.file
= LOCATE_compiling_writer
;
11 fra
.me
.meth
= LOCATE_compiling_writer___Writer___add
;
14 fra
.me
.REG
[0] = NIT_NULL
;
15 fra
.me
.REG
[1] = NIT_NULL
;
16 fra
.me
.REG
[2] = NIT_NULL
;
19 /* ./compiling//compiling_writer.nit:26 */
20 REGB0
= CALL_compiling_writer___Writer___is_frozen(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
21 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
22 if (UNTAG_Bool(REGB0
)) {
24 nit_abort("Assert failed", NULL
, LOCATE_compiling_writer
, 26);
26 /* ./compiling//compiling_writer.nit:27 */
27 fra
.me
.REG
[2] = ATTR_compiling_writer___Writer____last_string(fra
.me
.REG
[0]);
28 /* ./compiling//compiling_writer.nit:28 */
29 fra
.me
.REG
[1] = NEW_WriterStrings_compiling_writer___WriterStrings___init(fra
.me
.REG
[1]);
30 /* ./compiling//compiling_writer.nit:29 */
31 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
32 if (UNTAG_Bool(REGB0
)) {
34 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
35 if (UNTAG_Bool(REGB1
)) {
36 REGB1
= TAG_Bool(false);
39 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
43 if (UNTAG_Bool(REGB0
)) {
44 /* ./compiling//compiling_writer.nit:30 */
45 CALL_compiling_writer___Writer___internal_append(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
47 /* ./compiling//compiling_writer.nit:32 */
48 ATTR_compiling_writer___WriterStrings____next(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
50 /* ./compiling//compiling_writer.nit:34 */
51 ATTR_compiling_writer___Writer____last_string(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
52 /* ./compiling//compiling_writer.nit:35 */
55 stack_frame_head
= fra
.me
.prev
;
58 val_t
compiling_writer___Writer___add_all(val_t p0
, val_t p1
, val_t p2
){
59 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
64 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
65 fra
.me
.file
= LOCATE_compiling_writer
;
67 fra
.me
.meth
= LOCATE_compiling_writer___Writer___add_all
;
70 fra
.me
.REG
[0] = NIT_NULL
;
71 fra
.me
.REG
[1] = NIT_NULL
;
72 fra
.me
.REG
[2] = NIT_NULL
;
73 fra
.me
.REG
[3] = NIT_NULL
;
74 fra
.me
.REG
[4] = NIT_NULL
;
78 /* ./compiling//compiling_writer.nit:41 */
79 REGB0
= CALL_compiling_writer___Writer___is_frozen(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
80 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
81 if (UNTAG_Bool(REGB0
)) {
83 nit_abort("Assert failed", NULL
, LOCATE_compiling_writer
, 41);
85 /* ./compiling//compiling_writer.nit:42 */
86 REGB0
= TAG_Bool(true);
87 /* ./../lib/standard//collection//array.nit:234 */
89 /* ./../lib/standard//collection//array.nit:235 */
90 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
91 if (UNTAG_Bool(REGB2
)) {
93 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
95 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
96 /* ./../lib/standard//collection//array.nit:236 */
97 fra
.me
.REG
[3] = ATTR_array___Array____items(fra
.me
.REG
[1]);
98 /* ./../lib/standard//collection//array.nit:237 */
100 /* ./../lib/standard//collection//array.nit:23 */
101 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
102 if (UNTAG_Bool(REGB2
)) {
104 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
106 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
107 /* ./../lib/standard//kernel.nit:212 */
108 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
109 /* ./../lib/standard//collection//array.nit:237 */
110 if (UNTAG_Bool(REGB2
)) {
111 /* ./../lib/standard//collection//array.nit:238 */
112 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
113 if (UNTAG_Bool(REGB2
)) {
114 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
116 /* ./../lib/standard//collection//array.nit:654 */
117 fra
.me
.REG
[4] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB1
)];
118 /* ./compiling//compiling_writer.nit:44 */
119 if (UNTAG_Bool(REGB0
)) {
120 REGB2
= TAG_Bool(false);
123 CALL_compiling_writer___Writer___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
125 /* ./compiling//compiling_writer.nit:45 */
126 CALL_compiling_writer___Writer___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
127 /* ./../lib/standard//collection//array.nit:239 */
129 /* ./../lib/standard//kernel.nit:215 */
130 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
131 /* ./../lib/standard//collection//array.nit:239 */
134 /* ./../lib/standard//collection//array.nit:237 */
139 /* ./compiling//compiling_writer.nit:47 */
142 stack_frame_head
= fra
.me
.prev
;
143 return fra
.me
.REG
[0];
145 val_t
compiling_writer___Writer___append(val_t p0
, val_t p1
){
146 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
149 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
150 fra
.me
.file
= LOCATE_compiling_writer
;
152 fra
.me
.meth
= LOCATE_compiling_writer___Writer___append
;
153 fra
.me
.has_broke
= 0;
155 fra
.me
.REG
[0] = NIT_NULL
;
156 fra
.me
.REG
[1] = NIT_NULL
;
159 /* ./compiling//compiling_writer.nit:59 */
160 REGB0
= CALL_compiling_writer___Writer___is_frozen(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
161 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
162 if (UNTAG_Bool(REGB0
)) {
164 nit_abort("Assert failed", NULL
, LOCATE_compiling_writer
, 59);
166 /* ./compiling//compiling_writer.nit:60 */
167 fra
.me
.REG
[1] = NEW_WriterCoreNode_compiling_writer___WriterCoreNode___init(fra
.me
.REG
[1]);
168 CALL_compiling_writer___Writer___internal_append(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
169 /* ./compiling//compiling_writer.nit:61 */
170 ATTR_compiling_writer___Writer____last_string(fra
.me
.REG
[0]) = NIT_NULL
;
171 /* ./compiling//compiling_writer.nit:62 */
174 stack_frame_head
= fra
.me
.prev
;
175 return fra
.me
.REG
[0];
177 void compiling_writer___Writer___internal_append(val_t p0
, val_t p1
){
178 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
182 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
183 fra
.me
.file
= LOCATE_compiling_writer
;
185 fra
.me
.meth
= LOCATE_compiling_writer___Writer___internal_append
;
186 fra
.me
.has_broke
= 0;
188 fra
.me
.REG
[0] = NIT_NULL
;
189 fra
.me
.REG
[1] = NIT_NULL
;
190 fra
.me
.REG
[2] = NIT_NULL
;
193 /* ./compiling//compiling_writer.nit:68 */
194 fra
.me
.REG
[2] = ATTR_compiling_writer___Writer____first_sub_writer(fra
.me
.REG
[0]);
195 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
196 if (UNTAG_Bool(REGB0
)) {
198 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
199 if (UNTAG_Bool(REGB1
)) {
200 REGB1
= TAG_Bool(false);
203 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
207 if (UNTAG_Bool(REGB0
)) {
208 ATTR_compiling_writer___Writer____first_sub_writer(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
210 /* ./compiling//compiling_writer.nit:69 */
211 fra
.me
.REG
[2] = ATTR_compiling_writer___Writer____last_sub_writer(fra
.me
.REG
[0]);
212 /* ./compiling//compiling_writer.nit:70 */
213 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
214 if (UNTAG_Bool(REGB0
)) {
216 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
217 if (UNTAG_Bool(REGB1
)) {
218 REGB1
= TAG_Bool(false);
221 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
225 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
226 if (UNTAG_Bool(REGB0
)) {
227 ATTR_compiling_writer___WriterNode____next_writer(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
229 /* ./compiling//compiling_writer.nit:71 */
230 ATTR_compiling_writer___Writer____last_sub_writer(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
231 stack_frame_head
= fra
.me
.prev
;
234 val_t
compiling_writer___Writer___sub(val_t p0
){
235 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
237 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
238 fra
.me
.file
= LOCATE_compiling_writer
;
240 fra
.me
.meth
= LOCATE_compiling_writer___Writer___sub
;
241 fra
.me
.has_broke
= 0;
243 fra
.me
.REG
[0] = NIT_NULL
;
244 fra
.me
.REG
[1] = NIT_NULL
;
246 /* ./compiling//compiling_writer.nit:77 */
247 fra
.me
.REG
[1] = NEW_Writer_compiling_writer___Writer___init();
248 /* ./compiling//compiling_writer.nit:78 */
249 CALL_compiling_writer___Writer___append(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
250 /* ./compiling//compiling_writer.nit:79 */
253 stack_frame_head
= fra
.me
.prev
;
254 return fra
.me
.REG
[1];
256 void compiling_writer___Writer___write_to_stream(val_t p0
, val_t p1
){
257 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
261 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
262 fra
.me
.file
= LOCATE_compiling_writer
;
264 fra
.me
.meth
= LOCATE_compiling_writer___Writer___write_to_stream
;
265 fra
.me
.has_broke
= 0;
267 fra
.me
.REG
[0] = NIT_NULL
;
268 fra
.me
.REG
[1] = NIT_NULL
;
269 fra
.me
.REG
[2] = NIT_NULL
;
270 fra
.me
.REG
[3] = NIT_NULL
;
273 /* ./compiling//compiling_writer.nit:87 */
274 REGB0
= TAG_Bool(ATTR_compiling_writer___Writer____is_writing(fra
.me
.REG
[0])!=NIT_NULL
);
275 if (UNTAG_Bool(REGB0
)) {
277 nit_abort("Uninitialized attribute %s", "_is_writing", LOCATE_compiling_writer
, 87);
279 REGB0
= ATTR_compiling_writer___Writer____is_writing(fra
.me
.REG
[0]);
280 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
281 if (UNTAG_Bool(REGB0
)) {
283 nit_abort("Assert failed", NULL
, LOCATE_compiling_writer
, 87);
285 /* ./compiling//compiling_writer.nit:88 */
286 REGB0
= TAG_Bool(true);
287 ATTR_compiling_writer___Writer____is_writing(fra
.me
.REG
[0]) = REGB0
;
288 /* ./compiling//compiling_writer.nit:89 */
289 fra
.me
.REG
[2] = ATTR_compiling_writer___Writer____first_sub_writer(fra
.me
.REG
[0]);
290 /* ./compiling//compiling_writer.nit:90 */
292 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
293 if (UNTAG_Bool(REGB0
)) {
295 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
296 if (UNTAG_Bool(REGB1
)) {
297 REGB1
= TAG_Bool(false);
300 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
304 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
305 if (UNTAG_Bool(REGB0
)) {
306 /* ./compiling//compiling_writer.nit:91 */
307 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
308 if (UNTAG_Bool(REGB0
)) {
309 nit_abort("Reciever is null", NULL
, LOCATE_compiling_writer
, 91);
311 CALL_compiling_writer___WriterNode___internal_write_to_stream(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
312 /* ./compiling//compiling_writer.nit:92 */
313 fra
.me
.REG
[3] = ATTR_compiling_writer___WriterNode____next_writer(fra
.me
.REG
[2]);
314 fra
.me
.REG
[2] = fra
.me
.REG
[3];
316 /* ./compiling//compiling_writer.nit:90 */
321 /* ./compiling//compiling_writer.nit:94 */
322 REGB0
= TAG_Bool(false);
323 ATTR_compiling_writer___Writer____is_writing(fra
.me
.REG
[0]) = REGB0
;
324 stack_frame_head
= fra
.me
.prev
;
327 val_t
compiling_writer___Writer___is_frozen(val_t p0
){
328 struct {struct stack_frame_t me
;} fra
;
331 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
332 fra
.me
.file
= LOCATE_compiling_writer
;
334 fra
.me
.meth
= LOCATE_compiling_writer___Writer___is_frozen
;
335 fra
.me
.has_broke
= 0;
337 fra
.me
.REG
[0] = NIT_NULL
;
339 /* ./compiling//compiling_writer.nit:97 */
340 REGB0
= TAG_Bool(ATTR_compiling_writer___Writer____is_frozen(fra
.me
.REG
[0])!=NIT_NULL
);
341 if (UNTAG_Bool(REGB0
)) {
343 nit_abort("Uninitialized attribute %s", "_is_frozen", LOCATE_compiling_writer
, 97);
345 REGB0
= ATTR_compiling_writer___Writer____is_frozen(fra
.me
.REG
[0]);
346 stack_frame_head
= fra
.me
.prev
;
349 void compiling_writer___Writer___freeze(val_t p0
){
350 struct {struct stack_frame_t me
;} fra
;
353 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
354 fra
.me
.file
= LOCATE_compiling_writer
;
356 fra
.me
.meth
= LOCATE_compiling_writer___Writer___freeze
;
357 fra
.me
.has_broke
= 0;
359 fra
.me
.REG
[0] = NIT_NULL
;
361 /* ./compiling//compiling_writer.nit:103 */
362 REGB0
= CALL_compiling_writer___Writer___is_frozen(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
363 if (UNTAG_Bool(REGB0
)) {
366 /* ./compiling//compiling_writer.nit:104 */
367 REGB0
= TAG_Bool(true);
368 ATTR_compiling_writer___Writer____is_frozen(fra
.me
.REG
[0]) = REGB0
;
370 stack_frame_head
= fra
.me
.prev
;
373 void compiling_writer___Writer___init(val_t p0
, int* init_table
){
374 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Writer
].i
;
375 struct {struct stack_frame_t me
;} fra
;
377 if (init_table
[itpos0
]) return;
378 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
379 fra
.me
.file
= LOCATE_compiling_writer
;
381 fra
.me
.meth
= LOCATE_compiling_writer___Writer___init
;
382 fra
.me
.has_broke
= 0;
384 fra
.me
.REG
[0] = NIT_NULL
;
386 stack_frame_head
= fra
.me
.prev
;
387 init_table
[itpos0
] = 1;
390 void compiling_writer___WriterNode___internal_write_to_stream(val_t p0
, val_t p1
){
391 struct {struct stack_frame_t me
;} fra
;
393 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
394 fra
.me
.file
= LOCATE_compiling_writer
;
396 fra
.me
.meth
= LOCATE_compiling_writer___WriterNode___internal_write_to_stream
;
397 fra
.me
.has_broke
= 0;
399 /* ./compiling//compiling_writer.nit:115 */
400 nit_abort("Deferred method called", NULL
, LOCATE_compiling_writer
, 115);
401 stack_frame_head
= fra
.me
.prev
;
404 void compiling_writer___WriterNode___init(val_t p0
, int* init_table
){
405 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_WriterNode
].i
;
406 struct {struct stack_frame_t me
;} fra
;
408 if (init_table
[itpos1
]) return;
409 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
410 fra
.me
.file
= LOCATE_compiling_writer
;
412 fra
.me
.meth
= LOCATE_compiling_writer___WriterNode___init
;
413 fra
.me
.has_broke
= 0;
415 stack_frame_head
= fra
.me
.prev
;
416 init_table
[itpos1
] = 1;
419 void compiling_writer___WriterCoreNode___internal_write_to_stream(val_t p0
, val_t p1
){
420 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
423 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
424 fra
.me
.file
= LOCATE_compiling_writer
;
426 fra
.me
.meth
= LOCATE_compiling_writer___WriterCoreNode___internal_write_to_stream
;
427 fra
.me
.has_broke
= 0;
429 fra
.me
.REG
[0] = NIT_NULL
;
430 fra
.me
.REG
[1] = NIT_NULL
;
433 /* ./compiling//compiling_writer.nit:124 */
434 REGB0
= TAG_Bool(ATTR_compiling_writer___WriterCoreNode____writer(fra
.me
.REG
[0])!=NIT_NULL
);
435 if (UNTAG_Bool(REGB0
)) {
437 nit_abort("Uninitialized attribute %s", "_writer", LOCATE_compiling_writer
, 124);
439 fra
.me
.REG
[0] = ATTR_compiling_writer___WriterCoreNode____writer(fra
.me
.REG
[0]);
440 CALL_compiling_writer___Writer___write_to_stream(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
441 stack_frame_head
= fra
.me
.prev
;
444 void compiling_writer___WriterCoreNode___init(val_t p0
, val_t p1
, int* init_table
){
445 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_WriterCoreNode
].i
;
446 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
448 if (init_table
[itpos2
]) return;
449 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
450 fra
.me
.file
= LOCATE_compiling_writer
;
452 fra
.me
.meth
= LOCATE_compiling_writer___WriterCoreNode___init
;
453 fra
.me
.has_broke
= 0;
455 fra
.me
.REG
[0] = NIT_NULL
;
456 fra
.me
.REG
[1] = NIT_NULL
;
457 fra
.me
.REG
[2] = NIT_NULL
;
460 /* ./compiling//compiling_writer.nit:126 */
461 fra
.me
.REG
[2] = fra
.me
.REG
[0];
462 CALL_compiling_writer___WriterNode___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
463 ATTR_compiling_writer___WriterCoreNode____writer(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
464 stack_frame_head
= fra
.me
.prev
;
465 init_table
[itpos2
] = 1;
468 void compiling_writer___WriterStrings___init(val_t p0
, val_t p1
, int* init_table
){
469 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_WriterStrings
].i
;
470 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
472 if (init_table
[itpos3
]) return;
473 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
474 fra
.me
.file
= LOCATE_compiling_writer
;
476 fra
.me
.meth
= LOCATE_compiling_writer___WriterStrings___init
;
477 fra
.me
.has_broke
= 0;
479 fra
.me
.REG
[0] = NIT_NULL
;
480 fra
.me
.REG
[1] = NIT_NULL
;
481 fra
.me
.REG
[2] = NIT_NULL
;
484 /* ./compiling//compiling_writer.nit:138 */
485 fra
.me
.REG
[2] = fra
.me
.REG
[0];
486 CALL_compiling_writer___WriterNode___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
487 /* ./compiling//compiling_writer.nit:140 */
488 ATTR_compiling_writer___WriterStrings____string(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
489 stack_frame_head
= fra
.me
.prev
;
490 init_table
[itpos3
] = 1;
493 void compiling_writer___WriterStrings___internal_write_to_stream(val_t p0
, val_t p1
){
494 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
498 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
499 fra
.me
.file
= LOCATE_compiling_writer
;
501 fra
.me
.meth
= LOCATE_compiling_writer___WriterStrings___internal_write_to_stream
;
502 fra
.me
.has_broke
= 0;
504 fra
.me
.REG
[0] = NIT_NULL
;
505 fra
.me
.REG
[1] = NIT_NULL
;
506 fra
.me
.REG
[2] = NIT_NULL
;
509 /* ./compiling//compiling_writer.nit:146 */
511 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
512 if (UNTAG_Bool(REGB0
)) {
514 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
515 if (UNTAG_Bool(REGB1
)) {
516 REGB1
= TAG_Bool(false);
519 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
523 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
524 if (UNTAG_Bool(REGB0
)) {
525 /* ./compiling//compiling_writer.nit:147 */
526 REGB0
= TAG_Bool(ATTR_compiling_writer___WriterStrings____string(fra
.me
.REG
[0])!=NIT_NULL
);
527 if (UNTAG_Bool(REGB0
)) {
529 nit_abort("Uninitialized attribute %s", "_string", LOCATE_compiling_writer
, 147);
531 fra
.me
.REG
[2] = ATTR_compiling_writer___WriterStrings____string(fra
.me
.REG
[0]);
532 CALL_stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
533 /* ./compiling//compiling_writer.nit:148 */
534 fra
.me
.REG
[2] = ATTR_compiling_writer___WriterStrings____next(fra
.me
.REG
[0]);
535 fra
.me
.REG
[0] = fra
.me
.REG
[2];
537 /* ./compiling//compiling_writer.nit:146 */
542 stack_frame_head
= fra
.me
.prev
;