layout_builders: Introduced ResolutionBMizer (for future refactoring)
[nit.git] / c_src / parser___lexer._sep.c
1 /* This C file is generated by NIT to compile module parser___lexer. */
2 #include "parser___lexer._sep.h"
3 val_t parser___lexer___Token___text(val_t p0){
4 struct {struct stack_frame_t me;} fra;
5 val_t REGB0;
6 val_t tmp;
7 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
8 fra.me.file = LOCATE_parser___lexer;
9 fra.me.line = 9;
10 fra.me.meth = LOCATE_parser___lexer___Token___text;
11 fra.me.has_broke = 0;
12 fra.me.REG_size = 1;
13 fra.me.nitni_local_ref_head = NULL;
14 fra.me.REG[0] = NIT_NULL;
15 fra.me.REG[0] = p0;
16 /* parser/lexer.nit:9 */
17 REGB0 = TAG_Bool(ATTR_parser___lexer___Token____text(fra.me.REG[0])!=NIT_NULL);
18 if (UNTAG_Bool(REGB0)) {
19 } else {
20 nit_abort("Uninitialized attribute %s", "_text", LOCATE_parser___lexer, 9);
21 }
22 fra.me.REG[0] = ATTR_parser___lexer___Token____text(fra.me.REG[0]);
23 stack_frame_head = fra.me.prev;
24 return fra.me.REG[0];
25 }
26 val_t parser___lexer___Token___parser_index(val_t p0){
27 struct {struct stack_frame_t me;} fra;
28 val_t tmp;
29 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
30 fra.me.file = LOCATE_parser___lexer;
31 fra.me.line = 11;
32 fra.me.meth = LOCATE_parser___lexer___Token___parser_index;
33 fra.me.has_broke = 0;
34 fra.me.REG_size = 0;
35 fra.me.nitni_local_ref_head = NULL;
36 /* parser/lexer.nit:11 */
37 nit_abort("Deferred method called", NULL, LOCATE_parser___lexer, 11);
38 stack_frame_head = fra.me.prev;
39 return NIT_NULL;
40 }
41 val_t parser___lexer___TEol___parser_index(val_t p0){
42 struct {struct stack_frame_t me;} fra;
43 val_t REGB0;
44 val_t tmp;
45 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
46 fra.me.file = LOCATE_parser___lexer;
47 fra.me.line = 15;
48 fra.me.meth = LOCATE_parser___lexer___TEol___parser_index;
49 fra.me.has_broke = 0;
50 fra.me.REG_size = 1;
51 fra.me.nitni_local_ref_head = NULL;
52 fra.me.REG[0] = NIT_NULL;
53 fra.me.REG[0] = p0;
54 /* parser/lexer.nit:17 */
55 REGB0 = TAG_Int(0);
56 goto label1;
57 label1: while(0);
58 stack_frame_head = fra.me.prev;
59 return REGB0;
60 }
61 void parser___lexer___TEol___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
62 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TEol].i;
63 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
64 val_t tmp;
65 if (init_table[itpos0]) return;
66 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
67 fra.me.file = LOCATE_parser___lexer;
68 fra.me.line = 20;
69 fra.me.meth = LOCATE_parser___lexer___TEol___init_tk;
70 fra.me.has_broke = 0;
71 fra.me.REG_size = 3;
72 fra.me.nitni_local_ref_head = NULL;
73 fra.me.REG[0] = NIT_NULL;
74 fra.me.REG[1] = NIT_NULL;
75 fra.me.REG[2] = NIT_NULL;
76 fra.me.REG[0] = p0;
77 fra.me.REG[1] = p1;
78 fra.me.REG[2] = p2;
79 /* parser/lexer.nit:22 */
80 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
81 /* parser/lexer.nit:23 */
82 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
83 stack_frame_head = fra.me.prev;
84 init_table[itpos0] = 1;
85 return;
86 }
87 val_t parser___lexer___TComment___parser_index(val_t p0){
88 struct {struct stack_frame_t me;} fra;
89 val_t REGB0;
90 val_t tmp;
91 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
92 fra.me.file = LOCATE_parser___lexer;
93 fra.me.line = 28;
94 fra.me.meth = LOCATE_parser___lexer___TComment___parser_index;
95 fra.me.has_broke = 0;
96 fra.me.REG_size = 1;
97 fra.me.nitni_local_ref_head = NULL;
98 fra.me.REG[0] = NIT_NULL;
99 fra.me.REG[0] = p0;
100 /* parser/lexer.nit:30 */
101 REGB0 = TAG_Int(1);
102 goto label1;
103 label1: while(0);
104 stack_frame_head = fra.me.prev;
105 return REGB0;
106 }
107 void parser___lexer___TComment___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
108 int itpos1 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TComment].i;
109 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
110 val_t tmp;
111 if (init_table[itpos1]) return;
112 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
113 fra.me.file = LOCATE_parser___lexer;
114 fra.me.line = 33;
115 fra.me.meth = LOCATE_parser___lexer___TComment___init_tk;
116 fra.me.has_broke = 0;
117 fra.me.REG_size = 3;
118 fra.me.nitni_local_ref_head = NULL;
119 fra.me.REG[0] = NIT_NULL;
120 fra.me.REG[1] = NIT_NULL;
121 fra.me.REG[2] = NIT_NULL;
122 fra.me.REG[0] = p0;
123 fra.me.REG[1] = p1;
124 fra.me.REG[2] = p2;
125 /* parser/lexer.nit:35 */
126 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
127 /* parser/lexer.nit:36 */
128 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
129 stack_frame_head = fra.me.prev;
130 init_table[itpos1] = 1;
131 return;
132 }
133 val_t parser___lexer___TKwmodule___parser_index(val_t p0){
134 struct {struct stack_frame_t me;} fra;
135 val_t REGB0;
136 val_t tmp;
137 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
138 fra.me.file = LOCATE_parser___lexer;
139 fra.me.line = 41;
140 fra.me.meth = LOCATE_parser___lexer___TKwmodule___parser_index;
141 fra.me.has_broke = 0;
142 fra.me.REG_size = 1;
143 fra.me.nitni_local_ref_head = NULL;
144 fra.me.REG[0] = NIT_NULL;
145 fra.me.REG[0] = p0;
146 /* parser/lexer.nit:43 */
147 REGB0 = TAG_Int(2);
148 goto label1;
149 label1: while(0);
150 stack_frame_head = fra.me.prev;
151 return REGB0;
152 }
153 void parser___lexer___TKwmodule___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
154 int itpos2 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwmodule].i;
155 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
156 val_t tmp;
157 if (init_table[itpos2]) return;
158 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
159 fra.me.file = LOCATE_parser___lexer;
160 fra.me.line = 46;
161 fra.me.meth = LOCATE_parser___lexer___TKwmodule___init_tk;
162 fra.me.has_broke = 0;
163 fra.me.REG_size = 3;
164 fra.me.nitni_local_ref_head = NULL;
165 fra.me.REG[0] = NIT_NULL;
166 fra.me.REG[1] = NIT_NULL;
167 fra.me.REG[2] = NIT_NULL;
168 fra.me.REG[0] = p0;
169 fra.me.REG[1] = p1;
170 fra.me.REG[2] = p2;
171 /* parser/lexer.nit:48 */
172 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
173 /* parser/lexer.nit:49 */
174 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
175 stack_frame_head = fra.me.prev;
176 init_table[itpos2] = 1;
177 return;
178 }
179 val_t parser___lexer___TKwimport___parser_index(val_t p0){
180 struct {struct stack_frame_t me;} fra;
181 val_t REGB0;
182 val_t tmp;
183 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
184 fra.me.file = LOCATE_parser___lexer;
185 fra.me.line = 54;
186 fra.me.meth = LOCATE_parser___lexer___TKwimport___parser_index;
187 fra.me.has_broke = 0;
188 fra.me.REG_size = 1;
189 fra.me.nitni_local_ref_head = NULL;
190 fra.me.REG[0] = NIT_NULL;
191 fra.me.REG[0] = p0;
192 /* parser/lexer.nit:56 */
193 REGB0 = TAG_Int(3);
194 goto label1;
195 label1: while(0);
196 stack_frame_head = fra.me.prev;
197 return REGB0;
198 }
199 void parser___lexer___TKwimport___init_tk(val_t p0, val_t p1, int* init_table){
200 int itpos3 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwimport].i;
201 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
202 val_t REGB0;
203 val_t tmp;
204 static val_t once_value_1; /* Once value */
205 static val_t once_value_2; /* Once value */
206 if (init_table[itpos3]) return;
207 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
208 fra.me.file = LOCATE_parser___lexer;
209 fra.me.line = 59;
210 fra.me.meth = LOCATE_parser___lexer___TKwimport___init_tk;
211 fra.me.has_broke = 0;
212 fra.me.REG_size = 3;
213 fra.me.nitni_local_ref_head = NULL;
214 fra.me.REG[0] = NIT_NULL;
215 fra.me.REG[1] = NIT_NULL;
216 fra.me.REG[2] = NIT_NULL;
217 fra.me.REG[0] = p0;
218 fra.me.REG[1] = p1;
219 /* parser/lexer.nit:61 */
220 if (!once_value_1) {
221 if (!once_value_2) {
222 fra.me.REG[2] = BOX_NativeString("import");
223 REGB0 = TAG_Int(6);
224 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
225 once_value_2 = fra.me.REG[2];
226 register_static_object(&once_value_2);
227 } else fra.me.REG[2] = once_value_2;
228 fra.me.REG[2] = fra.me.REG[2];
229 once_value_1 = fra.me.REG[2];
230 register_static_object(&once_value_1);
231 } else fra.me.REG[2] = once_value_1;
232 fra.me.REG[2] = fra.me.REG[2];
233 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
234 /* parser/lexer.nit:62 */
235 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
236 stack_frame_head = fra.me.prev;
237 init_table[itpos3] = 1;
238 return;
239 }
240 val_t parser___lexer___TKwclass___parser_index(val_t p0){
241 struct {struct stack_frame_t me;} fra;
242 val_t REGB0;
243 val_t tmp;
244 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
245 fra.me.file = LOCATE_parser___lexer;
246 fra.me.line = 67;
247 fra.me.meth = LOCATE_parser___lexer___TKwclass___parser_index;
248 fra.me.has_broke = 0;
249 fra.me.REG_size = 1;
250 fra.me.nitni_local_ref_head = NULL;
251 fra.me.REG[0] = NIT_NULL;
252 fra.me.REG[0] = p0;
253 /* parser/lexer.nit:69 */
254 REGB0 = TAG_Int(4);
255 goto label1;
256 label1: while(0);
257 stack_frame_head = fra.me.prev;
258 return REGB0;
259 }
260 void parser___lexer___TKwclass___init_tk(val_t p0, val_t p1, int* init_table){
261 int itpos4 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwclass].i;
262 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
263 val_t REGB0;
264 val_t tmp;
265 static val_t once_value_1; /* Once value */
266 static val_t once_value_2; /* Once value */
267 if (init_table[itpos4]) return;
268 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
269 fra.me.file = LOCATE_parser___lexer;
270 fra.me.line = 72;
271 fra.me.meth = LOCATE_parser___lexer___TKwclass___init_tk;
272 fra.me.has_broke = 0;
273 fra.me.REG_size = 3;
274 fra.me.nitni_local_ref_head = NULL;
275 fra.me.REG[0] = NIT_NULL;
276 fra.me.REG[1] = NIT_NULL;
277 fra.me.REG[2] = NIT_NULL;
278 fra.me.REG[0] = p0;
279 fra.me.REG[1] = p1;
280 /* parser/lexer.nit:74 */
281 if (!once_value_1) {
282 if (!once_value_2) {
283 fra.me.REG[2] = BOX_NativeString("class");
284 REGB0 = TAG_Int(5);
285 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
286 once_value_2 = fra.me.REG[2];
287 register_static_object(&once_value_2);
288 } else fra.me.REG[2] = once_value_2;
289 fra.me.REG[2] = fra.me.REG[2];
290 once_value_1 = fra.me.REG[2];
291 register_static_object(&once_value_1);
292 } else fra.me.REG[2] = once_value_1;
293 fra.me.REG[2] = fra.me.REG[2];
294 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
295 /* parser/lexer.nit:75 */
296 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
297 stack_frame_head = fra.me.prev;
298 init_table[itpos4] = 1;
299 return;
300 }
301 val_t parser___lexer___TKwabstract___parser_index(val_t p0){
302 struct {struct stack_frame_t me;} fra;
303 val_t REGB0;
304 val_t tmp;
305 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
306 fra.me.file = LOCATE_parser___lexer;
307 fra.me.line = 80;
308 fra.me.meth = LOCATE_parser___lexer___TKwabstract___parser_index;
309 fra.me.has_broke = 0;
310 fra.me.REG_size = 1;
311 fra.me.nitni_local_ref_head = NULL;
312 fra.me.REG[0] = NIT_NULL;
313 fra.me.REG[0] = p0;
314 /* parser/lexer.nit:82 */
315 REGB0 = TAG_Int(5);
316 goto label1;
317 label1: while(0);
318 stack_frame_head = fra.me.prev;
319 return REGB0;
320 }
321 void parser___lexer___TKwabstract___init_tk(val_t p0, val_t p1, int* init_table){
322 int itpos5 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwabstract].i;
323 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
324 val_t REGB0;
325 val_t tmp;
326 static val_t once_value_1; /* Once value */
327 static val_t once_value_2; /* Once value */
328 if (init_table[itpos5]) return;
329 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
330 fra.me.file = LOCATE_parser___lexer;
331 fra.me.line = 85;
332 fra.me.meth = LOCATE_parser___lexer___TKwabstract___init_tk;
333 fra.me.has_broke = 0;
334 fra.me.REG_size = 3;
335 fra.me.nitni_local_ref_head = NULL;
336 fra.me.REG[0] = NIT_NULL;
337 fra.me.REG[1] = NIT_NULL;
338 fra.me.REG[2] = NIT_NULL;
339 fra.me.REG[0] = p0;
340 fra.me.REG[1] = p1;
341 /* parser/lexer.nit:87 */
342 if (!once_value_1) {
343 if (!once_value_2) {
344 fra.me.REG[2] = BOX_NativeString("abstract");
345 REGB0 = TAG_Int(8);
346 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
347 once_value_2 = fra.me.REG[2];
348 register_static_object(&once_value_2);
349 } else fra.me.REG[2] = once_value_2;
350 fra.me.REG[2] = fra.me.REG[2];
351 once_value_1 = fra.me.REG[2];
352 register_static_object(&once_value_1);
353 } else fra.me.REG[2] = once_value_1;
354 fra.me.REG[2] = fra.me.REG[2];
355 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
356 /* parser/lexer.nit:88 */
357 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
358 stack_frame_head = fra.me.prev;
359 init_table[itpos5] = 1;
360 return;
361 }
362 val_t parser___lexer___TKwinterface___parser_index(val_t p0){
363 struct {struct stack_frame_t me;} fra;
364 val_t REGB0;
365 val_t tmp;
366 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
367 fra.me.file = LOCATE_parser___lexer;
368 fra.me.line = 93;
369 fra.me.meth = LOCATE_parser___lexer___TKwinterface___parser_index;
370 fra.me.has_broke = 0;
371 fra.me.REG_size = 1;
372 fra.me.nitni_local_ref_head = NULL;
373 fra.me.REG[0] = NIT_NULL;
374 fra.me.REG[0] = p0;
375 /* parser/lexer.nit:95 */
376 REGB0 = TAG_Int(6);
377 goto label1;
378 label1: while(0);
379 stack_frame_head = fra.me.prev;
380 return REGB0;
381 }
382 void parser___lexer___TKwinterface___init_tk(val_t p0, val_t p1, int* init_table){
383 int itpos6 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwinterface].i;
384 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
385 val_t REGB0;
386 val_t tmp;
387 static val_t once_value_1; /* Once value */
388 static val_t once_value_2; /* Once value */
389 if (init_table[itpos6]) return;
390 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
391 fra.me.file = LOCATE_parser___lexer;
392 fra.me.line = 98;
393 fra.me.meth = LOCATE_parser___lexer___TKwinterface___init_tk;
394 fra.me.has_broke = 0;
395 fra.me.REG_size = 3;
396 fra.me.nitni_local_ref_head = NULL;
397 fra.me.REG[0] = NIT_NULL;
398 fra.me.REG[1] = NIT_NULL;
399 fra.me.REG[2] = NIT_NULL;
400 fra.me.REG[0] = p0;
401 fra.me.REG[1] = p1;
402 /* parser/lexer.nit:100 */
403 if (!once_value_1) {
404 if (!once_value_2) {
405 fra.me.REG[2] = BOX_NativeString("interface");
406 REGB0 = TAG_Int(9);
407 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
408 once_value_2 = fra.me.REG[2];
409 register_static_object(&once_value_2);
410 } else fra.me.REG[2] = once_value_2;
411 fra.me.REG[2] = fra.me.REG[2];
412 once_value_1 = fra.me.REG[2];
413 register_static_object(&once_value_1);
414 } else fra.me.REG[2] = once_value_1;
415 fra.me.REG[2] = fra.me.REG[2];
416 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
417 /* parser/lexer.nit:101 */
418 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
419 stack_frame_head = fra.me.prev;
420 init_table[itpos6] = 1;
421 return;
422 }
423 val_t parser___lexer___TKwenum___parser_index(val_t p0){
424 struct {struct stack_frame_t me;} fra;
425 val_t REGB0;
426 val_t tmp;
427 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
428 fra.me.file = LOCATE_parser___lexer;
429 fra.me.line = 106;
430 fra.me.meth = LOCATE_parser___lexer___TKwenum___parser_index;
431 fra.me.has_broke = 0;
432 fra.me.REG_size = 1;
433 fra.me.nitni_local_ref_head = NULL;
434 fra.me.REG[0] = NIT_NULL;
435 fra.me.REG[0] = p0;
436 /* parser/lexer.nit:108 */
437 REGB0 = TAG_Int(7);
438 goto label1;
439 label1: while(0);
440 stack_frame_head = fra.me.prev;
441 return REGB0;
442 }
443 void parser___lexer___TKwenum___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
444 int itpos7 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwenum].i;
445 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
446 val_t tmp;
447 if (init_table[itpos7]) return;
448 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
449 fra.me.file = LOCATE_parser___lexer;
450 fra.me.line = 111;
451 fra.me.meth = LOCATE_parser___lexer___TKwenum___init_tk;
452 fra.me.has_broke = 0;
453 fra.me.REG_size = 3;
454 fra.me.nitni_local_ref_head = NULL;
455 fra.me.REG[0] = NIT_NULL;
456 fra.me.REG[1] = NIT_NULL;
457 fra.me.REG[2] = NIT_NULL;
458 fra.me.REG[0] = p0;
459 fra.me.REG[1] = p1;
460 fra.me.REG[2] = p2;
461 /* parser/lexer.nit:113 */
462 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
463 /* parser/lexer.nit:114 */
464 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
465 stack_frame_head = fra.me.prev;
466 init_table[itpos7] = 1;
467 return;
468 }
469 val_t parser___lexer___TKwspecial___parser_index(val_t p0){
470 struct {struct stack_frame_t me;} fra;
471 val_t REGB0;
472 val_t tmp;
473 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
474 fra.me.file = LOCATE_parser___lexer;
475 fra.me.line = 119;
476 fra.me.meth = LOCATE_parser___lexer___TKwspecial___parser_index;
477 fra.me.has_broke = 0;
478 fra.me.REG_size = 1;
479 fra.me.nitni_local_ref_head = NULL;
480 fra.me.REG[0] = NIT_NULL;
481 fra.me.REG[0] = p0;
482 /* parser/lexer.nit:121 */
483 REGB0 = TAG_Int(8);
484 goto label1;
485 label1: while(0);
486 stack_frame_head = fra.me.prev;
487 return REGB0;
488 }
489 void parser___lexer___TKwspecial___init_tk(val_t p0, val_t p1, int* init_table){
490 int itpos8 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwspecial].i;
491 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
492 val_t REGB0;
493 val_t tmp;
494 static val_t once_value_1; /* Once value */
495 static val_t once_value_2; /* Once value */
496 if (init_table[itpos8]) return;
497 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
498 fra.me.file = LOCATE_parser___lexer;
499 fra.me.line = 124;
500 fra.me.meth = LOCATE_parser___lexer___TKwspecial___init_tk;
501 fra.me.has_broke = 0;
502 fra.me.REG_size = 3;
503 fra.me.nitni_local_ref_head = NULL;
504 fra.me.REG[0] = NIT_NULL;
505 fra.me.REG[1] = NIT_NULL;
506 fra.me.REG[2] = NIT_NULL;
507 fra.me.REG[0] = p0;
508 fra.me.REG[1] = p1;
509 /* parser/lexer.nit:126 */
510 if (!once_value_1) {
511 if (!once_value_2) {
512 fra.me.REG[2] = BOX_NativeString("special");
513 REGB0 = TAG_Int(7);
514 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
515 once_value_2 = fra.me.REG[2];
516 register_static_object(&once_value_2);
517 } else fra.me.REG[2] = once_value_2;
518 fra.me.REG[2] = fra.me.REG[2];
519 once_value_1 = fra.me.REG[2];
520 register_static_object(&once_value_1);
521 } else fra.me.REG[2] = once_value_1;
522 fra.me.REG[2] = fra.me.REG[2];
523 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
524 /* parser/lexer.nit:127 */
525 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
526 stack_frame_head = fra.me.prev;
527 init_table[itpos8] = 1;
528 return;
529 }
530 val_t parser___lexer___TKwend___parser_index(val_t p0){
531 struct {struct stack_frame_t me;} fra;
532 val_t REGB0;
533 val_t tmp;
534 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
535 fra.me.file = LOCATE_parser___lexer;
536 fra.me.line = 132;
537 fra.me.meth = LOCATE_parser___lexer___TKwend___parser_index;
538 fra.me.has_broke = 0;
539 fra.me.REG_size = 1;
540 fra.me.nitni_local_ref_head = NULL;
541 fra.me.REG[0] = NIT_NULL;
542 fra.me.REG[0] = p0;
543 /* parser/lexer.nit:134 */
544 REGB0 = TAG_Int(9);
545 goto label1;
546 label1: while(0);
547 stack_frame_head = fra.me.prev;
548 return REGB0;
549 }
550 void parser___lexer___TKwend___init_tk(val_t p0, val_t p1, int* init_table){
551 int itpos9 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwend].i;
552 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
553 val_t REGB0;
554 val_t tmp;
555 static val_t once_value_1; /* Once value */
556 static val_t once_value_2; /* Once value */
557 if (init_table[itpos9]) return;
558 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
559 fra.me.file = LOCATE_parser___lexer;
560 fra.me.line = 137;
561 fra.me.meth = LOCATE_parser___lexer___TKwend___init_tk;
562 fra.me.has_broke = 0;
563 fra.me.REG_size = 3;
564 fra.me.nitni_local_ref_head = NULL;
565 fra.me.REG[0] = NIT_NULL;
566 fra.me.REG[1] = NIT_NULL;
567 fra.me.REG[2] = NIT_NULL;
568 fra.me.REG[0] = p0;
569 fra.me.REG[1] = p1;
570 /* parser/lexer.nit:139 */
571 if (!once_value_1) {
572 if (!once_value_2) {
573 fra.me.REG[2] = BOX_NativeString("end");
574 REGB0 = TAG_Int(3);
575 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
576 once_value_2 = fra.me.REG[2];
577 register_static_object(&once_value_2);
578 } else fra.me.REG[2] = once_value_2;
579 fra.me.REG[2] = fra.me.REG[2];
580 once_value_1 = fra.me.REG[2];
581 register_static_object(&once_value_1);
582 } else fra.me.REG[2] = once_value_1;
583 fra.me.REG[2] = fra.me.REG[2];
584 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
585 /* parser/lexer.nit:140 */
586 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
587 stack_frame_head = fra.me.prev;
588 init_table[itpos9] = 1;
589 return;
590 }
591 val_t parser___lexer___TKwmeth___parser_index(val_t p0){
592 struct {struct stack_frame_t me;} fra;
593 val_t REGB0;
594 val_t tmp;
595 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
596 fra.me.file = LOCATE_parser___lexer;
597 fra.me.line = 145;
598 fra.me.meth = LOCATE_parser___lexer___TKwmeth___parser_index;
599 fra.me.has_broke = 0;
600 fra.me.REG_size = 1;
601 fra.me.nitni_local_ref_head = NULL;
602 fra.me.REG[0] = NIT_NULL;
603 fra.me.REG[0] = p0;
604 /* parser/lexer.nit:147 */
605 REGB0 = TAG_Int(10);
606 goto label1;
607 label1: while(0);
608 stack_frame_head = fra.me.prev;
609 return REGB0;
610 }
611 void parser___lexer___TKwmeth___init_tk(val_t p0, val_t p1, int* init_table){
612 int itpos10 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwmeth].i;
613 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
614 val_t REGB0;
615 val_t tmp;
616 static val_t once_value_1; /* Once value */
617 static val_t once_value_2; /* Once value */
618 if (init_table[itpos10]) return;
619 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
620 fra.me.file = LOCATE_parser___lexer;
621 fra.me.line = 150;
622 fra.me.meth = LOCATE_parser___lexer___TKwmeth___init_tk;
623 fra.me.has_broke = 0;
624 fra.me.REG_size = 3;
625 fra.me.nitni_local_ref_head = NULL;
626 fra.me.REG[0] = NIT_NULL;
627 fra.me.REG[1] = NIT_NULL;
628 fra.me.REG[2] = NIT_NULL;
629 fra.me.REG[0] = p0;
630 fra.me.REG[1] = p1;
631 /* parser/lexer.nit:152 */
632 if (!once_value_1) {
633 if (!once_value_2) {
634 fra.me.REG[2] = BOX_NativeString("fun");
635 REGB0 = TAG_Int(3);
636 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
637 once_value_2 = fra.me.REG[2];
638 register_static_object(&once_value_2);
639 } else fra.me.REG[2] = once_value_2;
640 fra.me.REG[2] = fra.me.REG[2];
641 once_value_1 = fra.me.REG[2];
642 register_static_object(&once_value_1);
643 } else fra.me.REG[2] = once_value_1;
644 fra.me.REG[2] = fra.me.REG[2];
645 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
646 /* parser/lexer.nit:153 */
647 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
648 stack_frame_head = fra.me.prev;
649 init_table[itpos10] = 1;
650 return;
651 }
652 val_t parser___lexer___TKwtype___parser_index(val_t p0){
653 struct {struct stack_frame_t me;} fra;
654 val_t REGB0;
655 val_t tmp;
656 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
657 fra.me.file = LOCATE_parser___lexer;
658 fra.me.line = 158;
659 fra.me.meth = LOCATE_parser___lexer___TKwtype___parser_index;
660 fra.me.has_broke = 0;
661 fra.me.REG_size = 1;
662 fra.me.nitni_local_ref_head = NULL;
663 fra.me.REG[0] = NIT_NULL;
664 fra.me.REG[0] = p0;
665 /* parser/lexer.nit:160 */
666 REGB0 = TAG_Int(11);
667 goto label1;
668 label1: while(0);
669 stack_frame_head = fra.me.prev;
670 return REGB0;
671 }
672 void parser___lexer___TKwtype___init_tk(val_t p0, val_t p1, int* init_table){
673 int itpos11 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwtype].i;
674 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
675 val_t REGB0;
676 val_t tmp;
677 static val_t once_value_1; /* Once value */
678 static val_t once_value_2; /* Once value */
679 if (init_table[itpos11]) return;
680 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
681 fra.me.file = LOCATE_parser___lexer;
682 fra.me.line = 163;
683 fra.me.meth = LOCATE_parser___lexer___TKwtype___init_tk;
684 fra.me.has_broke = 0;
685 fra.me.REG_size = 3;
686 fra.me.nitni_local_ref_head = NULL;
687 fra.me.REG[0] = NIT_NULL;
688 fra.me.REG[1] = NIT_NULL;
689 fra.me.REG[2] = NIT_NULL;
690 fra.me.REG[0] = p0;
691 fra.me.REG[1] = p1;
692 /* parser/lexer.nit:165 */
693 if (!once_value_1) {
694 if (!once_value_2) {
695 fra.me.REG[2] = BOX_NativeString("type");
696 REGB0 = TAG_Int(4);
697 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
698 once_value_2 = fra.me.REG[2];
699 register_static_object(&once_value_2);
700 } else fra.me.REG[2] = once_value_2;
701 fra.me.REG[2] = fra.me.REG[2];
702 once_value_1 = fra.me.REG[2];
703 register_static_object(&once_value_1);
704 } else fra.me.REG[2] = once_value_1;
705 fra.me.REG[2] = fra.me.REG[2];
706 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
707 /* parser/lexer.nit:166 */
708 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
709 stack_frame_head = fra.me.prev;
710 init_table[itpos11] = 1;
711 return;
712 }
713 val_t parser___lexer___TKwinit___parser_index(val_t p0){
714 struct {struct stack_frame_t me;} fra;
715 val_t REGB0;
716 val_t tmp;
717 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
718 fra.me.file = LOCATE_parser___lexer;
719 fra.me.line = 171;
720 fra.me.meth = LOCATE_parser___lexer___TKwinit___parser_index;
721 fra.me.has_broke = 0;
722 fra.me.REG_size = 1;
723 fra.me.nitni_local_ref_head = NULL;
724 fra.me.REG[0] = NIT_NULL;
725 fra.me.REG[0] = p0;
726 /* parser/lexer.nit:173 */
727 REGB0 = TAG_Int(12);
728 goto label1;
729 label1: while(0);
730 stack_frame_head = fra.me.prev;
731 return REGB0;
732 }
733 void parser___lexer___TKwinit___init_tk(val_t p0, val_t p1, int* init_table){
734 int itpos12 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwinit].i;
735 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
736 val_t REGB0;
737 val_t tmp;
738 static val_t once_value_1; /* Once value */
739 static val_t once_value_2; /* Once value */
740 if (init_table[itpos12]) return;
741 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
742 fra.me.file = LOCATE_parser___lexer;
743 fra.me.line = 176;
744 fra.me.meth = LOCATE_parser___lexer___TKwinit___init_tk;
745 fra.me.has_broke = 0;
746 fra.me.REG_size = 3;
747 fra.me.nitni_local_ref_head = NULL;
748 fra.me.REG[0] = NIT_NULL;
749 fra.me.REG[1] = NIT_NULL;
750 fra.me.REG[2] = NIT_NULL;
751 fra.me.REG[0] = p0;
752 fra.me.REG[1] = p1;
753 /* parser/lexer.nit:178 */
754 if (!once_value_1) {
755 if (!once_value_2) {
756 fra.me.REG[2] = BOX_NativeString("init");
757 REGB0 = TAG_Int(4);
758 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
759 once_value_2 = fra.me.REG[2];
760 register_static_object(&once_value_2);
761 } else fra.me.REG[2] = once_value_2;
762 fra.me.REG[2] = fra.me.REG[2];
763 once_value_1 = fra.me.REG[2];
764 register_static_object(&once_value_1);
765 } else fra.me.REG[2] = once_value_1;
766 fra.me.REG[2] = fra.me.REG[2];
767 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
768 /* parser/lexer.nit:179 */
769 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
770 stack_frame_head = fra.me.prev;
771 init_table[itpos12] = 1;
772 return;
773 }
774 val_t parser___lexer___TKwredef___parser_index(val_t p0){
775 struct {struct stack_frame_t me;} fra;
776 val_t REGB0;
777 val_t tmp;
778 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
779 fra.me.file = LOCATE_parser___lexer;
780 fra.me.line = 184;
781 fra.me.meth = LOCATE_parser___lexer___TKwredef___parser_index;
782 fra.me.has_broke = 0;
783 fra.me.REG_size = 1;
784 fra.me.nitni_local_ref_head = NULL;
785 fra.me.REG[0] = NIT_NULL;
786 fra.me.REG[0] = p0;
787 /* parser/lexer.nit:186 */
788 REGB0 = TAG_Int(13);
789 goto label1;
790 label1: while(0);
791 stack_frame_head = fra.me.prev;
792 return REGB0;
793 }
794 void parser___lexer___TKwredef___init_tk(val_t p0, val_t p1, int* init_table){
795 int itpos13 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwredef].i;
796 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
797 val_t REGB0;
798 val_t tmp;
799 static val_t once_value_1; /* Once value */
800 static val_t once_value_2; /* Once value */
801 if (init_table[itpos13]) return;
802 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
803 fra.me.file = LOCATE_parser___lexer;
804 fra.me.line = 189;
805 fra.me.meth = LOCATE_parser___lexer___TKwredef___init_tk;
806 fra.me.has_broke = 0;
807 fra.me.REG_size = 3;
808 fra.me.nitni_local_ref_head = NULL;
809 fra.me.REG[0] = NIT_NULL;
810 fra.me.REG[1] = NIT_NULL;
811 fra.me.REG[2] = NIT_NULL;
812 fra.me.REG[0] = p0;
813 fra.me.REG[1] = p1;
814 /* parser/lexer.nit:191 */
815 if (!once_value_1) {
816 if (!once_value_2) {
817 fra.me.REG[2] = BOX_NativeString("redef");
818 REGB0 = TAG_Int(5);
819 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
820 once_value_2 = fra.me.REG[2];
821 register_static_object(&once_value_2);
822 } else fra.me.REG[2] = once_value_2;
823 fra.me.REG[2] = fra.me.REG[2];
824 once_value_1 = fra.me.REG[2];
825 register_static_object(&once_value_1);
826 } else fra.me.REG[2] = once_value_1;
827 fra.me.REG[2] = fra.me.REG[2];
828 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
829 /* parser/lexer.nit:192 */
830 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
831 stack_frame_head = fra.me.prev;
832 init_table[itpos13] = 1;
833 return;
834 }
835 val_t parser___lexer___TKwis___parser_index(val_t p0){
836 struct {struct stack_frame_t me;} fra;
837 val_t REGB0;
838 val_t tmp;
839 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
840 fra.me.file = LOCATE_parser___lexer;
841 fra.me.line = 197;
842 fra.me.meth = LOCATE_parser___lexer___TKwis___parser_index;
843 fra.me.has_broke = 0;
844 fra.me.REG_size = 1;
845 fra.me.nitni_local_ref_head = NULL;
846 fra.me.REG[0] = NIT_NULL;
847 fra.me.REG[0] = p0;
848 /* parser/lexer.nit:199 */
849 REGB0 = TAG_Int(14);
850 goto label1;
851 label1: while(0);
852 stack_frame_head = fra.me.prev;
853 return REGB0;
854 }
855 void parser___lexer___TKwis___init_tk(val_t p0, val_t p1, int* init_table){
856 int itpos14 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwis].i;
857 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
858 val_t REGB0;
859 val_t tmp;
860 static val_t once_value_1; /* Once value */
861 static val_t once_value_2; /* Once value */
862 if (init_table[itpos14]) return;
863 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
864 fra.me.file = LOCATE_parser___lexer;
865 fra.me.line = 202;
866 fra.me.meth = LOCATE_parser___lexer___TKwis___init_tk;
867 fra.me.has_broke = 0;
868 fra.me.REG_size = 3;
869 fra.me.nitni_local_ref_head = NULL;
870 fra.me.REG[0] = NIT_NULL;
871 fra.me.REG[1] = NIT_NULL;
872 fra.me.REG[2] = NIT_NULL;
873 fra.me.REG[0] = p0;
874 fra.me.REG[1] = p1;
875 /* parser/lexer.nit:204 */
876 if (!once_value_1) {
877 if (!once_value_2) {
878 fra.me.REG[2] = BOX_NativeString("is");
879 REGB0 = TAG_Int(2);
880 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
881 once_value_2 = fra.me.REG[2];
882 register_static_object(&once_value_2);
883 } else fra.me.REG[2] = once_value_2;
884 fra.me.REG[2] = fra.me.REG[2];
885 once_value_1 = fra.me.REG[2];
886 register_static_object(&once_value_1);
887 } else fra.me.REG[2] = once_value_1;
888 fra.me.REG[2] = fra.me.REG[2];
889 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
890 /* parser/lexer.nit:205 */
891 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
892 stack_frame_head = fra.me.prev;
893 init_table[itpos14] = 1;
894 return;
895 }
896 val_t parser___lexer___TKwdo___parser_index(val_t p0){
897 struct {struct stack_frame_t me;} fra;
898 val_t REGB0;
899 val_t tmp;
900 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
901 fra.me.file = LOCATE_parser___lexer;
902 fra.me.line = 210;
903 fra.me.meth = LOCATE_parser___lexer___TKwdo___parser_index;
904 fra.me.has_broke = 0;
905 fra.me.REG_size = 1;
906 fra.me.nitni_local_ref_head = NULL;
907 fra.me.REG[0] = NIT_NULL;
908 fra.me.REG[0] = p0;
909 /* parser/lexer.nit:212 */
910 REGB0 = TAG_Int(15);
911 goto label1;
912 label1: while(0);
913 stack_frame_head = fra.me.prev;
914 return REGB0;
915 }
916 void parser___lexer___TKwdo___init_tk(val_t p0, val_t p1, int* init_table){
917 int itpos15 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwdo].i;
918 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
919 val_t REGB0;
920 val_t tmp;
921 static val_t once_value_1; /* Once value */
922 static val_t once_value_2; /* Once value */
923 if (init_table[itpos15]) return;
924 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
925 fra.me.file = LOCATE_parser___lexer;
926 fra.me.line = 215;
927 fra.me.meth = LOCATE_parser___lexer___TKwdo___init_tk;
928 fra.me.has_broke = 0;
929 fra.me.REG_size = 3;
930 fra.me.nitni_local_ref_head = NULL;
931 fra.me.REG[0] = NIT_NULL;
932 fra.me.REG[1] = NIT_NULL;
933 fra.me.REG[2] = NIT_NULL;
934 fra.me.REG[0] = p0;
935 fra.me.REG[1] = p1;
936 /* parser/lexer.nit:217 */
937 if (!once_value_1) {
938 if (!once_value_2) {
939 fra.me.REG[2] = BOX_NativeString("do");
940 REGB0 = TAG_Int(2);
941 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
942 once_value_2 = fra.me.REG[2];
943 register_static_object(&once_value_2);
944 } else fra.me.REG[2] = once_value_2;
945 fra.me.REG[2] = fra.me.REG[2];
946 once_value_1 = fra.me.REG[2];
947 register_static_object(&once_value_1);
948 } else fra.me.REG[2] = once_value_1;
949 fra.me.REG[2] = fra.me.REG[2];
950 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
951 /* parser/lexer.nit:218 */
952 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
953 stack_frame_head = fra.me.prev;
954 init_table[itpos15] = 1;
955 return;
956 }
957 val_t parser___lexer___TKwreadable___parser_index(val_t p0){
958 struct {struct stack_frame_t me;} fra;
959 val_t REGB0;
960 val_t tmp;
961 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
962 fra.me.file = LOCATE_parser___lexer;
963 fra.me.line = 223;
964 fra.me.meth = LOCATE_parser___lexer___TKwreadable___parser_index;
965 fra.me.has_broke = 0;
966 fra.me.REG_size = 1;
967 fra.me.nitni_local_ref_head = NULL;
968 fra.me.REG[0] = NIT_NULL;
969 fra.me.REG[0] = p0;
970 /* parser/lexer.nit:225 */
971 REGB0 = TAG_Int(16);
972 goto label1;
973 label1: while(0);
974 stack_frame_head = fra.me.prev;
975 return REGB0;
976 }
977 void parser___lexer___TKwreadable___init_tk(val_t p0, val_t p1, int* init_table){
978 int itpos16 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwreadable].i;
979 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
980 val_t REGB0;
981 val_t tmp;
982 static val_t once_value_1; /* Once value */
983 static val_t once_value_2; /* Once value */
984 if (init_table[itpos16]) return;
985 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
986 fra.me.file = LOCATE_parser___lexer;
987 fra.me.line = 228;
988 fra.me.meth = LOCATE_parser___lexer___TKwreadable___init_tk;
989 fra.me.has_broke = 0;
990 fra.me.REG_size = 3;
991 fra.me.nitni_local_ref_head = NULL;
992 fra.me.REG[0] = NIT_NULL;
993 fra.me.REG[1] = NIT_NULL;
994 fra.me.REG[2] = NIT_NULL;
995 fra.me.REG[0] = p0;
996 fra.me.REG[1] = p1;
997 /* parser/lexer.nit:230 */
998 if (!once_value_1) {
999 if (!once_value_2) {
1000 fra.me.REG[2] = BOX_NativeString("readable");
1001 REGB0 = TAG_Int(8);
1002 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1003 once_value_2 = fra.me.REG[2];
1004 register_static_object(&once_value_2);
1005 } else fra.me.REG[2] = once_value_2;
1006 fra.me.REG[2] = fra.me.REG[2];
1007 once_value_1 = fra.me.REG[2];
1008 register_static_object(&once_value_1);
1009 } else fra.me.REG[2] = once_value_1;
1010 fra.me.REG[2] = fra.me.REG[2];
1011 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1012 /* parser/lexer.nit:231 */
1013 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1014 stack_frame_head = fra.me.prev;
1015 init_table[itpos16] = 1;
1016 return;
1017 }
1018 val_t parser___lexer___TKwwritable___parser_index(val_t p0){
1019 struct {struct stack_frame_t me;} fra;
1020 val_t REGB0;
1021 val_t tmp;
1022 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1023 fra.me.file = LOCATE_parser___lexer;
1024 fra.me.line = 236;
1025 fra.me.meth = LOCATE_parser___lexer___TKwwritable___parser_index;
1026 fra.me.has_broke = 0;
1027 fra.me.REG_size = 1;
1028 fra.me.nitni_local_ref_head = NULL;
1029 fra.me.REG[0] = NIT_NULL;
1030 fra.me.REG[0] = p0;
1031 /* parser/lexer.nit:238 */
1032 REGB0 = TAG_Int(17);
1033 goto label1;
1034 label1: while(0);
1035 stack_frame_head = fra.me.prev;
1036 return REGB0;
1037 }
1038 void parser___lexer___TKwwritable___init_tk(val_t p0, val_t p1, int* init_table){
1039 int itpos17 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwwritable].i;
1040 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1041 val_t REGB0;
1042 val_t tmp;
1043 static val_t once_value_1; /* Once value */
1044 static val_t once_value_2; /* Once value */
1045 if (init_table[itpos17]) return;
1046 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1047 fra.me.file = LOCATE_parser___lexer;
1048 fra.me.line = 241;
1049 fra.me.meth = LOCATE_parser___lexer___TKwwritable___init_tk;
1050 fra.me.has_broke = 0;
1051 fra.me.REG_size = 3;
1052 fra.me.nitni_local_ref_head = NULL;
1053 fra.me.REG[0] = NIT_NULL;
1054 fra.me.REG[1] = NIT_NULL;
1055 fra.me.REG[2] = NIT_NULL;
1056 fra.me.REG[0] = p0;
1057 fra.me.REG[1] = p1;
1058 /* parser/lexer.nit:243 */
1059 if (!once_value_1) {
1060 if (!once_value_2) {
1061 fra.me.REG[2] = BOX_NativeString("writable");
1062 REGB0 = TAG_Int(8);
1063 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1064 once_value_2 = fra.me.REG[2];
1065 register_static_object(&once_value_2);
1066 } else fra.me.REG[2] = once_value_2;
1067 fra.me.REG[2] = fra.me.REG[2];
1068 once_value_1 = fra.me.REG[2];
1069 register_static_object(&once_value_1);
1070 } else fra.me.REG[2] = once_value_1;
1071 fra.me.REG[2] = fra.me.REG[2];
1072 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1073 /* parser/lexer.nit:244 */
1074 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1075 stack_frame_head = fra.me.prev;
1076 init_table[itpos17] = 1;
1077 return;
1078 }
1079 val_t parser___lexer___TKwvar___parser_index(val_t p0){
1080 struct {struct stack_frame_t me;} fra;
1081 val_t REGB0;
1082 val_t tmp;
1083 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1084 fra.me.file = LOCATE_parser___lexer;
1085 fra.me.line = 249;
1086 fra.me.meth = LOCATE_parser___lexer___TKwvar___parser_index;
1087 fra.me.has_broke = 0;
1088 fra.me.REG_size = 1;
1089 fra.me.nitni_local_ref_head = NULL;
1090 fra.me.REG[0] = NIT_NULL;
1091 fra.me.REG[0] = p0;
1092 /* parser/lexer.nit:251 */
1093 REGB0 = TAG_Int(18);
1094 goto label1;
1095 label1: while(0);
1096 stack_frame_head = fra.me.prev;
1097 return REGB0;
1098 }
1099 void parser___lexer___TKwvar___init_tk(val_t p0, val_t p1, int* init_table){
1100 int itpos18 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwvar].i;
1101 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1102 val_t REGB0;
1103 val_t tmp;
1104 static val_t once_value_1; /* Once value */
1105 static val_t once_value_2; /* Once value */
1106 if (init_table[itpos18]) return;
1107 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1108 fra.me.file = LOCATE_parser___lexer;
1109 fra.me.line = 254;
1110 fra.me.meth = LOCATE_parser___lexer___TKwvar___init_tk;
1111 fra.me.has_broke = 0;
1112 fra.me.REG_size = 3;
1113 fra.me.nitni_local_ref_head = NULL;
1114 fra.me.REG[0] = NIT_NULL;
1115 fra.me.REG[1] = NIT_NULL;
1116 fra.me.REG[2] = NIT_NULL;
1117 fra.me.REG[0] = p0;
1118 fra.me.REG[1] = p1;
1119 /* parser/lexer.nit:256 */
1120 if (!once_value_1) {
1121 if (!once_value_2) {
1122 fra.me.REG[2] = BOX_NativeString("var");
1123 REGB0 = TAG_Int(3);
1124 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1125 once_value_2 = fra.me.REG[2];
1126 register_static_object(&once_value_2);
1127 } else fra.me.REG[2] = once_value_2;
1128 fra.me.REG[2] = fra.me.REG[2];
1129 once_value_1 = fra.me.REG[2];
1130 register_static_object(&once_value_1);
1131 } else fra.me.REG[2] = once_value_1;
1132 fra.me.REG[2] = fra.me.REG[2];
1133 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1134 /* parser/lexer.nit:257 */
1135 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1136 stack_frame_head = fra.me.prev;
1137 init_table[itpos18] = 1;
1138 return;
1139 }
1140 val_t parser___lexer___TKwintern___parser_index(val_t p0){
1141 struct {struct stack_frame_t me;} fra;
1142 val_t REGB0;
1143 val_t tmp;
1144 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1145 fra.me.file = LOCATE_parser___lexer;
1146 fra.me.line = 262;
1147 fra.me.meth = LOCATE_parser___lexer___TKwintern___parser_index;
1148 fra.me.has_broke = 0;
1149 fra.me.REG_size = 1;
1150 fra.me.nitni_local_ref_head = NULL;
1151 fra.me.REG[0] = NIT_NULL;
1152 fra.me.REG[0] = p0;
1153 /* parser/lexer.nit:264 */
1154 REGB0 = TAG_Int(19);
1155 goto label1;
1156 label1: while(0);
1157 stack_frame_head = fra.me.prev;
1158 return REGB0;
1159 }
1160 void parser___lexer___TKwintern___init_tk(val_t p0, val_t p1, int* init_table){
1161 int itpos19 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwintern].i;
1162 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1163 val_t REGB0;
1164 val_t tmp;
1165 static val_t once_value_1; /* Once value */
1166 static val_t once_value_2; /* Once value */
1167 if (init_table[itpos19]) return;
1168 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1169 fra.me.file = LOCATE_parser___lexer;
1170 fra.me.line = 267;
1171 fra.me.meth = LOCATE_parser___lexer___TKwintern___init_tk;
1172 fra.me.has_broke = 0;
1173 fra.me.REG_size = 3;
1174 fra.me.nitni_local_ref_head = NULL;
1175 fra.me.REG[0] = NIT_NULL;
1176 fra.me.REG[1] = NIT_NULL;
1177 fra.me.REG[2] = NIT_NULL;
1178 fra.me.REG[0] = p0;
1179 fra.me.REG[1] = p1;
1180 /* parser/lexer.nit:269 */
1181 if (!once_value_1) {
1182 if (!once_value_2) {
1183 fra.me.REG[2] = BOX_NativeString("intern");
1184 REGB0 = TAG_Int(6);
1185 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1186 once_value_2 = fra.me.REG[2];
1187 register_static_object(&once_value_2);
1188 } else fra.me.REG[2] = once_value_2;
1189 fra.me.REG[2] = fra.me.REG[2];
1190 once_value_1 = fra.me.REG[2];
1191 register_static_object(&once_value_1);
1192 } else fra.me.REG[2] = once_value_1;
1193 fra.me.REG[2] = fra.me.REG[2];
1194 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1195 /* parser/lexer.nit:270 */
1196 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1197 stack_frame_head = fra.me.prev;
1198 init_table[itpos19] = 1;
1199 return;
1200 }
1201 val_t parser___lexer___TKwextern___parser_index(val_t p0){
1202 struct {struct stack_frame_t me;} fra;
1203 val_t REGB0;
1204 val_t tmp;
1205 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1206 fra.me.file = LOCATE_parser___lexer;
1207 fra.me.line = 275;
1208 fra.me.meth = LOCATE_parser___lexer___TKwextern___parser_index;
1209 fra.me.has_broke = 0;
1210 fra.me.REG_size = 1;
1211 fra.me.nitni_local_ref_head = NULL;
1212 fra.me.REG[0] = NIT_NULL;
1213 fra.me.REG[0] = p0;
1214 /* parser/lexer.nit:277 */
1215 REGB0 = TAG_Int(20);
1216 goto label1;
1217 label1: while(0);
1218 stack_frame_head = fra.me.prev;
1219 return REGB0;
1220 }
1221 void parser___lexer___TKwextern___init_tk(val_t p0, val_t p1, int* init_table){
1222 int itpos20 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwextern].i;
1223 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1224 val_t REGB0;
1225 val_t tmp;
1226 static val_t once_value_1; /* Once value */
1227 static val_t once_value_2; /* Once value */
1228 if (init_table[itpos20]) return;
1229 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1230 fra.me.file = LOCATE_parser___lexer;
1231 fra.me.line = 280;
1232 fra.me.meth = LOCATE_parser___lexer___TKwextern___init_tk;
1233 fra.me.has_broke = 0;
1234 fra.me.REG_size = 3;
1235 fra.me.nitni_local_ref_head = NULL;
1236 fra.me.REG[0] = NIT_NULL;
1237 fra.me.REG[1] = NIT_NULL;
1238 fra.me.REG[2] = NIT_NULL;
1239 fra.me.REG[0] = p0;
1240 fra.me.REG[1] = p1;
1241 /* parser/lexer.nit:282 */
1242 if (!once_value_1) {
1243 if (!once_value_2) {
1244 fra.me.REG[2] = BOX_NativeString("extern");
1245 REGB0 = TAG_Int(6);
1246 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1247 once_value_2 = fra.me.REG[2];
1248 register_static_object(&once_value_2);
1249 } else fra.me.REG[2] = once_value_2;
1250 fra.me.REG[2] = fra.me.REG[2];
1251 once_value_1 = fra.me.REG[2];
1252 register_static_object(&once_value_1);
1253 } else fra.me.REG[2] = once_value_1;
1254 fra.me.REG[2] = fra.me.REG[2];
1255 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1256 /* parser/lexer.nit:283 */
1257 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1258 stack_frame_head = fra.me.prev;
1259 init_table[itpos20] = 1;
1260 return;
1261 }
1262 val_t parser___lexer___TKwprotected___parser_index(val_t p0){
1263 struct {struct stack_frame_t me;} fra;
1264 val_t REGB0;
1265 val_t tmp;
1266 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1267 fra.me.file = LOCATE_parser___lexer;
1268 fra.me.line = 288;
1269 fra.me.meth = LOCATE_parser___lexer___TKwprotected___parser_index;
1270 fra.me.has_broke = 0;
1271 fra.me.REG_size = 1;
1272 fra.me.nitni_local_ref_head = NULL;
1273 fra.me.REG[0] = NIT_NULL;
1274 fra.me.REG[0] = p0;
1275 /* parser/lexer.nit:290 */
1276 REGB0 = TAG_Int(21);
1277 goto label1;
1278 label1: while(0);
1279 stack_frame_head = fra.me.prev;
1280 return REGB0;
1281 }
1282 void parser___lexer___TKwprotected___init_tk(val_t p0, val_t p1, int* init_table){
1283 int itpos21 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwprotected].i;
1284 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1285 val_t REGB0;
1286 val_t tmp;
1287 static val_t once_value_1; /* Once value */
1288 static val_t once_value_2; /* Once value */
1289 if (init_table[itpos21]) return;
1290 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1291 fra.me.file = LOCATE_parser___lexer;
1292 fra.me.line = 293;
1293 fra.me.meth = LOCATE_parser___lexer___TKwprotected___init_tk;
1294 fra.me.has_broke = 0;
1295 fra.me.REG_size = 3;
1296 fra.me.nitni_local_ref_head = NULL;
1297 fra.me.REG[0] = NIT_NULL;
1298 fra.me.REG[1] = NIT_NULL;
1299 fra.me.REG[2] = NIT_NULL;
1300 fra.me.REG[0] = p0;
1301 fra.me.REG[1] = p1;
1302 /* parser/lexer.nit:295 */
1303 if (!once_value_1) {
1304 if (!once_value_2) {
1305 fra.me.REG[2] = BOX_NativeString("protected");
1306 REGB0 = TAG_Int(9);
1307 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1308 once_value_2 = fra.me.REG[2];
1309 register_static_object(&once_value_2);
1310 } else fra.me.REG[2] = once_value_2;
1311 fra.me.REG[2] = fra.me.REG[2];
1312 once_value_1 = fra.me.REG[2];
1313 register_static_object(&once_value_1);
1314 } else fra.me.REG[2] = once_value_1;
1315 fra.me.REG[2] = fra.me.REG[2];
1316 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1317 /* parser/lexer.nit:296 */
1318 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1319 stack_frame_head = fra.me.prev;
1320 init_table[itpos21] = 1;
1321 return;
1322 }
1323 val_t parser___lexer___TKwprivate___parser_index(val_t p0){
1324 struct {struct stack_frame_t me;} fra;
1325 val_t REGB0;
1326 val_t tmp;
1327 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1328 fra.me.file = LOCATE_parser___lexer;
1329 fra.me.line = 301;
1330 fra.me.meth = LOCATE_parser___lexer___TKwprivate___parser_index;
1331 fra.me.has_broke = 0;
1332 fra.me.REG_size = 1;
1333 fra.me.nitni_local_ref_head = NULL;
1334 fra.me.REG[0] = NIT_NULL;
1335 fra.me.REG[0] = p0;
1336 /* parser/lexer.nit:303 */
1337 REGB0 = TAG_Int(22);
1338 goto label1;
1339 label1: while(0);
1340 stack_frame_head = fra.me.prev;
1341 return REGB0;
1342 }
1343 void parser___lexer___TKwprivate___init_tk(val_t p0, val_t p1, int* init_table){
1344 int itpos22 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwprivate].i;
1345 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1346 val_t REGB0;
1347 val_t tmp;
1348 static val_t once_value_1; /* Once value */
1349 static val_t once_value_2; /* Once value */
1350 if (init_table[itpos22]) return;
1351 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1352 fra.me.file = LOCATE_parser___lexer;
1353 fra.me.line = 306;
1354 fra.me.meth = LOCATE_parser___lexer___TKwprivate___init_tk;
1355 fra.me.has_broke = 0;
1356 fra.me.REG_size = 3;
1357 fra.me.nitni_local_ref_head = NULL;
1358 fra.me.REG[0] = NIT_NULL;
1359 fra.me.REG[1] = NIT_NULL;
1360 fra.me.REG[2] = NIT_NULL;
1361 fra.me.REG[0] = p0;
1362 fra.me.REG[1] = p1;
1363 /* parser/lexer.nit:308 */
1364 if (!once_value_1) {
1365 if (!once_value_2) {
1366 fra.me.REG[2] = BOX_NativeString("private");
1367 REGB0 = TAG_Int(7);
1368 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1369 once_value_2 = fra.me.REG[2];
1370 register_static_object(&once_value_2);
1371 } else fra.me.REG[2] = once_value_2;
1372 fra.me.REG[2] = fra.me.REG[2];
1373 once_value_1 = fra.me.REG[2];
1374 register_static_object(&once_value_1);
1375 } else fra.me.REG[2] = once_value_1;
1376 fra.me.REG[2] = fra.me.REG[2];
1377 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1378 /* parser/lexer.nit:309 */
1379 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1380 stack_frame_head = fra.me.prev;
1381 init_table[itpos22] = 1;
1382 return;
1383 }
1384 val_t parser___lexer___TKwintrude___parser_index(val_t p0){
1385 struct {struct stack_frame_t me;} fra;
1386 val_t REGB0;
1387 val_t tmp;
1388 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1389 fra.me.file = LOCATE_parser___lexer;
1390 fra.me.line = 314;
1391 fra.me.meth = LOCATE_parser___lexer___TKwintrude___parser_index;
1392 fra.me.has_broke = 0;
1393 fra.me.REG_size = 1;
1394 fra.me.nitni_local_ref_head = NULL;
1395 fra.me.REG[0] = NIT_NULL;
1396 fra.me.REG[0] = p0;
1397 /* parser/lexer.nit:316 */
1398 REGB0 = TAG_Int(23);
1399 goto label1;
1400 label1: while(0);
1401 stack_frame_head = fra.me.prev;
1402 return REGB0;
1403 }
1404 void parser___lexer___TKwintrude___init_tk(val_t p0, val_t p1, int* init_table){
1405 int itpos23 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwintrude].i;
1406 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1407 val_t REGB0;
1408 val_t tmp;
1409 static val_t once_value_1; /* Once value */
1410 static val_t once_value_2; /* Once value */
1411 if (init_table[itpos23]) return;
1412 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1413 fra.me.file = LOCATE_parser___lexer;
1414 fra.me.line = 319;
1415 fra.me.meth = LOCATE_parser___lexer___TKwintrude___init_tk;
1416 fra.me.has_broke = 0;
1417 fra.me.REG_size = 3;
1418 fra.me.nitni_local_ref_head = NULL;
1419 fra.me.REG[0] = NIT_NULL;
1420 fra.me.REG[1] = NIT_NULL;
1421 fra.me.REG[2] = NIT_NULL;
1422 fra.me.REG[0] = p0;
1423 fra.me.REG[1] = p1;
1424 /* parser/lexer.nit:321 */
1425 if (!once_value_1) {
1426 if (!once_value_2) {
1427 fra.me.REG[2] = BOX_NativeString("intrude");
1428 REGB0 = TAG_Int(7);
1429 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1430 once_value_2 = fra.me.REG[2];
1431 register_static_object(&once_value_2);
1432 } else fra.me.REG[2] = once_value_2;
1433 fra.me.REG[2] = fra.me.REG[2];
1434 once_value_1 = fra.me.REG[2];
1435 register_static_object(&once_value_1);
1436 } else fra.me.REG[2] = once_value_1;
1437 fra.me.REG[2] = fra.me.REG[2];
1438 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1439 /* parser/lexer.nit:322 */
1440 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1441 stack_frame_head = fra.me.prev;
1442 init_table[itpos23] = 1;
1443 return;
1444 }
1445 val_t parser___lexer___TKwif___parser_index(val_t p0){
1446 struct {struct stack_frame_t me;} fra;
1447 val_t REGB0;
1448 val_t tmp;
1449 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1450 fra.me.file = LOCATE_parser___lexer;
1451 fra.me.line = 327;
1452 fra.me.meth = LOCATE_parser___lexer___TKwif___parser_index;
1453 fra.me.has_broke = 0;
1454 fra.me.REG_size = 1;
1455 fra.me.nitni_local_ref_head = NULL;
1456 fra.me.REG[0] = NIT_NULL;
1457 fra.me.REG[0] = p0;
1458 /* parser/lexer.nit:329 */
1459 REGB0 = TAG_Int(24);
1460 goto label1;
1461 label1: while(0);
1462 stack_frame_head = fra.me.prev;
1463 return REGB0;
1464 }
1465 void parser___lexer___TKwif___init_tk(val_t p0, val_t p1, int* init_table){
1466 int itpos24 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwif].i;
1467 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1468 val_t REGB0;
1469 val_t tmp;
1470 static val_t once_value_1; /* Once value */
1471 static val_t once_value_2; /* Once value */
1472 if (init_table[itpos24]) return;
1473 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1474 fra.me.file = LOCATE_parser___lexer;
1475 fra.me.line = 332;
1476 fra.me.meth = LOCATE_parser___lexer___TKwif___init_tk;
1477 fra.me.has_broke = 0;
1478 fra.me.REG_size = 3;
1479 fra.me.nitni_local_ref_head = NULL;
1480 fra.me.REG[0] = NIT_NULL;
1481 fra.me.REG[1] = NIT_NULL;
1482 fra.me.REG[2] = NIT_NULL;
1483 fra.me.REG[0] = p0;
1484 fra.me.REG[1] = p1;
1485 /* parser/lexer.nit:334 */
1486 if (!once_value_1) {
1487 if (!once_value_2) {
1488 fra.me.REG[2] = BOX_NativeString("if");
1489 REGB0 = TAG_Int(2);
1490 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1491 once_value_2 = fra.me.REG[2];
1492 register_static_object(&once_value_2);
1493 } else fra.me.REG[2] = once_value_2;
1494 fra.me.REG[2] = fra.me.REG[2];
1495 once_value_1 = fra.me.REG[2];
1496 register_static_object(&once_value_1);
1497 } else fra.me.REG[2] = once_value_1;
1498 fra.me.REG[2] = fra.me.REG[2];
1499 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1500 /* parser/lexer.nit:335 */
1501 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1502 stack_frame_head = fra.me.prev;
1503 init_table[itpos24] = 1;
1504 return;
1505 }
1506 val_t parser___lexer___TKwthen___parser_index(val_t p0){
1507 struct {struct stack_frame_t me;} fra;
1508 val_t REGB0;
1509 val_t tmp;
1510 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1511 fra.me.file = LOCATE_parser___lexer;
1512 fra.me.line = 340;
1513 fra.me.meth = LOCATE_parser___lexer___TKwthen___parser_index;
1514 fra.me.has_broke = 0;
1515 fra.me.REG_size = 1;
1516 fra.me.nitni_local_ref_head = NULL;
1517 fra.me.REG[0] = NIT_NULL;
1518 fra.me.REG[0] = p0;
1519 /* parser/lexer.nit:342 */
1520 REGB0 = TAG_Int(25);
1521 goto label1;
1522 label1: while(0);
1523 stack_frame_head = fra.me.prev;
1524 return REGB0;
1525 }
1526 void parser___lexer___TKwthen___init_tk(val_t p0, val_t p1, int* init_table){
1527 int itpos25 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwthen].i;
1528 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1529 val_t REGB0;
1530 val_t tmp;
1531 static val_t once_value_1; /* Once value */
1532 static val_t once_value_2; /* Once value */
1533 if (init_table[itpos25]) return;
1534 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1535 fra.me.file = LOCATE_parser___lexer;
1536 fra.me.line = 345;
1537 fra.me.meth = LOCATE_parser___lexer___TKwthen___init_tk;
1538 fra.me.has_broke = 0;
1539 fra.me.REG_size = 3;
1540 fra.me.nitni_local_ref_head = NULL;
1541 fra.me.REG[0] = NIT_NULL;
1542 fra.me.REG[1] = NIT_NULL;
1543 fra.me.REG[2] = NIT_NULL;
1544 fra.me.REG[0] = p0;
1545 fra.me.REG[1] = p1;
1546 /* parser/lexer.nit:347 */
1547 if (!once_value_1) {
1548 if (!once_value_2) {
1549 fra.me.REG[2] = BOX_NativeString("then");
1550 REGB0 = TAG_Int(4);
1551 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1552 once_value_2 = fra.me.REG[2];
1553 register_static_object(&once_value_2);
1554 } else fra.me.REG[2] = once_value_2;
1555 fra.me.REG[2] = fra.me.REG[2];
1556 once_value_1 = fra.me.REG[2];
1557 register_static_object(&once_value_1);
1558 } else fra.me.REG[2] = once_value_1;
1559 fra.me.REG[2] = fra.me.REG[2];
1560 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1561 /* parser/lexer.nit:348 */
1562 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1563 stack_frame_head = fra.me.prev;
1564 init_table[itpos25] = 1;
1565 return;
1566 }
1567 val_t parser___lexer___TKwelse___parser_index(val_t p0){
1568 struct {struct stack_frame_t me;} fra;
1569 val_t REGB0;
1570 val_t tmp;
1571 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1572 fra.me.file = LOCATE_parser___lexer;
1573 fra.me.line = 353;
1574 fra.me.meth = LOCATE_parser___lexer___TKwelse___parser_index;
1575 fra.me.has_broke = 0;
1576 fra.me.REG_size = 1;
1577 fra.me.nitni_local_ref_head = NULL;
1578 fra.me.REG[0] = NIT_NULL;
1579 fra.me.REG[0] = p0;
1580 /* parser/lexer.nit:355 */
1581 REGB0 = TAG_Int(26);
1582 goto label1;
1583 label1: while(0);
1584 stack_frame_head = fra.me.prev;
1585 return REGB0;
1586 }
1587 void parser___lexer___TKwelse___init_tk(val_t p0, val_t p1, int* init_table){
1588 int itpos26 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwelse].i;
1589 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1590 val_t REGB0;
1591 val_t tmp;
1592 static val_t once_value_1; /* Once value */
1593 static val_t once_value_2; /* Once value */
1594 if (init_table[itpos26]) return;
1595 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1596 fra.me.file = LOCATE_parser___lexer;
1597 fra.me.line = 358;
1598 fra.me.meth = LOCATE_parser___lexer___TKwelse___init_tk;
1599 fra.me.has_broke = 0;
1600 fra.me.REG_size = 3;
1601 fra.me.nitni_local_ref_head = NULL;
1602 fra.me.REG[0] = NIT_NULL;
1603 fra.me.REG[1] = NIT_NULL;
1604 fra.me.REG[2] = NIT_NULL;
1605 fra.me.REG[0] = p0;
1606 fra.me.REG[1] = p1;
1607 /* parser/lexer.nit:360 */
1608 if (!once_value_1) {
1609 if (!once_value_2) {
1610 fra.me.REG[2] = BOX_NativeString("else");
1611 REGB0 = TAG_Int(4);
1612 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1613 once_value_2 = fra.me.REG[2];
1614 register_static_object(&once_value_2);
1615 } else fra.me.REG[2] = once_value_2;
1616 fra.me.REG[2] = fra.me.REG[2];
1617 once_value_1 = fra.me.REG[2];
1618 register_static_object(&once_value_1);
1619 } else fra.me.REG[2] = once_value_1;
1620 fra.me.REG[2] = fra.me.REG[2];
1621 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1622 /* parser/lexer.nit:361 */
1623 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1624 stack_frame_head = fra.me.prev;
1625 init_table[itpos26] = 1;
1626 return;
1627 }
1628 val_t parser___lexer___TKwwhile___parser_index(val_t p0){
1629 struct {struct stack_frame_t me;} fra;
1630 val_t REGB0;
1631 val_t tmp;
1632 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1633 fra.me.file = LOCATE_parser___lexer;
1634 fra.me.line = 366;
1635 fra.me.meth = LOCATE_parser___lexer___TKwwhile___parser_index;
1636 fra.me.has_broke = 0;
1637 fra.me.REG_size = 1;
1638 fra.me.nitni_local_ref_head = NULL;
1639 fra.me.REG[0] = NIT_NULL;
1640 fra.me.REG[0] = p0;
1641 /* parser/lexer.nit:368 */
1642 REGB0 = TAG_Int(27);
1643 goto label1;
1644 label1: while(0);
1645 stack_frame_head = fra.me.prev;
1646 return REGB0;
1647 }
1648 void parser___lexer___TKwwhile___init_tk(val_t p0, val_t p1, int* init_table){
1649 int itpos27 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwwhile].i;
1650 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1651 val_t REGB0;
1652 val_t tmp;
1653 static val_t once_value_1; /* Once value */
1654 static val_t once_value_2; /* Once value */
1655 if (init_table[itpos27]) return;
1656 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1657 fra.me.file = LOCATE_parser___lexer;
1658 fra.me.line = 371;
1659 fra.me.meth = LOCATE_parser___lexer___TKwwhile___init_tk;
1660 fra.me.has_broke = 0;
1661 fra.me.REG_size = 3;
1662 fra.me.nitni_local_ref_head = NULL;
1663 fra.me.REG[0] = NIT_NULL;
1664 fra.me.REG[1] = NIT_NULL;
1665 fra.me.REG[2] = NIT_NULL;
1666 fra.me.REG[0] = p0;
1667 fra.me.REG[1] = p1;
1668 /* parser/lexer.nit:373 */
1669 if (!once_value_1) {
1670 if (!once_value_2) {
1671 fra.me.REG[2] = BOX_NativeString("while");
1672 REGB0 = TAG_Int(5);
1673 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1674 once_value_2 = fra.me.REG[2];
1675 register_static_object(&once_value_2);
1676 } else fra.me.REG[2] = once_value_2;
1677 fra.me.REG[2] = fra.me.REG[2];
1678 once_value_1 = fra.me.REG[2];
1679 register_static_object(&once_value_1);
1680 } else fra.me.REG[2] = once_value_1;
1681 fra.me.REG[2] = fra.me.REG[2];
1682 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1683 /* parser/lexer.nit:374 */
1684 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1685 stack_frame_head = fra.me.prev;
1686 init_table[itpos27] = 1;
1687 return;
1688 }
1689 val_t parser___lexer___TKwloop___parser_index(val_t p0){
1690 struct {struct stack_frame_t me;} fra;
1691 val_t REGB0;
1692 val_t tmp;
1693 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1694 fra.me.file = LOCATE_parser___lexer;
1695 fra.me.line = 379;
1696 fra.me.meth = LOCATE_parser___lexer___TKwloop___parser_index;
1697 fra.me.has_broke = 0;
1698 fra.me.REG_size = 1;
1699 fra.me.nitni_local_ref_head = NULL;
1700 fra.me.REG[0] = NIT_NULL;
1701 fra.me.REG[0] = p0;
1702 /* parser/lexer.nit:381 */
1703 REGB0 = TAG_Int(28);
1704 goto label1;
1705 label1: while(0);
1706 stack_frame_head = fra.me.prev;
1707 return REGB0;
1708 }
1709 void parser___lexer___TKwloop___init_tk(val_t p0, val_t p1, int* init_table){
1710 int itpos28 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwloop].i;
1711 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1712 val_t REGB0;
1713 val_t tmp;
1714 static val_t once_value_1; /* Once value */
1715 static val_t once_value_2; /* Once value */
1716 if (init_table[itpos28]) return;
1717 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1718 fra.me.file = LOCATE_parser___lexer;
1719 fra.me.line = 384;
1720 fra.me.meth = LOCATE_parser___lexer___TKwloop___init_tk;
1721 fra.me.has_broke = 0;
1722 fra.me.REG_size = 3;
1723 fra.me.nitni_local_ref_head = NULL;
1724 fra.me.REG[0] = NIT_NULL;
1725 fra.me.REG[1] = NIT_NULL;
1726 fra.me.REG[2] = NIT_NULL;
1727 fra.me.REG[0] = p0;
1728 fra.me.REG[1] = p1;
1729 /* parser/lexer.nit:386 */
1730 if (!once_value_1) {
1731 if (!once_value_2) {
1732 fra.me.REG[2] = BOX_NativeString("loop");
1733 REGB0 = TAG_Int(4);
1734 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1735 once_value_2 = fra.me.REG[2];
1736 register_static_object(&once_value_2);
1737 } else fra.me.REG[2] = once_value_2;
1738 fra.me.REG[2] = fra.me.REG[2];
1739 once_value_1 = fra.me.REG[2];
1740 register_static_object(&once_value_1);
1741 } else fra.me.REG[2] = once_value_1;
1742 fra.me.REG[2] = fra.me.REG[2];
1743 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1744 /* parser/lexer.nit:387 */
1745 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1746 stack_frame_head = fra.me.prev;
1747 init_table[itpos28] = 1;
1748 return;
1749 }
1750 val_t parser___lexer___TKwfor___parser_index(val_t p0){
1751 struct {struct stack_frame_t me;} fra;
1752 val_t REGB0;
1753 val_t tmp;
1754 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1755 fra.me.file = LOCATE_parser___lexer;
1756 fra.me.line = 392;
1757 fra.me.meth = LOCATE_parser___lexer___TKwfor___parser_index;
1758 fra.me.has_broke = 0;
1759 fra.me.REG_size = 1;
1760 fra.me.nitni_local_ref_head = NULL;
1761 fra.me.REG[0] = NIT_NULL;
1762 fra.me.REG[0] = p0;
1763 /* parser/lexer.nit:394 */
1764 REGB0 = TAG_Int(29);
1765 goto label1;
1766 label1: while(0);
1767 stack_frame_head = fra.me.prev;
1768 return REGB0;
1769 }
1770 void parser___lexer___TKwfor___init_tk(val_t p0, val_t p1, int* init_table){
1771 int itpos29 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwfor].i;
1772 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1773 val_t REGB0;
1774 val_t tmp;
1775 static val_t once_value_1; /* Once value */
1776 static val_t once_value_2; /* Once value */
1777 if (init_table[itpos29]) return;
1778 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1779 fra.me.file = LOCATE_parser___lexer;
1780 fra.me.line = 397;
1781 fra.me.meth = LOCATE_parser___lexer___TKwfor___init_tk;
1782 fra.me.has_broke = 0;
1783 fra.me.REG_size = 3;
1784 fra.me.nitni_local_ref_head = NULL;
1785 fra.me.REG[0] = NIT_NULL;
1786 fra.me.REG[1] = NIT_NULL;
1787 fra.me.REG[2] = NIT_NULL;
1788 fra.me.REG[0] = p0;
1789 fra.me.REG[1] = p1;
1790 /* parser/lexer.nit:399 */
1791 if (!once_value_1) {
1792 if (!once_value_2) {
1793 fra.me.REG[2] = BOX_NativeString("for");
1794 REGB0 = TAG_Int(3);
1795 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1796 once_value_2 = fra.me.REG[2];
1797 register_static_object(&once_value_2);
1798 } else fra.me.REG[2] = once_value_2;
1799 fra.me.REG[2] = fra.me.REG[2];
1800 once_value_1 = fra.me.REG[2];
1801 register_static_object(&once_value_1);
1802 } else fra.me.REG[2] = once_value_1;
1803 fra.me.REG[2] = fra.me.REG[2];
1804 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1805 /* parser/lexer.nit:400 */
1806 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1807 stack_frame_head = fra.me.prev;
1808 init_table[itpos29] = 1;
1809 return;
1810 }
1811 val_t parser___lexer___TKwin___parser_index(val_t p0){
1812 struct {struct stack_frame_t me;} fra;
1813 val_t REGB0;
1814 val_t tmp;
1815 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1816 fra.me.file = LOCATE_parser___lexer;
1817 fra.me.line = 405;
1818 fra.me.meth = LOCATE_parser___lexer___TKwin___parser_index;
1819 fra.me.has_broke = 0;
1820 fra.me.REG_size = 1;
1821 fra.me.nitni_local_ref_head = NULL;
1822 fra.me.REG[0] = NIT_NULL;
1823 fra.me.REG[0] = p0;
1824 /* parser/lexer.nit:407 */
1825 REGB0 = TAG_Int(30);
1826 goto label1;
1827 label1: while(0);
1828 stack_frame_head = fra.me.prev;
1829 return REGB0;
1830 }
1831 void parser___lexer___TKwin___init_tk(val_t p0, val_t p1, int* init_table){
1832 int itpos30 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwin].i;
1833 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1834 val_t REGB0;
1835 val_t tmp;
1836 static val_t once_value_1; /* Once value */
1837 static val_t once_value_2; /* Once value */
1838 if (init_table[itpos30]) return;
1839 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1840 fra.me.file = LOCATE_parser___lexer;
1841 fra.me.line = 410;
1842 fra.me.meth = LOCATE_parser___lexer___TKwin___init_tk;
1843 fra.me.has_broke = 0;
1844 fra.me.REG_size = 3;
1845 fra.me.nitni_local_ref_head = NULL;
1846 fra.me.REG[0] = NIT_NULL;
1847 fra.me.REG[1] = NIT_NULL;
1848 fra.me.REG[2] = NIT_NULL;
1849 fra.me.REG[0] = p0;
1850 fra.me.REG[1] = p1;
1851 /* parser/lexer.nit:412 */
1852 if (!once_value_1) {
1853 if (!once_value_2) {
1854 fra.me.REG[2] = BOX_NativeString("in");
1855 REGB0 = TAG_Int(2);
1856 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1857 once_value_2 = fra.me.REG[2];
1858 register_static_object(&once_value_2);
1859 } else fra.me.REG[2] = once_value_2;
1860 fra.me.REG[2] = fra.me.REG[2];
1861 once_value_1 = fra.me.REG[2];
1862 register_static_object(&once_value_1);
1863 } else fra.me.REG[2] = once_value_1;
1864 fra.me.REG[2] = fra.me.REG[2];
1865 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1866 /* parser/lexer.nit:413 */
1867 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1868 stack_frame_head = fra.me.prev;
1869 init_table[itpos30] = 1;
1870 return;
1871 }
1872 val_t parser___lexer___TKwand___parser_index(val_t p0){
1873 struct {struct stack_frame_t me;} fra;
1874 val_t REGB0;
1875 val_t tmp;
1876 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1877 fra.me.file = LOCATE_parser___lexer;
1878 fra.me.line = 418;
1879 fra.me.meth = LOCATE_parser___lexer___TKwand___parser_index;
1880 fra.me.has_broke = 0;
1881 fra.me.REG_size = 1;
1882 fra.me.nitni_local_ref_head = NULL;
1883 fra.me.REG[0] = NIT_NULL;
1884 fra.me.REG[0] = p0;
1885 /* parser/lexer.nit:420 */
1886 REGB0 = TAG_Int(31);
1887 goto label1;
1888 label1: while(0);
1889 stack_frame_head = fra.me.prev;
1890 return REGB0;
1891 }
1892 void parser___lexer___TKwand___init_tk(val_t p0, val_t p1, int* init_table){
1893 int itpos31 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwand].i;
1894 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1895 val_t REGB0;
1896 val_t tmp;
1897 static val_t once_value_1; /* Once value */
1898 static val_t once_value_2; /* Once value */
1899 if (init_table[itpos31]) return;
1900 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1901 fra.me.file = LOCATE_parser___lexer;
1902 fra.me.line = 423;
1903 fra.me.meth = LOCATE_parser___lexer___TKwand___init_tk;
1904 fra.me.has_broke = 0;
1905 fra.me.REG_size = 3;
1906 fra.me.nitni_local_ref_head = NULL;
1907 fra.me.REG[0] = NIT_NULL;
1908 fra.me.REG[1] = NIT_NULL;
1909 fra.me.REG[2] = NIT_NULL;
1910 fra.me.REG[0] = p0;
1911 fra.me.REG[1] = p1;
1912 /* parser/lexer.nit:425 */
1913 if (!once_value_1) {
1914 if (!once_value_2) {
1915 fra.me.REG[2] = BOX_NativeString("and");
1916 REGB0 = TAG_Int(3);
1917 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1918 once_value_2 = fra.me.REG[2];
1919 register_static_object(&once_value_2);
1920 } else fra.me.REG[2] = once_value_2;
1921 fra.me.REG[2] = fra.me.REG[2];
1922 once_value_1 = fra.me.REG[2];
1923 register_static_object(&once_value_1);
1924 } else fra.me.REG[2] = once_value_1;
1925 fra.me.REG[2] = fra.me.REG[2];
1926 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1927 /* parser/lexer.nit:426 */
1928 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1929 stack_frame_head = fra.me.prev;
1930 init_table[itpos31] = 1;
1931 return;
1932 }
1933 val_t parser___lexer___TKwor___parser_index(val_t p0){
1934 struct {struct stack_frame_t me;} fra;
1935 val_t REGB0;
1936 val_t tmp;
1937 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1938 fra.me.file = LOCATE_parser___lexer;
1939 fra.me.line = 431;
1940 fra.me.meth = LOCATE_parser___lexer___TKwor___parser_index;
1941 fra.me.has_broke = 0;
1942 fra.me.REG_size = 1;
1943 fra.me.nitni_local_ref_head = NULL;
1944 fra.me.REG[0] = NIT_NULL;
1945 fra.me.REG[0] = p0;
1946 /* parser/lexer.nit:433 */
1947 REGB0 = TAG_Int(32);
1948 goto label1;
1949 label1: while(0);
1950 stack_frame_head = fra.me.prev;
1951 return REGB0;
1952 }
1953 void parser___lexer___TKwor___init_tk(val_t p0, val_t p1, int* init_table){
1954 int itpos32 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwor].i;
1955 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1956 val_t REGB0;
1957 val_t tmp;
1958 static val_t once_value_1; /* Once value */
1959 static val_t once_value_2; /* Once value */
1960 if (init_table[itpos32]) return;
1961 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1962 fra.me.file = LOCATE_parser___lexer;
1963 fra.me.line = 436;
1964 fra.me.meth = LOCATE_parser___lexer___TKwor___init_tk;
1965 fra.me.has_broke = 0;
1966 fra.me.REG_size = 3;
1967 fra.me.nitni_local_ref_head = NULL;
1968 fra.me.REG[0] = NIT_NULL;
1969 fra.me.REG[1] = NIT_NULL;
1970 fra.me.REG[2] = NIT_NULL;
1971 fra.me.REG[0] = p0;
1972 fra.me.REG[1] = p1;
1973 /* parser/lexer.nit:438 */
1974 if (!once_value_1) {
1975 if (!once_value_2) {
1976 fra.me.REG[2] = BOX_NativeString("or");
1977 REGB0 = TAG_Int(2);
1978 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
1979 once_value_2 = fra.me.REG[2];
1980 register_static_object(&once_value_2);
1981 } else fra.me.REG[2] = once_value_2;
1982 fra.me.REG[2] = fra.me.REG[2];
1983 once_value_1 = fra.me.REG[2];
1984 register_static_object(&once_value_1);
1985 } else fra.me.REG[2] = once_value_1;
1986 fra.me.REG[2] = fra.me.REG[2];
1987 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
1988 /* parser/lexer.nit:439 */
1989 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
1990 stack_frame_head = fra.me.prev;
1991 init_table[itpos32] = 1;
1992 return;
1993 }
1994 val_t parser___lexer___TKwnot___parser_index(val_t p0){
1995 struct {struct stack_frame_t me;} fra;
1996 val_t REGB0;
1997 val_t tmp;
1998 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1999 fra.me.file = LOCATE_parser___lexer;
2000 fra.me.line = 444;
2001 fra.me.meth = LOCATE_parser___lexer___TKwnot___parser_index;
2002 fra.me.has_broke = 0;
2003 fra.me.REG_size = 1;
2004 fra.me.nitni_local_ref_head = NULL;
2005 fra.me.REG[0] = NIT_NULL;
2006 fra.me.REG[0] = p0;
2007 /* parser/lexer.nit:446 */
2008 REGB0 = TAG_Int(33);
2009 goto label1;
2010 label1: while(0);
2011 stack_frame_head = fra.me.prev;
2012 return REGB0;
2013 }
2014 void parser___lexer___TKwnot___init_tk(val_t p0, val_t p1, int* init_table){
2015 int itpos33 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwnot].i;
2016 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2017 val_t REGB0;
2018 val_t tmp;
2019 static val_t once_value_1; /* Once value */
2020 static val_t once_value_2; /* Once value */
2021 if (init_table[itpos33]) return;
2022 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2023 fra.me.file = LOCATE_parser___lexer;
2024 fra.me.line = 449;
2025 fra.me.meth = LOCATE_parser___lexer___TKwnot___init_tk;
2026 fra.me.has_broke = 0;
2027 fra.me.REG_size = 3;
2028 fra.me.nitni_local_ref_head = NULL;
2029 fra.me.REG[0] = NIT_NULL;
2030 fra.me.REG[1] = NIT_NULL;
2031 fra.me.REG[2] = NIT_NULL;
2032 fra.me.REG[0] = p0;
2033 fra.me.REG[1] = p1;
2034 /* parser/lexer.nit:451 */
2035 if (!once_value_1) {
2036 if (!once_value_2) {
2037 fra.me.REG[2] = BOX_NativeString("not");
2038 REGB0 = TAG_Int(3);
2039 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2040 once_value_2 = fra.me.REG[2];
2041 register_static_object(&once_value_2);
2042 } else fra.me.REG[2] = once_value_2;
2043 fra.me.REG[2] = fra.me.REG[2];
2044 once_value_1 = fra.me.REG[2];
2045 register_static_object(&once_value_1);
2046 } else fra.me.REG[2] = once_value_1;
2047 fra.me.REG[2] = fra.me.REG[2];
2048 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2049 /* parser/lexer.nit:452 */
2050 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2051 stack_frame_head = fra.me.prev;
2052 init_table[itpos33] = 1;
2053 return;
2054 }
2055 val_t parser___lexer___TKwreturn___parser_index(val_t p0){
2056 struct {struct stack_frame_t me;} fra;
2057 val_t REGB0;
2058 val_t tmp;
2059 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2060 fra.me.file = LOCATE_parser___lexer;
2061 fra.me.line = 457;
2062 fra.me.meth = LOCATE_parser___lexer___TKwreturn___parser_index;
2063 fra.me.has_broke = 0;
2064 fra.me.REG_size = 1;
2065 fra.me.nitni_local_ref_head = NULL;
2066 fra.me.REG[0] = NIT_NULL;
2067 fra.me.REG[0] = p0;
2068 /* parser/lexer.nit:459 */
2069 REGB0 = TAG_Int(34);
2070 goto label1;
2071 label1: while(0);
2072 stack_frame_head = fra.me.prev;
2073 return REGB0;
2074 }
2075 void parser___lexer___TKwreturn___init_tk(val_t p0, val_t p1, int* init_table){
2076 int itpos34 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwreturn].i;
2077 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2078 val_t REGB0;
2079 val_t tmp;
2080 static val_t once_value_1; /* Once value */
2081 static val_t once_value_2; /* Once value */
2082 if (init_table[itpos34]) return;
2083 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2084 fra.me.file = LOCATE_parser___lexer;
2085 fra.me.line = 462;
2086 fra.me.meth = LOCATE_parser___lexer___TKwreturn___init_tk;
2087 fra.me.has_broke = 0;
2088 fra.me.REG_size = 3;
2089 fra.me.nitni_local_ref_head = NULL;
2090 fra.me.REG[0] = NIT_NULL;
2091 fra.me.REG[1] = NIT_NULL;
2092 fra.me.REG[2] = NIT_NULL;
2093 fra.me.REG[0] = p0;
2094 fra.me.REG[1] = p1;
2095 /* parser/lexer.nit:464 */
2096 if (!once_value_1) {
2097 if (!once_value_2) {
2098 fra.me.REG[2] = BOX_NativeString("return");
2099 REGB0 = TAG_Int(6);
2100 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2101 once_value_2 = fra.me.REG[2];
2102 register_static_object(&once_value_2);
2103 } else fra.me.REG[2] = once_value_2;
2104 fra.me.REG[2] = fra.me.REG[2];
2105 once_value_1 = fra.me.REG[2];
2106 register_static_object(&once_value_1);
2107 } else fra.me.REG[2] = once_value_1;
2108 fra.me.REG[2] = fra.me.REG[2];
2109 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2110 /* parser/lexer.nit:465 */
2111 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2112 stack_frame_head = fra.me.prev;
2113 init_table[itpos34] = 1;
2114 return;
2115 }
2116 val_t parser___lexer___TKwcontinue___parser_index(val_t p0){
2117 struct {struct stack_frame_t me;} fra;
2118 val_t REGB0;
2119 val_t tmp;
2120 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2121 fra.me.file = LOCATE_parser___lexer;
2122 fra.me.line = 470;
2123 fra.me.meth = LOCATE_parser___lexer___TKwcontinue___parser_index;
2124 fra.me.has_broke = 0;
2125 fra.me.REG_size = 1;
2126 fra.me.nitni_local_ref_head = NULL;
2127 fra.me.REG[0] = NIT_NULL;
2128 fra.me.REG[0] = p0;
2129 /* parser/lexer.nit:472 */
2130 REGB0 = TAG_Int(35);
2131 goto label1;
2132 label1: while(0);
2133 stack_frame_head = fra.me.prev;
2134 return REGB0;
2135 }
2136 void parser___lexer___TKwcontinue___init_tk(val_t p0, val_t p1, int* init_table){
2137 int itpos35 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwcontinue].i;
2138 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2139 val_t REGB0;
2140 val_t tmp;
2141 static val_t once_value_1; /* Once value */
2142 static val_t once_value_2; /* Once value */
2143 if (init_table[itpos35]) return;
2144 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2145 fra.me.file = LOCATE_parser___lexer;
2146 fra.me.line = 475;
2147 fra.me.meth = LOCATE_parser___lexer___TKwcontinue___init_tk;
2148 fra.me.has_broke = 0;
2149 fra.me.REG_size = 3;
2150 fra.me.nitni_local_ref_head = NULL;
2151 fra.me.REG[0] = NIT_NULL;
2152 fra.me.REG[1] = NIT_NULL;
2153 fra.me.REG[2] = NIT_NULL;
2154 fra.me.REG[0] = p0;
2155 fra.me.REG[1] = p1;
2156 /* parser/lexer.nit:477 */
2157 if (!once_value_1) {
2158 if (!once_value_2) {
2159 fra.me.REG[2] = BOX_NativeString("continue");
2160 REGB0 = TAG_Int(8);
2161 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2162 once_value_2 = fra.me.REG[2];
2163 register_static_object(&once_value_2);
2164 } else fra.me.REG[2] = once_value_2;
2165 fra.me.REG[2] = fra.me.REG[2];
2166 once_value_1 = fra.me.REG[2];
2167 register_static_object(&once_value_1);
2168 } else fra.me.REG[2] = once_value_1;
2169 fra.me.REG[2] = fra.me.REG[2];
2170 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2171 /* parser/lexer.nit:478 */
2172 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2173 stack_frame_head = fra.me.prev;
2174 init_table[itpos35] = 1;
2175 return;
2176 }
2177 val_t parser___lexer___TKwbreak___parser_index(val_t p0){
2178 struct {struct stack_frame_t me;} fra;
2179 val_t REGB0;
2180 val_t tmp;
2181 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2182 fra.me.file = LOCATE_parser___lexer;
2183 fra.me.line = 483;
2184 fra.me.meth = LOCATE_parser___lexer___TKwbreak___parser_index;
2185 fra.me.has_broke = 0;
2186 fra.me.REG_size = 1;
2187 fra.me.nitni_local_ref_head = NULL;
2188 fra.me.REG[0] = NIT_NULL;
2189 fra.me.REG[0] = p0;
2190 /* parser/lexer.nit:485 */
2191 REGB0 = TAG_Int(36);
2192 goto label1;
2193 label1: while(0);
2194 stack_frame_head = fra.me.prev;
2195 return REGB0;
2196 }
2197 void parser___lexer___TKwbreak___init_tk(val_t p0, val_t p1, int* init_table){
2198 int itpos36 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwbreak].i;
2199 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2200 val_t REGB0;
2201 val_t tmp;
2202 static val_t once_value_1; /* Once value */
2203 static val_t once_value_2; /* Once value */
2204 if (init_table[itpos36]) return;
2205 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2206 fra.me.file = LOCATE_parser___lexer;
2207 fra.me.line = 488;
2208 fra.me.meth = LOCATE_parser___lexer___TKwbreak___init_tk;
2209 fra.me.has_broke = 0;
2210 fra.me.REG_size = 3;
2211 fra.me.nitni_local_ref_head = NULL;
2212 fra.me.REG[0] = NIT_NULL;
2213 fra.me.REG[1] = NIT_NULL;
2214 fra.me.REG[2] = NIT_NULL;
2215 fra.me.REG[0] = p0;
2216 fra.me.REG[1] = p1;
2217 /* parser/lexer.nit:490 */
2218 if (!once_value_1) {
2219 if (!once_value_2) {
2220 fra.me.REG[2] = BOX_NativeString("break");
2221 REGB0 = TAG_Int(5);
2222 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2223 once_value_2 = fra.me.REG[2];
2224 register_static_object(&once_value_2);
2225 } else fra.me.REG[2] = once_value_2;
2226 fra.me.REG[2] = fra.me.REG[2];
2227 once_value_1 = fra.me.REG[2];
2228 register_static_object(&once_value_1);
2229 } else fra.me.REG[2] = once_value_1;
2230 fra.me.REG[2] = fra.me.REG[2];
2231 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2232 /* parser/lexer.nit:491 */
2233 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2234 stack_frame_head = fra.me.prev;
2235 init_table[itpos36] = 1;
2236 return;
2237 }
2238 val_t parser___lexer___TKwabort___parser_index(val_t p0){
2239 struct {struct stack_frame_t me;} fra;
2240 val_t REGB0;
2241 val_t tmp;
2242 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2243 fra.me.file = LOCATE_parser___lexer;
2244 fra.me.line = 496;
2245 fra.me.meth = LOCATE_parser___lexer___TKwabort___parser_index;
2246 fra.me.has_broke = 0;
2247 fra.me.REG_size = 1;
2248 fra.me.nitni_local_ref_head = NULL;
2249 fra.me.REG[0] = NIT_NULL;
2250 fra.me.REG[0] = p0;
2251 /* parser/lexer.nit:498 */
2252 REGB0 = TAG_Int(37);
2253 goto label1;
2254 label1: while(0);
2255 stack_frame_head = fra.me.prev;
2256 return REGB0;
2257 }
2258 void parser___lexer___TKwabort___init_tk(val_t p0, val_t p1, int* init_table){
2259 int itpos37 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwabort].i;
2260 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2261 val_t REGB0;
2262 val_t tmp;
2263 static val_t once_value_1; /* Once value */
2264 static val_t once_value_2; /* Once value */
2265 if (init_table[itpos37]) return;
2266 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2267 fra.me.file = LOCATE_parser___lexer;
2268 fra.me.line = 501;
2269 fra.me.meth = LOCATE_parser___lexer___TKwabort___init_tk;
2270 fra.me.has_broke = 0;
2271 fra.me.REG_size = 3;
2272 fra.me.nitni_local_ref_head = NULL;
2273 fra.me.REG[0] = NIT_NULL;
2274 fra.me.REG[1] = NIT_NULL;
2275 fra.me.REG[2] = NIT_NULL;
2276 fra.me.REG[0] = p0;
2277 fra.me.REG[1] = p1;
2278 /* parser/lexer.nit:503 */
2279 if (!once_value_1) {
2280 if (!once_value_2) {
2281 fra.me.REG[2] = BOX_NativeString("abort");
2282 REGB0 = TAG_Int(5);
2283 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2284 once_value_2 = fra.me.REG[2];
2285 register_static_object(&once_value_2);
2286 } else fra.me.REG[2] = once_value_2;
2287 fra.me.REG[2] = fra.me.REG[2];
2288 once_value_1 = fra.me.REG[2];
2289 register_static_object(&once_value_1);
2290 } else fra.me.REG[2] = once_value_1;
2291 fra.me.REG[2] = fra.me.REG[2];
2292 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2293 /* parser/lexer.nit:504 */
2294 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2295 stack_frame_head = fra.me.prev;
2296 init_table[itpos37] = 1;
2297 return;
2298 }
2299 val_t parser___lexer___TKwassert___parser_index(val_t p0){
2300 struct {struct stack_frame_t me;} fra;
2301 val_t REGB0;
2302 val_t tmp;
2303 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2304 fra.me.file = LOCATE_parser___lexer;
2305 fra.me.line = 509;
2306 fra.me.meth = LOCATE_parser___lexer___TKwassert___parser_index;
2307 fra.me.has_broke = 0;
2308 fra.me.REG_size = 1;
2309 fra.me.nitni_local_ref_head = NULL;
2310 fra.me.REG[0] = NIT_NULL;
2311 fra.me.REG[0] = p0;
2312 /* parser/lexer.nit:511 */
2313 REGB0 = TAG_Int(38);
2314 goto label1;
2315 label1: while(0);
2316 stack_frame_head = fra.me.prev;
2317 return REGB0;
2318 }
2319 void parser___lexer___TKwassert___init_tk(val_t p0, val_t p1, int* init_table){
2320 int itpos38 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwassert].i;
2321 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2322 val_t REGB0;
2323 val_t tmp;
2324 static val_t once_value_1; /* Once value */
2325 static val_t once_value_2; /* Once value */
2326 if (init_table[itpos38]) return;
2327 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2328 fra.me.file = LOCATE_parser___lexer;
2329 fra.me.line = 514;
2330 fra.me.meth = LOCATE_parser___lexer___TKwassert___init_tk;
2331 fra.me.has_broke = 0;
2332 fra.me.REG_size = 3;
2333 fra.me.nitni_local_ref_head = NULL;
2334 fra.me.REG[0] = NIT_NULL;
2335 fra.me.REG[1] = NIT_NULL;
2336 fra.me.REG[2] = NIT_NULL;
2337 fra.me.REG[0] = p0;
2338 fra.me.REG[1] = p1;
2339 /* parser/lexer.nit:516 */
2340 if (!once_value_1) {
2341 if (!once_value_2) {
2342 fra.me.REG[2] = BOX_NativeString("assert");
2343 REGB0 = TAG_Int(6);
2344 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2345 once_value_2 = fra.me.REG[2];
2346 register_static_object(&once_value_2);
2347 } else fra.me.REG[2] = once_value_2;
2348 fra.me.REG[2] = fra.me.REG[2];
2349 once_value_1 = fra.me.REG[2];
2350 register_static_object(&once_value_1);
2351 } else fra.me.REG[2] = once_value_1;
2352 fra.me.REG[2] = fra.me.REG[2];
2353 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2354 /* parser/lexer.nit:517 */
2355 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2356 stack_frame_head = fra.me.prev;
2357 init_table[itpos38] = 1;
2358 return;
2359 }
2360 val_t parser___lexer___TKwnew___parser_index(val_t p0){
2361 struct {struct stack_frame_t me;} fra;
2362 val_t REGB0;
2363 val_t tmp;
2364 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2365 fra.me.file = LOCATE_parser___lexer;
2366 fra.me.line = 522;
2367 fra.me.meth = LOCATE_parser___lexer___TKwnew___parser_index;
2368 fra.me.has_broke = 0;
2369 fra.me.REG_size = 1;
2370 fra.me.nitni_local_ref_head = NULL;
2371 fra.me.REG[0] = NIT_NULL;
2372 fra.me.REG[0] = p0;
2373 /* parser/lexer.nit:524 */
2374 REGB0 = TAG_Int(39);
2375 goto label1;
2376 label1: while(0);
2377 stack_frame_head = fra.me.prev;
2378 return REGB0;
2379 }
2380 void parser___lexer___TKwnew___init_tk(val_t p0, val_t p1, int* init_table){
2381 int itpos39 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwnew].i;
2382 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2383 val_t REGB0;
2384 val_t tmp;
2385 static val_t once_value_1; /* Once value */
2386 static val_t once_value_2; /* Once value */
2387 if (init_table[itpos39]) return;
2388 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2389 fra.me.file = LOCATE_parser___lexer;
2390 fra.me.line = 527;
2391 fra.me.meth = LOCATE_parser___lexer___TKwnew___init_tk;
2392 fra.me.has_broke = 0;
2393 fra.me.REG_size = 3;
2394 fra.me.nitni_local_ref_head = NULL;
2395 fra.me.REG[0] = NIT_NULL;
2396 fra.me.REG[1] = NIT_NULL;
2397 fra.me.REG[2] = NIT_NULL;
2398 fra.me.REG[0] = p0;
2399 fra.me.REG[1] = p1;
2400 /* parser/lexer.nit:529 */
2401 if (!once_value_1) {
2402 if (!once_value_2) {
2403 fra.me.REG[2] = BOX_NativeString("new");
2404 REGB0 = TAG_Int(3);
2405 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2406 once_value_2 = fra.me.REG[2];
2407 register_static_object(&once_value_2);
2408 } else fra.me.REG[2] = once_value_2;
2409 fra.me.REG[2] = fra.me.REG[2];
2410 once_value_1 = fra.me.REG[2];
2411 register_static_object(&once_value_1);
2412 } else fra.me.REG[2] = once_value_1;
2413 fra.me.REG[2] = fra.me.REG[2];
2414 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2415 /* parser/lexer.nit:530 */
2416 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2417 stack_frame_head = fra.me.prev;
2418 init_table[itpos39] = 1;
2419 return;
2420 }
2421 val_t parser___lexer___TKwisa___parser_index(val_t p0){
2422 struct {struct stack_frame_t me;} fra;
2423 val_t REGB0;
2424 val_t tmp;
2425 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2426 fra.me.file = LOCATE_parser___lexer;
2427 fra.me.line = 535;
2428 fra.me.meth = LOCATE_parser___lexer___TKwisa___parser_index;
2429 fra.me.has_broke = 0;
2430 fra.me.REG_size = 1;
2431 fra.me.nitni_local_ref_head = NULL;
2432 fra.me.REG[0] = NIT_NULL;
2433 fra.me.REG[0] = p0;
2434 /* parser/lexer.nit:537 */
2435 REGB0 = TAG_Int(40);
2436 goto label1;
2437 label1: while(0);
2438 stack_frame_head = fra.me.prev;
2439 return REGB0;
2440 }
2441 void parser___lexer___TKwisa___init_tk(val_t p0, val_t p1, int* init_table){
2442 int itpos40 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwisa].i;
2443 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2444 val_t REGB0;
2445 val_t tmp;
2446 static val_t once_value_1; /* Once value */
2447 static val_t once_value_2; /* Once value */
2448 if (init_table[itpos40]) return;
2449 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2450 fra.me.file = LOCATE_parser___lexer;
2451 fra.me.line = 540;
2452 fra.me.meth = LOCATE_parser___lexer___TKwisa___init_tk;
2453 fra.me.has_broke = 0;
2454 fra.me.REG_size = 3;
2455 fra.me.nitni_local_ref_head = NULL;
2456 fra.me.REG[0] = NIT_NULL;
2457 fra.me.REG[1] = NIT_NULL;
2458 fra.me.REG[2] = NIT_NULL;
2459 fra.me.REG[0] = p0;
2460 fra.me.REG[1] = p1;
2461 /* parser/lexer.nit:542 */
2462 if (!once_value_1) {
2463 if (!once_value_2) {
2464 fra.me.REG[2] = BOX_NativeString("isa");
2465 REGB0 = TAG_Int(3);
2466 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2467 once_value_2 = fra.me.REG[2];
2468 register_static_object(&once_value_2);
2469 } else fra.me.REG[2] = once_value_2;
2470 fra.me.REG[2] = fra.me.REG[2];
2471 once_value_1 = fra.me.REG[2];
2472 register_static_object(&once_value_1);
2473 } else fra.me.REG[2] = once_value_1;
2474 fra.me.REG[2] = fra.me.REG[2];
2475 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2476 /* parser/lexer.nit:543 */
2477 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2478 stack_frame_head = fra.me.prev;
2479 init_table[itpos40] = 1;
2480 return;
2481 }
2482 val_t parser___lexer___TKwonce___parser_index(val_t p0){
2483 struct {struct stack_frame_t me;} fra;
2484 val_t REGB0;
2485 val_t tmp;
2486 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2487 fra.me.file = LOCATE_parser___lexer;
2488 fra.me.line = 548;
2489 fra.me.meth = LOCATE_parser___lexer___TKwonce___parser_index;
2490 fra.me.has_broke = 0;
2491 fra.me.REG_size = 1;
2492 fra.me.nitni_local_ref_head = NULL;
2493 fra.me.REG[0] = NIT_NULL;
2494 fra.me.REG[0] = p0;
2495 /* parser/lexer.nit:550 */
2496 REGB0 = TAG_Int(41);
2497 goto label1;
2498 label1: while(0);
2499 stack_frame_head = fra.me.prev;
2500 return REGB0;
2501 }
2502 void parser___lexer___TKwonce___init_tk(val_t p0, val_t p1, int* init_table){
2503 int itpos41 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwonce].i;
2504 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2505 val_t REGB0;
2506 val_t tmp;
2507 static val_t once_value_1; /* Once value */
2508 static val_t once_value_2; /* Once value */
2509 if (init_table[itpos41]) return;
2510 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2511 fra.me.file = LOCATE_parser___lexer;
2512 fra.me.line = 553;
2513 fra.me.meth = LOCATE_parser___lexer___TKwonce___init_tk;
2514 fra.me.has_broke = 0;
2515 fra.me.REG_size = 3;
2516 fra.me.nitni_local_ref_head = NULL;
2517 fra.me.REG[0] = NIT_NULL;
2518 fra.me.REG[1] = NIT_NULL;
2519 fra.me.REG[2] = NIT_NULL;
2520 fra.me.REG[0] = p0;
2521 fra.me.REG[1] = p1;
2522 /* parser/lexer.nit:555 */
2523 if (!once_value_1) {
2524 if (!once_value_2) {
2525 fra.me.REG[2] = BOX_NativeString("once");
2526 REGB0 = TAG_Int(4);
2527 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2528 once_value_2 = fra.me.REG[2];
2529 register_static_object(&once_value_2);
2530 } else fra.me.REG[2] = once_value_2;
2531 fra.me.REG[2] = fra.me.REG[2];
2532 once_value_1 = fra.me.REG[2];
2533 register_static_object(&once_value_1);
2534 } else fra.me.REG[2] = once_value_1;
2535 fra.me.REG[2] = fra.me.REG[2];
2536 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2537 /* parser/lexer.nit:556 */
2538 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2539 stack_frame_head = fra.me.prev;
2540 init_table[itpos41] = 1;
2541 return;
2542 }
2543 val_t parser___lexer___TKwsuper___parser_index(val_t p0){
2544 struct {struct stack_frame_t me;} fra;
2545 val_t REGB0;
2546 val_t tmp;
2547 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2548 fra.me.file = LOCATE_parser___lexer;
2549 fra.me.line = 561;
2550 fra.me.meth = LOCATE_parser___lexer___TKwsuper___parser_index;
2551 fra.me.has_broke = 0;
2552 fra.me.REG_size = 1;
2553 fra.me.nitni_local_ref_head = NULL;
2554 fra.me.REG[0] = NIT_NULL;
2555 fra.me.REG[0] = p0;
2556 /* parser/lexer.nit:563 */
2557 REGB0 = TAG_Int(42);
2558 goto label1;
2559 label1: while(0);
2560 stack_frame_head = fra.me.prev;
2561 return REGB0;
2562 }
2563 void parser___lexer___TKwsuper___init_tk(val_t p0, val_t p1, int* init_table){
2564 int itpos42 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwsuper].i;
2565 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2566 val_t REGB0;
2567 val_t tmp;
2568 static val_t once_value_1; /* Once value */
2569 static val_t once_value_2; /* Once value */
2570 if (init_table[itpos42]) return;
2571 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2572 fra.me.file = LOCATE_parser___lexer;
2573 fra.me.line = 566;
2574 fra.me.meth = LOCATE_parser___lexer___TKwsuper___init_tk;
2575 fra.me.has_broke = 0;
2576 fra.me.REG_size = 3;
2577 fra.me.nitni_local_ref_head = NULL;
2578 fra.me.REG[0] = NIT_NULL;
2579 fra.me.REG[1] = NIT_NULL;
2580 fra.me.REG[2] = NIT_NULL;
2581 fra.me.REG[0] = p0;
2582 fra.me.REG[1] = p1;
2583 /* parser/lexer.nit:568 */
2584 if (!once_value_1) {
2585 if (!once_value_2) {
2586 fra.me.REG[2] = BOX_NativeString("super");
2587 REGB0 = TAG_Int(5);
2588 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2589 once_value_2 = fra.me.REG[2];
2590 register_static_object(&once_value_2);
2591 } else fra.me.REG[2] = once_value_2;
2592 fra.me.REG[2] = fra.me.REG[2];
2593 once_value_1 = fra.me.REG[2];
2594 register_static_object(&once_value_1);
2595 } else fra.me.REG[2] = once_value_1;
2596 fra.me.REG[2] = fra.me.REG[2];
2597 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2598 /* parser/lexer.nit:569 */
2599 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2600 stack_frame_head = fra.me.prev;
2601 init_table[itpos42] = 1;
2602 return;
2603 }
2604 val_t parser___lexer___TKwself___parser_index(val_t p0){
2605 struct {struct stack_frame_t me;} fra;
2606 val_t REGB0;
2607 val_t tmp;
2608 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2609 fra.me.file = LOCATE_parser___lexer;
2610 fra.me.line = 574;
2611 fra.me.meth = LOCATE_parser___lexer___TKwself___parser_index;
2612 fra.me.has_broke = 0;
2613 fra.me.REG_size = 1;
2614 fra.me.nitni_local_ref_head = NULL;
2615 fra.me.REG[0] = NIT_NULL;
2616 fra.me.REG[0] = p0;
2617 /* parser/lexer.nit:576 */
2618 REGB0 = TAG_Int(43);
2619 goto label1;
2620 label1: while(0);
2621 stack_frame_head = fra.me.prev;
2622 return REGB0;
2623 }
2624 void parser___lexer___TKwself___init_tk(val_t p0, val_t p1, int* init_table){
2625 int itpos43 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwself].i;
2626 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2627 val_t REGB0;
2628 val_t tmp;
2629 static val_t once_value_1; /* Once value */
2630 static val_t once_value_2; /* Once value */
2631 if (init_table[itpos43]) return;
2632 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2633 fra.me.file = LOCATE_parser___lexer;
2634 fra.me.line = 579;
2635 fra.me.meth = LOCATE_parser___lexer___TKwself___init_tk;
2636 fra.me.has_broke = 0;
2637 fra.me.REG_size = 3;
2638 fra.me.nitni_local_ref_head = NULL;
2639 fra.me.REG[0] = NIT_NULL;
2640 fra.me.REG[1] = NIT_NULL;
2641 fra.me.REG[2] = NIT_NULL;
2642 fra.me.REG[0] = p0;
2643 fra.me.REG[1] = p1;
2644 /* parser/lexer.nit:581 */
2645 if (!once_value_1) {
2646 if (!once_value_2) {
2647 fra.me.REG[2] = BOX_NativeString("self");
2648 REGB0 = TAG_Int(4);
2649 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2650 once_value_2 = fra.me.REG[2];
2651 register_static_object(&once_value_2);
2652 } else fra.me.REG[2] = once_value_2;
2653 fra.me.REG[2] = fra.me.REG[2];
2654 once_value_1 = fra.me.REG[2];
2655 register_static_object(&once_value_1);
2656 } else fra.me.REG[2] = once_value_1;
2657 fra.me.REG[2] = fra.me.REG[2];
2658 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2659 /* parser/lexer.nit:582 */
2660 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2661 stack_frame_head = fra.me.prev;
2662 init_table[itpos43] = 1;
2663 return;
2664 }
2665 val_t parser___lexer___TKwtrue___parser_index(val_t p0){
2666 struct {struct stack_frame_t me;} fra;
2667 val_t REGB0;
2668 val_t tmp;
2669 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2670 fra.me.file = LOCATE_parser___lexer;
2671 fra.me.line = 587;
2672 fra.me.meth = LOCATE_parser___lexer___TKwtrue___parser_index;
2673 fra.me.has_broke = 0;
2674 fra.me.REG_size = 1;
2675 fra.me.nitni_local_ref_head = NULL;
2676 fra.me.REG[0] = NIT_NULL;
2677 fra.me.REG[0] = p0;
2678 /* parser/lexer.nit:589 */
2679 REGB0 = TAG_Int(44);
2680 goto label1;
2681 label1: while(0);
2682 stack_frame_head = fra.me.prev;
2683 return REGB0;
2684 }
2685 void parser___lexer___TKwtrue___init_tk(val_t p0, val_t p1, int* init_table){
2686 int itpos44 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwtrue].i;
2687 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2688 val_t REGB0;
2689 val_t tmp;
2690 static val_t once_value_1; /* Once value */
2691 static val_t once_value_2; /* Once value */
2692 if (init_table[itpos44]) return;
2693 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2694 fra.me.file = LOCATE_parser___lexer;
2695 fra.me.line = 592;
2696 fra.me.meth = LOCATE_parser___lexer___TKwtrue___init_tk;
2697 fra.me.has_broke = 0;
2698 fra.me.REG_size = 3;
2699 fra.me.nitni_local_ref_head = NULL;
2700 fra.me.REG[0] = NIT_NULL;
2701 fra.me.REG[1] = NIT_NULL;
2702 fra.me.REG[2] = NIT_NULL;
2703 fra.me.REG[0] = p0;
2704 fra.me.REG[1] = p1;
2705 /* parser/lexer.nit:594 */
2706 if (!once_value_1) {
2707 if (!once_value_2) {
2708 fra.me.REG[2] = BOX_NativeString("true");
2709 REGB0 = TAG_Int(4);
2710 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2711 once_value_2 = fra.me.REG[2];
2712 register_static_object(&once_value_2);
2713 } else fra.me.REG[2] = once_value_2;
2714 fra.me.REG[2] = fra.me.REG[2];
2715 once_value_1 = fra.me.REG[2];
2716 register_static_object(&once_value_1);
2717 } else fra.me.REG[2] = once_value_1;
2718 fra.me.REG[2] = fra.me.REG[2];
2719 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2720 /* parser/lexer.nit:595 */
2721 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2722 stack_frame_head = fra.me.prev;
2723 init_table[itpos44] = 1;
2724 return;
2725 }
2726 val_t parser___lexer___TKwfalse___parser_index(val_t p0){
2727 struct {struct stack_frame_t me;} fra;
2728 val_t REGB0;
2729 val_t tmp;
2730 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2731 fra.me.file = LOCATE_parser___lexer;
2732 fra.me.line = 600;
2733 fra.me.meth = LOCATE_parser___lexer___TKwfalse___parser_index;
2734 fra.me.has_broke = 0;
2735 fra.me.REG_size = 1;
2736 fra.me.nitni_local_ref_head = NULL;
2737 fra.me.REG[0] = NIT_NULL;
2738 fra.me.REG[0] = p0;
2739 /* parser/lexer.nit:602 */
2740 REGB0 = TAG_Int(45);
2741 goto label1;
2742 label1: while(0);
2743 stack_frame_head = fra.me.prev;
2744 return REGB0;
2745 }
2746 void parser___lexer___TKwfalse___init_tk(val_t p0, val_t p1, int* init_table){
2747 int itpos45 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwfalse].i;
2748 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2749 val_t REGB0;
2750 val_t tmp;
2751 static val_t once_value_1; /* Once value */
2752 static val_t once_value_2; /* Once value */
2753 if (init_table[itpos45]) return;
2754 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2755 fra.me.file = LOCATE_parser___lexer;
2756 fra.me.line = 605;
2757 fra.me.meth = LOCATE_parser___lexer___TKwfalse___init_tk;
2758 fra.me.has_broke = 0;
2759 fra.me.REG_size = 3;
2760 fra.me.nitni_local_ref_head = NULL;
2761 fra.me.REG[0] = NIT_NULL;
2762 fra.me.REG[1] = NIT_NULL;
2763 fra.me.REG[2] = NIT_NULL;
2764 fra.me.REG[0] = p0;
2765 fra.me.REG[1] = p1;
2766 /* parser/lexer.nit:607 */
2767 if (!once_value_1) {
2768 if (!once_value_2) {
2769 fra.me.REG[2] = BOX_NativeString("false");
2770 REGB0 = TAG_Int(5);
2771 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2772 once_value_2 = fra.me.REG[2];
2773 register_static_object(&once_value_2);
2774 } else fra.me.REG[2] = once_value_2;
2775 fra.me.REG[2] = fra.me.REG[2];
2776 once_value_1 = fra.me.REG[2];
2777 register_static_object(&once_value_1);
2778 } else fra.me.REG[2] = once_value_1;
2779 fra.me.REG[2] = fra.me.REG[2];
2780 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2781 /* parser/lexer.nit:608 */
2782 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2783 stack_frame_head = fra.me.prev;
2784 init_table[itpos45] = 1;
2785 return;
2786 }
2787 val_t parser___lexer___TKwnull___parser_index(val_t p0){
2788 struct {struct stack_frame_t me;} fra;
2789 val_t REGB0;
2790 val_t tmp;
2791 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2792 fra.me.file = LOCATE_parser___lexer;
2793 fra.me.line = 613;
2794 fra.me.meth = LOCATE_parser___lexer___TKwnull___parser_index;
2795 fra.me.has_broke = 0;
2796 fra.me.REG_size = 1;
2797 fra.me.nitni_local_ref_head = NULL;
2798 fra.me.REG[0] = NIT_NULL;
2799 fra.me.REG[0] = p0;
2800 /* parser/lexer.nit:615 */
2801 REGB0 = TAG_Int(46);
2802 goto label1;
2803 label1: while(0);
2804 stack_frame_head = fra.me.prev;
2805 return REGB0;
2806 }
2807 void parser___lexer___TKwnull___init_tk(val_t p0, val_t p1, int* init_table){
2808 int itpos46 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwnull].i;
2809 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2810 val_t REGB0;
2811 val_t tmp;
2812 static val_t once_value_1; /* Once value */
2813 static val_t once_value_2; /* Once value */
2814 if (init_table[itpos46]) return;
2815 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2816 fra.me.file = LOCATE_parser___lexer;
2817 fra.me.line = 618;
2818 fra.me.meth = LOCATE_parser___lexer___TKwnull___init_tk;
2819 fra.me.has_broke = 0;
2820 fra.me.REG_size = 3;
2821 fra.me.nitni_local_ref_head = NULL;
2822 fra.me.REG[0] = NIT_NULL;
2823 fra.me.REG[1] = NIT_NULL;
2824 fra.me.REG[2] = NIT_NULL;
2825 fra.me.REG[0] = p0;
2826 fra.me.REG[1] = p1;
2827 /* parser/lexer.nit:620 */
2828 if (!once_value_1) {
2829 if (!once_value_2) {
2830 fra.me.REG[2] = BOX_NativeString("null");
2831 REGB0 = TAG_Int(4);
2832 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2833 once_value_2 = fra.me.REG[2];
2834 register_static_object(&once_value_2);
2835 } else fra.me.REG[2] = once_value_2;
2836 fra.me.REG[2] = fra.me.REG[2];
2837 once_value_1 = fra.me.REG[2];
2838 register_static_object(&once_value_1);
2839 } else fra.me.REG[2] = once_value_1;
2840 fra.me.REG[2] = fra.me.REG[2];
2841 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2842 /* parser/lexer.nit:621 */
2843 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2844 stack_frame_head = fra.me.prev;
2845 init_table[itpos46] = 1;
2846 return;
2847 }
2848 val_t parser___lexer___TKwas___parser_index(val_t p0){
2849 struct {struct stack_frame_t me;} fra;
2850 val_t REGB0;
2851 val_t tmp;
2852 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2853 fra.me.file = LOCATE_parser___lexer;
2854 fra.me.line = 626;
2855 fra.me.meth = LOCATE_parser___lexer___TKwas___parser_index;
2856 fra.me.has_broke = 0;
2857 fra.me.REG_size = 1;
2858 fra.me.nitni_local_ref_head = NULL;
2859 fra.me.REG[0] = NIT_NULL;
2860 fra.me.REG[0] = p0;
2861 /* parser/lexer.nit:628 */
2862 REGB0 = TAG_Int(47);
2863 goto label1;
2864 label1: while(0);
2865 stack_frame_head = fra.me.prev;
2866 return REGB0;
2867 }
2868 void parser___lexer___TKwas___init_tk(val_t p0, val_t p1, int* init_table){
2869 int itpos47 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwas].i;
2870 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2871 val_t REGB0;
2872 val_t tmp;
2873 static val_t once_value_1; /* Once value */
2874 static val_t once_value_2; /* Once value */
2875 if (init_table[itpos47]) return;
2876 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2877 fra.me.file = LOCATE_parser___lexer;
2878 fra.me.line = 631;
2879 fra.me.meth = LOCATE_parser___lexer___TKwas___init_tk;
2880 fra.me.has_broke = 0;
2881 fra.me.REG_size = 3;
2882 fra.me.nitni_local_ref_head = NULL;
2883 fra.me.REG[0] = NIT_NULL;
2884 fra.me.REG[1] = NIT_NULL;
2885 fra.me.REG[2] = NIT_NULL;
2886 fra.me.REG[0] = p0;
2887 fra.me.REG[1] = p1;
2888 /* parser/lexer.nit:633 */
2889 if (!once_value_1) {
2890 if (!once_value_2) {
2891 fra.me.REG[2] = BOX_NativeString("as");
2892 REGB0 = TAG_Int(2);
2893 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2894 once_value_2 = fra.me.REG[2];
2895 register_static_object(&once_value_2);
2896 } else fra.me.REG[2] = once_value_2;
2897 fra.me.REG[2] = fra.me.REG[2];
2898 once_value_1 = fra.me.REG[2];
2899 register_static_object(&once_value_1);
2900 } else fra.me.REG[2] = once_value_1;
2901 fra.me.REG[2] = fra.me.REG[2];
2902 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2903 /* parser/lexer.nit:634 */
2904 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2905 stack_frame_head = fra.me.prev;
2906 init_table[itpos47] = 1;
2907 return;
2908 }
2909 val_t parser___lexer___TKwnullable___parser_index(val_t p0){
2910 struct {struct stack_frame_t me;} fra;
2911 val_t REGB0;
2912 val_t tmp;
2913 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2914 fra.me.file = LOCATE_parser___lexer;
2915 fra.me.line = 639;
2916 fra.me.meth = LOCATE_parser___lexer___TKwnullable___parser_index;
2917 fra.me.has_broke = 0;
2918 fra.me.REG_size = 1;
2919 fra.me.nitni_local_ref_head = NULL;
2920 fra.me.REG[0] = NIT_NULL;
2921 fra.me.REG[0] = p0;
2922 /* parser/lexer.nit:641 */
2923 REGB0 = TAG_Int(48);
2924 goto label1;
2925 label1: while(0);
2926 stack_frame_head = fra.me.prev;
2927 return REGB0;
2928 }
2929 void parser___lexer___TKwnullable___init_tk(val_t p0, val_t p1, int* init_table){
2930 int itpos48 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwnullable].i;
2931 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2932 val_t REGB0;
2933 val_t tmp;
2934 static val_t once_value_1; /* Once value */
2935 static val_t once_value_2; /* Once value */
2936 if (init_table[itpos48]) return;
2937 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2938 fra.me.file = LOCATE_parser___lexer;
2939 fra.me.line = 644;
2940 fra.me.meth = LOCATE_parser___lexer___TKwnullable___init_tk;
2941 fra.me.has_broke = 0;
2942 fra.me.REG_size = 3;
2943 fra.me.nitni_local_ref_head = NULL;
2944 fra.me.REG[0] = NIT_NULL;
2945 fra.me.REG[1] = NIT_NULL;
2946 fra.me.REG[2] = NIT_NULL;
2947 fra.me.REG[0] = p0;
2948 fra.me.REG[1] = p1;
2949 /* parser/lexer.nit:646 */
2950 if (!once_value_1) {
2951 if (!once_value_2) {
2952 fra.me.REG[2] = BOX_NativeString("nullable");
2953 REGB0 = TAG_Int(8);
2954 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
2955 once_value_2 = fra.me.REG[2];
2956 register_static_object(&once_value_2);
2957 } else fra.me.REG[2] = once_value_2;
2958 fra.me.REG[2] = fra.me.REG[2];
2959 once_value_1 = fra.me.REG[2];
2960 register_static_object(&once_value_1);
2961 } else fra.me.REG[2] = once_value_1;
2962 fra.me.REG[2] = fra.me.REG[2];
2963 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
2964 /* parser/lexer.nit:647 */
2965 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
2966 stack_frame_head = fra.me.prev;
2967 init_table[itpos48] = 1;
2968 return;
2969 }
2970 val_t parser___lexer___TKwisset___parser_index(val_t p0){
2971 struct {struct stack_frame_t me;} fra;
2972 val_t REGB0;
2973 val_t tmp;
2974 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2975 fra.me.file = LOCATE_parser___lexer;
2976 fra.me.line = 652;
2977 fra.me.meth = LOCATE_parser___lexer___TKwisset___parser_index;
2978 fra.me.has_broke = 0;
2979 fra.me.REG_size = 1;
2980 fra.me.nitni_local_ref_head = NULL;
2981 fra.me.REG[0] = NIT_NULL;
2982 fra.me.REG[0] = p0;
2983 /* parser/lexer.nit:654 */
2984 REGB0 = TAG_Int(49);
2985 goto label1;
2986 label1: while(0);
2987 stack_frame_head = fra.me.prev;
2988 return REGB0;
2989 }
2990 void parser___lexer___TKwisset___init_tk(val_t p0, val_t p1, int* init_table){
2991 int itpos49 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwisset].i;
2992 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
2993 val_t REGB0;
2994 val_t tmp;
2995 static val_t once_value_1; /* Once value */
2996 static val_t once_value_2; /* Once value */
2997 if (init_table[itpos49]) return;
2998 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
2999 fra.me.file = LOCATE_parser___lexer;
3000 fra.me.line = 657;
3001 fra.me.meth = LOCATE_parser___lexer___TKwisset___init_tk;
3002 fra.me.has_broke = 0;
3003 fra.me.REG_size = 3;
3004 fra.me.nitni_local_ref_head = NULL;
3005 fra.me.REG[0] = NIT_NULL;
3006 fra.me.REG[1] = NIT_NULL;
3007 fra.me.REG[2] = NIT_NULL;
3008 fra.me.REG[0] = p0;
3009 fra.me.REG[1] = p1;
3010 /* parser/lexer.nit:659 */
3011 if (!once_value_1) {
3012 if (!once_value_2) {
3013 fra.me.REG[2] = BOX_NativeString("isset");
3014 REGB0 = TAG_Int(5);
3015 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3016 once_value_2 = fra.me.REG[2];
3017 register_static_object(&once_value_2);
3018 } else fra.me.REG[2] = once_value_2;
3019 fra.me.REG[2] = fra.me.REG[2];
3020 once_value_1 = fra.me.REG[2];
3021 register_static_object(&once_value_1);
3022 } else fra.me.REG[2] = once_value_1;
3023 fra.me.REG[2] = fra.me.REG[2];
3024 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3025 /* parser/lexer.nit:660 */
3026 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3027 stack_frame_head = fra.me.prev;
3028 init_table[itpos49] = 1;
3029 return;
3030 }
3031 val_t parser___lexer___TKwlabel___parser_index(val_t p0){
3032 struct {struct stack_frame_t me;} fra;
3033 val_t REGB0;
3034 val_t tmp;
3035 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3036 fra.me.file = LOCATE_parser___lexer;
3037 fra.me.line = 665;
3038 fra.me.meth = LOCATE_parser___lexer___TKwlabel___parser_index;
3039 fra.me.has_broke = 0;
3040 fra.me.REG_size = 1;
3041 fra.me.nitni_local_ref_head = NULL;
3042 fra.me.REG[0] = NIT_NULL;
3043 fra.me.REG[0] = p0;
3044 /* parser/lexer.nit:667 */
3045 REGB0 = TAG_Int(50);
3046 goto label1;
3047 label1: while(0);
3048 stack_frame_head = fra.me.prev;
3049 return REGB0;
3050 }
3051 void parser___lexer___TKwlabel___init_tk(val_t p0, val_t p1, int* init_table){
3052 int itpos50 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwlabel].i;
3053 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3054 val_t REGB0;
3055 val_t tmp;
3056 static val_t once_value_1; /* Once value */
3057 static val_t once_value_2; /* Once value */
3058 if (init_table[itpos50]) return;
3059 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3060 fra.me.file = LOCATE_parser___lexer;
3061 fra.me.line = 670;
3062 fra.me.meth = LOCATE_parser___lexer___TKwlabel___init_tk;
3063 fra.me.has_broke = 0;
3064 fra.me.REG_size = 3;
3065 fra.me.nitni_local_ref_head = NULL;
3066 fra.me.REG[0] = NIT_NULL;
3067 fra.me.REG[1] = NIT_NULL;
3068 fra.me.REG[2] = NIT_NULL;
3069 fra.me.REG[0] = p0;
3070 fra.me.REG[1] = p1;
3071 /* parser/lexer.nit:672 */
3072 if (!once_value_1) {
3073 if (!once_value_2) {
3074 fra.me.REG[2] = BOX_NativeString("label");
3075 REGB0 = TAG_Int(5);
3076 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3077 once_value_2 = fra.me.REG[2];
3078 register_static_object(&once_value_2);
3079 } else fra.me.REG[2] = once_value_2;
3080 fra.me.REG[2] = fra.me.REG[2];
3081 once_value_1 = fra.me.REG[2];
3082 register_static_object(&once_value_1);
3083 } else fra.me.REG[2] = once_value_1;
3084 fra.me.REG[2] = fra.me.REG[2];
3085 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3086 /* parser/lexer.nit:673 */
3087 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3088 stack_frame_head = fra.me.prev;
3089 init_table[itpos50] = 1;
3090 return;
3091 }
3092 val_t parser___lexer___TKwdebug___parser_index(val_t p0){
3093 struct {struct stack_frame_t me;} fra;
3094 val_t REGB0;
3095 val_t tmp;
3096 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3097 fra.me.file = LOCATE_parser___lexer;
3098 fra.me.line = 678;
3099 fra.me.meth = LOCATE_parser___lexer___TKwdebug___parser_index;
3100 fra.me.has_broke = 0;
3101 fra.me.REG_size = 1;
3102 fra.me.nitni_local_ref_head = NULL;
3103 fra.me.REG[0] = NIT_NULL;
3104 fra.me.REG[0] = p0;
3105 /* parser/lexer.nit:680 */
3106 REGB0 = TAG_Int(51);
3107 goto label1;
3108 label1: while(0);
3109 stack_frame_head = fra.me.prev;
3110 return REGB0;
3111 }
3112 void parser___lexer___TKwdebug___init_tk(val_t p0, val_t p1, int* init_table){
3113 int itpos51 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TKwdebug].i;
3114 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3115 val_t REGB0;
3116 val_t tmp;
3117 static val_t once_value_1; /* Once value */
3118 static val_t once_value_2; /* Once value */
3119 if (init_table[itpos51]) return;
3120 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3121 fra.me.file = LOCATE_parser___lexer;
3122 fra.me.line = 683;
3123 fra.me.meth = LOCATE_parser___lexer___TKwdebug___init_tk;
3124 fra.me.has_broke = 0;
3125 fra.me.REG_size = 3;
3126 fra.me.nitni_local_ref_head = NULL;
3127 fra.me.REG[0] = NIT_NULL;
3128 fra.me.REG[1] = NIT_NULL;
3129 fra.me.REG[2] = NIT_NULL;
3130 fra.me.REG[0] = p0;
3131 fra.me.REG[1] = p1;
3132 /* parser/lexer.nit:685 */
3133 if (!once_value_1) {
3134 if (!once_value_2) {
3135 fra.me.REG[2] = BOX_NativeString("__debug__");
3136 REGB0 = TAG_Int(9);
3137 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3138 once_value_2 = fra.me.REG[2];
3139 register_static_object(&once_value_2);
3140 } else fra.me.REG[2] = once_value_2;
3141 fra.me.REG[2] = fra.me.REG[2];
3142 once_value_1 = fra.me.REG[2];
3143 register_static_object(&once_value_1);
3144 } else fra.me.REG[2] = once_value_1;
3145 fra.me.REG[2] = fra.me.REG[2];
3146 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3147 /* parser/lexer.nit:686 */
3148 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3149 stack_frame_head = fra.me.prev;
3150 init_table[itpos51] = 1;
3151 return;
3152 }
3153 val_t parser___lexer___TOpar___parser_index(val_t p0){
3154 struct {struct stack_frame_t me;} fra;
3155 val_t REGB0;
3156 val_t tmp;
3157 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3158 fra.me.file = LOCATE_parser___lexer;
3159 fra.me.line = 691;
3160 fra.me.meth = LOCATE_parser___lexer___TOpar___parser_index;
3161 fra.me.has_broke = 0;
3162 fra.me.REG_size = 1;
3163 fra.me.nitni_local_ref_head = NULL;
3164 fra.me.REG[0] = NIT_NULL;
3165 fra.me.REG[0] = p0;
3166 /* parser/lexer.nit:693 */
3167 REGB0 = TAG_Int(52);
3168 goto label1;
3169 label1: while(0);
3170 stack_frame_head = fra.me.prev;
3171 return REGB0;
3172 }
3173 void parser___lexer___TOpar___init_tk(val_t p0, val_t p1, int* init_table){
3174 int itpos52 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TOpar].i;
3175 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3176 val_t REGB0;
3177 val_t tmp;
3178 static val_t once_value_1; /* Once value */
3179 static val_t once_value_2; /* Once value */
3180 if (init_table[itpos52]) return;
3181 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3182 fra.me.file = LOCATE_parser___lexer;
3183 fra.me.line = 696;
3184 fra.me.meth = LOCATE_parser___lexer___TOpar___init_tk;
3185 fra.me.has_broke = 0;
3186 fra.me.REG_size = 3;
3187 fra.me.nitni_local_ref_head = NULL;
3188 fra.me.REG[0] = NIT_NULL;
3189 fra.me.REG[1] = NIT_NULL;
3190 fra.me.REG[2] = NIT_NULL;
3191 fra.me.REG[0] = p0;
3192 fra.me.REG[1] = p1;
3193 /* parser/lexer.nit:698 */
3194 if (!once_value_1) {
3195 if (!once_value_2) {
3196 fra.me.REG[2] = BOX_NativeString("(");
3197 REGB0 = TAG_Int(1);
3198 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3199 once_value_2 = fra.me.REG[2];
3200 register_static_object(&once_value_2);
3201 } else fra.me.REG[2] = once_value_2;
3202 fra.me.REG[2] = fra.me.REG[2];
3203 once_value_1 = fra.me.REG[2];
3204 register_static_object(&once_value_1);
3205 } else fra.me.REG[2] = once_value_1;
3206 fra.me.REG[2] = fra.me.REG[2];
3207 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3208 /* parser/lexer.nit:699 */
3209 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3210 stack_frame_head = fra.me.prev;
3211 init_table[itpos52] = 1;
3212 return;
3213 }
3214 val_t parser___lexer___TCpar___parser_index(val_t p0){
3215 struct {struct stack_frame_t me;} fra;
3216 val_t REGB0;
3217 val_t tmp;
3218 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3219 fra.me.file = LOCATE_parser___lexer;
3220 fra.me.line = 704;
3221 fra.me.meth = LOCATE_parser___lexer___TCpar___parser_index;
3222 fra.me.has_broke = 0;
3223 fra.me.REG_size = 1;
3224 fra.me.nitni_local_ref_head = NULL;
3225 fra.me.REG[0] = NIT_NULL;
3226 fra.me.REG[0] = p0;
3227 /* parser/lexer.nit:706 */
3228 REGB0 = TAG_Int(53);
3229 goto label1;
3230 label1: while(0);
3231 stack_frame_head = fra.me.prev;
3232 return REGB0;
3233 }
3234 void parser___lexer___TCpar___init_tk(val_t p0, val_t p1, int* init_table){
3235 int itpos53 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TCpar].i;
3236 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3237 val_t REGB0;
3238 val_t tmp;
3239 static val_t once_value_1; /* Once value */
3240 static val_t once_value_2; /* Once value */
3241 if (init_table[itpos53]) return;
3242 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3243 fra.me.file = LOCATE_parser___lexer;
3244 fra.me.line = 709;
3245 fra.me.meth = LOCATE_parser___lexer___TCpar___init_tk;
3246 fra.me.has_broke = 0;
3247 fra.me.REG_size = 3;
3248 fra.me.nitni_local_ref_head = NULL;
3249 fra.me.REG[0] = NIT_NULL;
3250 fra.me.REG[1] = NIT_NULL;
3251 fra.me.REG[2] = NIT_NULL;
3252 fra.me.REG[0] = p0;
3253 fra.me.REG[1] = p1;
3254 /* parser/lexer.nit:711 */
3255 if (!once_value_1) {
3256 if (!once_value_2) {
3257 fra.me.REG[2] = BOX_NativeString(")");
3258 REGB0 = TAG_Int(1);
3259 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3260 once_value_2 = fra.me.REG[2];
3261 register_static_object(&once_value_2);
3262 } else fra.me.REG[2] = once_value_2;
3263 fra.me.REG[2] = fra.me.REG[2];
3264 once_value_1 = fra.me.REG[2];
3265 register_static_object(&once_value_1);
3266 } else fra.me.REG[2] = once_value_1;
3267 fra.me.REG[2] = fra.me.REG[2];
3268 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3269 /* parser/lexer.nit:712 */
3270 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3271 stack_frame_head = fra.me.prev;
3272 init_table[itpos53] = 1;
3273 return;
3274 }
3275 val_t parser___lexer___TObra___parser_index(val_t p0){
3276 struct {struct stack_frame_t me;} fra;
3277 val_t REGB0;
3278 val_t tmp;
3279 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3280 fra.me.file = LOCATE_parser___lexer;
3281 fra.me.line = 717;
3282 fra.me.meth = LOCATE_parser___lexer___TObra___parser_index;
3283 fra.me.has_broke = 0;
3284 fra.me.REG_size = 1;
3285 fra.me.nitni_local_ref_head = NULL;
3286 fra.me.REG[0] = NIT_NULL;
3287 fra.me.REG[0] = p0;
3288 /* parser/lexer.nit:719 */
3289 REGB0 = TAG_Int(54);
3290 goto label1;
3291 label1: while(0);
3292 stack_frame_head = fra.me.prev;
3293 return REGB0;
3294 }
3295 void parser___lexer___TObra___init_tk(val_t p0, val_t p1, int* init_table){
3296 int itpos54 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TObra].i;
3297 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3298 val_t REGB0;
3299 val_t tmp;
3300 static val_t once_value_1; /* Once value */
3301 static val_t once_value_2; /* Once value */
3302 if (init_table[itpos54]) return;
3303 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3304 fra.me.file = LOCATE_parser___lexer;
3305 fra.me.line = 722;
3306 fra.me.meth = LOCATE_parser___lexer___TObra___init_tk;
3307 fra.me.has_broke = 0;
3308 fra.me.REG_size = 3;
3309 fra.me.nitni_local_ref_head = NULL;
3310 fra.me.REG[0] = NIT_NULL;
3311 fra.me.REG[1] = NIT_NULL;
3312 fra.me.REG[2] = NIT_NULL;
3313 fra.me.REG[0] = p0;
3314 fra.me.REG[1] = p1;
3315 /* parser/lexer.nit:724 */
3316 if (!once_value_1) {
3317 if (!once_value_2) {
3318 fra.me.REG[2] = BOX_NativeString("[");
3319 REGB0 = TAG_Int(1);
3320 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3321 once_value_2 = fra.me.REG[2];
3322 register_static_object(&once_value_2);
3323 } else fra.me.REG[2] = once_value_2;
3324 fra.me.REG[2] = fra.me.REG[2];
3325 once_value_1 = fra.me.REG[2];
3326 register_static_object(&once_value_1);
3327 } else fra.me.REG[2] = once_value_1;
3328 fra.me.REG[2] = fra.me.REG[2];
3329 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3330 /* parser/lexer.nit:725 */
3331 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3332 stack_frame_head = fra.me.prev;
3333 init_table[itpos54] = 1;
3334 return;
3335 }
3336 val_t parser___lexer___TCbra___parser_index(val_t p0){
3337 struct {struct stack_frame_t me;} fra;
3338 val_t REGB0;
3339 val_t tmp;
3340 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3341 fra.me.file = LOCATE_parser___lexer;
3342 fra.me.line = 730;
3343 fra.me.meth = LOCATE_parser___lexer___TCbra___parser_index;
3344 fra.me.has_broke = 0;
3345 fra.me.REG_size = 1;
3346 fra.me.nitni_local_ref_head = NULL;
3347 fra.me.REG[0] = NIT_NULL;
3348 fra.me.REG[0] = p0;
3349 /* parser/lexer.nit:732 */
3350 REGB0 = TAG_Int(55);
3351 goto label1;
3352 label1: while(0);
3353 stack_frame_head = fra.me.prev;
3354 return REGB0;
3355 }
3356 void parser___lexer___TCbra___init_tk(val_t p0, val_t p1, int* init_table){
3357 int itpos55 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TCbra].i;
3358 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3359 val_t REGB0;
3360 val_t tmp;
3361 static val_t once_value_1; /* Once value */
3362 static val_t once_value_2; /* Once value */
3363 if (init_table[itpos55]) return;
3364 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3365 fra.me.file = LOCATE_parser___lexer;
3366 fra.me.line = 735;
3367 fra.me.meth = LOCATE_parser___lexer___TCbra___init_tk;
3368 fra.me.has_broke = 0;
3369 fra.me.REG_size = 3;
3370 fra.me.nitni_local_ref_head = NULL;
3371 fra.me.REG[0] = NIT_NULL;
3372 fra.me.REG[1] = NIT_NULL;
3373 fra.me.REG[2] = NIT_NULL;
3374 fra.me.REG[0] = p0;
3375 fra.me.REG[1] = p1;
3376 /* parser/lexer.nit:737 */
3377 if (!once_value_1) {
3378 if (!once_value_2) {
3379 fra.me.REG[2] = BOX_NativeString("]");
3380 REGB0 = TAG_Int(1);
3381 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3382 once_value_2 = fra.me.REG[2];
3383 register_static_object(&once_value_2);
3384 } else fra.me.REG[2] = once_value_2;
3385 fra.me.REG[2] = fra.me.REG[2];
3386 once_value_1 = fra.me.REG[2];
3387 register_static_object(&once_value_1);
3388 } else fra.me.REG[2] = once_value_1;
3389 fra.me.REG[2] = fra.me.REG[2];
3390 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3391 /* parser/lexer.nit:738 */
3392 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3393 stack_frame_head = fra.me.prev;
3394 init_table[itpos55] = 1;
3395 return;
3396 }
3397 val_t parser___lexer___TComma___parser_index(val_t p0){
3398 struct {struct stack_frame_t me;} fra;
3399 val_t REGB0;
3400 val_t tmp;
3401 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3402 fra.me.file = LOCATE_parser___lexer;
3403 fra.me.line = 743;
3404 fra.me.meth = LOCATE_parser___lexer___TComma___parser_index;
3405 fra.me.has_broke = 0;
3406 fra.me.REG_size = 1;
3407 fra.me.nitni_local_ref_head = NULL;
3408 fra.me.REG[0] = NIT_NULL;
3409 fra.me.REG[0] = p0;
3410 /* parser/lexer.nit:745 */
3411 REGB0 = TAG_Int(56);
3412 goto label1;
3413 label1: while(0);
3414 stack_frame_head = fra.me.prev;
3415 return REGB0;
3416 }
3417 void parser___lexer___TComma___init_tk(val_t p0, val_t p1, int* init_table){
3418 int itpos56 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TComma].i;
3419 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3420 val_t REGB0;
3421 val_t tmp;
3422 static val_t once_value_1; /* Once value */
3423 static val_t once_value_2; /* Once value */
3424 if (init_table[itpos56]) return;
3425 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3426 fra.me.file = LOCATE_parser___lexer;
3427 fra.me.line = 748;
3428 fra.me.meth = LOCATE_parser___lexer___TComma___init_tk;
3429 fra.me.has_broke = 0;
3430 fra.me.REG_size = 3;
3431 fra.me.nitni_local_ref_head = NULL;
3432 fra.me.REG[0] = NIT_NULL;
3433 fra.me.REG[1] = NIT_NULL;
3434 fra.me.REG[2] = NIT_NULL;
3435 fra.me.REG[0] = p0;
3436 fra.me.REG[1] = p1;
3437 /* parser/lexer.nit:750 */
3438 if (!once_value_1) {
3439 if (!once_value_2) {
3440 fra.me.REG[2] = BOX_NativeString(",");
3441 REGB0 = TAG_Int(1);
3442 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3443 once_value_2 = fra.me.REG[2];
3444 register_static_object(&once_value_2);
3445 } else fra.me.REG[2] = once_value_2;
3446 fra.me.REG[2] = fra.me.REG[2];
3447 once_value_1 = fra.me.REG[2];
3448 register_static_object(&once_value_1);
3449 } else fra.me.REG[2] = once_value_1;
3450 fra.me.REG[2] = fra.me.REG[2];
3451 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3452 /* parser/lexer.nit:751 */
3453 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3454 stack_frame_head = fra.me.prev;
3455 init_table[itpos56] = 1;
3456 return;
3457 }
3458 val_t parser___lexer___TColumn___parser_index(val_t p0){
3459 struct {struct stack_frame_t me;} fra;
3460 val_t REGB0;
3461 val_t tmp;
3462 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3463 fra.me.file = LOCATE_parser___lexer;
3464 fra.me.line = 756;
3465 fra.me.meth = LOCATE_parser___lexer___TColumn___parser_index;
3466 fra.me.has_broke = 0;
3467 fra.me.REG_size = 1;
3468 fra.me.nitni_local_ref_head = NULL;
3469 fra.me.REG[0] = NIT_NULL;
3470 fra.me.REG[0] = p0;
3471 /* parser/lexer.nit:758 */
3472 REGB0 = TAG_Int(57);
3473 goto label1;
3474 label1: while(0);
3475 stack_frame_head = fra.me.prev;
3476 return REGB0;
3477 }
3478 void parser___lexer___TColumn___init_tk(val_t p0, val_t p1, int* init_table){
3479 int itpos57 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TColumn].i;
3480 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3481 val_t REGB0;
3482 val_t tmp;
3483 static val_t once_value_1; /* Once value */
3484 static val_t once_value_2; /* Once value */
3485 if (init_table[itpos57]) return;
3486 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3487 fra.me.file = LOCATE_parser___lexer;
3488 fra.me.line = 761;
3489 fra.me.meth = LOCATE_parser___lexer___TColumn___init_tk;
3490 fra.me.has_broke = 0;
3491 fra.me.REG_size = 3;
3492 fra.me.nitni_local_ref_head = NULL;
3493 fra.me.REG[0] = NIT_NULL;
3494 fra.me.REG[1] = NIT_NULL;
3495 fra.me.REG[2] = NIT_NULL;
3496 fra.me.REG[0] = p0;
3497 fra.me.REG[1] = p1;
3498 /* parser/lexer.nit:763 */
3499 if (!once_value_1) {
3500 if (!once_value_2) {
3501 fra.me.REG[2] = BOX_NativeString(":");
3502 REGB0 = TAG_Int(1);
3503 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3504 once_value_2 = fra.me.REG[2];
3505 register_static_object(&once_value_2);
3506 } else fra.me.REG[2] = once_value_2;
3507 fra.me.REG[2] = fra.me.REG[2];
3508 once_value_1 = fra.me.REG[2];
3509 register_static_object(&once_value_1);
3510 } else fra.me.REG[2] = once_value_1;
3511 fra.me.REG[2] = fra.me.REG[2];
3512 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3513 /* parser/lexer.nit:764 */
3514 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3515 stack_frame_head = fra.me.prev;
3516 init_table[itpos57] = 1;
3517 return;
3518 }
3519 val_t parser___lexer___TQuad___parser_index(val_t p0){
3520 struct {struct stack_frame_t me;} fra;
3521 val_t REGB0;
3522 val_t tmp;
3523 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3524 fra.me.file = LOCATE_parser___lexer;
3525 fra.me.line = 769;
3526 fra.me.meth = LOCATE_parser___lexer___TQuad___parser_index;
3527 fra.me.has_broke = 0;
3528 fra.me.REG_size = 1;
3529 fra.me.nitni_local_ref_head = NULL;
3530 fra.me.REG[0] = NIT_NULL;
3531 fra.me.REG[0] = p0;
3532 /* parser/lexer.nit:771 */
3533 REGB0 = TAG_Int(58);
3534 goto label1;
3535 label1: while(0);
3536 stack_frame_head = fra.me.prev;
3537 return REGB0;
3538 }
3539 void parser___lexer___TQuad___init_tk(val_t p0, val_t p1, int* init_table){
3540 int itpos58 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TQuad].i;
3541 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3542 val_t REGB0;
3543 val_t tmp;
3544 static val_t once_value_1; /* Once value */
3545 static val_t once_value_2; /* Once value */
3546 if (init_table[itpos58]) return;
3547 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3548 fra.me.file = LOCATE_parser___lexer;
3549 fra.me.line = 774;
3550 fra.me.meth = LOCATE_parser___lexer___TQuad___init_tk;
3551 fra.me.has_broke = 0;
3552 fra.me.REG_size = 3;
3553 fra.me.nitni_local_ref_head = NULL;
3554 fra.me.REG[0] = NIT_NULL;
3555 fra.me.REG[1] = NIT_NULL;
3556 fra.me.REG[2] = NIT_NULL;
3557 fra.me.REG[0] = p0;
3558 fra.me.REG[1] = p1;
3559 /* parser/lexer.nit:776 */
3560 if (!once_value_1) {
3561 if (!once_value_2) {
3562 fra.me.REG[2] = BOX_NativeString("::");
3563 REGB0 = TAG_Int(2);
3564 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3565 once_value_2 = fra.me.REG[2];
3566 register_static_object(&once_value_2);
3567 } else fra.me.REG[2] = once_value_2;
3568 fra.me.REG[2] = fra.me.REG[2];
3569 once_value_1 = fra.me.REG[2];
3570 register_static_object(&once_value_1);
3571 } else fra.me.REG[2] = once_value_1;
3572 fra.me.REG[2] = fra.me.REG[2];
3573 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3574 /* parser/lexer.nit:777 */
3575 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3576 stack_frame_head = fra.me.prev;
3577 init_table[itpos58] = 1;
3578 return;
3579 }
3580 val_t parser___lexer___TAssign___parser_index(val_t p0){
3581 struct {struct stack_frame_t me;} fra;
3582 val_t REGB0;
3583 val_t tmp;
3584 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3585 fra.me.file = LOCATE_parser___lexer;
3586 fra.me.line = 782;
3587 fra.me.meth = LOCATE_parser___lexer___TAssign___parser_index;
3588 fra.me.has_broke = 0;
3589 fra.me.REG_size = 1;
3590 fra.me.nitni_local_ref_head = NULL;
3591 fra.me.REG[0] = NIT_NULL;
3592 fra.me.REG[0] = p0;
3593 /* parser/lexer.nit:784 */
3594 REGB0 = TAG_Int(59);
3595 goto label1;
3596 label1: while(0);
3597 stack_frame_head = fra.me.prev;
3598 return REGB0;
3599 }
3600 void parser___lexer___TAssign___init_tk(val_t p0, val_t p1, int* init_table){
3601 int itpos59 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TAssign].i;
3602 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3603 val_t REGB0;
3604 val_t tmp;
3605 static val_t once_value_1; /* Once value */
3606 static val_t once_value_2; /* Once value */
3607 if (init_table[itpos59]) return;
3608 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3609 fra.me.file = LOCATE_parser___lexer;
3610 fra.me.line = 787;
3611 fra.me.meth = LOCATE_parser___lexer___TAssign___init_tk;
3612 fra.me.has_broke = 0;
3613 fra.me.REG_size = 3;
3614 fra.me.nitni_local_ref_head = NULL;
3615 fra.me.REG[0] = NIT_NULL;
3616 fra.me.REG[1] = NIT_NULL;
3617 fra.me.REG[2] = NIT_NULL;
3618 fra.me.REG[0] = p0;
3619 fra.me.REG[1] = p1;
3620 /* parser/lexer.nit:789 */
3621 if (!once_value_1) {
3622 if (!once_value_2) {
3623 fra.me.REG[2] = BOX_NativeString("=");
3624 REGB0 = TAG_Int(1);
3625 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3626 once_value_2 = fra.me.REG[2];
3627 register_static_object(&once_value_2);
3628 } else fra.me.REG[2] = once_value_2;
3629 fra.me.REG[2] = fra.me.REG[2];
3630 once_value_1 = fra.me.REG[2];
3631 register_static_object(&once_value_1);
3632 } else fra.me.REG[2] = once_value_1;
3633 fra.me.REG[2] = fra.me.REG[2];
3634 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3635 /* parser/lexer.nit:790 */
3636 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3637 stack_frame_head = fra.me.prev;
3638 init_table[itpos59] = 1;
3639 return;
3640 }
3641 val_t parser___lexer___TPluseq___parser_index(val_t p0){
3642 struct {struct stack_frame_t me;} fra;
3643 val_t REGB0;
3644 val_t tmp;
3645 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3646 fra.me.file = LOCATE_parser___lexer;
3647 fra.me.line = 795;
3648 fra.me.meth = LOCATE_parser___lexer___TPluseq___parser_index;
3649 fra.me.has_broke = 0;
3650 fra.me.REG_size = 1;
3651 fra.me.nitni_local_ref_head = NULL;
3652 fra.me.REG[0] = NIT_NULL;
3653 fra.me.REG[0] = p0;
3654 /* parser/lexer.nit:797 */
3655 REGB0 = TAG_Int(60);
3656 goto label1;
3657 label1: while(0);
3658 stack_frame_head = fra.me.prev;
3659 return REGB0;
3660 }
3661 void parser___lexer___TPluseq___init_tk(val_t p0, val_t p1, int* init_table){
3662 int itpos60 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TPluseq].i;
3663 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3664 val_t REGB0;
3665 val_t tmp;
3666 static val_t once_value_1; /* Once value */
3667 static val_t once_value_2; /* Once value */
3668 if (init_table[itpos60]) return;
3669 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3670 fra.me.file = LOCATE_parser___lexer;
3671 fra.me.line = 800;
3672 fra.me.meth = LOCATE_parser___lexer___TPluseq___init_tk;
3673 fra.me.has_broke = 0;
3674 fra.me.REG_size = 3;
3675 fra.me.nitni_local_ref_head = NULL;
3676 fra.me.REG[0] = NIT_NULL;
3677 fra.me.REG[1] = NIT_NULL;
3678 fra.me.REG[2] = NIT_NULL;
3679 fra.me.REG[0] = p0;
3680 fra.me.REG[1] = p1;
3681 /* parser/lexer.nit:802 */
3682 if (!once_value_1) {
3683 if (!once_value_2) {
3684 fra.me.REG[2] = BOX_NativeString("+=");
3685 REGB0 = TAG_Int(2);
3686 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3687 once_value_2 = fra.me.REG[2];
3688 register_static_object(&once_value_2);
3689 } else fra.me.REG[2] = once_value_2;
3690 fra.me.REG[2] = fra.me.REG[2];
3691 once_value_1 = fra.me.REG[2];
3692 register_static_object(&once_value_1);
3693 } else fra.me.REG[2] = once_value_1;
3694 fra.me.REG[2] = fra.me.REG[2];
3695 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3696 /* parser/lexer.nit:803 */
3697 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3698 stack_frame_head = fra.me.prev;
3699 init_table[itpos60] = 1;
3700 return;
3701 }
3702 val_t parser___lexer___TMinuseq___parser_index(val_t p0){
3703 struct {struct stack_frame_t me;} fra;
3704 val_t REGB0;
3705 val_t tmp;
3706 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3707 fra.me.file = LOCATE_parser___lexer;
3708 fra.me.line = 808;
3709 fra.me.meth = LOCATE_parser___lexer___TMinuseq___parser_index;
3710 fra.me.has_broke = 0;
3711 fra.me.REG_size = 1;
3712 fra.me.nitni_local_ref_head = NULL;
3713 fra.me.REG[0] = NIT_NULL;
3714 fra.me.REG[0] = p0;
3715 /* parser/lexer.nit:810 */
3716 REGB0 = TAG_Int(61);
3717 goto label1;
3718 label1: while(0);
3719 stack_frame_head = fra.me.prev;
3720 return REGB0;
3721 }
3722 void parser___lexer___TMinuseq___init_tk(val_t p0, val_t p1, int* init_table){
3723 int itpos61 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TMinuseq].i;
3724 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3725 val_t REGB0;
3726 val_t tmp;
3727 static val_t once_value_1; /* Once value */
3728 static val_t once_value_2; /* Once value */
3729 if (init_table[itpos61]) return;
3730 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3731 fra.me.file = LOCATE_parser___lexer;
3732 fra.me.line = 813;
3733 fra.me.meth = LOCATE_parser___lexer___TMinuseq___init_tk;
3734 fra.me.has_broke = 0;
3735 fra.me.REG_size = 3;
3736 fra.me.nitni_local_ref_head = NULL;
3737 fra.me.REG[0] = NIT_NULL;
3738 fra.me.REG[1] = NIT_NULL;
3739 fra.me.REG[2] = NIT_NULL;
3740 fra.me.REG[0] = p0;
3741 fra.me.REG[1] = p1;
3742 /* parser/lexer.nit:815 */
3743 if (!once_value_1) {
3744 if (!once_value_2) {
3745 fra.me.REG[2] = BOX_NativeString("-=");
3746 REGB0 = TAG_Int(2);
3747 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3748 once_value_2 = fra.me.REG[2];
3749 register_static_object(&once_value_2);
3750 } else fra.me.REG[2] = once_value_2;
3751 fra.me.REG[2] = fra.me.REG[2];
3752 once_value_1 = fra.me.REG[2];
3753 register_static_object(&once_value_1);
3754 } else fra.me.REG[2] = once_value_1;
3755 fra.me.REG[2] = fra.me.REG[2];
3756 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3757 /* parser/lexer.nit:816 */
3758 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3759 stack_frame_head = fra.me.prev;
3760 init_table[itpos61] = 1;
3761 return;
3762 }
3763 val_t parser___lexer___TDotdotdot___parser_index(val_t p0){
3764 struct {struct stack_frame_t me;} fra;
3765 val_t REGB0;
3766 val_t tmp;
3767 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3768 fra.me.file = LOCATE_parser___lexer;
3769 fra.me.line = 821;
3770 fra.me.meth = LOCATE_parser___lexer___TDotdotdot___parser_index;
3771 fra.me.has_broke = 0;
3772 fra.me.REG_size = 1;
3773 fra.me.nitni_local_ref_head = NULL;
3774 fra.me.REG[0] = NIT_NULL;
3775 fra.me.REG[0] = p0;
3776 /* parser/lexer.nit:823 */
3777 REGB0 = TAG_Int(62);
3778 goto label1;
3779 label1: while(0);
3780 stack_frame_head = fra.me.prev;
3781 return REGB0;
3782 }
3783 void parser___lexer___TDotdotdot___init_tk(val_t p0, val_t p1, int* init_table){
3784 int itpos62 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TDotdotdot].i;
3785 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3786 val_t REGB0;
3787 val_t tmp;
3788 static val_t once_value_1; /* Once value */
3789 static val_t once_value_2; /* Once value */
3790 if (init_table[itpos62]) return;
3791 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3792 fra.me.file = LOCATE_parser___lexer;
3793 fra.me.line = 826;
3794 fra.me.meth = LOCATE_parser___lexer___TDotdotdot___init_tk;
3795 fra.me.has_broke = 0;
3796 fra.me.REG_size = 3;
3797 fra.me.nitni_local_ref_head = NULL;
3798 fra.me.REG[0] = NIT_NULL;
3799 fra.me.REG[1] = NIT_NULL;
3800 fra.me.REG[2] = NIT_NULL;
3801 fra.me.REG[0] = p0;
3802 fra.me.REG[1] = p1;
3803 /* parser/lexer.nit:828 */
3804 if (!once_value_1) {
3805 if (!once_value_2) {
3806 fra.me.REG[2] = BOX_NativeString("...");
3807 REGB0 = TAG_Int(3);
3808 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3809 once_value_2 = fra.me.REG[2];
3810 register_static_object(&once_value_2);
3811 } else fra.me.REG[2] = once_value_2;
3812 fra.me.REG[2] = fra.me.REG[2];
3813 once_value_1 = fra.me.REG[2];
3814 register_static_object(&once_value_1);
3815 } else fra.me.REG[2] = once_value_1;
3816 fra.me.REG[2] = fra.me.REG[2];
3817 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3818 /* parser/lexer.nit:829 */
3819 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3820 stack_frame_head = fra.me.prev;
3821 init_table[itpos62] = 1;
3822 return;
3823 }
3824 val_t parser___lexer___TDotdot___parser_index(val_t p0){
3825 struct {struct stack_frame_t me;} fra;
3826 val_t REGB0;
3827 val_t tmp;
3828 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3829 fra.me.file = LOCATE_parser___lexer;
3830 fra.me.line = 834;
3831 fra.me.meth = LOCATE_parser___lexer___TDotdot___parser_index;
3832 fra.me.has_broke = 0;
3833 fra.me.REG_size = 1;
3834 fra.me.nitni_local_ref_head = NULL;
3835 fra.me.REG[0] = NIT_NULL;
3836 fra.me.REG[0] = p0;
3837 /* parser/lexer.nit:836 */
3838 REGB0 = TAG_Int(63);
3839 goto label1;
3840 label1: while(0);
3841 stack_frame_head = fra.me.prev;
3842 return REGB0;
3843 }
3844 void parser___lexer___TDotdot___init_tk(val_t p0, val_t p1, int* init_table){
3845 int itpos63 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TDotdot].i;
3846 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3847 val_t REGB0;
3848 val_t tmp;
3849 static val_t once_value_1; /* Once value */
3850 static val_t once_value_2; /* Once value */
3851 if (init_table[itpos63]) return;
3852 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3853 fra.me.file = LOCATE_parser___lexer;
3854 fra.me.line = 839;
3855 fra.me.meth = LOCATE_parser___lexer___TDotdot___init_tk;
3856 fra.me.has_broke = 0;
3857 fra.me.REG_size = 3;
3858 fra.me.nitni_local_ref_head = NULL;
3859 fra.me.REG[0] = NIT_NULL;
3860 fra.me.REG[1] = NIT_NULL;
3861 fra.me.REG[2] = NIT_NULL;
3862 fra.me.REG[0] = p0;
3863 fra.me.REG[1] = p1;
3864 /* parser/lexer.nit:841 */
3865 if (!once_value_1) {
3866 if (!once_value_2) {
3867 fra.me.REG[2] = BOX_NativeString("..");
3868 REGB0 = TAG_Int(2);
3869 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3870 once_value_2 = fra.me.REG[2];
3871 register_static_object(&once_value_2);
3872 } else fra.me.REG[2] = once_value_2;
3873 fra.me.REG[2] = fra.me.REG[2];
3874 once_value_1 = fra.me.REG[2];
3875 register_static_object(&once_value_1);
3876 } else fra.me.REG[2] = once_value_1;
3877 fra.me.REG[2] = fra.me.REG[2];
3878 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3879 /* parser/lexer.nit:842 */
3880 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3881 stack_frame_head = fra.me.prev;
3882 init_table[itpos63] = 1;
3883 return;
3884 }
3885 val_t parser___lexer___TDot___parser_index(val_t p0){
3886 struct {struct stack_frame_t me;} fra;
3887 val_t REGB0;
3888 val_t tmp;
3889 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3890 fra.me.file = LOCATE_parser___lexer;
3891 fra.me.line = 847;
3892 fra.me.meth = LOCATE_parser___lexer___TDot___parser_index;
3893 fra.me.has_broke = 0;
3894 fra.me.REG_size = 1;
3895 fra.me.nitni_local_ref_head = NULL;
3896 fra.me.REG[0] = NIT_NULL;
3897 fra.me.REG[0] = p0;
3898 /* parser/lexer.nit:849 */
3899 REGB0 = TAG_Int(64);
3900 goto label1;
3901 label1: while(0);
3902 stack_frame_head = fra.me.prev;
3903 return REGB0;
3904 }
3905 void parser___lexer___TDot___init_tk(val_t p0, val_t p1, int* init_table){
3906 int itpos64 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TDot].i;
3907 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3908 val_t REGB0;
3909 val_t tmp;
3910 static val_t once_value_1; /* Once value */
3911 static val_t once_value_2; /* Once value */
3912 if (init_table[itpos64]) return;
3913 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3914 fra.me.file = LOCATE_parser___lexer;
3915 fra.me.line = 852;
3916 fra.me.meth = LOCATE_parser___lexer___TDot___init_tk;
3917 fra.me.has_broke = 0;
3918 fra.me.REG_size = 3;
3919 fra.me.nitni_local_ref_head = NULL;
3920 fra.me.REG[0] = NIT_NULL;
3921 fra.me.REG[1] = NIT_NULL;
3922 fra.me.REG[2] = NIT_NULL;
3923 fra.me.REG[0] = p0;
3924 fra.me.REG[1] = p1;
3925 /* parser/lexer.nit:854 */
3926 if (!once_value_1) {
3927 if (!once_value_2) {
3928 fra.me.REG[2] = BOX_NativeString(".");
3929 REGB0 = TAG_Int(1);
3930 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3931 once_value_2 = fra.me.REG[2];
3932 register_static_object(&once_value_2);
3933 } else fra.me.REG[2] = once_value_2;
3934 fra.me.REG[2] = fra.me.REG[2];
3935 once_value_1 = fra.me.REG[2];
3936 register_static_object(&once_value_1);
3937 } else fra.me.REG[2] = once_value_1;
3938 fra.me.REG[2] = fra.me.REG[2];
3939 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
3940 /* parser/lexer.nit:855 */
3941 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
3942 stack_frame_head = fra.me.prev;
3943 init_table[itpos64] = 1;
3944 return;
3945 }
3946 val_t parser___lexer___TPlus___parser_index(val_t p0){
3947 struct {struct stack_frame_t me;} fra;
3948 val_t REGB0;
3949 val_t tmp;
3950 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3951 fra.me.file = LOCATE_parser___lexer;
3952 fra.me.line = 860;
3953 fra.me.meth = LOCATE_parser___lexer___TPlus___parser_index;
3954 fra.me.has_broke = 0;
3955 fra.me.REG_size = 1;
3956 fra.me.nitni_local_ref_head = NULL;
3957 fra.me.REG[0] = NIT_NULL;
3958 fra.me.REG[0] = p0;
3959 /* parser/lexer.nit:862 */
3960 REGB0 = TAG_Int(65);
3961 goto label1;
3962 label1: while(0);
3963 stack_frame_head = fra.me.prev;
3964 return REGB0;
3965 }
3966 void parser___lexer___TPlus___init_tk(val_t p0, val_t p1, int* init_table){
3967 int itpos65 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TPlus].i;
3968 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
3969 val_t REGB0;
3970 val_t tmp;
3971 static val_t once_value_1; /* Once value */
3972 static val_t once_value_2; /* Once value */
3973 if (init_table[itpos65]) return;
3974 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
3975 fra.me.file = LOCATE_parser___lexer;
3976 fra.me.line = 865;
3977 fra.me.meth = LOCATE_parser___lexer___TPlus___init_tk;
3978 fra.me.has_broke = 0;
3979 fra.me.REG_size = 3;
3980 fra.me.nitni_local_ref_head = NULL;
3981 fra.me.REG[0] = NIT_NULL;
3982 fra.me.REG[1] = NIT_NULL;
3983 fra.me.REG[2] = NIT_NULL;
3984 fra.me.REG[0] = p0;
3985 fra.me.REG[1] = p1;
3986 /* parser/lexer.nit:867 */
3987 if (!once_value_1) {
3988 if (!once_value_2) {
3989 fra.me.REG[2] = BOX_NativeString("+");
3990 REGB0 = TAG_Int(1);
3991 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
3992 once_value_2 = fra.me.REG[2];
3993 register_static_object(&once_value_2);
3994 } else fra.me.REG[2] = once_value_2;
3995 fra.me.REG[2] = fra.me.REG[2];
3996 once_value_1 = fra.me.REG[2];
3997 register_static_object(&once_value_1);
3998 } else fra.me.REG[2] = once_value_1;
3999 fra.me.REG[2] = fra.me.REG[2];
4000 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4001 /* parser/lexer.nit:868 */
4002 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4003 stack_frame_head = fra.me.prev;
4004 init_table[itpos65] = 1;
4005 return;
4006 }
4007 val_t parser___lexer___TMinus___parser_index(val_t p0){
4008 struct {struct stack_frame_t me;} fra;
4009 val_t REGB0;
4010 val_t tmp;
4011 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4012 fra.me.file = LOCATE_parser___lexer;
4013 fra.me.line = 873;
4014 fra.me.meth = LOCATE_parser___lexer___TMinus___parser_index;
4015 fra.me.has_broke = 0;
4016 fra.me.REG_size = 1;
4017 fra.me.nitni_local_ref_head = NULL;
4018 fra.me.REG[0] = NIT_NULL;
4019 fra.me.REG[0] = p0;
4020 /* parser/lexer.nit:875 */
4021 REGB0 = TAG_Int(66);
4022 goto label1;
4023 label1: while(0);
4024 stack_frame_head = fra.me.prev;
4025 return REGB0;
4026 }
4027 void parser___lexer___TMinus___init_tk(val_t p0, val_t p1, int* init_table){
4028 int itpos66 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TMinus].i;
4029 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4030 val_t REGB0;
4031 val_t tmp;
4032 static val_t once_value_1; /* Once value */
4033 static val_t once_value_2; /* Once value */
4034 if (init_table[itpos66]) return;
4035 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4036 fra.me.file = LOCATE_parser___lexer;
4037 fra.me.line = 878;
4038 fra.me.meth = LOCATE_parser___lexer___TMinus___init_tk;
4039 fra.me.has_broke = 0;
4040 fra.me.REG_size = 3;
4041 fra.me.nitni_local_ref_head = NULL;
4042 fra.me.REG[0] = NIT_NULL;
4043 fra.me.REG[1] = NIT_NULL;
4044 fra.me.REG[2] = NIT_NULL;
4045 fra.me.REG[0] = p0;
4046 fra.me.REG[1] = p1;
4047 /* parser/lexer.nit:880 */
4048 if (!once_value_1) {
4049 if (!once_value_2) {
4050 fra.me.REG[2] = BOX_NativeString("-");
4051 REGB0 = TAG_Int(1);
4052 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4053 once_value_2 = fra.me.REG[2];
4054 register_static_object(&once_value_2);
4055 } else fra.me.REG[2] = once_value_2;
4056 fra.me.REG[2] = fra.me.REG[2];
4057 once_value_1 = fra.me.REG[2];
4058 register_static_object(&once_value_1);
4059 } else fra.me.REG[2] = once_value_1;
4060 fra.me.REG[2] = fra.me.REG[2];
4061 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4062 /* parser/lexer.nit:881 */
4063 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4064 stack_frame_head = fra.me.prev;
4065 init_table[itpos66] = 1;
4066 return;
4067 }
4068 val_t parser___lexer___TStar___parser_index(val_t p0){
4069 struct {struct stack_frame_t me;} fra;
4070 val_t REGB0;
4071 val_t tmp;
4072 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4073 fra.me.file = LOCATE_parser___lexer;
4074 fra.me.line = 886;
4075 fra.me.meth = LOCATE_parser___lexer___TStar___parser_index;
4076 fra.me.has_broke = 0;
4077 fra.me.REG_size = 1;
4078 fra.me.nitni_local_ref_head = NULL;
4079 fra.me.REG[0] = NIT_NULL;
4080 fra.me.REG[0] = p0;
4081 /* parser/lexer.nit:888 */
4082 REGB0 = TAG_Int(67);
4083 goto label1;
4084 label1: while(0);
4085 stack_frame_head = fra.me.prev;
4086 return REGB0;
4087 }
4088 void parser___lexer___TStar___init_tk(val_t p0, val_t p1, int* init_table){
4089 int itpos67 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TStar].i;
4090 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4091 val_t REGB0;
4092 val_t tmp;
4093 static val_t once_value_1; /* Once value */
4094 static val_t once_value_2; /* Once value */
4095 if (init_table[itpos67]) return;
4096 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4097 fra.me.file = LOCATE_parser___lexer;
4098 fra.me.line = 891;
4099 fra.me.meth = LOCATE_parser___lexer___TStar___init_tk;
4100 fra.me.has_broke = 0;
4101 fra.me.REG_size = 3;
4102 fra.me.nitni_local_ref_head = NULL;
4103 fra.me.REG[0] = NIT_NULL;
4104 fra.me.REG[1] = NIT_NULL;
4105 fra.me.REG[2] = NIT_NULL;
4106 fra.me.REG[0] = p0;
4107 fra.me.REG[1] = p1;
4108 /* parser/lexer.nit:893 */
4109 if (!once_value_1) {
4110 if (!once_value_2) {
4111 fra.me.REG[2] = BOX_NativeString("*");
4112 REGB0 = TAG_Int(1);
4113 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4114 once_value_2 = fra.me.REG[2];
4115 register_static_object(&once_value_2);
4116 } else fra.me.REG[2] = once_value_2;
4117 fra.me.REG[2] = fra.me.REG[2];
4118 once_value_1 = fra.me.REG[2];
4119 register_static_object(&once_value_1);
4120 } else fra.me.REG[2] = once_value_1;
4121 fra.me.REG[2] = fra.me.REG[2];
4122 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4123 /* parser/lexer.nit:894 */
4124 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4125 stack_frame_head = fra.me.prev;
4126 init_table[itpos67] = 1;
4127 return;
4128 }
4129 val_t parser___lexer___TSlash___parser_index(val_t p0){
4130 struct {struct stack_frame_t me;} fra;
4131 val_t REGB0;
4132 val_t tmp;
4133 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4134 fra.me.file = LOCATE_parser___lexer;
4135 fra.me.line = 899;
4136 fra.me.meth = LOCATE_parser___lexer___TSlash___parser_index;
4137 fra.me.has_broke = 0;
4138 fra.me.REG_size = 1;
4139 fra.me.nitni_local_ref_head = NULL;
4140 fra.me.REG[0] = NIT_NULL;
4141 fra.me.REG[0] = p0;
4142 /* parser/lexer.nit:901 */
4143 REGB0 = TAG_Int(68);
4144 goto label1;
4145 label1: while(0);
4146 stack_frame_head = fra.me.prev;
4147 return REGB0;
4148 }
4149 void parser___lexer___TSlash___init_tk(val_t p0, val_t p1, int* init_table){
4150 int itpos68 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TSlash].i;
4151 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4152 val_t REGB0;
4153 val_t tmp;
4154 static val_t once_value_1; /* Once value */
4155 static val_t once_value_2; /* Once value */
4156 if (init_table[itpos68]) return;
4157 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4158 fra.me.file = LOCATE_parser___lexer;
4159 fra.me.line = 904;
4160 fra.me.meth = LOCATE_parser___lexer___TSlash___init_tk;
4161 fra.me.has_broke = 0;
4162 fra.me.REG_size = 3;
4163 fra.me.nitni_local_ref_head = NULL;
4164 fra.me.REG[0] = NIT_NULL;
4165 fra.me.REG[1] = NIT_NULL;
4166 fra.me.REG[2] = NIT_NULL;
4167 fra.me.REG[0] = p0;
4168 fra.me.REG[1] = p1;
4169 /* parser/lexer.nit:906 */
4170 if (!once_value_1) {
4171 if (!once_value_2) {
4172 fra.me.REG[2] = BOX_NativeString("/");
4173 REGB0 = TAG_Int(1);
4174 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4175 once_value_2 = fra.me.REG[2];
4176 register_static_object(&once_value_2);
4177 } else fra.me.REG[2] = once_value_2;
4178 fra.me.REG[2] = fra.me.REG[2];
4179 once_value_1 = fra.me.REG[2];
4180 register_static_object(&once_value_1);
4181 } else fra.me.REG[2] = once_value_1;
4182 fra.me.REG[2] = fra.me.REG[2];
4183 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4184 /* parser/lexer.nit:907 */
4185 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4186 stack_frame_head = fra.me.prev;
4187 init_table[itpos68] = 1;
4188 return;
4189 }
4190 val_t parser___lexer___TPercent___parser_index(val_t p0){
4191 struct {struct stack_frame_t me;} fra;
4192 val_t REGB0;
4193 val_t tmp;
4194 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4195 fra.me.file = LOCATE_parser___lexer;
4196 fra.me.line = 912;
4197 fra.me.meth = LOCATE_parser___lexer___TPercent___parser_index;
4198 fra.me.has_broke = 0;
4199 fra.me.REG_size = 1;
4200 fra.me.nitni_local_ref_head = NULL;
4201 fra.me.REG[0] = NIT_NULL;
4202 fra.me.REG[0] = p0;
4203 /* parser/lexer.nit:914 */
4204 REGB0 = TAG_Int(69);
4205 goto label1;
4206 label1: while(0);
4207 stack_frame_head = fra.me.prev;
4208 return REGB0;
4209 }
4210 void parser___lexer___TPercent___init_tk(val_t p0, val_t p1, int* init_table){
4211 int itpos69 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TPercent].i;
4212 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4213 val_t REGB0;
4214 val_t tmp;
4215 static val_t once_value_1; /* Once value */
4216 static val_t once_value_2; /* Once value */
4217 if (init_table[itpos69]) return;
4218 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4219 fra.me.file = LOCATE_parser___lexer;
4220 fra.me.line = 917;
4221 fra.me.meth = LOCATE_parser___lexer___TPercent___init_tk;
4222 fra.me.has_broke = 0;
4223 fra.me.REG_size = 3;
4224 fra.me.nitni_local_ref_head = NULL;
4225 fra.me.REG[0] = NIT_NULL;
4226 fra.me.REG[1] = NIT_NULL;
4227 fra.me.REG[2] = NIT_NULL;
4228 fra.me.REG[0] = p0;
4229 fra.me.REG[1] = p1;
4230 /* parser/lexer.nit:919 */
4231 if (!once_value_1) {
4232 if (!once_value_2) {
4233 fra.me.REG[2] = BOX_NativeString("%");
4234 REGB0 = TAG_Int(1);
4235 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4236 once_value_2 = fra.me.REG[2];
4237 register_static_object(&once_value_2);
4238 } else fra.me.REG[2] = once_value_2;
4239 fra.me.REG[2] = fra.me.REG[2];
4240 once_value_1 = fra.me.REG[2];
4241 register_static_object(&once_value_1);
4242 } else fra.me.REG[2] = once_value_1;
4243 fra.me.REG[2] = fra.me.REG[2];
4244 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4245 /* parser/lexer.nit:920 */
4246 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4247 stack_frame_head = fra.me.prev;
4248 init_table[itpos69] = 1;
4249 return;
4250 }
4251 val_t parser___lexer___TEq___parser_index(val_t p0){
4252 struct {struct stack_frame_t me;} fra;
4253 val_t REGB0;
4254 val_t tmp;
4255 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4256 fra.me.file = LOCATE_parser___lexer;
4257 fra.me.line = 925;
4258 fra.me.meth = LOCATE_parser___lexer___TEq___parser_index;
4259 fra.me.has_broke = 0;
4260 fra.me.REG_size = 1;
4261 fra.me.nitni_local_ref_head = NULL;
4262 fra.me.REG[0] = NIT_NULL;
4263 fra.me.REG[0] = p0;
4264 /* parser/lexer.nit:927 */
4265 REGB0 = TAG_Int(70);
4266 goto label1;
4267 label1: while(0);
4268 stack_frame_head = fra.me.prev;
4269 return REGB0;
4270 }
4271 void parser___lexer___TEq___init_tk(val_t p0, val_t p1, int* init_table){
4272 int itpos70 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TEq].i;
4273 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4274 val_t REGB0;
4275 val_t tmp;
4276 static val_t once_value_1; /* Once value */
4277 static val_t once_value_2; /* Once value */
4278 if (init_table[itpos70]) return;
4279 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4280 fra.me.file = LOCATE_parser___lexer;
4281 fra.me.line = 930;
4282 fra.me.meth = LOCATE_parser___lexer___TEq___init_tk;
4283 fra.me.has_broke = 0;
4284 fra.me.REG_size = 3;
4285 fra.me.nitni_local_ref_head = NULL;
4286 fra.me.REG[0] = NIT_NULL;
4287 fra.me.REG[1] = NIT_NULL;
4288 fra.me.REG[2] = NIT_NULL;
4289 fra.me.REG[0] = p0;
4290 fra.me.REG[1] = p1;
4291 /* parser/lexer.nit:932 */
4292 if (!once_value_1) {
4293 if (!once_value_2) {
4294 fra.me.REG[2] = BOX_NativeString("==");
4295 REGB0 = TAG_Int(2);
4296 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4297 once_value_2 = fra.me.REG[2];
4298 register_static_object(&once_value_2);
4299 } else fra.me.REG[2] = once_value_2;
4300 fra.me.REG[2] = fra.me.REG[2];
4301 once_value_1 = fra.me.REG[2];
4302 register_static_object(&once_value_1);
4303 } else fra.me.REG[2] = once_value_1;
4304 fra.me.REG[2] = fra.me.REG[2];
4305 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4306 /* parser/lexer.nit:933 */
4307 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4308 stack_frame_head = fra.me.prev;
4309 init_table[itpos70] = 1;
4310 return;
4311 }
4312 val_t parser___lexer___TNe___parser_index(val_t p0){
4313 struct {struct stack_frame_t me;} fra;
4314 val_t REGB0;
4315 val_t tmp;
4316 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4317 fra.me.file = LOCATE_parser___lexer;
4318 fra.me.line = 938;
4319 fra.me.meth = LOCATE_parser___lexer___TNe___parser_index;
4320 fra.me.has_broke = 0;
4321 fra.me.REG_size = 1;
4322 fra.me.nitni_local_ref_head = NULL;
4323 fra.me.REG[0] = NIT_NULL;
4324 fra.me.REG[0] = p0;
4325 /* parser/lexer.nit:940 */
4326 REGB0 = TAG_Int(71);
4327 goto label1;
4328 label1: while(0);
4329 stack_frame_head = fra.me.prev;
4330 return REGB0;
4331 }
4332 void parser___lexer___TNe___init_tk(val_t p0, val_t p1, int* init_table){
4333 int itpos71 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TNe].i;
4334 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4335 val_t REGB0;
4336 val_t tmp;
4337 static val_t once_value_1; /* Once value */
4338 static val_t once_value_2; /* Once value */
4339 if (init_table[itpos71]) return;
4340 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4341 fra.me.file = LOCATE_parser___lexer;
4342 fra.me.line = 943;
4343 fra.me.meth = LOCATE_parser___lexer___TNe___init_tk;
4344 fra.me.has_broke = 0;
4345 fra.me.REG_size = 3;
4346 fra.me.nitni_local_ref_head = NULL;
4347 fra.me.REG[0] = NIT_NULL;
4348 fra.me.REG[1] = NIT_NULL;
4349 fra.me.REG[2] = NIT_NULL;
4350 fra.me.REG[0] = p0;
4351 fra.me.REG[1] = p1;
4352 /* parser/lexer.nit:945 */
4353 if (!once_value_1) {
4354 if (!once_value_2) {
4355 fra.me.REG[2] = BOX_NativeString("!=");
4356 REGB0 = TAG_Int(2);
4357 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4358 once_value_2 = fra.me.REG[2];
4359 register_static_object(&once_value_2);
4360 } else fra.me.REG[2] = once_value_2;
4361 fra.me.REG[2] = fra.me.REG[2];
4362 once_value_1 = fra.me.REG[2];
4363 register_static_object(&once_value_1);
4364 } else fra.me.REG[2] = once_value_1;
4365 fra.me.REG[2] = fra.me.REG[2];
4366 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4367 /* parser/lexer.nit:946 */
4368 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4369 stack_frame_head = fra.me.prev;
4370 init_table[itpos71] = 1;
4371 return;
4372 }
4373 val_t parser___lexer___TLt___parser_index(val_t p0){
4374 struct {struct stack_frame_t me;} fra;
4375 val_t REGB0;
4376 val_t tmp;
4377 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4378 fra.me.file = LOCATE_parser___lexer;
4379 fra.me.line = 951;
4380 fra.me.meth = LOCATE_parser___lexer___TLt___parser_index;
4381 fra.me.has_broke = 0;
4382 fra.me.REG_size = 1;
4383 fra.me.nitni_local_ref_head = NULL;
4384 fra.me.REG[0] = NIT_NULL;
4385 fra.me.REG[0] = p0;
4386 /* parser/lexer.nit:953 */
4387 REGB0 = TAG_Int(72);
4388 goto label1;
4389 label1: while(0);
4390 stack_frame_head = fra.me.prev;
4391 return REGB0;
4392 }
4393 void parser___lexer___TLt___init_tk(val_t p0, val_t p1, int* init_table){
4394 int itpos72 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TLt].i;
4395 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4396 val_t REGB0;
4397 val_t tmp;
4398 static val_t once_value_1; /* Once value */
4399 static val_t once_value_2; /* Once value */
4400 if (init_table[itpos72]) return;
4401 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4402 fra.me.file = LOCATE_parser___lexer;
4403 fra.me.line = 956;
4404 fra.me.meth = LOCATE_parser___lexer___TLt___init_tk;
4405 fra.me.has_broke = 0;
4406 fra.me.REG_size = 3;
4407 fra.me.nitni_local_ref_head = NULL;
4408 fra.me.REG[0] = NIT_NULL;
4409 fra.me.REG[1] = NIT_NULL;
4410 fra.me.REG[2] = NIT_NULL;
4411 fra.me.REG[0] = p0;
4412 fra.me.REG[1] = p1;
4413 /* parser/lexer.nit:958 */
4414 if (!once_value_1) {
4415 if (!once_value_2) {
4416 fra.me.REG[2] = BOX_NativeString("<");
4417 REGB0 = TAG_Int(1);
4418 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4419 once_value_2 = fra.me.REG[2];
4420 register_static_object(&once_value_2);
4421 } else fra.me.REG[2] = once_value_2;
4422 fra.me.REG[2] = fra.me.REG[2];
4423 once_value_1 = fra.me.REG[2];
4424 register_static_object(&once_value_1);
4425 } else fra.me.REG[2] = once_value_1;
4426 fra.me.REG[2] = fra.me.REG[2];
4427 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4428 /* parser/lexer.nit:959 */
4429 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4430 stack_frame_head = fra.me.prev;
4431 init_table[itpos72] = 1;
4432 return;
4433 }
4434 val_t parser___lexer___TLe___parser_index(val_t p0){
4435 struct {struct stack_frame_t me;} fra;
4436 val_t REGB0;
4437 val_t tmp;
4438 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4439 fra.me.file = LOCATE_parser___lexer;
4440 fra.me.line = 964;
4441 fra.me.meth = LOCATE_parser___lexer___TLe___parser_index;
4442 fra.me.has_broke = 0;
4443 fra.me.REG_size = 1;
4444 fra.me.nitni_local_ref_head = NULL;
4445 fra.me.REG[0] = NIT_NULL;
4446 fra.me.REG[0] = p0;
4447 /* parser/lexer.nit:966 */
4448 REGB0 = TAG_Int(73);
4449 goto label1;
4450 label1: while(0);
4451 stack_frame_head = fra.me.prev;
4452 return REGB0;
4453 }
4454 void parser___lexer___TLe___init_tk(val_t p0, val_t p1, int* init_table){
4455 int itpos73 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TLe].i;
4456 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4457 val_t REGB0;
4458 val_t tmp;
4459 static val_t once_value_1; /* Once value */
4460 static val_t once_value_2; /* Once value */
4461 if (init_table[itpos73]) return;
4462 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4463 fra.me.file = LOCATE_parser___lexer;
4464 fra.me.line = 969;
4465 fra.me.meth = LOCATE_parser___lexer___TLe___init_tk;
4466 fra.me.has_broke = 0;
4467 fra.me.REG_size = 3;
4468 fra.me.nitni_local_ref_head = NULL;
4469 fra.me.REG[0] = NIT_NULL;
4470 fra.me.REG[1] = NIT_NULL;
4471 fra.me.REG[2] = NIT_NULL;
4472 fra.me.REG[0] = p0;
4473 fra.me.REG[1] = p1;
4474 /* parser/lexer.nit:971 */
4475 if (!once_value_1) {
4476 if (!once_value_2) {
4477 fra.me.REG[2] = BOX_NativeString("<=");
4478 REGB0 = TAG_Int(2);
4479 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4480 once_value_2 = fra.me.REG[2];
4481 register_static_object(&once_value_2);
4482 } else fra.me.REG[2] = once_value_2;
4483 fra.me.REG[2] = fra.me.REG[2];
4484 once_value_1 = fra.me.REG[2];
4485 register_static_object(&once_value_1);
4486 } else fra.me.REG[2] = once_value_1;
4487 fra.me.REG[2] = fra.me.REG[2];
4488 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4489 /* parser/lexer.nit:972 */
4490 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4491 stack_frame_head = fra.me.prev;
4492 init_table[itpos73] = 1;
4493 return;
4494 }
4495 val_t parser___lexer___TLl___parser_index(val_t p0){
4496 struct {struct stack_frame_t me;} fra;
4497 val_t REGB0;
4498 val_t tmp;
4499 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4500 fra.me.file = LOCATE_parser___lexer;
4501 fra.me.line = 977;
4502 fra.me.meth = LOCATE_parser___lexer___TLl___parser_index;
4503 fra.me.has_broke = 0;
4504 fra.me.REG_size = 1;
4505 fra.me.nitni_local_ref_head = NULL;
4506 fra.me.REG[0] = NIT_NULL;
4507 fra.me.REG[0] = p0;
4508 /* parser/lexer.nit:979 */
4509 REGB0 = TAG_Int(74);
4510 goto label1;
4511 label1: while(0);
4512 stack_frame_head = fra.me.prev;
4513 return REGB0;
4514 }
4515 void parser___lexer___TLl___init_tk(val_t p0, val_t p1, int* init_table){
4516 int itpos74 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TLl].i;
4517 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4518 val_t REGB0;
4519 val_t tmp;
4520 static val_t once_value_1; /* Once value */
4521 static val_t once_value_2; /* Once value */
4522 if (init_table[itpos74]) return;
4523 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4524 fra.me.file = LOCATE_parser___lexer;
4525 fra.me.line = 982;
4526 fra.me.meth = LOCATE_parser___lexer___TLl___init_tk;
4527 fra.me.has_broke = 0;
4528 fra.me.REG_size = 3;
4529 fra.me.nitni_local_ref_head = NULL;
4530 fra.me.REG[0] = NIT_NULL;
4531 fra.me.REG[1] = NIT_NULL;
4532 fra.me.REG[2] = NIT_NULL;
4533 fra.me.REG[0] = p0;
4534 fra.me.REG[1] = p1;
4535 /* parser/lexer.nit:984 */
4536 if (!once_value_1) {
4537 if (!once_value_2) {
4538 fra.me.REG[2] = BOX_NativeString("<<");
4539 REGB0 = TAG_Int(2);
4540 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4541 once_value_2 = fra.me.REG[2];
4542 register_static_object(&once_value_2);
4543 } else fra.me.REG[2] = once_value_2;
4544 fra.me.REG[2] = fra.me.REG[2];
4545 once_value_1 = fra.me.REG[2];
4546 register_static_object(&once_value_1);
4547 } else fra.me.REG[2] = once_value_1;
4548 fra.me.REG[2] = fra.me.REG[2];
4549 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4550 /* parser/lexer.nit:985 */
4551 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4552 stack_frame_head = fra.me.prev;
4553 init_table[itpos74] = 1;
4554 return;
4555 }
4556 val_t parser___lexer___TGt___parser_index(val_t p0){
4557 struct {struct stack_frame_t me;} fra;
4558 val_t REGB0;
4559 val_t tmp;
4560 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4561 fra.me.file = LOCATE_parser___lexer;
4562 fra.me.line = 990;
4563 fra.me.meth = LOCATE_parser___lexer___TGt___parser_index;
4564 fra.me.has_broke = 0;
4565 fra.me.REG_size = 1;
4566 fra.me.nitni_local_ref_head = NULL;
4567 fra.me.REG[0] = NIT_NULL;
4568 fra.me.REG[0] = p0;
4569 /* parser/lexer.nit:992 */
4570 REGB0 = TAG_Int(75);
4571 goto label1;
4572 label1: while(0);
4573 stack_frame_head = fra.me.prev;
4574 return REGB0;
4575 }
4576 void parser___lexer___TGt___init_tk(val_t p0, val_t p1, int* init_table){
4577 int itpos75 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TGt].i;
4578 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4579 val_t REGB0;
4580 val_t tmp;
4581 static val_t once_value_1; /* Once value */
4582 static val_t once_value_2; /* Once value */
4583 if (init_table[itpos75]) return;
4584 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4585 fra.me.file = LOCATE_parser___lexer;
4586 fra.me.line = 995;
4587 fra.me.meth = LOCATE_parser___lexer___TGt___init_tk;
4588 fra.me.has_broke = 0;
4589 fra.me.REG_size = 3;
4590 fra.me.nitni_local_ref_head = NULL;
4591 fra.me.REG[0] = NIT_NULL;
4592 fra.me.REG[1] = NIT_NULL;
4593 fra.me.REG[2] = NIT_NULL;
4594 fra.me.REG[0] = p0;
4595 fra.me.REG[1] = p1;
4596 /* parser/lexer.nit:997 */
4597 if (!once_value_1) {
4598 if (!once_value_2) {
4599 fra.me.REG[2] = BOX_NativeString(">");
4600 REGB0 = TAG_Int(1);
4601 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4602 once_value_2 = fra.me.REG[2];
4603 register_static_object(&once_value_2);
4604 } else fra.me.REG[2] = once_value_2;
4605 fra.me.REG[2] = fra.me.REG[2];
4606 once_value_1 = fra.me.REG[2];
4607 register_static_object(&once_value_1);
4608 } else fra.me.REG[2] = once_value_1;
4609 fra.me.REG[2] = fra.me.REG[2];
4610 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4611 /* parser/lexer.nit:998 */
4612 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4613 stack_frame_head = fra.me.prev;
4614 init_table[itpos75] = 1;
4615 return;
4616 }
4617 val_t parser___lexer___TGe___parser_index(val_t p0){
4618 struct {struct stack_frame_t me;} fra;
4619 val_t REGB0;
4620 val_t tmp;
4621 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4622 fra.me.file = LOCATE_parser___lexer;
4623 fra.me.line = 1003;
4624 fra.me.meth = LOCATE_parser___lexer___TGe___parser_index;
4625 fra.me.has_broke = 0;
4626 fra.me.REG_size = 1;
4627 fra.me.nitni_local_ref_head = NULL;
4628 fra.me.REG[0] = NIT_NULL;
4629 fra.me.REG[0] = p0;
4630 /* parser/lexer.nit:1005 */
4631 REGB0 = TAG_Int(76);
4632 goto label1;
4633 label1: while(0);
4634 stack_frame_head = fra.me.prev;
4635 return REGB0;
4636 }
4637 void parser___lexer___TGe___init_tk(val_t p0, val_t p1, int* init_table){
4638 int itpos76 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TGe].i;
4639 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4640 val_t REGB0;
4641 val_t tmp;
4642 static val_t once_value_1; /* Once value */
4643 static val_t once_value_2; /* Once value */
4644 if (init_table[itpos76]) return;
4645 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4646 fra.me.file = LOCATE_parser___lexer;
4647 fra.me.line = 1008;
4648 fra.me.meth = LOCATE_parser___lexer___TGe___init_tk;
4649 fra.me.has_broke = 0;
4650 fra.me.REG_size = 3;
4651 fra.me.nitni_local_ref_head = NULL;
4652 fra.me.REG[0] = NIT_NULL;
4653 fra.me.REG[1] = NIT_NULL;
4654 fra.me.REG[2] = NIT_NULL;
4655 fra.me.REG[0] = p0;
4656 fra.me.REG[1] = p1;
4657 /* parser/lexer.nit:1010 */
4658 if (!once_value_1) {
4659 if (!once_value_2) {
4660 fra.me.REG[2] = BOX_NativeString(">=");
4661 REGB0 = TAG_Int(2);
4662 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4663 once_value_2 = fra.me.REG[2];
4664 register_static_object(&once_value_2);
4665 } else fra.me.REG[2] = once_value_2;
4666 fra.me.REG[2] = fra.me.REG[2];
4667 once_value_1 = fra.me.REG[2];
4668 register_static_object(&once_value_1);
4669 } else fra.me.REG[2] = once_value_1;
4670 fra.me.REG[2] = fra.me.REG[2];
4671 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4672 /* parser/lexer.nit:1011 */
4673 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4674 stack_frame_head = fra.me.prev;
4675 init_table[itpos76] = 1;
4676 return;
4677 }
4678 val_t parser___lexer___TGg___parser_index(val_t p0){
4679 struct {struct stack_frame_t me;} fra;
4680 val_t REGB0;
4681 val_t tmp;
4682 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4683 fra.me.file = LOCATE_parser___lexer;
4684 fra.me.line = 1016;
4685 fra.me.meth = LOCATE_parser___lexer___TGg___parser_index;
4686 fra.me.has_broke = 0;
4687 fra.me.REG_size = 1;
4688 fra.me.nitni_local_ref_head = NULL;
4689 fra.me.REG[0] = NIT_NULL;
4690 fra.me.REG[0] = p0;
4691 /* parser/lexer.nit:1018 */
4692 REGB0 = TAG_Int(77);
4693 goto label1;
4694 label1: while(0);
4695 stack_frame_head = fra.me.prev;
4696 return REGB0;
4697 }
4698 void parser___lexer___TGg___init_tk(val_t p0, val_t p1, int* init_table){
4699 int itpos77 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TGg].i;
4700 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4701 val_t REGB0;
4702 val_t tmp;
4703 static val_t once_value_1; /* Once value */
4704 static val_t once_value_2; /* Once value */
4705 if (init_table[itpos77]) return;
4706 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4707 fra.me.file = LOCATE_parser___lexer;
4708 fra.me.line = 1021;
4709 fra.me.meth = LOCATE_parser___lexer___TGg___init_tk;
4710 fra.me.has_broke = 0;
4711 fra.me.REG_size = 3;
4712 fra.me.nitni_local_ref_head = NULL;
4713 fra.me.REG[0] = NIT_NULL;
4714 fra.me.REG[1] = NIT_NULL;
4715 fra.me.REG[2] = NIT_NULL;
4716 fra.me.REG[0] = p0;
4717 fra.me.REG[1] = p1;
4718 /* parser/lexer.nit:1023 */
4719 if (!once_value_1) {
4720 if (!once_value_2) {
4721 fra.me.REG[2] = BOX_NativeString(">>");
4722 REGB0 = TAG_Int(2);
4723 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4724 once_value_2 = fra.me.REG[2];
4725 register_static_object(&once_value_2);
4726 } else fra.me.REG[2] = once_value_2;
4727 fra.me.REG[2] = fra.me.REG[2];
4728 once_value_1 = fra.me.REG[2];
4729 register_static_object(&once_value_1);
4730 } else fra.me.REG[2] = once_value_1;
4731 fra.me.REG[2] = fra.me.REG[2];
4732 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4733 /* parser/lexer.nit:1024 */
4734 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4735 stack_frame_head = fra.me.prev;
4736 init_table[itpos77] = 1;
4737 return;
4738 }
4739 val_t parser___lexer___TStarship___parser_index(val_t p0){
4740 struct {struct stack_frame_t me;} fra;
4741 val_t REGB0;
4742 val_t tmp;
4743 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4744 fra.me.file = LOCATE_parser___lexer;
4745 fra.me.line = 1029;
4746 fra.me.meth = LOCATE_parser___lexer___TStarship___parser_index;
4747 fra.me.has_broke = 0;
4748 fra.me.REG_size = 1;
4749 fra.me.nitni_local_ref_head = NULL;
4750 fra.me.REG[0] = NIT_NULL;
4751 fra.me.REG[0] = p0;
4752 /* parser/lexer.nit:1031 */
4753 REGB0 = TAG_Int(78);
4754 goto label1;
4755 label1: while(0);
4756 stack_frame_head = fra.me.prev;
4757 return REGB0;
4758 }
4759 void parser___lexer___TStarship___init_tk(val_t p0, val_t p1, int* init_table){
4760 int itpos78 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TStarship].i;
4761 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4762 val_t REGB0;
4763 val_t tmp;
4764 static val_t once_value_1; /* Once value */
4765 static val_t once_value_2; /* Once value */
4766 if (init_table[itpos78]) return;
4767 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4768 fra.me.file = LOCATE_parser___lexer;
4769 fra.me.line = 1034;
4770 fra.me.meth = LOCATE_parser___lexer___TStarship___init_tk;
4771 fra.me.has_broke = 0;
4772 fra.me.REG_size = 3;
4773 fra.me.nitni_local_ref_head = NULL;
4774 fra.me.REG[0] = NIT_NULL;
4775 fra.me.REG[1] = NIT_NULL;
4776 fra.me.REG[2] = NIT_NULL;
4777 fra.me.REG[0] = p0;
4778 fra.me.REG[1] = p1;
4779 /* parser/lexer.nit:1036 */
4780 if (!once_value_1) {
4781 if (!once_value_2) {
4782 fra.me.REG[2] = BOX_NativeString("<=>");
4783 REGB0 = TAG_Int(3);
4784 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4785 once_value_2 = fra.me.REG[2];
4786 register_static_object(&once_value_2);
4787 } else fra.me.REG[2] = once_value_2;
4788 fra.me.REG[2] = fra.me.REG[2];
4789 once_value_1 = fra.me.REG[2];
4790 register_static_object(&once_value_1);
4791 } else fra.me.REG[2] = once_value_1;
4792 fra.me.REG[2] = fra.me.REG[2];
4793 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4794 /* parser/lexer.nit:1037 */
4795 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4796 stack_frame_head = fra.me.prev;
4797 init_table[itpos78] = 1;
4798 return;
4799 }
4800 val_t parser___lexer___TBang___parser_index(val_t p0){
4801 struct {struct stack_frame_t me;} fra;
4802 val_t REGB0;
4803 val_t tmp;
4804 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4805 fra.me.file = LOCATE_parser___lexer;
4806 fra.me.line = 1042;
4807 fra.me.meth = LOCATE_parser___lexer___TBang___parser_index;
4808 fra.me.has_broke = 0;
4809 fra.me.REG_size = 1;
4810 fra.me.nitni_local_ref_head = NULL;
4811 fra.me.REG[0] = NIT_NULL;
4812 fra.me.REG[0] = p0;
4813 /* parser/lexer.nit:1044 */
4814 REGB0 = TAG_Int(79);
4815 goto label1;
4816 label1: while(0);
4817 stack_frame_head = fra.me.prev;
4818 return REGB0;
4819 }
4820 void parser___lexer___TBang___init_tk(val_t p0, val_t p1, int* init_table){
4821 int itpos79 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TBang].i;
4822 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4823 val_t REGB0;
4824 val_t tmp;
4825 static val_t once_value_1; /* Once value */
4826 static val_t once_value_2; /* Once value */
4827 if (init_table[itpos79]) return;
4828 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4829 fra.me.file = LOCATE_parser___lexer;
4830 fra.me.line = 1047;
4831 fra.me.meth = LOCATE_parser___lexer___TBang___init_tk;
4832 fra.me.has_broke = 0;
4833 fra.me.REG_size = 3;
4834 fra.me.nitni_local_ref_head = NULL;
4835 fra.me.REG[0] = NIT_NULL;
4836 fra.me.REG[1] = NIT_NULL;
4837 fra.me.REG[2] = NIT_NULL;
4838 fra.me.REG[0] = p0;
4839 fra.me.REG[1] = p1;
4840 /* parser/lexer.nit:1049 */
4841 if (!once_value_1) {
4842 if (!once_value_2) {
4843 fra.me.REG[2] = BOX_NativeString("!");
4844 REGB0 = TAG_Int(1);
4845 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
4846 once_value_2 = fra.me.REG[2];
4847 register_static_object(&once_value_2);
4848 } else fra.me.REG[2] = once_value_2;
4849 fra.me.REG[2] = fra.me.REG[2];
4850 once_value_1 = fra.me.REG[2];
4851 register_static_object(&once_value_1);
4852 } else fra.me.REG[2] = once_value_1;
4853 fra.me.REG[2] = fra.me.REG[2];
4854 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
4855 /* parser/lexer.nit:1050 */
4856 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
4857 stack_frame_head = fra.me.prev;
4858 init_table[itpos79] = 1;
4859 return;
4860 }
4861 val_t parser___lexer___TClassid___parser_index(val_t p0){
4862 struct {struct stack_frame_t me;} fra;
4863 val_t REGB0;
4864 val_t tmp;
4865 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4866 fra.me.file = LOCATE_parser___lexer;
4867 fra.me.line = 1055;
4868 fra.me.meth = LOCATE_parser___lexer___TClassid___parser_index;
4869 fra.me.has_broke = 0;
4870 fra.me.REG_size = 1;
4871 fra.me.nitni_local_ref_head = NULL;
4872 fra.me.REG[0] = NIT_NULL;
4873 fra.me.REG[0] = p0;
4874 /* parser/lexer.nit:1057 */
4875 REGB0 = TAG_Int(80);
4876 goto label1;
4877 label1: while(0);
4878 stack_frame_head = fra.me.prev;
4879 return REGB0;
4880 }
4881 void parser___lexer___TClassid___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
4882 int itpos80 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TClassid].i;
4883 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4884 val_t tmp;
4885 if (init_table[itpos80]) return;
4886 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4887 fra.me.file = LOCATE_parser___lexer;
4888 fra.me.line = 1060;
4889 fra.me.meth = LOCATE_parser___lexer___TClassid___init_tk;
4890 fra.me.has_broke = 0;
4891 fra.me.REG_size = 3;
4892 fra.me.nitni_local_ref_head = NULL;
4893 fra.me.REG[0] = NIT_NULL;
4894 fra.me.REG[1] = NIT_NULL;
4895 fra.me.REG[2] = NIT_NULL;
4896 fra.me.REG[0] = p0;
4897 fra.me.REG[1] = p1;
4898 fra.me.REG[2] = p2;
4899 /* parser/lexer.nit:1062 */
4900 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
4901 /* parser/lexer.nit:1063 */
4902 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
4903 stack_frame_head = fra.me.prev;
4904 init_table[itpos80] = 1;
4905 return;
4906 }
4907 val_t parser___lexer___TId___parser_index(val_t p0){
4908 struct {struct stack_frame_t me;} fra;
4909 val_t REGB0;
4910 val_t tmp;
4911 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4912 fra.me.file = LOCATE_parser___lexer;
4913 fra.me.line = 1068;
4914 fra.me.meth = LOCATE_parser___lexer___TId___parser_index;
4915 fra.me.has_broke = 0;
4916 fra.me.REG_size = 1;
4917 fra.me.nitni_local_ref_head = NULL;
4918 fra.me.REG[0] = NIT_NULL;
4919 fra.me.REG[0] = p0;
4920 /* parser/lexer.nit:1070 */
4921 REGB0 = TAG_Int(81);
4922 goto label1;
4923 label1: while(0);
4924 stack_frame_head = fra.me.prev;
4925 return REGB0;
4926 }
4927 void parser___lexer___TId___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
4928 int itpos81 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TId].i;
4929 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4930 val_t tmp;
4931 if (init_table[itpos81]) return;
4932 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4933 fra.me.file = LOCATE_parser___lexer;
4934 fra.me.line = 1073;
4935 fra.me.meth = LOCATE_parser___lexer___TId___init_tk;
4936 fra.me.has_broke = 0;
4937 fra.me.REG_size = 3;
4938 fra.me.nitni_local_ref_head = NULL;
4939 fra.me.REG[0] = NIT_NULL;
4940 fra.me.REG[1] = NIT_NULL;
4941 fra.me.REG[2] = NIT_NULL;
4942 fra.me.REG[0] = p0;
4943 fra.me.REG[1] = p1;
4944 fra.me.REG[2] = p2;
4945 /* parser/lexer.nit:1075 */
4946 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
4947 /* parser/lexer.nit:1076 */
4948 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
4949 stack_frame_head = fra.me.prev;
4950 init_table[itpos81] = 1;
4951 return;
4952 }
4953 val_t parser___lexer___TAttrid___parser_index(val_t p0){
4954 struct {struct stack_frame_t me;} fra;
4955 val_t REGB0;
4956 val_t tmp;
4957 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4958 fra.me.file = LOCATE_parser___lexer;
4959 fra.me.line = 1081;
4960 fra.me.meth = LOCATE_parser___lexer___TAttrid___parser_index;
4961 fra.me.has_broke = 0;
4962 fra.me.REG_size = 1;
4963 fra.me.nitni_local_ref_head = NULL;
4964 fra.me.REG[0] = NIT_NULL;
4965 fra.me.REG[0] = p0;
4966 /* parser/lexer.nit:1083 */
4967 REGB0 = TAG_Int(82);
4968 goto label1;
4969 label1: while(0);
4970 stack_frame_head = fra.me.prev;
4971 return REGB0;
4972 }
4973 void parser___lexer___TAttrid___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
4974 int itpos82 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TAttrid].i;
4975 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
4976 val_t tmp;
4977 if (init_table[itpos82]) return;
4978 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
4979 fra.me.file = LOCATE_parser___lexer;
4980 fra.me.line = 1086;
4981 fra.me.meth = LOCATE_parser___lexer___TAttrid___init_tk;
4982 fra.me.has_broke = 0;
4983 fra.me.REG_size = 3;
4984 fra.me.nitni_local_ref_head = NULL;
4985 fra.me.REG[0] = NIT_NULL;
4986 fra.me.REG[1] = NIT_NULL;
4987 fra.me.REG[2] = NIT_NULL;
4988 fra.me.REG[0] = p0;
4989 fra.me.REG[1] = p1;
4990 fra.me.REG[2] = p2;
4991 /* parser/lexer.nit:1088 */
4992 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
4993 /* parser/lexer.nit:1089 */
4994 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
4995 stack_frame_head = fra.me.prev;
4996 init_table[itpos82] = 1;
4997 return;
4998 }
4999 val_t parser___lexer___TNumber___parser_index(val_t p0){
5000 struct {struct stack_frame_t me;} fra;
5001 val_t REGB0;
5002 val_t tmp;
5003 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5004 fra.me.file = LOCATE_parser___lexer;
5005 fra.me.line = 1094;
5006 fra.me.meth = LOCATE_parser___lexer___TNumber___parser_index;
5007 fra.me.has_broke = 0;
5008 fra.me.REG_size = 1;
5009 fra.me.nitni_local_ref_head = NULL;
5010 fra.me.REG[0] = NIT_NULL;
5011 fra.me.REG[0] = p0;
5012 /* parser/lexer.nit:1096 */
5013 REGB0 = TAG_Int(83);
5014 goto label1;
5015 label1: while(0);
5016 stack_frame_head = fra.me.prev;
5017 return REGB0;
5018 }
5019 void parser___lexer___TNumber___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5020 int itpos83 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TNumber].i;
5021 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5022 val_t tmp;
5023 if (init_table[itpos83]) return;
5024 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5025 fra.me.file = LOCATE_parser___lexer;
5026 fra.me.line = 1099;
5027 fra.me.meth = LOCATE_parser___lexer___TNumber___init_tk;
5028 fra.me.has_broke = 0;
5029 fra.me.REG_size = 3;
5030 fra.me.nitni_local_ref_head = NULL;
5031 fra.me.REG[0] = NIT_NULL;
5032 fra.me.REG[1] = NIT_NULL;
5033 fra.me.REG[2] = NIT_NULL;
5034 fra.me.REG[0] = p0;
5035 fra.me.REG[1] = p1;
5036 fra.me.REG[2] = p2;
5037 /* parser/lexer.nit:1101 */
5038 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5039 /* parser/lexer.nit:1102 */
5040 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5041 stack_frame_head = fra.me.prev;
5042 init_table[itpos83] = 1;
5043 return;
5044 }
5045 val_t parser___lexer___TFloat___parser_index(val_t p0){
5046 struct {struct stack_frame_t me;} fra;
5047 val_t REGB0;
5048 val_t tmp;
5049 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5050 fra.me.file = LOCATE_parser___lexer;
5051 fra.me.line = 1107;
5052 fra.me.meth = LOCATE_parser___lexer___TFloat___parser_index;
5053 fra.me.has_broke = 0;
5054 fra.me.REG_size = 1;
5055 fra.me.nitni_local_ref_head = NULL;
5056 fra.me.REG[0] = NIT_NULL;
5057 fra.me.REG[0] = p0;
5058 /* parser/lexer.nit:1109 */
5059 REGB0 = TAG_Int(84);
5060 goto label1;
5061 label1: while(0);
5062 stack_frame_head = fra.me.prev;
5063 return REGB0;
5064 }
5065 void parser___lexer___TFloat___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5066 int itpos84 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TFloat].i;
5067 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5068 val_t tmp;
5069 if (init_table[itpos84]) return;
5070 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5071 fra.me.file = LOCATE_parser___lexer;
5072 fra.me.line = 1112;
5073 fra.me.meth = LOCATE_parser___lexer___TFloat___init_tk;
5074 fra.me.has_broke = 0;
5075 fra.me.REG_size = 3;
5076 fra.me.nitni_local_ref_head = NULL;
5077 fra.me.REG[0] = NIT_NULL;
5078 fra.me.REG[1] = NIT_NULL;
5079 fra.me.REG[2] = NIT_NULL;
5080 fra.me.REG[0] = p0;
5081 fra.me.REG[1] = p1;
5082 fra.me.REG[2] = p2;
5083 /* parser/lexer.nit:1114 */
5084 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5085 /* parser/lexer.nit:1115 */
5086 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5087 stack_frame_head = fra.me.prev;
5088 init_table[itpos84] = 1;
5089 return;
5090 }
5091 val_t parser___lexer___TChar___parser_index(val_t p0){
5092 struct {struct stack_frame_t me;} fra;
5093 val_t REGB0;
5094 val_t tmp;
5095 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5096 fra.me.file = LOCATE_parser___lexer;
5097 fra.me.line = 1120;
5098 fra.me.meth = LOCATE_parser___lexer___TChar___parser_index;
5099 fra.me.has_broke = 0;
5100 fra.me.REG_size = 1;
5101 fra.me.nitni_local_ref_head = NULL;
5102 fra.me.REG[0] = NIT_NULL;
5103 fra.me.REG[0] = p0;
5104 /* parser/lexer.nit:1122 */
5105 REGB0 = TAG_Int(85);
5106 goto label1;
5107 label1: while(0);
5108 stack_frame_head = fra.me.prev;
5109 return REGB0;
5110 }
5111 void parser___lexer___TChar___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5112 int itpos85 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TChar].i;
5113 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5114 val_t tmp;
5115 if (init_table[itpos85]) return;
5116 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5117 fra.me.file = LOCATE_parser___lexer;
5118 fra.me.line = 1125;
5119 fra.me.meth = LOCATE_parser___lexer___TChar___init_tk;
5120 fra.me.has_broke = 0;
5121 fra.me.REG_size = 3;
5122 fra.me.nitni_local_ref_head = NULL;
5123 fra.me.REG[0] = NIT_NULL;
5124 fra.me.REG[1] = NIT_NULL;
5125 fra.me.REG[2] = NIT_NULL;
5126 fra.me.REG[0] = p0;
5127 fra.me.REG[1] = p1;
5128 fra.me.REG[2] = p2;
5129 /* parser/lexer.nit:1127 */
5130 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5131 /* parser/lexer.nit:1128 */
5132 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5133 stack_frame_head = fra.me.prev;
5134 init_table[itpos85] = 1;
5135 return;
5136 }
5137 val_t parser___lexer___TString___parser_index(val_t p0){
5138 struct {struct stack_frame_t me;} fra;
5139 val_t REGB0;
5140 val_t tmp;
5141 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5142 fra.me.file = LOCATE_parser___lexer;
5143 fra.me.line = 1133;
5144 fra.me.meth = LOCATE_parser___lexer___TString___parser_index;
5145 fra.me.has_broke = 0;
5146 fra.me.REG_size = 1;
5147 fra.me.nitni_local_ref_head = NULL;
5148 fra.me.REG[0] = NIT_NULL;
5149 fra.me.REG[0] = p0;
5150 /* parser/lexer.nit:1135 */
5151 REGB0 = TAG_Int(86);
5152 goto label1;
5153 label1: while(0);
5154 stack_frame_head = fra.me.prev;
5155 return REGB0;
5156 }
5157 void parser___lexer___TString___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5158 int itpos86 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TString].i;
5159 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5160 val_t tmp;
5161 if (init_table[itpos86]) return;
5162 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5163 fra.me.file = LOCATE_parser___lexer;
5164 fra.me.line = 1138;
5165 fra.me.meth = LOCATE_parser___lexer___TString___init_tk;
5166 fra.me.has_broke = 0;
5167 fra.me.REG_size = 3;
5168 fra.me.nitni_local_ref_head = NULL;
5169 fra.me.REG[0] = NIT_NULL;
5170 fra.me.REG[1] = NIT_NULL;
5171 fra.me.REG[2] = NIT_NULL;
5172 fra.me.REG[0] = p0;
5173 fra.me.REG[1] = p1;
5174 fra.me.REG[2] = p2;
5175 /* parser/lexer.nit:1140 */
5176 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5177 /* parser/lexer.nit:1141 */
5178 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5179 stack_frame_head = fra.me.prev;
5180 init_table[itpos86] = 1;
5181 return;
5182 }
5183 val_t parser___lexer___TStartString___parser_index(val_t p0){
5184 struct {struct stack_frame_t me;} fra;
5185 val_t REGB0;
5186 val_t tmp;
5187 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5188 fra.me.file = LOCATE_parser___lexer;
5189 fra.me.line = 1146;
5190 fra.me.meth = LOCATE_parser___lexer___TStartString___parser_index;
5191 fra.me.has_broke = 0;
5192 fra.me.REG_size = 1;
5193 fra.me.nitni_local_ref_head = NULL;
5194 fra.me.REG[0] = NIT_NULL;
5195 fra.me.REG[0] = p0;
5196 /* parser/lexer.nit:1148 */
5197 REGB0 = TAG_Int(87);
5198 goto label1;
5199 label1: while(0);
5200 stack_frame_head = fra.me.prev;
5201 return REGB0;
5202 }
5203 void parser___lexer___TStartString___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5204 int itpos87 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TStartString].i;
5205 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5206 val_t tmp;
5207 if (init_table[itpos87]) return;
5208 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5209 fra.me.file = LOCATE_parser___lexer;
5210 fra.me.line = 1151;
5211 fra.me.meth = LOCATE_parser___lexer___TStartString___init_tk;
5212 fra.me.has_broke = 0;
5213 fra.me.REG_size = 3;
5214 fra.me.nitni_local_ref_head = NULL;
5215 fra.me.REG[0] = NIT_NULL;
5216 fra.me.REG[1] = NIT_NULL;
5217 fra.me.REG[2] = NIT_NULL;
5218 fra.me.REG[0] = p0;
5219 fra.me.REG[1] = p1;
5220 fra.me.REG[2] = p2;
5221 /* parser/lexer.nit:1153 */
5222 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5223 /* parser/lexer.nit:1154 */
5224 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5225 stack_frame_head = fra.me.prev;
5226 init_table[itpos87] = 1;
5227 return;
5228 }
5229 val_t parser___lexer___TMidString___parser_index(val_t p0){
5230 struct {struct stack_frame_t me;} fra;
5231 val_t REGB0;
5232 val_t tmp;
5233 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5234 fra.me.file = LOCATE_parser___lexer;
5235 fra.me.line = 1159;
5236 fra.me.meth = LOCATE_parser___lexer___TMidString___parser_index;
5237 fra.me.has_broke = 0;
5238 fra.me.REG_size = 1;
5239 fra.me.nitni_local_ref_head = NULL;
5240 fra.me.REG[0] = NIT_NULL;
5241 fra.me.REG[0] = p0;
5242 /* parser/lexer.nit:1161 */
5243 REGB0 = TAG_Int(88);
5244 goto label1;
5245 label1: while(0);
5246 stack_frame_head = fra.me.prev;
5247 return REGB0;
5248 }
5249 void parser___lexer___TMidString___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5250 int itpos88 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TMidString].i;
5251 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5252 val_t tmp;
5253 if (init_table[itpos88]) return;
5254 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5255 fra.me.file = LOCATE_parser___lexer;
5256 fra.me.line = 1164;
5257 fra.me.meth = LOCATE_parser___lexer___TMidString___init_tk;
5258 fra.me.has_broke = 0;
5259 fra.me.REG_size = 3;
5260 fra.me.nitni_local_ref_head = NULL;
5261 fra.me.REG[0] = NIT_NULL;
5262 fra.me.REG[1] = NIT_NULL;
5263 fra.me.REG[2] = NIT_NULL;
5264 fra.me.REG[0] = p0;
5265 fra.me.REG[1] = p1;
5266 fra.me.REG[2] = p2;
5267 /* parser/lexer.nit:1166 */
5268 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5269 /* parser/lexer.nit:1167 */
5270 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5271 stack_frame_head = fra.me.prev;
5272 init_table[itpos88] = 1;
5273 return;
5274 }
5275 val_t parser___lexer___TEndString___parser_index(val_t p0){
5276 struct {struct stack_frame_t me;} fra;
5277 val_t REGB0;
5278 val_t tmp;
5279 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5280 fra.me.file = LOCATE_parser___lexer;
5281 fra.me.line = 1172;
5282 fra.me.meth = LOCATE_parser___lexer___TEndString___parser_index;
5283 fra.me.has_broke = 0;
5284 fra.me.REG_size = 1;
5285 fra.me.nitni_local_ref_head = NULL;
5286 fra.me.REG[0] = NIT_NULL;
5287 fra.me.REG[0] = p0;
5288 /* parser/lexer.nit:1174 */
5289 REGB0 = TAG_Int(89);
5290 goto label1;
5291 label1: while(0);
5292 stack_frame_head = fra.me.prev;
5293 return REGB0;
5294 }
5295 void parser___lexer___TEndString___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5296 int itpos89 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TEndString].i;
5297 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5298 val_t tmp;
5299 if (init_table[itpos89]) return;
5300 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5301 fra.me.file = LOCATE_parser___lexer;
5302 fra.me.line = 1177;
5303 fra.me.meth = LOCATE_parser___lexer___TEndString___init_tk;
5304 fra.me.has_broke = 0;
5305 fra.me.REG_size = 3;
5306 fra.me.nitni_local_ref_head = NULL;
5307 fra.me.REG[0] = NIT_NULL;
5308 fra.me.REG[1] = NIT_NULL;
5309 fra.me.REG[2] = NIT_NULL;
5310 fra.me.REG[0] = p0;
5311 fra.me.REG[1] = p1;
5312 fra.me.REG[2] = p2;
5313 /* parser/lexer.nit:1179 */
5314 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5315 /* parser/lexer.nit:1180 */
5316 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5317 stack_frame_head = fra.me.prev;
5318 init_table[itpos89] = 1;
5319 return;
5320 }
5321 val_t parser___lexer___TBadChar___parser_index(val_t p0){
5322 struct {struct stack_frame_t me;} fra;
5323 val_t REGB0;
5324 val_t tmp;
5325 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5326 fra.me.file = LOCATE_parser___lexer;
5327 fra.me.line = 1185;
5328 fra.me.meth = LOCATE_parser___lexer___TBadChar___parser_index;
5329 fra.me.has_broke = 0;
5330 fra.me.REG_size = 1;
5331 fra.me.nitni_local_ref_head = NULL;
5332 fra.me.REG[0] = NIT_NULL;
5333 fra.me.REG[0] = p0;
5334 /* parser/lexer.nit:1187 */
5335 REGB0 = TAG_Int(90);
5336 goto label1;
5337 label1: while(0);
5338 stack_frame_head = fra.me.prev;
5339 return REGB0;
5340 }
5341 void parser___lexer___TBadChar___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5342 int itpos90 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TBadChar].i;
5343 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5344 val_t tmp;
5345 if (init_table[itpos90]) return;
5346 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5347 fra.me.file = LOCATE_parser___lexer;
5348 fra.me.line = 1190;
5349 fra.me.meth = LOCATE_parser___lexer___TBadChar___init_tk;
5350 fra.me.has_broke = 0;
5351 fra.me.REG_size = 3;
5352 fra.me.nitni_local_ref_head = NULL;
5353 fra.me.REG[0] = NIT_NULL;
5354 fra.me.REG[1] = NIT_NULL;
5355 fra.me.REG[2] = NIT_NULL;
5356 fra.me.REG[0] = p0;
5357 fra.me.REG[1] = p1;
5358 fra.me.REG[2] = p2;
5359 /* parser/lexer.nit:1192 */
5360 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5361 /* parser/lexer.nit:1193 */
5362 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5363 stack_frame_head = fra.me.prev;
5364 init_table[itpos90] = 1;
5365 return;
5366 }
5367 val_t parser___lexer___TBadString___parser_index(val_t p0){
5368 struct {struct stack_frame_t me;} fra;
5369 val_t REGB0;
5370 val_t tmp;
5371 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5372 fra.me.file = LOCATE_parser___lexer;
5373 fra.me.line = 1198;
5374 fra.me.meth = LOCATE_parser___lexer___TBadString___parser_index;
5375 fra.me.has_broke = 0;
5376 fra.me.REG_size = 1;
5377 fra.me.nitni_local_ref_head = NULL;
5378 fra.me.REG[0] = NIT_NULL;
5379 fra.me.REG[0] = p0;
5380 /* parser/lexer.nit:1200 */
5381 REGB0 = TAG_Int(91);
5382 goto label1;
5383 label1: while(0);
5384 stack_frame_head = fra.me.prev;
5385 return REGB0;
5386 }
5387 void parser___lexer___TBadString___init_tk(val_t p0, val_t p1, val_t p2, int* init_table){
5388 int itpos91 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___TBadString].i;
5389 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5390 val_t tmp;
5391 if (init_table[itpos91]) return;
5392 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5393 fra.me.file = LOCATE_parser___lexer;
5394 fra.me.line = 1203;
5395 fra.me.meth = LOCATE_parser___lexer___TBadString___init_tk;
5396 fra.me.has_broke = 0;
5397 fra.me.REG_size = 3;
5398 fra.me.nitni_local_ref_head = NULL;
5399 fra.me.REG[0] = NIT_NULL;
5400 fra.me.REG[1] = NIT_NULL;
5401 fra.me.REG[2] = NIT_NULL;
5402 fra.me.REG[0] = p0;
5403 fra.me.REG[1] = p1;
5404 fra.me.REG[2] = p2;
5405 /* parser/lexer.nit:1205 */
5406 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[1];
5407 /* parser/lexer.nit:1206 */
5408 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[2];
5409 stack_frame_head = fra.me.prev;
5410 init_table[itpos91] = 1;
5411 return;
5412 }
5413 val_t parser___lexer___EOF___parser_index(val_t p0){
5414 struct {struct stack_frame_t me;} fra;
5415 val_t REGB0;
5416 val_t tmp;
5417 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5418 fra.me.file = LOCATE_parser___lexer;
5419 fra.me.line = 1212;
5420 fra.me.meth = LOCATE_parser___lexer___EOF___parser_index;
5421 fra.me.has_broke = 0;
5422 fra.me.REG_size = 1;
5423 fra.me.nitni_local_ref_head = NULL;
5424 fra.me.REG[0] = NIT_NULL;
5425 fra.me.REG[0] = p0;
5426 /* parser/lexer.nit:1214 */
5427 REGB0 = TAG_Int(92);
5428 goto label1;
5429 label1: while(0);
5430 stack_frame_head = fra.me.prev;
5431 return REGB0;
5432 }
5433 void parser___lexer___EOF___init(val_t p0, val_t p1, int* init_table){
5434 int itpos92 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___EOF].i;
5435 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5436 val_t REGB0;
5437 val_t tmp;
5438 static val_t once_value_1; /* Once value */
5439 if (init_table[itpos92]) return;
5440 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5441 fra.me.file = LOCATE_parser___lexer;
5442 fra.me.line = 1217;
5443 fra.me.meth = LOCATE_parser___lexer___EOF___init;
5444 fra.me.has_broke = 0;
5445 fra.me.REG_size = 3;
5446 fra.me.nitni_local_ref_head = NULL;
5447 fra.me.REG[0] = NIT_NULL;
5448 fra.me.REG[1] = NIT_NULL;
5449 fra.me.REG[2] = NIT_NULL;
5450 fra.me.REG[0] = p0;
5451 fra.me.REG[1] = p1;
5452 /* parser/lexer.nit:1219 */
5453 if (!once_value_1) {
5454 fra.me.REG[2] = BOX_NativeString("");
5455 REGB0 = TAG_Int(0);
5456 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
5457 once_value_1 = fra.me.REG[2];
5458 register_static_object(&once_value_1);
5459 } else fra.me.REG[2] = once_value_1;
5460 fra.me.REG[2] = fra.me.REG[2];
5461 ATTR_parser___lexer___Token____text(fra.me.REG[0]) = fra.me.REG[2];
5462 /* parser/lexer.nit:1220 */
5463 ATTR_parser___parser_nodes___ANode____location(fra.me.REG[0]) = fra.me.REG[1];
5464 stack_frame_head = fra.me.prev;
5465 init_table[itpos92] = 1;
5466 return;
5467 }
5468 val_t parser___lexer___AError___message(val_t p0){
5469 struct {struct stack_frame_t me;} fra;
5470 val_t REGB0;
5471 val_t tmp;
5472 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5473 fra.me.file = LOCATE_parser___lexer;
5474 fra.me.line = 1225;
5475 fra.me.meth = LOCATE_parser___lexer___AError___message;
5476 fra.me.has_broke = 0;
5477 fra.me.REG_size = 1;
5478 fra.me.nitni_local_ref_head = NULL;
5479 fra.me.REG[0] = NIT_NULL;
5480 fra.me.REG[0] = p0;
5481 /* parser/lexer.nit:1225 */
5482 REGB0 = TAG_Bool(ATTR_parser___lexer___AError____message(fra.me.REG[0])!=NIT_NULL);
5483 if (UNTAG_Bool(REGB0)) {
5484 } else {
5485 nit_abort("Uninitialized attribute %s", "_message", LOCATE_parser___lexer, 1225);
5486 }
5487 fra.me.REG[0] = ATTR_parser___lexer___AError____message(fra.me.REG[0]);
5488 stack_frame_head = fra.me.prev;
5489 return fra.me.REG[0];
5490 }
5491 void parser___lexer___AError___init_error(val_t p0, val_t p1, val_t p2, int* init_table){
5492 int itpos93 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AError].i;
5493 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5494 val_t tmp;
5495 if (init_table[itpos93]) return;
5496 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5497 fra.me.file = LOCATE_parser___lexer;
5498 fra.me.line = 1227;
5499 fra.me.meth = LOCATE_parser___lexer___AError___init_error;
5500 fra.me.has_broke = 0;
5501 fra.me.REG_size = 3;
5502 fra.me.nitni_local_ref_head = NULL;
5503 fra.me.REG[0] = NIT_NULL;
5504 fra.me.REG[1] = NIT_NULL;
5505 fra.me.REG[2] = NIT_NULL;
5506 fra.me.REG[0] = p0;
5507 fra.me.REG[1] = p1;
5508 fra.me.REG[2] = p2;
5509 /* parser/lexer.nit:1229 */
5510 CALL_parser___lexer___EOF___init(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2], init_table);
5511 /* parser/lexer.nit:1230 */
5512 ATTR_parser___lexer___AError____message(fra.me.REG[0]) = fra.me.REG[1];
5513 stack_frame_head = fra.me.prev;
5514 init_table[itpos93] = 1;
5515 return;
5516 }
5517 val_t parser___lexer___Lexer___file(val_t p0){
5518 struct {struct stack_frame_t me;} fra;
5519 val_t REGB0;
5520 val_t tmp;
5521 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5522 fra.me.file = LOCATE_parser___lexer;
5523 fra.me.line = 1245;
5524 fra.me.meth = LOCATE_parser___lexer___Lexer___file;
5525 fra.me.has_broke = 0;
5526 fra.me.REG_size = 1;
5527 fra.me.nitni_local_ref_head = NULL;
5528 fra.me.REG[0] = NIT_NULL;
5529 fra.me.REG[0] = p0;
5530 /* parser/lexer.nit:1245 */
5531 REGB0 = TAG_Bool(ATTR_parser___lexer___Lexer____file(fra.me.REG[0])!=NIT_NULL);
5532 if (UNTAG_Bool(REGB0)) {
5533 } else {
5534 nit_abort("Uninitialized attribute %s", "_file", LOCATE_parser___lexer, 1245);
5535 }
5536 fra.me.REG[0] = ATTR_parser___lexer___Lexer____file(fra.me.REG[0]);
5537 stack_frame_head = fra.me.prev;
5538 return fra.me.REG[0];
5539 }
5540 val_t parser___lexer___Lexer___state_initial(val_t p0){
5541 struct {struct stack_frame_t me;} fra;
5542 val_t REGB0;
5543 val_t tmp;
5544 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5545 fra.me.file = LOCATE_parser___lexer;
5546 fra.me.line = 1260;
5547 fra.me.meth = LOCATE_parser___lexer___Lexer___state_initial;
5548 fra.me.has_broke = 0;
5549 fra.me.REG_size = 1;
5550 fra.me.nitni_local_ref_head = NULL;
5551 fra.me.REG[0] = NIT_NULL;
5552 fra.me.REG[0] = p0;
5553 /* parser/lexer.nit:1261 */
5554 REGB0 = TAG_Int(0);
5555 goto label1;
5556 label1: while(0);
5557 stack_frame_head = fra.me.prev;
5558 return REGB0;
5559 }
5560 void parser___lexer___Lexer___init(val_t p0, val_t p1, int* init_table){
5561 int itpos94 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___lexer___Lexer].i;
5562 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
5563 val_t tmp;
5564 if (init_table[itpos94]) return;
5565 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5566 fra.me.file = LOCATE_parser___lexer;
5567 fra.me.line = 1263;
5568 fra.me.meth = LOCATE_parser___lexer___Lexer___init;
5569 fra.me.has_broke = 0;
5570 fra.me.REG_size = 2;
5571 fra.me.nitni_local_ref_head = NULL;
5572 fra.me.REG[0] = NIT_NULL;
5573 fra.me.REG[1] = NIT_NULL;
5574 fra.me.REG[0] = p0;
5575 fra.me.REG[1] = p1;
5576 /* parser/lexer.nit:1266 */
5577 ATTR_parser___lexer___Lexer____file(fra.me.REG[0]) = fra.me.REG[1];
5578 stack_frame_head = fra.me.prev;
5579 init_table[itpos94] = 1;
5580 return;
5581 }
5582 val_t parser___lexer___Lexer___peek(val_t p0){
5583 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5584 val_t REGB0;
5585 val_t REGB1;
5586 val_t tmp;
5587 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5588 fra.me.file = LOCATE_parser___lexer;
5589 fra.me.line = 1269;
5590 fra.me.meth = LOCATE_parser___lexer___Lexer___peek;
5591 fra.me.has_broke = 0;
5592 fra.me.REG_size = 3;
5593 fra.me.nitni_local_ref_head = NULL;
5594 fra.me.REG[0] = NIT_NULL;
5595 fra.me.REG[1] = NIT_NULL;
5596 fra.me.REG[2] = NIT_NULL;
5597 fra.me.REG[0] = p0;
5598 /* parser/lexer.nit:1269 */
5599 fra.me.REG[1] = fra.me.REG[0];
5600 /* parser/lexer.nit:1272 */
5601 while(1) {
5602 fra.me.REG[2] = ATTR_parser___lexer___Lexer____token(fra.me.REG[1]);
5603 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
5604 if (UNTAG_Bool(REGB0)) {
5605 } else {
5606 REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
5607 if (UNTAG_Bool(REGB1)) {
5608 REGB1 = TAG_Bool(false);
5609 REGB0 = REGB1;
5610 } else {
5611 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
5612 REGB0 = REGB1;
5613 }
5614 }
5615 if (UNTAG_Bool(REGB0)) {
5616 /* parser/lexer.nit:1273 */
5617 fra.me.REG[2] = CALL_parser___lexer___Lexer___get_token(fra.me.REG[1])(fra.me.REG[1]);
5618 ATTR_parser___lexer___Lexer____token(fra.me.REG[1]) = fra.me.REG[2];
5619 } else {
5620 /* parser/lexer.nit:1272 */
5621 goto label1;
5622 }
5623 }
5624 label1: while(0);
5625 /* parser/lexer.nit:1275 */
5626 fra.me.REG[1] = ATTR_parser___lexer___Lexer____token(fra.me.REG[1]);
5627 REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
5628 if (UNTAG_Bool(REGB0)) {
5629 } else {
5630 nit_abort("Cast failed", NULL, LOCATE_parser___lexer, 1275);
5631 }
5632 goto label2;
5633 label2: while(0);
5634 stack_frame_head = fra.me.prev;
5635 return fra.me.REG[1];
5636 }
5637 val_t parser___lexer___Lexer___next(val_t p0){
5638 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
5639 val_t REGB0;
5640 val_t REGB1;
5641 val_t tmp;
5642 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5643 fra.me.file = LOCATE_parser___lexer;
5644 fra.me.line = 1278;
5645 fra.me.meth = LOCATE_parser___lexer___Lexer___next;
5646 fra.me.has_broke = 0;
5647 fra.me.REG_size = 3;
5648 fra.me.nitni_local_ref_head = NULL;
5649 fra.me.REG[0] = NIT_NULL;
5650 fra.me.REG[1] = NIT_NULL;
5651 fra.me.REG[2] = NIT_NULL;
5652 fra.me.REG[0] = p0;
5653 /* parser/lexer.nit:1281 */
5654 fra.me.REG[1] = ATTR_parser___lexer___Lexer____token(fra.me.REG[0]);
5655 /* parser/lexer.nit:1282 */
5656 while(1) {
5657 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
5658 if (UNTAG_Bool(REGB0)) {
5659 } else {
5660 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
5661 if (UNTAG_Bool(REGB1)) {
5662 REGB1 = TAG_Bool(false);
5663 REGB0 = REGB1;
5664 } else {
5665 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
5666 REGB0 = REGB1;
5667 }
5668 }
5669 if (UNTAG_Bool(REGB0)) {
5670 /* parser/lexer.nit:1283 */
5671 fra.me.REG[2] = CALL_parser___lexer___Lexer___get_token(fra.me.REG[0])(fra.me.REG[0]);
5672 fra.me.REG[1] = fra.me.REG[2];
5673 } else {
5674 /* parser/lexer.nit:1282 */
5675 goto label1;
5676 }
5677 }
5678 label1: while(0);
5679 /* parser/lexer.nit:1285 */
5680 ATTR_parser___lexer___Lexer____token(fra.me.REG[0]) = NIT_NULL;
5681 /* parser/lexer.nit:1286 */
5682 goto label2;
5683 label2: while(0);
5684 stack_frame_head = fra.me.prev;
5685 return fra.me.REG[1];
5686 }
5687 val_t parser___lexer___Lexer___get_token(val_t p0){
5688 struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
5689 val_t REGB0;
5690 val_t REGB1;
5691 val_t REGB2;
5692 val_t REGB3;
5693 val_t REGB4;
5694 val_t REGB5;
5695 val_t REGB6;
5696 val_t REGB7;
5697 val_t REGB8;
5698 val_t REGB9;
5699 val_t REGB10;
5700 val_t REGB11;
5701 val_t REGB12;
5702 val_t REGB13;
5703 val_t REGB14;
5704 val_t REGB15;
5705 val_t REGB16;
5706 val_t REGB17;
5707 val_t REGB18;
5708 val_t REGB19;
5709 val_t REGB20;
5710 val_t REGB21;
5711 val_t tmp;
5712 static val_t once_value_4; /* Once value */
5713 static val_t once_value_5; /* Once value */
5714 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
5715 fra.me.file = LOCATE_parser___lexer;
5716 fra.me.line = 1289;
5717 fra.me.meth = LOCATE_parser___lexer___Lexer___get_token;
5718 fra.me.has_broke = 0;
5719 fra.me.REG_size = 7;
5720 fra.me.nitni_local_ref_head = NULL;
5721 fra.me.REG[0] = NIT_NULL;
5722 fra.me.REG[1] = NIT_NULL;
5723 fra.me.REG[2] = NIT_NULL;
5724 fra.me.REG[3] = NIT_NULL;
5725 fra.me.REG[4] = NIT_NULL;
5726 fra.me.REG[5] = NIT_NULL;
5727 fra.me.REG[6] = NIT_NULL;
5728 fra.me.REG[0] = p0;
5729 /* parser/lexer.nit:1292 */
5730 REGB0 = TAG_Int(0);
5731 /* parser/lexer.nit:1294 */
5732 REGB1 = TAG_Bool(ATTR_parser___lexer___Lexer____stream_pos(fra.me.REG[0])!=NIT_NULL);
5733 if (UNTAG_Bool(REGB1)) {
5734 } else {
5735 nit_abort("Uninitialized attribute %s", "_stream_pos", LOCATE_parser___lexer, 1294);
5736 }
5737 REGB1 = ATTR_parser___lexer___Lexer____stream_pos(fra.me.REG[0]);
5738 /* parser/lexer.nit:1295 */
5739 REGB2 = REGB1;
5740 /* parser/lexer.nit:1296 */
5741 REGB3 = TAG_Bool(ATTR_parser___lexer___Lexer____pos(fra.me.REG[0])!=NIT_NULL);
5742 if (UNTAG_Bool(REGB3)) {
5743 } else {
5744 nit_abort("Uninitialized attribute %s", "_pos", LOCATE_parser___lexer, 1296);
5745 }
5746 REGB3 = ATTR_parser___lexer___Lexer____pos(fra.me.REG[0]);
5747 /* parser/lexer.nit:1297 */
5748 REGB4 = TAG_Bool(ATTR_parser___lexer___Lexer____line(fra.me.REG[0])!=NIT_NULL);
5749 if (UNTAG_Bool(REGB4)) {
5750 } else {
5751 nit_abort("Uninitialized attribute %s", "_line", LOCATE_parser___lexer, 1297);
5752 }
5753 REGB4 = ATTR_parser___lexer___Lexer____line(fra.me.REG[0]);
5754 /* parser/lexer.nit:1298 */
5755 REGB5 = TAG_Bool(ATTR_parser___lexer___Lexer____file(fra.me.REG[0])!=NIT_NULL);
5756 if (UNTAG_Bool(REGB5)) {
5757 } else {
5758 nit_abort("Uninitialized attribute %s", "_file", LOCATE_parser___lexer, 1298);
5759 }
5760 fra.me.REG[1] = ATTR_parser___lexer___Lexer____file(fra.me.REG[0]);
5761 fra.me.REG[1] = CALL_location___SourceFile___string(fra.me.REG[1])(fra.me.REG[1]);
5762 /* ../lib/standard/collection/array.nit:24 */
5763 REGB5 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL);
5764 if (UNTAG_Bool(REGB5)) {
5765 } else {
5766 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 24);
5767 }
5768 REGB5 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1]);
5769 /* parser/lexer.nit:1301 */
5770 REGB6 = TAG_Int(1);
5771 /* ../lib/standard/kernel.nit:236 */
5772 REGB6 = TAG_Int(-UNTAG_Int(REGB6));
5773 /* parser/lexer.nit:1302 */
5774 REGB7 = TAG_Int(1);
5775 /* ../lib/standard/kernel.nit:236 */
5776 REGB7 = TAG_Int(-UNTAG_Int(REGB7));
5777 /* parser/lexer.nit:1303 */
5778 REGB8 = TAG_Int(1);
5779 /* ../lib/standard/kernel.nit:236 */
5780 REGB8 = TAG_Int(-UNTAG_Int(REGB8));
5781 /* parser/lexer.nit:1304 */
5782 REGB9 = TAG_Int(1);
5783 /* ../lib/standard/kernel.nit:236 */
5784 REGB9 = TAG_Int(-UNTAG_Int(REGB9));
5785 /* parser/lexer.nit:1305 */
5786 REGB10 = TAG_Int(1);
5787 /* ../lib/standard/kernel.nit:236 */
5788 REGB10 = TAG_Int(-UNTAG_Int(REGB10));
5789 /* parser/lexer.nit:1307 */
5790 while(1) {
5791 REGB11 = TAG_Bool(VAL_ISA(REGB5, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
5792 if (UNTAG_Bool(REGB11)) {
5793 } else {
5794 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
5795 }
5796 /* ../lib/standard/kernel.nit:233 */
5797 REGB11 = TAG_Bool(UNTAG_Int(REGB1)>=UNTAG_Int(REGB5));
5798 /* parser/lexer.nit:1308 */
5799 if (UNTAG_Bool(REGB11)) {
5800 /* parser/lexer.nit:1309 */
5801 REGB11 = TAG_Int(1);
5802 /* ../lib/standard/kernel.nit:236 */
5803 REGB11 = TAG_Int(-UNTAG_Int(REGB11));
5804 /* parser/lexer.nit:1309 */
5805 REGB0 = REGB11;
5806 } else {
5807 /* parser/lexer.nit:1311 */
5808 REGB11 = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[1])(fra.me.REG[1], REGB1);
5809 /* ../lib/standard/kernel.nit:413 */
5810 REGB11 = TAG_Int((unsigned char)UNTAG_Char(REGB11));
5811 /* parser/lexer.nit:1312 */
5812 REGB12 = TAG_Int(1);
5813 /* ../lib/standard/kernel.nit:235 */
5814 REGB12 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB12));
5815 /* parser/lexer.nit:1312 */
5816 REGB1 = REGB12;
5817 /* parser/lexer.nit:1314 */
5818 REGB12 = TAG_Bool(ATTR_parser___lexer___Lexer____cr(fra.me.REG[0])!=NIT_NULL);
5819 if (UNTAG_Bool(REGB12)) {
5820 } else {
5821 nit_abort("Uninitialized attribute %s", "_cr", LOCATE_parser___lexer, 1314);
5822 }
5823 REGB12 = ATTR_parser___lexer___Lexer____cr(fra.me.REG[0]);
5824 /* parser/lexer.nit:1315 */
5825 REGB13 = TAG_Bool(ATTR_parser___lexer___Lexer____line(fra.me.REG[0])!=NIT_NULL);
5826 if (UNTAG_Bool(REGB13)) {
5827 } else {
5828 nit_abort("Uninitialized attribute %s", "_line", LOCATE_parser___lexer, 1315);
5829 }
5830 REGB13 = ATTR_parser___lexer___Lexer____line(fra.me.REG[0]);
5831 /* parser/lexer.nit:1316 */
5832 REGB14 = TAG_Bool(ATTR_parser___lexer___Lexer____pos(fra.me.REG[0])!=NIT_NULL);
5833 if (UNTAG_Bool(REGB14)) {
5834 } else {
5835 nit_abort("Uninitialized attribute %s", "_pos", LOCATE_parser___lexer, 1316);
5836 }
5837 REGB14 = ATTR_parser___lexer___Lexer____pos(fra.me.REG[0]);
5838 /* parser/lexer.nit:1317 */
5839 REGB15 = TAG_Int(10);
5840 REGB16 = TAG_Bool(IS_EQUAL_OO(REGB11,REGB15));
5841 if (UNTAG_Bool(REGB16)) {
5842 } else {
5843 /* ../lib/standard/kernel.nit:227 */
5844 REGB15 = TAG_Bool((REGB11)==(REGB15));
5845 /* parser/lexer.nit:1317 */
5846 REGB16 = REGB15;
5847 }
5848 if (UNTAG_Bool(REGB16)) {
5849 /* parser/lexer.nit:1318 */
5850 if (UNTAG_Bool(REGB12)) {
5851 /* parser/lexer.nit:1319 */
5852 REGB16 = TAG_Bool(false);
5853 REGB12 = REGB16;
5854 /* parser/lexer.nit:1320 */
5855 REGB16 = TAG_Bool(ATTR_parser___lexer___Lexer____file(fra.me.REG[0])!=NIT_NULL);
5856 if (UNTAG_Bool(REGB16)) {
5857 } else {
5858 nit_abort("Uninitialized attribute %s", "_file", LOCATE_parser___lexer, 1320);
5859 }
5860 fra.me.REG[2] = ATTR_parser___lexer___Lexer____file(fra.me.REG[0]);
5861 fra.me.REG[2] = CALL_location___SourceFile___line_starts(fra.me.REG[2])(fra.me.REG[2]);
5862 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[2])(fra.me.REG[2], REGB13, REGB1);
5863 } else {
5864 /* parser/lexer.nit:1322 */
5865 REGB16 = TAG_Int(1);
5866 /* ../lib/standard/kernel.nit:235 */
5867 REGB16 = TAG_Int(UNTAG_Int(REGB13)+UNTAG_Int(REGB16));
5868 /* parser/lexer.nit:1322 */
5869 REGB13 = REGB16;
5870 /* parser/lexer.nit:1323 */
5871 REGB16 = TAG_Int(0);
5872 REGB14 = REGB16;
5873 /* parser/lexer.nit:1324 */
5874 REGB16 = TAG_Bool(ATTR_parser___lexer___Lexer____file(fra.me.REG[0])!=NIT_NULL);
5875 if (UNTAG_Bool(REGB16)) {
5876 } else {
5877 nit_abort("Uninitialized attribute %s", "_file", LOCATE_parser___lexer, 1324);
5878 }
5879 fra.me.REG[2] = ATTR_parser___lexer___Lexer____file(fra.me.REG[0]);
5880 fra.me.REG[2] = CALL_location___SourceFile___line_starts(fra.me.REG[2])(fra.me.REG[2]);
5881 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[2])(fra.me.REG[2], REGB13, REGB1);
5882 }
5883 } else {
5884 /* parser/lexer.nit:1326 */
5885 REGB16 = TAG_Int(13);
5886 REGB15 = TAG_Bool(IS_EQUAL_OO(REGB11,REGB16));
5887 if (UNTAG_Bool(REGB15)) {
5888 } else {
5889 /* ../lib/standard/kernel.nit:227 */
5890 REGB16 = TAG_Bool((REGB11)==(REGB16));
5891 /* parser/lexer.nit:1326 */
5892 REGB15 = REGB16;
5893 }
5894 if (UNTAG_Bool(REGB15)) {
5895 /* parser/lexer.nit:1327 */
5896 REGB15 = TAG_Int(1);
5897 /* ../lib/standard/kernel.nit:235 */
5898 REGB15 = TAG_Int(UNTAG_Int(REGB13)+UNTAG_Int(REGB15));
5899 /* parser/lexer.nit:1327 */
5900 REGB13 = REGB15;
5901 /* parser/lexer.nit:1328 */
5902 REGB15 = TAG_Int(0);
5903 REGB14 = REGB15;
5904 /* parser/lexer.nit:1329 */
5905 REGB15 = TAG_Bool(true);
5906 REGB12 = REGB15;
5907 /* parser/lexer.nit:1330 */
5908 REGB15 = TAG_Bool(ATTR_parser___lexer___Lexer____file(fra.me.REG[0])!=NIT_NULL);
5909 if (UNTAG_Bool(REGB15)) {
5910 } else {
5911 nit_abort("Uninitialized attribute %s", "_file", LOCATE_parser___lexer, 1330);
5912 }
5913 fra.me.REG[2] = ATTR_parser___lexer___Lexer____file(fra.me.REG[0]);
5914 fra.me.REG[2] = CALL_location___SourceFile___line_starts(fra.me.REG[2])(fra.me.REG[2]);
5915 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[2])(fra.me.REG[2], REGB13, REGB1);
5916 } else {
5917 /* parser/lexer.nit:1332 */
5918 REGB15 = TAG_Int(1);
5919 /* ../lib/standard/kernel.nit:235 */
5920 REGB15 = TAG_Int(UNTAG_Int(REGB14)+UNTAG_Int(REGB15));
5921 /* parser/lexer.nit:1332 */
5922 REGB14 = REGB15;
5923 /* parser/lexer.nit:1333 */
5924 REGB15 = TAG_Bool(false);
5925 REGB12 = REGB15;
5926 }
5927 }
5928 /* parser/lexer.nit:1336 */
5929 while(1) {
5930 /* parser/lexer.nit:1337 */
5931 REGB15 = REGB0;
5932 /* parser/lexer.nit:1338 */
5933 REGB16 = TAG_Int(1);
5934 /* ../lib/standard/kernel.nit:236 */
5935 REGB16 = TAG_Int(-UNTAG_Int(REGB16));
5936 REGB17 = TAG_Bool(VAL_ISA(REGB16, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
5937 if (UNTAG_Bool(REGB17)) {
5938 } else {
5939 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
5940 }
5941 /* ../lib/standard/kernel.nit:232 */
5942 REGB16 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB16));
5943 /* parser/lexer.nit:1338 */
5944 if (UNTAG_Bool(REGB16)) {
5945 /* parser/lexer.nit:1339 */
5946 REGB16 = TAG_Int(2);
5947 /* ../lib/standard/kernel.nit:236 */
5948 REGB16 = TAG_Int(-UNTAG_Int(REGB16));
5949 /* ../lib/standard/kernel.nit:237 */
5950 REGB16 = TAG_Int(UNTAG_Int(REGB16)-UNTAG_Int(REGB0));
5951 /* parser/lexer.nit:1339 */
5952 REGB15 = REGB16;
5953 }
5954 /* parser/lexer.nit:1342 */
5955 REGB16 = TAG_Int(1);
5956 /* ../lib/standard/kernel.nit:236 */
5957 REGB16 = TAG_Int(-UNTAG_Int(REGB16));
5958 /* parser/lexer.nit:1342 */
5959 REGB0 = REGB16;
5960 /* parser/lexer.nit:1344 */
5961 REGB16 = TAG_Int(0);
5962 /* parser/lexer.nit:1345 */
5963 REGB17 = TAG_Int(0);
5964 REGB17 = CALL_parser___tables___TablesCapable___lexer_goto(fra.me.REG[0])(fra.me.REG[0], REGB15, REGB17);
5965 REGB18 = TAG_Int(1);
5966 /* ../lib/standard/kernel.nit:237 */
5967 REGB18 = TAG_Int(UNTAG_Int(REGB17)-UNTAG_Int(REGB18));
5968 /* parser/lexer.nit:1347 */
5969 REGB17 = TAG_Int(0);
5970 REGB19 = TAG_Bool(VAL_ISA(REGB17, VTCOLOR_standard___kernel___Comparable___OTHER(REGB18), VTID_standard___kernel___Comparable___OTHER(REGB18))) /*cast OTHER*/;
5971 if (UNTAG_Bool(REGB19)) {
5972 } else {
5973 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
5974 }
5975 /* ../lib/standard/kernel.nit:233 */
5976 REGB17 = TAG_Bool(UNTAG_Int(REGB18)>=UNTAG_Int(REGB17));
5977 /* parser/lexer.nit:1347 */
5978 if (UNTAG_Bool(REGB17)) {
5979 /* parser/lexer.nit:1348 */
5980 while(1) {
5981 REGB17 = TAG_Bool(VAL_ISA(REGB18, VTCOLOR_standard___kernel___Comparable___OTHER(REGB16), VTID_standard___kernel___Comparable___OTHER(REGB16))) /*cast OTHER*/;
5982 if (UNTAG_Bool(REGB17)) {
5983 } else {
5984 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
5985 }
5986 /* ../lib/standard/kernel.nit:231 */
5987 REGB17 = TAG_Bool(UNTAG_Int(REGB16)<=UNTAG_Int(REGB18));
5988 /* parser/lexer.nit:1348 */
5989 if (UNTAG_Bool(REGB17)) {
5990 /* ../lib/standard/kernel.nit:235 */
5991 REGB17 = TAG_Int(UNTAG_Int(REGB16)+UNTAG_Int(REGB18));
5992 /* parser/lexer.nit:1349 */
5993 REGB19 = TAG_Int(2);
5994 /* ../lib/standard/kernel.nit:239 */
5995 REGB19 = TAG_Int(UNTAG_Int(REGB17)/UNTAG_Int(REGB19));
5996 /* parser/lexer.nit:1350 */
5997 REGB17 = TAG_Int(3);
5998 /* ../lib/standard/kernel.nit:238 */
5999 REGB17 = TAG_Int(UNTAG_Int(REGB19)*UNTAG_Int(REGB17));
6000 /* parser/lexer.nit:1350 */
6001 REGB20 = TAG_Int(1);
6002 /* ../lib/standard/kernel.nit:235 */
6003 REGB20 = TAG_Int(UNTAG_Int(REGB17)+UNTAG_Int(REGB20));
6004 /* parser/lexer.nit:1352 */
6005 REGB17 = CALL_parser___tables___TablesCapable___lexer_goto(fra.me.REG[0])(fra.me.REG[0], REGB15, REGB20);
6006 REGB21 = TAG_Bool(VAL_ISA(REGB17, VTCOLOR_standard___kernel___Comparable___OTHER(REGB11), VTID_standard___kernel___Comparable___OTHER(REGB11))) /*cast OTHER*/;
6007 if (UNTAG_Bool(REGB21)) {
6008 } else {
6009 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
6010 }
6011 /* ../lib/standard/kernel.nit:232 */
6012 REGB17 = TAG_Bool(UNTAG_Int(REGB11)<UNTAG_Int(REGB17));
6013 /* parser/lexer.nit:1352 */
6014 if (UNTAG_Bool(REGB17)) {
6015 /* parser/lexer.nit:1353 */
6016 REGB17 = TAG_Int(1);
6017 /* ../lib/standard/kernel.nit:237 */
6018 REGB17 = TAG_Int(UNTAG_Int(REGB19)-UNTAG_Int(REGB17));
6019 /* parser/lexer.nit:1353 */
6020 REGB18 = REGB17;
6021 } else {
6022 /* parser/lexer.nit:1354 */
6023 REGB17 = TAG_Int(1);
6024 /* ../lib/standard/kernel.nit:235 */
6025 REGB17 = TAG_Int(UNTAG_Int(REGB20)+UNTAG_Int(REGB17));
6026 /* parser/lexer.nit:1354 */
6027 REGB17 = CALL_parser___tables___TablesCapable___lexer_goto(fra.me.REG[0])(fra.me.REG[0], REGB15, REGB17);
6028 REGB21 = TAG_Bool(VAL_ISA(REGB17, VTCOLOR_standard___kernel___Comparable___OTHER(REGB11), VTID_standard___kernel___Comparable___OTHER(REGB11))) /*cast OTHER*/;
6029 if (UNTAG_Bool(REGB21)) {
6030 } else {
6031 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
6032 }
6033 /* ../lib/standard/kernel.nit:234 */
6034 REGB17 = TAG_Bool(UNTAG_Int(REGB11)>UNTAG_Int(REGB17));
6035 /* parser/lexer.nit:1354 */
6036 if (UNTAG_Bool(REGB17)) {
6037 /* parser/lexer.nit:1355 */
6038 REGB17 = TAG_Int(1);
6039 /* ../lib/standard/kernel.nit:235 */
6040 REGB17 = TAG_Int(UNTAG_Int(REGB19)+UNTAG_Int(REGB17));
6041 /* parser/lexer.nit:1355 */
6042 REGB16 = REGB17;
6043 } else {
6044 /* parser/lexer.nit:1357 */
6045 REGB17 = TAG_Int(2);
6046 /* ../lib/standard/kernel.nit:235 */
6047 REGB17 = TAG_Int(UNTAG_Int(REGB20)+UNTAG_Int(REGB17));
6048 /* parser/lexer.nit:1357 */
6049 REGB17 = CALL_parser___tables___TablesCapable___lexer_goto(fra.me.REG[0])(fra.me.REG[0], REGB15, REGB17);
6050 REGB0 = REGB17;
6051 /* parser/lexer.nit:1358 */
6052 goto label1;
6053 }
6054 }
6055 } else {
6056 /* parser/lexer.nit:1348 */
6057 goto label1;
6058 }
6059 }
6060 label1: while(0);
6061 }
6062 /* parser/lexer.nit:1362 */
6063 REGB15 = TAG_Int(2);
6064 /* ../lib/standard/kernel.nit:236 */
6065 REGB15 = TAG_Int(-UNTAG_Int(REGB15));
6066 REGB16 = TAG_Bool(VAL_ISA(REGB15, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
6067 if (UNTAG_Bool(REGB16)) {
6068 } else {
6069 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
6070 }
6071 /* ../lib/standard/kernel.nit:234 */
6072 REGB15 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB15));
6073 /* parser/lexer.nit:1362 */
6074 if (UNTAG_Bool(REGB15)) {
6075 goto label2;
6076 }
6077 }
6078 label2: while(0);
6079 /* parser/lexer.nit:1365 */
6080 ATTR_parser___lexer___Lexer____cr(fra.me.REG[0]) = REGB12;
6081 /* parser/lexer.nit:1366 */
6082 ATTR_parser___lexer___Lexer____line(fra.me.REG[0]) = REGB13;
6083 /* parser/lexer.nit:1367 */
6084 ATTR_parser___lexer___Lexer____pos(fra.me.REG[0]) = REGB14;
6085 }
6086 /* parser/lexer.nit:1370 */
6087 REGB14 = TAG_Int(0);
6088 REGB13 = TAG_Bool(VAL_ISA(REGB14, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
6089 if (UNTAG_Bool(REGB13)) {
6090 } else {
6091 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
6092 }
6093 /* ../lib/standard/kernel.nit:233 */
6094 REGB14 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB14));
6095 /* parser/lexer.nit:1370 */
6096 if (UNTAG_Bool(REGB14)) {
6097 /* parser/lexer.nit:1371 */
6098 REGB14 = CALL_parser___tables___TablesCapable___lexer_accept(fra.me.REG[0])(fra.me.REG[0], REGB0);
6099 /* parser/lexer.nit:1372 */
6100 REGB13 = TAG_Int(1);
6101 /* ../lib/standard/kernel.nit:236 */
6102 REGB13 = TAG_Int(-UNTAG_Int(REGB13));
6103 /* parser/lexer.nit:1372 */
6104 REGB12 = TAG_Bool(IS_EQUAL_OO(REGB14,REGB13));
6105 if (UNTAG_Bool(REGB12)) {
6106 } else {
6107 /* ../lib/standard/kernel.nit:227 */
6108 REGB13 = TAG_Bool((REGB14)==(REGB13));
6109 /* parser/lexer.nit:1372 */
6110 REGB12 = REGB13;
6111 }
6112 REGB12 = TAG_Bool(!UNTAG_Bool(REGB12));
6113 if (UNTAG_Bool(REGB12)) {
6114 /* parser/lexer.nit:1373 */
6115 REGB6 = REGB0;
6116 /* parser/lexer.nit:1374 */
6117 REGB7 = REGB14;
6118 /* ../lib/standard/kernel.nit:237 */
6119 REGB14 = TAG_Int(UNTAG_Int(REGB1)-UNTAG_Int(REGB2));
6120 /* parser/lexer.nit:1375 */
6121 REGB8 = REGB14;
6122 /* parser/lexer.nit:1376 */
6123 REGB14 = TAG_Bool(ATTR_parser___lexer___Lexer____pos(fra.me.REG[0])!=NIT_NULL);
6124 if (UNTAG_Bool(REGB14)) {
6125 } else {
6126 nit_abort("Uninitialized attribute %s", "_pos", LOCATE_parser___lexer, 1376);
6127 }
6128 REGB14 = ATTR_parser___lexer___Lexer____pos(fra.me.REG[0]);
6129 REGB9 = REGB14;
6130 /* parser/lexer.nit:1377 */
6131 REGB14 = TAG_Bool(ATTR_parser___lexer___Lexer____line(fra.me.REG[0])!=NIT_NULL);
6132 if (UNTAG_Bool(REGB14)) {
6133 } else {
6134 nit_abort("Uninitialized attribute %s", "_line", LOCATE_parser___lexer, 1377);
6135 }
6136 REGB14 = ATTR_parser___lexer___Lexer____line(fra.me.REG[0]);
6137 REGB10 = REGB14;
6138 }
6139 } else {
6140 /* parser/lexer.nit:1380 */
6141 REGB14 = TAG_Int(1);
6142 /* ../lib/standard/kernel.nit:236 */
6143 REGB14 = TAG_Int(-UNTAG_Int(REGB14));
6144 /* parser/lexer.nit:1380 */
6145 REGB12 = TAG_Bool(IS_EQUAL_OO(REGB6,REGB14));
6146 if (UNTAG_Bool(REGB12)) {
6147 } else {
6148 /* ../lib/standard/kernel.nit:227 */
6149 REGB14 = TAG_Bool((REGB6)==(REGB14));
6150 /* parser/lexer.nit:1380 */
6151 REGB12 = REGB14;
6152 }
6153 REGB12 = TAG_Bool(!UNTAG_Bool(REGB12));
6154 if (UNTAG_Bool(REGB12)) {
6155 /* parser/lexer.nit:1381 */
6156 REGB12 = TAG_Bool(ATTR_parser___lexer___Lexer____file(fra.me.REG[0])!=NIT_NULL);
6157 if (UNTAG_Bool(REGB12)) {
6158 } else {
6159 nit_abort("Uninitialized attribute %s", "_file", LOCATE_parser___lexer, 1381);
6160 }
6161 fra.me.REG[2] = ATTR_parser___lexer___Lexer____file(fra.me.REG[0]);
6162 REGB12 = TAG_Int(1);
6163 /* ../lib/standard/kernel.nit:235 */
6164 REGB12 = TAG_Int(UNTAG_Int(REGB4)+UNTAG_Int(REGB12));
6165 /* parser/lexer.nit:1381 */
6166 REGB14 = TAG_Int(1);
6167 /* ../lib/standard/kernel.nit:235 */
6168 REGB14 = TAG_Int(UNTAG_Int(REGB10)+UNTAG_Int(REGB14));
6169 /* parser/lexer.nit:1381 */
6170 REGB13 = TAG_Int(1);
6171 /* ../lib/standard/kernel.nit:235 */
6172 REGB13 = TAG_Int(UNTAG_Int(REGB3)+UNTAG_Int(REGB13));
6173 /* parser/lexer.nit:1381 */
6174 fra.me.REG[2] = NEW_Location_location___Location___init(fra.me.REG[2], REGB12, REGB14, REGB13, REGB9);
6175 /* parser/lexer.nit:1382 */
6176 ATTR_parser___lexer___Lexer____pos(fra.me.REG[0]) = REGB9;
6177 /* parser/lexer.nit:1383 */
6178 ATTR_parser___lexer___Lexer____line(fra.me.REG[0]) = REGB10;
6179 /* ../lib/standard/kernel.nit:235 */
6180 REGB13 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB8));
6181 /* parser/lexer.nit:1384 */
6182 ATTR_parser___lexer___Lexer____stream_pos(fra.me.REG[0]) = REGB13;
6183 /* parser/lexer.nit:1385 */
6184 REGB13 = TAG_Int(0);
6185 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6186 if (UNTAG_Bool(REGB14)) {
6187 } else {
6188 /* ../lib/standard/kernel.nit:227 */
6189 REGB13 = TAG_Bool((REGB7)==(REGB13));
6190 /* parser/lexer.nit:1385 */
6191 REGB14 = REGB13;
6192 }
6193 if (UNTAG_Bool(REGB14)) {
6194 /* parser/lexer.nit:1386 */
6195 fra.me.REG[3] = NIT_NULL;
6196 goto label3;
6197 }
6198 /* parser/lexer.nit:1388 */
6199 REGB14 = TAG_Int(1);
6200 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6201 if (UNTAG_Bool(REGB13)) {
6202 } else {
6203 /* ../lib/standard/kernel.nit:227 */
6204 REGB14 = TAG_Bool((REGB7)==(REGB14));
6205 /* parser/lexer.nit:1388 */
6206 REGB13 = REGB14;
6207 }
6208 if (UNTAG_Bool(REGB13)) {
6209 /* parser/lexer.nit:1389 */
6210 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
6211 /* parser/lexer.nit:1390 */
6212 fra.me.REG[4] = NEW_TEol_parser___lexer___TEol___init_tk(fra.me.REG[4], fra.me.REG[2]);
6213 fra.me.REG[3] = fra.me.REG[4];
6214 goto label3;
6215 }
6216 /* parser/lexer.nit:1392 */
6217 REGB13 = TAG_Int(2);
6218 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6219 if (UNTAG_Bool(REGB14)) {
6220 } else {
6221 /* ../lib/standard/kernel.nit:227 */
6222 REGB13 = TAG_Bool((REGB7)==(REGB13));
6223 /* parser/lexer.nit:1392 */
6224 REGB14 = REGB13;
6225 }
6226 if (UNTAG_Bool(REGB14)) {
6227 /* parser/lexer.nit:1393 */
6228 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
6229 /* parser/lexer.nit:1394 */
6230 fra.me.REG[4] = NEW_TComment_parser___lexer___TComment___init_tk(fra.me.REG[4], fra.me.REG[2]);
6231 fra.me.REG[3] = fra.me.REG[4];
6232 goto label3;
6233 }
6234 /* parser/lexer.nit:1396 */
6235 REGB14 = TAG_Int(3);
6236 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6237 if (UNTAG_Bool(REGB13)) {
6238 } else {
6239 /* ../lib/standard/kernel.nit:227 */
6240 REGB14 = TAG_Bool((REGB7)==(REGB14));
6241 /* parser/lexer.nit:1396 */
6242 REGB13 = REGB14;
6243 }
6244 if (UNTAG_Bool(REGB13)) {
6245 /* parser/lexer.nit:1397 */
6246 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
6247 /* parser/lexer.nit:1398 */
6248 fra.me.REG[4] = NEW_TKwmodule_parser___lexer___TKwmodule___init_tk(fra.me.REG[4], fra.me.REG[2]);
6249 fra.me.REG[3] = fra.me.REG[4];
6250 goto label3;
6251 }
6252 /* parser/lexer.nit:1400 */
6253 REGB13 = TAG_Int(4);
6254 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6255 if (UNTAG_Bool(REGB14)) {
6256 } else {
6257 /* ../lib/standard/kernel.nit:227 */
6258 REGB13 = TAG_Bool((REGB7)==(REGB13));
6259 /* parser/lexer.nit:1400 */
6260 REGB14 = REGB13;
6261 }
6262 if (UNTAG_Bool(REGB14)) {
6263 /* parser/lexer.nit:1401 */
6264 fra.me.REG[4] = NEW_TKwimport_parser___lexer___TKwimport___init_tk(fra.me.REG[2]);
6265 fra.me.REG[3] = fra.me.REG[4];
6266 goto label3;
6267 }
6268 /* parser/lexer.nit:1403 */
6269 REGB14 = TAG_Int(5);
6270 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6271 if (UNTAG_Bool(REGB13)) {
6272 } else {
6273 /* ../lib/standard/kernel.nit:227 */
6274 REGB14 = TAG_Bool((REGB7)==(REGB14));
6275 /* parser/lexer.nit:1403 */
6276 REGB13 = REGB14;
6277 }
6278 if (UNTAG_Bool(REGB13)) {
6279 /* parser/lexer.nit:1404 */
6280 fra.me.REG[4] = NEW_TKwclass_parser___lexer___TKwclass___init_tk(fra.me.REG[2]);
6281 fra.me.REG[3] = fra.me.REG[4];
6282 goto label3;
6283 }
6284 /* parser/lexer.nit:1406 */
6285 REGB13 = TAG_Int(6);
6286 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6287 if (UNTAG_Bool(REGB14)) {
6288 } else {
6289 /* ../lib/standard/kernel.nit:227 */
6290 REGB13 = TAG_Bool((REGB7)==(REGB13));
6291 /* parser/lexer.nit:1406 */
6292 REGB14 = REGB13;
6293 }
6294 if (UNTAG_Bool(REGB14)) {
6295 /* parser/lexer.nit:1407 */
6296 fra.me.REG[4] = NEW_TKwabstract_parser___lexer___TKwabstract___init_tk(fra.me.REG[2]);
6297 fra.me.REG[3] = fra.me.REG[4];
6298 goto label3;
6299 }
6300 /* parser/lexer.nit:1409 */
6301 REGB14 = TAG_Int(7);
6302 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6303 if (UNTAG_Bool(REGB13)) {
6304 } else {
6305 /* ../lib/standard/kernel.nit:227 */
6306 REGB14 = TAG_Bool((REGB7)==(REGB14));
6307 /* parser/lexer.nit:1409 */
6308 REGB13 = REGB14;
6309 }
6310 if (UNTAG_Bool(REGB13)) {
6311 /* parser/lexer.nit:1410 */
6312 fra.me.REG[4] = NEW_TKwinterface_parser___lexer___TKwinterface___init_tk(fra.me.REG[2]);
6313 fra.me.REG[3] = fra.me.REG[4];
6314 goto label3;
6315 }
6316 /* parser/lexer.nit:1412 */
6317 REGB13 = TAG_Int(8);
6318 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6319 if (UNTAG_Bool(REGB14)) {
6320 } else {
6321 /* ../lib/standard/kernel.nit:227 */
6322 REGB13 = TAG_Bool((REGB7)==(REGB13));
6323 /* parser/lexer.nit:1412 */
6324 REGB14 = REGB13;
6325 }
6326 if (UNTAG_Bool(REGB14)) {
6327 /* parser/lexer.nit:1413 */
6328 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
6329 /* parser/lexer.nit:1414 */
6330 fra.me.REG[4] = NEW_TKwenum_parser___lexer___TKwenum___init_tk(fra.me.REG[4], fra.me.REG[2]);
6331 fra.me.REG[3] = fra.me.REG[4];
6332 goto label3;
6333 }
6334 /* parser/lexer.nit:1416 */
6335 REGB14 = TAG_Int(9);
6336 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6337 if (UNTAG_Bool(REGB13)) {
6338 } else {
6339 /* ../lib/standard/kernel.nit:227 */
6340 REGB14 = TAG_Bool((REGB7)==(REGB14));
6341 /* parser/lexer.nit:1416 */
6342 REGB13 = REGB14;
6343 }
6344 if (UNTAG_Bool(REGB13)) {
6345 /* parser/lexer.nit:1417 */
6346 fra.me.REG[4] = NEW_TKwspecial_parser___lexer___TKwspecial___init_tk(fra.me.REG[2]);
6347 fra.me.REG[3] = fra.me.REG[4];
6348 goto label3;
6349 }
6350 /* parser/lexer.nit:1419 */
6351 REGB13 = TAG_Int(10);
6352 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6353 if (UNTAG_Bool(REGB14)) {
6354 } else {
6355 /* ../lib/standard/kernel.nit:227 */
6356 REGB13 = TAG_Bool((REGB7)==(REGB13));
6357 /* parser/lexer.nit:1419 */
6358 REGB14 = REGB13;
6359 }
6360 if (UNTAG_Bool(REGB14)) {
6361 /* parser/lexer.nit:1420 */
6362 fra.me.REG[4] = NEW_TKwend_parser___lexer___TKwend___init_tk(fra.me.REG[2]);
6363 fra.me.REG[3] = fra.me.REG[4];
6364 goto label3;
6365 }
6366 /* parser/lexer.nit:1422 */
6367 REGB14 = TAG_Int(11);
6368 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6369 if (UNTAG_Bool(REGB13)) {
6370 } else {
6371 /* ../lib/standard/kernel.nit:227 */
6372 REGB14 = TAG_Bool((REGB7)==(REGB14));
6373 /* parser/lexer.nit:1422 */
6374 REGB13 = REGB14;
6375 }
6376 if (UNTAG_Bool(REGB13)) {
6377 /* parser/lexer.nit:1423 */
6378 fra.me.REG[4] = NEW_TKwmeth_parser___lexer___TKwmeth___init_tk(fra.me.REG[2]);
6379 fra.me.REG[3] = fra.me.REG[4];
6380 goto label3;
6381 }
6382 /* parser/lexer.nit:1425 */
6383 REGB13 = TAG_Int(12);
6384 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6385 if (UNTAG_Bool(REGB14)) {
6386 } else {
6387 /* ../lib/standard/kernel.nit:227 */
6388 REGB13 = TAG_Bool((REGB7)==(REGB13));
6389 /* parser/lexer.nit:1425 */
6390 REGB14 = REGB13;
6391 }
6392 if (UNTAG_Bool(REGB14)) {
6393 /* parser/lexer.nit:1426 */
6394 fra.me.REG[4] = NEW_TKwtype_parser___lexer___TKwtype___init_tk(fra.me.REG[2]);
6395 fra.me.REG[3] = fra.me.REG[4];
6396 goto label3;
6397 }
6398 /* parser/lexer.nit:1428 */
6399 REGB14 = TAG_Int(13);
6400 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6401 if (UNTAG_Bool(REGB13)) {
6402 } else {
6403 /* ../lib/standard/kernel.nit:227 */
6404 REGB14 = TAG_Bool((REGB7)==(REGB14));
6405 /* parser/lexer.nit:1428 */
6406 REGB13 = REGB14;
6407 }
6408 if (UNTAG_Bool(REGB13)) {
6409 /* parser/lexer.nit:1429 */
6410 fra.me.REG[4] = NEW_TKwinit_parser___lexer___TKwinit___init_tk(fra.me.REG[2]);
6411 fra.me.REG[3] = fra.me.REG[4];
6412 goto label3;
6413 }
6414 /* parser/lexer.nit:1431 */
6415 REGB13 = TAG_Int(14);
6416 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6417 if (UNTAG_Bool(REGB14)) {
6418 } else {
6419 /* ../lib/standard/kernel.nit:227 */
6420 REGB13 = TAG_Bool((REGB7)==(REGB13));
6421 /* parser/lexer.nit:1431 */
6422 REGB14 = REGB13;
6423 }
6424 if (UNTAG_Bool(REGB14)) {
6425 /* parser/lexer.nit:1432 */
6426 fra.me.REG[4] = NEW_TKwredef_parser___lexer___TKwredef___init_tk(fra.me.REG[2]);
6427 fra.me.REG[3] = fra.me.REG[4];
6428 goto label3;
6429 }
6430 /* parser/lexer.nit:1434 */
6431 REGB14 = TAG_Int(15);
6432 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6433 if (UNTAG_Bool(REGB13)) {
6434 } else {
6435 /* ../lib/standard/kernel.nit:227 */
6436 REGB14 = TAG_Bool((REGB7)==(REGB14));
6437 /* parser/lexer.nit:1434 */
6438 REGB13 = REGB14;
6439 }
6440 if (UNTAG_Bool(REGB13)) {
6441 /* parser/lexer.nit:1435 */
6442 fra.me.REG[4] = NEW_TKwis_parser___lexer___TKwis___init_tk(fra.me.REG[2]);
6443 fra.me.REG[3] = fra.me.REG[4];
6444 goto label3;
6445 }
6446 /* parser/lexer.nit:1437 */
6447 REGB13 = TAG_Int(16);
6448 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6449 if (UNTAG_Bool(REGB14)) {
6450 } else {
6451 /* ../lib/standard/kernel.nit:227 */
6452 REGB13 = TAG_Bool((REGB7)==(REGB13));
6453 /* parser/lexer.nit:1437 */
6454 REGB14 = REGB13;
6455 }
6456 if (UNTAG_Bool(REGB14)) {
6457 /* parser/lexer.nit:1438 */
6458 fra.me.REG[4] = NEW_TKwdo_parser___lexer___TKwdo___init_tk(fra.me.REG[2]);
6459 fra.me.REG[3] = fra.me.REG[4];
6460 goto label3;
6461 }
6462 /* parser/lexer.nit:1440 */
6463 REGB14 = TAG_Int(17);
6464 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6465 if (UNTAG_Bool(REGB13)) {
6466 } else {
6467 /* ../lib/standard/kernel.nit:227 */
6468 REGB14 = TAG_Bool((REGB7)==(REGB14));
6469 /* parser/lexer.nit:1440 */
6470 REGB13 = REGB14;
6471 }
6472 if (UNTAG_Bool(REGB13)) {
6473 /* parser/lexer.nit:1441 */
6474 fra.me.REG[4] = NEW_TKwreadable_parser___lexer___TKwreadable___init_tk(fra.me.REG[2]);
6475 fra.me.REG[3] = fra.me.REG[4];
6476 goto label3;
6477 }
6478 /* parser/lexer.nit:1443 */
6479 REGB13 = TAG_Int(18);
6480 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6481 if (UNTAG_Bool(REGB14)) {
6482 } else {
6483 /* ../lib/standard/kernel.nit:227 */
6484 REGB13 = TAG_Bool((REGB7)==(REGB13));
6485 /* parser/lexer.nit:1443 */
6486 REGB14 = REGB13;
6487 }
6488 if (UNTAG_Bool(REGB14)) {
6489 /* parser/lexer.nit:1444 */
6490 fra.me.REG[4] = NEW_TKwwritable_parser___lexer___TKwwritable___init_tk(fra.me.REG[2]);
6491 fra.me.REG[3] = fra.me.REG[4];
6492 goto label3;
6493 }
6494 /* parser/lexer.nit:1446 */
6495 REGB14 = TAG_Int(19);
6496 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6497 if (UNTAG_Bool(REGB13)) {
6498 } else {
6499 /* ../lib/standard/kernel.nit:227 */
6500 REGB14 = TAG_Bool((REGB7)==(REGB14));
6501 /* parser/lexer.nit:1446 */
6502 REGB13 = REGB14;
6503 }
6504 if (UNTAG_Bool(REGB13)) {
6505 /* parser/lexer.nit:1447 */
6506 fra.me.REG[4] = NEW_TKwvar_parser___lexer___TKwvar___init_tk(fra.me.REG[2]);
6507 fra.me.REG[3] = fra.me.REG[4];
6508 goto label3;
6509 }
6510 /* parser/lexer.nit:1449 */
6511 REGB13 = TAG_Int(20);
6512 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6513 if (UNTAG_Bool(REGB14)) {
6514 } else {
6515 /* ../lib/standard/kernel.nit:227 */
6516 REGB13 = TAG_Bool((REGB7)==(REGB13));
6517 /* parser/lexer.nit:1449 */
6518 REGB14 = REGB13;
6519 }
6520 if (UNTAG_Bool(REGB14)) {
6521 /* parser/lexer.nit:1450 */
6522 fra.me.REG[4] = NEW_TKwintern_parser___lexer___TKwintern___init_tk(fra.me.REG[2]);
6523 fra.me.REG[3] = fra.me.REG[4];
6524 goto label3;
6525 }
6526 /* parser/lexer.nit:1452 */
6527 REGB14 = TAG_Int(21);
6528 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6529 if (UNTAG_Bool(REGB13)) {
6530 } else {
6531 /* ../lib/standard/kernel.nit:227 */
6532 REGB14 = TAG_Bool((REGB7)==(REGB14));
6533 /* parser/lexer.nit:1452 */
6534 REGB13 = REGB14;
6535 }
6536 if (UNTAG_Bool(REGB13)) {
6537 /* parser/lexer.nit:1453 */
6538 fra.me.REG[4] = NEW_TKwextern_parser___lexer___TKwextern___init_tk(fra.me.REG[2]);
6539 fra.me.REG[3] = fra.me.REG[4];
6540 goto label3;
6541 }
6542 /* parser/lexer.nit:1455 */
6543 REGB13 = TAG_Int(22);
6544 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6545 if (UNTAG_Bool(REGB14)) {
6546 } else {
6547 /* ../lib/standard/kernel.nit:227 */
6548 REGB13 = TAG_Bool((REGB7)==(REGB13));
6549 /* parser/lexer.nit:1455 */
6550 REGB14 = REGB13;
6551 }
6552 if (UNTAG_Bool(REGB14)) {
6553 /* parser/lexer.nit:1456 */
6554 fra.me.REG[4] = NEW_TKwprotected_parser___lexer___TKwprotected___init_tk(fra.me.REG[2]);
6555 fra.me.REG[3] = fra.me.REG[4];
6556 goto label3;
6557 }
6558 /* parser/lexer.nit:1458 */
6559 REGB14 = TAG_Int(23);
6560 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6561 if (UNTAG_Bool(REGB13)) {
6562 } else {
6563 /* ../lib/standard/kernel.nit:227 */
6564 REGB14 = TAG_Bool((REGB7)==(REGB14));
6565 /* parser/lexer.nit:1458 */
6566 REGB13 = REGB14;
6567 }
6568 if (UNTAG_Bool(REGB13)) {
6569 /* parser/lexer.nit:1459 */
6570 fra.me.REG[4] = NEW_TKwprivate_parser___lexer___TKwprivate___init_tk(fra.me.REG[2]);
6571 fra.me.REG[3] = fra.me.REG[4];
6572 goto label3;
6573 }
6574 /* parser/lexer.nit:1461 */
6575 REGB13 = TAG_Int(24);
6576 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6577 if (UNTAG_Bool(REGB14)) {
6578 } else {
6579 /* ../lib/standard/kernel.nit:227 */
6580 REGB13 = TAG_Bool((REGB7)==(REGB13));
6581 /* parser/lexer.nit:1461 */
6582 REGB14 = REGB13;
6583 }
6584 if (UNTAG_Bool(REGB14)) {
6585 /* parser/lexer.nit:1462 */
6586 fra.me.REG[4] = NEW_TKwintrude_parser___lexer___TKwintrude___init_tk(fra.me.REG[2]);
6587 fra.me.REG[3] = fra.me.REG[4];
6588 goto label3;
6589 }
6590 /* parser/lexer.nit:1464 */
6591 REGB14 = TAG_Int(25);
6592 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6593 if (UNTAG_Bool(REGB13)) {
6594 } else {
6595 /* ../lib/standard/kernel.nit:227 */
6596 REGB14 = TAG_Bool((REGB7)==(REGB14));
6597 /* parser/lexer.nit:1464 */
6598 REGB13 = REGB14;
6599 }
6600 if (UNTAG_Bool(REGB13)) {
6601 /* parser/lexer.nit:1465 */
6602 fra.me.REG[4] = NEW_TKwif_parser___lexer___TKwif___init_tk(fra.me.REG[2]);
6603 fra.me.REG[3] = fra.me.REG[4];
6604 goto label3;
6605 }
6606 /* parser/lexer.nit:1467 */
6607 REGB13 = TAG_Int(26);
6608 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6609 if (UNTAG_Bool(REGB14)) {
6610 } else {
6611 /* ../lib/standard/kernel.nit:227 */
6612 REGB13 = TAG_Bool((REGB7)==(REGB13));
6613 /* parser/lexer.nit:1467 */
6614 REGB14 = REGB13;
6615 }
6616 if (UNTAG_Bool(REGB14)) {
6617 /* parser/lexer.nit:1468 */
6618 fra.me.REG[4] = NEW_TKwthen_parser___lexer___TKwthen___init_tk(fra.me.REG[2]);
6619 fra.me.REG[3] = fra.me.REG[4];
6620 goto label3;
6621 }
6622 /* parser/lexer.nit:1470 */
6623 REGB14 = TAG_Int(27);
6624 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6625 if (UNTAG_Bool(REGB13)) {
6626 } else {
6627 /* ../lib/standard/kernel.nit:227 */
6628 REGB14 = TAG_Bool((REGB7)==(REGB14));
6629 /* parser/lexer.nit:1470 */
6630 REGB13 = REGB14;
6631 }
6632 if (UNTAG_Bool(REGB13)) {
6633 /* parser/lexer.nit:1471 */
6634 fra.me.REG[4] = NEW_TKwelse_parser___lexer___TKwelse___init_tk(fra.me.REG[2]);
6635 fra.me.REG[3] = fra.me.REG[4];
6636 goto label3;
6637 }
6638 /* parser/lexer.nit:1473 */
6639 REGB13 = TAG_Int(28);
6640 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6641 if (UNTAG_Bool(REGB14)) {
6642 } else {
6643 /* ../lib/standard/kernel.nit:227 */
6644 REGB13 = TAG_Bool((REGB7)==(REGB13));
6645 /* parser/lexer.nit:1473 */
6646 REGB14 = REGB13;
6647 }
6648 if (UNTAG_Bool(REGB14)) {
6649 /* parser/lexer.nit:1474 */
6650 fra.me.REG[4] = NEW_TKwwhile_parser___lexer___TKwwhile___init_tk(fra.me.REG[2]);
6651 fra.me.REG[3] = fra.me.REG[4];
6652 goto label3;
6653 }
6654 /* parser/lexer.nit:1476 */
6655 REGB14 = TAG_Int(29);
6656 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6657 if (UNTAG_Bool(REGB13)) {
6658 } else {
6659 /* ../lib/standard/kernel.nit:227 */
6660 REGB14 = TAG_Bool((REGB7)==(REGB14));
6661 /* parser/lexer.nit:1476 */
6662 REGB13 = REGB14;
6663 }
6664 if (UNTAG_Bool(REGB13)) {
6665 /* parser/lexer.nit:1477 */
6666 fra.me.REG[4] = NEW_TKwloop_parser___lexer___TKwloop___init_tk(fra.me.REG[2]);
6667 fra.me.REG[3] = fra.me.REG[4];
6668 goto label3;
6669 }
6670 /* parser/lexer.nit:1479 */
6671 REGB13 = TAG_Int(30);
6672 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6673 if (UNTAG_Bool(REGB14)) {
6674 } else {
6675 /* ../lib/standard/kernel.nit:227 */
6676 REGB13 = TAG_Bool((REGB7)==(REGB13));
6677 /* parser/lexer.nit:1479 */
6678 REGB14 = REGB13;
6679 }
6680 if (UNTAG_Bool(REGB14)) {
6681 /* parser/lexer.nit:1480 */
6682 fra.me.REG[4] = NEW_TKwfor_parser___lexer___TKwfor___init_tk(fra.me.REG[2]);
6683 fra.me.REG[3] = fra.me.REG[4];
6684 goto label3;
6685 }
6686 /* parser/lexer.nit:1482 */
6687 REGB14 = TAG_Int(31);
6688 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6689 if (UNTAG_Bool(REGB13)) {
6690 } else {
6691 /* ../lib/standard/kernel.nit:227 */
6692 REGB14 = TAG_Bool((REGB7)==(REGB14));
6693 /* parser/lexer.nit:1482 */
6694 REGB13 = REGB14;
6695 }
6696 if (UNTAG_Bool(REGB13)) {
6697 /* parser/lexer.nit:1483 */
6698 fra.me.REG[4] = NEW_TKwin_parser___lexer___TKwin___init_tk(fra.me.REG[2]);
6699 fra.me.REG[3] = fra.me.REG[4];
6700 goto label3;
6701 }
6702 /* parser/lexer.nit:1485 */
6703 REGB13 = TAG_Int(32);
6704 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6705 if (UNTAG_Bool(REGB14)) {
6706 } else {
6707 /* ../lib/standard/kernel.nit:227 */
6708 REGB13 = TAG_Bool((REGB7)==(REGB13));
6709 /* parser/lexer.nit:1485 */
6710 REGB14 = REGB13;
6711 }
6712 if (UNTAG_Bool(REGB14)) {
6713 /* parser/lexer.nit:1486 */
6714 fra.me.REG[4] = NEW_TKwand_parser___lexer___TKwand___init_tk(fra.me.REG[2]);
6715 fra.me.REG[3] = fra.me.REG[4];
6716 goto label3;
6717 }
6718 /* parser/lexer.nit:1488 */
6719 REGB14 = TAG_Int(33);
6720 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6721 if (UNTAG_Bool(REGB13)) {
6722 } else {
6723 /* ../lib/standard/kernel.nit:227 */
6724 REGB14 = TAG_Bool((REGB7)==(REGB14));
6725 /* parser/lexer.nit:1488 */
6726 REGB13 = REGB14;
6727 }
6728 if (UNTAG_Bool(REGB13)) {
6729 /* parser/lexer.nit:1489 */
6730 fra.me.REG[4] = NEW_TKwor_parser___lexer___TKwor___init_tk(fra.me.REG[2]);
6731 fra.me.REG[3] = fra.me.REG[4];
6732 goto label3;
6733 }
6734 /* parser/lexer.nit:1491 */
6735 REGB13 = TAG_Int(34);
6736 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6737 if (UNTAG_Bool(REGB14)) {
6738 } else {
6739 /* ../lib/standard/kernel.nit:227 */
6740 REGB13 = TAG_Bool((REGB7)==(REGB13));
6741 /* parser/lexer.nit:1491 */
6742 REGB14 = REGB13;
6743 }
6744 if (UNTAG_Bool(REGB14)) {
6745 /* parser/lexer.nit:1492 */
6746 fra.me.REG[4] = NEW_TKwnot_parser___lexer___TKwnot___init_tk(fra.me.REG[2]);
6747 fra.me.REG[3] = fra.me.REG[4];
6748 goto label3;
6749 }
6750 /* parser/lexer.nit:1494 */
6751 REGB14 = TAG_Int(35);
6752 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6753 if (UNTAG_Bool(REGB13)) {
6754 } else {
6755 /* ../lib/standard/kernel.nit:227 */
6756 REGB14 = TAG_Bool((REGB7)==(REGB14));
6757 /* parser/lexer.nit:1494 */
6758 REGB13 = REGB14;
6759 }
6760 if (UNTAG_Bool(REGB13)) {
6761 /* parser/lexer.nit:1495 */
6762 fra.me.REG[4] = NEW_TKwreturn_parser___lexer___TKwreturn___init_tk(fra.me.REG[2]);
6763 fra.me.REG[3] = fra.me.REG[4];
6764 goto label3;
6765 }
6766 /* parser/lexer.nit:1497 */
6767 REGB13 = TAG_Int(36);
6768 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6769 if (UNTAG_Bool(REGB14)) {
6770 } else {
6771 /* ../lib/standard/kernel.nit:227 */
6772 REGB13 = TAG_Bool((REGB7)==(REGB13));
6773 /* parser/lexer.nit:1497 */
6774 REGB14 = REGB13;
6775 }
6776 if (UNTAG_Bool(REGB14)) {
6777 /* parser/lexer.nit:1498 */
6778 fra.me.REG[4] = NEW_TKwcontinue_parser___lexer___TKwcontinue___init_tk(fra.me.REG[2]);
6779 fra.me.REG[3] = fra.me.REG[4];
6780 goto label3;
6781 }
6782 /* parser/lexer.nit:1500 */
6783 REGB14 = TAG_Int(37);
6784 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6785 if (UNTAG_Bool(REGB13)) {
6786 } else {
6787 /* ../lib/standard/kernel.nit:227 */
6788 REGB14 = TAG_Bool((REGB7)==(REGB14));
6789 /* parser/lexer.nit:1500 */
6790 REGB13 = REGB14;
6791 }
6792 if (UNTAG_Bool(REGB13)) {
6793 /* parser/lexer.nit:1501 */
6794 fra.me.REG[4] = NEW_TKwbreak_parser___lexer___TKwbreak___init_tk(fra.me.REG[2]);
6795 fra.me.REG[3] = fra.me.REG[4];
6796 goto label3;
6797 }
6798 /* parser/lexer.nit:1503 */
6799 REGB13 = TAG_Int(38);
6800 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6801 if (UNTAG_Bool(REGB14)) {
6802 } else {
6803 /* ../lib/standard/kernel.nit:227 */
6804 REGB13 = TAG_Bool((REGB7)==(REGB13));
6805 /* parser/lexer.nit:1503 */
6806 REGB14 = REGB13;
6807 }
6808 if (UNTAG_Bool(REGB14)) {
6809 /* parser/lexer.nit:1504 */
6810 fra.me.REG[4] = NEW_TKwabort_parser___lexer___TKwabort___init_tk(fra.me.REG[2]);
6811 fra.me.REG[3] = fra.me.REG[4];
6812 goto label3;
6813 }
6814 /* parser/lexer.nit:1506 */
6815 REGB14 = TAG_Int(39);
6816 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6817 if (UNTAG_Bool(REGB13)) {
6818 } else {
6819 /* ../lib/standard/kernel.nit:227 */
6820 REGB14 = TAG_Bool((REGB7)==(REGB14));
6821 /* parser/lexer.nit:1506 */
6822 REGB13 = REGB14;
6823 }
6824 if (UNTAG_Bool(REGB13)) {
6825 /* parser/lexer.nit:1507 */
6826 fra.me.REG[4] = NEW_TKwassert_parser___lexer___TKwassert___init_tk(fra.me.REG[2]);
6827 fra.me.REG[3] = fra.me.REG[4];
6828 goto label3;
6829 }
6830 /* parser/lexer.nit:1509 */
6831 REGB13 = TAG_Int(40);
6832 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6833 if (UNTAG_Bool(REGB14)) {
6834 } else {
6835 /* ../lib/standard/kernel.nit:227 */
6836 REGB13 = TAG_Bool((REGB7)==(REGB13));
6837 /* parser/lexer.nit:1509 */
6838 REGB14 = REGB13;
6839 }
6840 if (UNTAG_Bool(REGB14)) {
6841 /* parser/lexer.nit:1510 */
6842 fra.me.REG[4] = NEW_TKwnew_parser___lexer___TKwnew___init_tk(fra.me.REG[2]);
6843 fra.me.REG[3] = fra.me.REG[4];
6844 goto label3;
6845 }
6846 /* parser/lexer.nit:1512 */
6847 REGB14 = TAG_Int(41);
6848 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6849 if (UNTAG_Bool(REGB13)) {
6850 } else {
6851 /* ../lib/standard/kernel.nit:227 */
6852 REGB14 = TAG_Bool((REGB7)==(REGB14));
6853 /* parser/lexer.nit:1512 */
6854 REGB13 = REGB14;
6855 }
6856 if (UNTAG_Bool(REGB13)) {
6857 /* parser/lexer.nit:1513 */
6858 fra.me.REG[4] = NEW_TKwisa_parser___lexer___TKwisa___init_tk(fra.me.REG[2]);
6859 fra.me.REG[3] = fra.me.REG[4];
6860 goto label3;
6861 }
6862 /* parser/lexer.nit:1515 */
6863 REGB13 = TAG_Int(42);
6864 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6865 if (UNTAG_Bool(REGB14)) {
6866 } else {
6867 /* ../lib/standard/kernel.nit:227 */
6868 REGB13 = TAG_Bool((REGB7)==(REGB13));
6869 /* parser/lexer.nit:1515 */
6870 REGB14 = REGB13;
6871 }
6872 if (UNTAG_Bool(REGB14)) {
6873 /* parser/lexer.nit:1516 */
6874 fra.me.REG[4] = NEW_TKwonce_parser___lexer___TKwonce___init_tk(fra.me.REG[2]);
6875 fra.me.REG[3] = fra.me.REG[4];
6876 goto label3;
6877 }
6878 /* parser/lexer.nit:1518 */
6879 REGB14 = TAG_Int(43);
6880 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6881 if (UNTAG_Bool(REGB13)) {
6882 } else {
6883 /* ../lib/standard/kernel.nit:227 */
6884 REGB14 = TAG_Bool((REGB7)==(REGB14));
6885 /* parser/lexer.nit:1518 */
6886 REGB13 = REGB14;
6887 }
6888 if (UNTAG_Bool(REGB13)) {
6889 /* parser/lexer.nit:1519 */
6890 fra.me.REG[4] = NEW_TKwsuper_parser___lexer___TKwsuper___init_tk(fra.me.REG[2]);
6891 fra.me.REG[3] = fra.me.REG[4];
6892 goto label3;
6893 }
6894 /* parser/lexer.nit:1521 */
6895 REGB13 = TAG_Int(44);
6896 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6897 if (UNTAG_Bool(REGB14)) {
6898 } else {
6899 /* ../lib/standard/kernel.nit:227 */
6900 REGB13 = TAG_Bool((REGB7)==(REGB13));
6901 /* parser/lexer.nit:1521 */
6902 REGB14 = REGB13;
6903 }
6904 if (UNTAG_Bool(REGB14)) {
6905 /* parser/lexer.nit:1522 */
6906 fra.me.REG[4] = NEW_TKwself_parser___lexer___TKwself___init_tk(fra.me.REG[2]);
6907 fra.me.REG[3] = fra.me.REG[4];
6908 goto label3;
6909 }
6910 /* parser/lexer.nit:1524 */
6911 REGB14 = TAG_Int(45);
6912 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6913 if (UNTAG_Bool(REGB13)) {
6914 } else {
6915 /* ../lib/standard/kernel.nit:227 */
6916 REGB14 = TAG_Bool((REGB7)==(REGB14));
6917 /* parser/lexer.nit:1524 */
6918 REGB13 = REGB14;
6919 }
6920 if (UNTAG_Bool(REGB13)) {
6921 /* parser/lexer.nit:1525 */
6922 fra.me.REG[4] = NEW_TKwtrue_parser___lexer___TKwtrue___init_tk(fra.me.REG[2]);
6923 fra.me.REG[3] = fra.me.REG[4];
6924 goto label3;
6925 }
6926 /* parser/lexer.nit:1527 */
6927 REGB13 = TAG_Int(46);
6928 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6929 if (UNTAG_Bool(REGB14)) {
6930 } else {
6931 /* ../lib/standard/kernel.nit:227 */
6932 REGB13 = TAG_Bool((REGB7)==(REGB13));
6933 /* parser/lexer.nit:1527 */
6934 REGB14 = REGB13;
6935 }
6936 if (UNTAG_Bool(REGB14)) {
6937 /* parser/lexer.nit:1528 */
6938 fra.me.REG[4] = NEW_TKwfalse_parser___lexer___TKwfalse___init_tk(fra.me.REG[2]);
6939 fra.me.REG[3] = fra.me.REG[4];
6940 goto label3;
6941 }
6942 /* parser/lexer.nit:1530 */
6943 REGB14 = TAG_Int(47);
6944 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6945 if (UNTAG_Bool(REGB13)) {
6946 } else {
6947 /* ../lib/standard/kernel.nit:227 */
6948 REGB14 = TAG_Bool((REGB7)==(REGB14));
6949 /* parser/lexer.nit:1530 */
6950 REGB13 = REGB14;
6951 }
6952 if (UNTAG_Bool(REGB13)) {
6953 /* parser/lexer.nit:1531 */
6954 fra.me.REG[4] = NEW_TKwnull_parser___lexer___TKwnull___init_tk(fra.me.REG[2]);
6955 fra.me.REG[3] = fra.me.REG[4];
6956 goto label3;
6957 }
6958 /* parser/lexer.nit:1533 */
6959 REGB13 = TAG_Int(48);
6960 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6961 if (UNTAG_Bool(REGB14)) {
6962 } else {
6963 /* ../lib/standard/kernel.nit:227 */
6964 REGB13 = TAG_Bool((REGB7)==(REGB13));
6965 /* parser/lexer.nit:1533 */
6966 REGB14 = REGB13;
6967 }
6968 if (UNTAG_Bool(REGB14)) {
6969 /* parser/lexer.nit:1534 */
6970 fra.me.REG[4] = NEW_TKwas_parser___lexer___TKwas___init_tk(fra.me.REG[2]);
6971 fra.me.REG[3] = fra.me.REG[4];
6972 goto label3;
6973 }
6974 /* parser/lexer.nit:1536 */
6975 REGB14 = TAG_Int(49);
6976 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
6977 if (UNTAG_Bool(REGB13)) {
6978 } else {
6979 /* ../lib/standard/kernel.nit:227 */
6980 REGB14 = TAG_Bool((REGB7)==(REGB14));
6981 /* parser/lexer.nit:1536 */
6982 REGB13 = REGB14;
6983 }
6984 if (UNTAG_Bool(REGB13)) {
6985 /* parser/lexer.nit:1537 */
6986 fra.me.REG[4] = NEW_TKwnullable_parser___lexer___TKwnullable___init_tk(fra.me.REG[2]);
6987 fra.me.REG[3] = fra.me.REG[4];
6988 goto label3;
6989 }
6990 /* parser/lexer.nit:1539 */
6991 REGB13 = TAG_Int(50);
6992 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
6993 if (UNTAG_Bool(REGB14)) {
6994 } else {
6995 /* ../lib/standard/kernel.nit:227 */
6996 REGB13 = TAG_Bool((REGB7)==(REGB13));
6997 /* parser/lexer.nit:1539 */
6998 REGB14 = REGB13;
6999 }
7000 if (UNTAG_Bool(REGB14)) {
7001 /* parser/lexer.nit:1540 */
7002 fra.me.REG[4] = NEW_TKwisset_parser___lexer___TKwisset___init_tk(fra.me.REG[2]);
7003 fra.me.REG[3] = fra.me.REG[4];
7004 goto label3;
7005 }
7006 /* parser/lexer.nit:1542 */
7007 REGB14 = TAG_Int(51);
7008 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7009 if (UNTAG_Bool(REGB13)) {
7010 } else {
7011 /* ../lib/standard/kernel.nit:227 */
7012 REGB14 = TAG_Bool((REGB7)==(REGB14));
7013 /* parser/lexer.nit:1542 */
7014 REGB13 = REGB14;
7015 }
7016 if (UNTAG_Bool(REGB13)) {
7017 /* parser/lexer.nit:1543 */
7018 fra.me.REG[4] = NEW_TKwlabel_parser___lexer___TKwlabel___init_tk(fra.me.REG[2]);
7019 fra.me.REG[3] = fra.me.REG[4];
7020 goto label3;
7021 }
7022 /* parser/lexer.nit:1545 */
7023 REGB13 = TAG_Int(52);
7024 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7025 if (UNTAG_Bool(REGB14)) {
7026 } else {
7027 /* ../lib/standard/kernel.nit:227 */
7028 REGB13 = TAG_Bool((REGB7)==(REGB13));
7029 /* parser/lexer.nit:1545 */
7030 REGB14 = REGB13;
7031 }
7032 if (UNTAG_Bool(REGB14)) {
7033 /* parser/lexer.nit:1546 */
7034 fra.me.REG[4] = NEW_TKwdebug_parser___lexer___TKwdebug___init_tk(fra.me.REG[2]);
7035 fra.me.REG[3] = fra.me.REG[4];
7036 goto label3;
7037 }
7038 /* parser/lexer.nit:1548 */
7039 REGB14 = TAG_Int(53);
7040 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7041 if (UNTAG_Bool(REGB13)) {
7042 } else {
7043 /* ../lib/standard/kernel.nit:227 */
7044 REGB14 = TAG_Bool((REGB7)==(REGB14));
7045 /* parser/lexer.nit:1548 */
7046 REGB13 = REGB14;
7047 }
7048 if (UNTAG_Bool(REGB13)) {
7049 /* parser/lexer.nit:1549 */
7050 fra.me.REG[4] = NEW_TOpar_parser___lexer___TOpar___init_tk(fra.me.REG[2]);
7051 fra.me.REG[3] = fra.me.REG[4];
7052 goto label3;
7053 }
7054 /* parser/lexer.nit:1551 */
7055 REGB13 = TAG_Int(54);
7056 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7057 if (UNTAG_Bool(REGB14)) {
7058 } else {
7059 /* ../lib/standard/kernel.nit:227 */
7060 REGB13 = TAG_Bool((REGB7)==(REGB13));
7061 /* parser/lexer.nit:1551 */
7062 REGB14 = REGB13;
7063 }
7064 if (UNTAG_Bool(REGB14)) {
7065 /* parser/lexer.nit:1552 */
7066 fra.me.REG[4] = NEW_TCpar_parser___lexer___TCpar___init_tk(fra.me.REG[2]);
7067 fra.me.REG[3] = fra.me.REG[4];
7068 goto label3;
7069 }
7070 /* parser/lexer.nit:1554 */
7071 REGB14 = TAG_Int(55);
7072 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7073 if (UNTAG_Bool(REGB13)) {
7074 } else {
7075 /* ../lib/standard/kernel.nit:227 */
7076 REGB14 = TAG_Bool((REGB7)==(REGB14));
7077 /* parser/lexer.nit:1554 */
7078 REGB13 = REGB14;
7079 }
7080 if (UNTAG_Bool(REGB13)) {
7081 /* parser/lexer.nit:1555 */
7082 fra.me.REG[4] = NEW_TObra_parser___lexer___TObra___init_tk(fra.me.REG[2]);
7083 fra.me.REG[3] = fra.me.REG[4];
7084 goto label3;
7085 }
7086 /* parser/lexer.nit:1557 */
7087 REGB13 = TAG_Int(56);
7088 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7089 if (UNTAG_Bool(REGB14)) {
7090 } else {
7091 /* ../lib/standard/kernel.nit:227 */
7092 REGB13 = TAG_Bool((REGB7)==(REGB13));
7093 /* parser/lexer.nit:1557 */
7094 REGB14 = REGB13;
7095 }
7096 if (UNTAG_Bool(REGB14)) {
7097 /* parser/lexer.nit:1558 */
7098 fra.me.REG[4] = NEW_TCbra_parser___lexer___TCbra___init_tk(fra.me.REG[2]);
7099 fra.me.REG[3] = fra.me.REG[4];
7100 goto label3;
7101 }
7102 /* parser/lexer.nit:1560 */
7103 REGB14 = TAG_Int(57);
7104 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7105 if (UNTAG_Bool(REGB13)) {
7106 } else {
7107 /* ../lib/standard/kernel.nit:227 */
7108 REGB14 = TAG_Bool((REGB7)==(REGB14));
7109 /* parser/lexer.nit:1560 */
7110 REGB13 = REGB14;
7111 }
7112 if (UNTAG_Bool(REGB13)) {
7113 /* parser/lexer.nit:1561 */
7114 fra.me.REG[4] = NEW_TComma_parser___lexer___TComma___init_tk(fra.me.REG[2]);
7115 fra.me.REG[3] = fra.me.REG[4];
7116 goto label3;
7117 }
7118 /* parser/lexer.nit:1563 */
7119 REGB13 = TAG_Int(58);
7120 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7121 if (UNTAG_Bool(REGB14)) {
7122 } else {
7123 /* ../lib/standard/kernel.nit:227 */
7124 REGB13 = TAG_Bool((REGB7)==(REGB13));
7125 /* parser/lexer.nit:1563 */
7126 REGB14 = REGB13;
7127 }
7128 if (UNTAG_Bool(REGB14)) {
7129 /* parser/lexer.nit:1564 */
7130 fra.me.REG[4] = NEW_TColumn_parser___lexer___TColumn___init_tk(fra.me.REG[2]);
7131 fra.me.REG[3] = fra.me.REG[4];
7132 goto label3;
7133 }
7134 /* parser/lexer.nit:1566 */
7135 REGB14 = TAG_Int(59);
7136 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7137 if (UNTAG_Bool(REGB13)) {
7138 } else {
7139 /* ../lib/standard/kernel.nit:227 */
7140 REGB14 = TAG_Bool((REGB7)==(REGB14));
7141 /* parser/lexer.nit:1566 */
7142 REGB13 = REGB14;
7143 }
7144 if (UNTAG_Bool(REGB13)) {
7145 /* parser/lexer.nit:1567 */
7146 fra.me.REG[4] = NEW_TQuad_parser___lexer___TQuad___init_tk(fra.me.REG[2]);
7147 fra.me.REG[3] = fra.me.REG[4];
7148 goto label3;
7149 }
7150 /* parser/lexer.nit:1569 */
7151 REGB13 = TAG_Int(60);
7152 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7153 if (UNTAG_Bool(REGB14)) {
7154 } else {
7155 /* ../lib/standard/kernel.nit:227 */
7156 REGB13 = TAG_Bool((REGB7)==(REGB13));
7157 /* parser/lexer.nit:1569 */
7158 REGB14 = REGB13;
7159 }
7160 if (UNTAG_Bool(REGB14)) {
7161 /* parser/lexer.nit:1570 */
7162 fra.me.REG[4] = NEW_TAssign_parser___lexer___TAssign___init_tk(fra.me.REG[2]);
7163 fra.me.REG[3] = fra.me.REG[4];
7164 goto label3;
7165 }
7166 /* parser/lexer.nit:1572 */
7167 REGB14 = TAG_Int(61);
7168 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7169 if (UNTAG_Bool(REGB13)) {
7170 } else {
7171 /* ../lib/standard/kernel.nit:227 */
7172 REGB14 = TAG_Bool((REGB7)==(REGB14));
7173 /* parser/lexer.nit:1572 */
7174 REGB13 = REGB14;
7175 }
7176 if (UNTAG_Bool(REGB13)) {
7177 /* parser/lexer.nit:1573 */
7178 fra.me.REG[4] = NEW_TPluseq_parser___lexer___TPluseq___init_tk(fra.me.REG[2]);
7179 fra.me.REG[3] = fra.me.REG[4];
7180 goto label3;
7181 }
7182 /* parser/lexer.nit:1575 */
7183 REGB13 = TAG_Int(62);
7184 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7185 if (UNTAG_Bool(REGB14)) {
7186 } else {
7187 /* ../lib/standard/kernel.nit:227 */
7188 REGB13 = TAG_Bool((REGB7)==(REGB13));
7189 /* parser/lexer.nit:1575 */
7190 REGB14 = REGB13;
7191 }
7192 if (UNTAG_Bool(REGB14)) {
7193 /* parser/lexer.nit:1576 */
7194 fra.me.REG[4] = NEW_TMinuseq_parser___lexer___TMinuseq___init_tk(fra.me.REG[2]);
7195 fra.me.REG[3] = fra.me.REG[4];
7196 goto label3;
7197 }
7198 /* parser/lexer.nit:1578 */
7199 REGB14 = TAG_Int(63);
7200 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7201 if (UNTAG_Bool(REGB13)) {
7202 } else {
7203 /* ../lib/standard/kernel.nit:227 */
7204 REGB14 = TAG_Bool((REGB7)==(REGB14));
7205 /* parser/lexer.nit:1578 */
7206 REGB13 = REGB14;
7207 }
7208 if (UNTAG_Bool(REGB13)) {
7209 /* parser/lexer.nit:1579 */
7210 fra.me.REG[4] = NEW_TDotdotdot_parser___lexer___TDotdotdot___init_tk(fra.me.REG[2]);
7211 fra.me.REG[3] = fra.me.REG[4];
7212 goto label3;
7213 }
7214 /* parser/lexer.nit:1581 */
7215 REGB13 = TAG_Int(64);
7216 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7217 if (UNTAG_Bool(REGB14)) {
7218 } else {
7219 /* ../lib/standard/kernel.nit:227 */
7220 REGB13 = TAG_Bool((REGB7)==(REGB13));
7221 /* parser/lexer.nit:1581 */
7222 REGB14 = REGB13;
7223 }
7224 if (UNTAG_Bool(REGB14)) {
7225 /* parser/lexer.nit:1582 */
7226 fra.me.REG[4] = NEW_TDotdot_parser___lexer___TDotdot___init_tk(fra.me.REG[2]);
7227 fra.me.REG[3] = fra.me.REG[4];
7228 goto label3;
7229 }
7230 /* parser/lexer.nit:1584 */
7231 REGB14 = TAG_Int(65);
7232 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7233 if (UNTAG_Bool(REGB13)) {
7234 } else {
7235 /* ../lib/standard/kernel.nit:227 */
7236 REGB14 = TAG_Bool((REGB7)==(REGB14));
7237 /* parser/lexer.nit:1584 */
7238 REGB13 = REGB14;
7239 }
7240 if (UNTAG_Bool(REGB13)) {
7241 /* parser/lexer.nit:1585 */
7242 fra.me.REG[4] = NEW_TDot_parser___lexer___TDot___init_tk(fra.me.REG[2]);
7243 fra.me.REG[3] = fra.me.REG[4];
7244 goto label3;
7245 }
7246 /* parser/lexer.nit:1587 */
7247 REGB13 = TAG_Int(66);
7248 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7249 if (UNTAG_Bool(REGB14)) {
7250 } else {
7251 /* ../lib/standard/kernel.nit:227 */
7252 REGB13 = TAG_Bool((REGB7)==(REGB13));
7253 /* parser/lexer.nit:1587 */
7254 REGB14 = REGB13;
7255 }
7256 if (UNTAG_Bool(REGB14)) {
7257 /* parser/lexer.nit:1588 */
7258 fra.me.REG[4] = NEW_TPlus_parser___lexer___TPlus___init_tk(fra.me.REG[2]);
7259 fra.me.REG[3] = fra.me.REG[4];
7260 goto label3;
7261 }
7262 /* parser/lexer.nit:1590 */
7263 REGB14 = TAG_Int(67);
7264 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7265 if (UNTAG_Bool(REGB13)) {
7266 } else {
7267 /* ../lib/standard/kernel.nit:227 */
7268 REGB14 = TAG_Bool((REGB7)==(REGB14));
7269 /* parser/lexer.nit:1590 */
7270 REGB13 = REGB14;
7271 }
7272 if (UNTAG_Bool(REGB13)) {
7273 /* parser/lexer.nit:1591 */
7274 fra.me.REG[4] = NEW_TMinus_parser___lexer___TMinus___init_tk(fra.me.REG[2]);
7275 fra.me.REG[3] = fra.me.REG[4];
7276 goto label3;
7277 }
7278 /* parser/lexer.nit:1593 */
7279 REGB13 = TAG_Int(68);
7280 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7281 if (UNTAG_Bool(REGB14)) {
7282 } else {
7283 /* ../lib/standard/kernel.nit:227 */
7284 REGB13 = TAG_Bool((REGB7)==(REGB13));
7285 /* parser/lexer.nit:1593 */
7286 REGB14 = REGB13;
7287 }
7288 if (UNTAG_Bool(REGB14)) {
7289 /* parser/lexer.nit:1594 */
7290 fra.me.REG[4] = NEW_TStar_parser___lexer___TStar___init_tk(fra.me.REG[2]);
7291 fra.me.REG[3] = fra.me.REG[4];
7292 goto label3;
7293 }
7294 /* parser/lexer.nit:1596 */
7295 REGB14 = TAG_Int(69);
7296 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7297 if (UNTAG_Bool(REGB13)) {
7298 } else {
7299 /* ../lib/standard/kernel.nit:227 */
7300 REGB14 = TAG_Bool((REGB7)==(REGB14));
7301 /* parser/lexer.nit:1596 */
7302 REGB13 = REGB14;
7303 }
7304 if (UNTAG_Bool(REGB13)) {
7305 /* parser/lexer.nit:1597 */
7306 fra.me.REG[4] = NEW_TSlash_parser___lexer___TSlash___init_tk(fra.me.REG[2]);
7307 fra.me.REG[3] = fra.me.REG[4];
7308 goto label3;
7309 }
7310 /* parser/lexer.nit:1599 */
7311 REGB13 = TAG_Int(70);
7312 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7313 if (UNTAG_Bool(REGB14)) {
7314 } else {
7315 /* ../lib/standard/kernel.nit:227 */
7316 REGB13 = TAG_Bool((REGB7)==(REGB13));
7317 /* parser/lexer.nit:1599 */
7318 REGB14 = REGB13;
7319 }
7320 if (UNTAG_Bool(REGB14)) {
7321 /* parser/lexer.nit:1600 */
7322 fra.me.REG[4] = NEW_TPercent_parser___lexer___TPercent___init_tk(fra.me.REG[2]);
7323 fra.me.REG[3] = fra.me.REG[4];
7324 goto label3;
7325 }
7326 /* parser/lexer.nit:1602 */
7327 REGB14 = TAG_Int(71);
7328 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7329 if (UNTAG_Bool(REGB13)) {
7330 } else {
7331 /* ../lib/standard/kernel.nit:227 */
7332 REGB14 = TAG_Bool((REGB7)==(REGB14));
7333 /* parser/lexer.nit:1602 */
7334 REGB13 = REGB14;
7335 }
7336 if (UNTAG_Bool(REGB13)) {
7337 /* parser/lexer.nit:1603 */
7338 fra.me.REG[4] = NEW_TEq_parser___lexer___TEq___init_tk(fra.me.REG[2]);
7339 fra.me.REG[3] = fra.me.REG[4];
7340 goto label3;
7341 }
7342 /* parser/lexer.nit:1605 */
7343 REGB13 = TAG_Int(72);
7344 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7345 if (UNTAG_Bool(REGB14)) {
7346 } else {
7347 /* ../lib/standard/kernel.nit:227 */
7348 REGB13 = TAG_Bool((REGB7)==(REGB13));
7349 /* parser/lexer.nit:1605 */
7350 REGB14 = REGB13;
7351 }
7352 if (UNTAG_Bool(REGB14)) {
7353 /* parser/lexer.nit:1606 */
7354 fra.me.REG[4] = NEW_TNe_parser___lexer___TNe___init_tk(fra.me.REG[2]);
7355 fra.me.REG[3] = fra.me.REG[4];
7356 goto label3;
7357 }
7358 /* parser/lexer.nit:1608 */
7359 REGB14 = TAG_Int(73);
7360 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7361 if (UNTAG_Bool(REGB13)) {
7362 } else {
7363 /* ../lib/standard/kernel.nit:227 */
7364 REGB14 = TAG_Bool((REGB7)==(REGB14));
7365 /* parser/lexer.nit:1608 */
7366 REGB13 = REGB14;
7367 }
7368 if (UNTAG_Bool(REGB13)) {
7369 /* parser/lexer.nit:1609 */
7370 fra.me.REG[4] = NEW_TLt_parser___lexer___TLt___init_tk(fra.me.REG[2]);
7371 fra.me.REG[3] = fra.me.REG[4];
7372 goto label3;
7373 }
7374 /* parser/lexer.nit:1611 */
7375 REGB13 = TAG_Int(74);
7376 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7377 if (UNTAG_Bool(REGB14)) {
7378 } else {
7379 /* ../lib/standard/kernel.nit:227 */
7380 REGB13 = TAG_Bool((REGB7)==(REGB13));
7381 /* parser/lexer.nit:1611 */
7382 REGB14 = REGB13;
7383 }
7384 if (UNTAG_Bool(REGB14)) {
7385 /* parser/lexer.nit:1612 */
7386 fra.me.REG[4] = NEW_TLe_parser___lexer___TLe___init_tk(fra.me.REG[2]);
7387 fra.me.REG[3] = fra.me.REG[4];
7388 goto label3;
7389 }
7390 /* parser/lexer.nit:1614 */
7391 REGB14 = TAG_Int(75);
7392 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7393 if (UNTAG_Bool(REGB13)) {
7394 } else {
7395 /* ../lib/standard/kernel.nit:227 */
7396 REGB14 = TAG_Bool((REGB7)==(REGB14));
7397 /* parser/lexer.nit:1614 */
7398 REGB13 = REGB14;
7399 }
7400 if (UNTAG_Bool(REGB13)) {
7401 /* parser/lexer.nit:1615 */
7402 fra.me.REG[4] = NEW_TLl_parser___lexer___TLl___init_tk(fra.me.REG[2]);
7403 fra.me.REG[3] = fra.me.REG[4];
7404 goto label3;
7405 }
7406 /* parser/lexer.nit:1617 */
7407 REGB13 = TAG_Int(76);
7408 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7409 if (UNTAG_Bool(REGB14)) {
7410 } else {
7411 /* ../lib/standard/kernel.nit:227 */
7412 REGB13 = TAG_Bool((REGB7)==(REGB13));
7413 /* parser/lexer.nit:1617 */
7414 REGB14 = REGB13;
7415 }
7416 if (UNTAG_Bool(REGB14)) {
7417 /* parser/lexer.nit:1618 */
7418 fra.me.REG[4] = NEW_TGt_parser___lexer___TGt___init_tk(fra.me.REG[2]);
7419 fra.me.REG[3] = fra.me.REG[4];
7420 goto label3;
7421 }
7422 /* parser/lexer.nit:1620 */
7423 REGB14 = TAG_Int(77);
7424 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7425 if (UNTAG_Bool(REGB13)) {
7426 } else {
7427 /* ../lib/standard/kernel.nit:227 */
7428 REGB14 = TAG_Bool((REGB7)==(REGB14));
7429 /* parser/lexer.nit:1620 */
7430 REGB13 = REGB14;
7431 }
7432 if (UNTAG_Bool(REGB13)) {
7433 /* parser/lexer.nit:1621 */
7434 fra.me.REG[4] = NEW_TGe_parser___lexer___TGe___init_tk(fra.me.REG[2]);
7435 fra.me.REG[3] = fra.me.REG[4];
7436 goto label3;
7437 }
7438 /* parser/lexer.nit:1623 */
7439 REGB13 = TAG_Int(78);
7440 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7441 if (UNTAG_Bool(REGB14)) {
7442 } else {
7443 /* ../lib/standard/kernel.nit:227 */
7444 REGB13 = TAG_Bool((REGB7)==(REGB13));
7445 /* parser/lexer.nit:1623 */
7446 REGB14 = REGB13;
7447 }
7448 if (UNTAG_Bool(REGB14)) {
7449 /* parser/lexer.nit:1624 */
7450 fra.me.REG[4] = NEW_TGg_parser___lexer___TGg___init_tk(fra.me.REG[2]);
7451 fra.me.REG[3] = fra.me.REG[4];
7452 goto label3;
7453 }
7454 /* parser/lexer.nit:1626 */
7455 REGB14 = TAG_Int(79);
7456 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7457 if (UNTAG_Bool(REGB13)) {
7458 } else {
7459 /* ../lib/standard/kernel.nit:227 */
7460 REGB14 = TAG_Bool((REGB7)==(REGB14));
7461 /* parser/lexer.nit:1626 */
7462 REGB13 = REGB14;
7463 }
7464 if (UNTAG_Bool(REGB13)) {
7465 /* parser/lexer.nit:1627 */
7466 fra.me.REG[4] = NEW_TStarship_parser___lexer___TStarship___init_tk(fra.me.REG[2]);
7467 fra.me.REG[3] = fra.me.REG[4];
7468 goto label3;
7469 }
7470 /* parser/lexer.nit:1629 */
7471 REGB13 = TAG_Int(80);
7472 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7473 if (UNTAG_Bool(REGB14)) {
7474 } else {
7475 /* ../lib/standard/kernel.nit:227 */
7476 REGB13 = TAG_Bool((REGB7)==(REGB13));
7477 /* parser/lexer.nit:1629 */
7478 REGB14 = REGB13;
7479 }
7480 if (UNTAG_Bool(REGB14)) {
7481 /* parser/lexer.nit:1630 */
7482 fra.me.REG[4] = NEW_TBang_parser___lexer___TBang___init_tk(fra.me.REG[2]);
7483 fra.me.REG[3] = fra.me.REG[4];
7484 goto label3;
7485 }
7486 /* parser/lexer.nit:1632 */
7487 REGB14 = TAG_Int(81);
7488 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7489 if (UNTAG_Bool(REGB13)) {
7490 } else {
7491 /* ../lib/standard/kernel.nit:227 */
7492 REGB14 = TAG_Bool((REGB7)==(REGB14));
7493 /* parser/lexer.nit:1632 */
7494 REGB13 = REGB14;
7495 }
7496 if (UNTAG_Bool(REGB13)) {
7497 /* parser/lexer.nit:1633 */
7498 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7499 /* parser/lexer.nit:1634 */
7500 fra.me.REG[4] = NEW_TClassid_parser___lexer___TClassid___init_tk(fra.me.REG[4], fra.me.REG[2]);
7501 fra.me.REG[3] = fra.me.REG[4];
7502 goto label3;
7503 }
7504 /* parser/lexer.nit:1636 */
7505 REGB13 = TAG_Int(82);
7506 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7507 if (UNTAG_Bool(REGB14)) {
7508 } else {
7509 /* ../lib/standard/kernel.nit:227 */
7510 REGB13 = TAG_Bool((REGB7)==(REGB13));
7511 /* parser/lexer.nit:1636 */
7512 REGB14 = REGB13;
7513 }
7514 if (UNTAG_Bool(REGB14)) {
7515 /* parser/lexer.nit:1637 */
7516 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7517 /* parser/lexer.nit:1638 */
7518 fra.me.REG[4] = NEW_TId_parser___lexer___TId___init_tk(fra.me.REG[4], fra.me.REG[2]);
7519 fra.me.REG[3] = fra.me.REG[4];
7520 goto label3;
7521 }
7522 /* parser/lexer.nit:1640 */
7523 REGB14 = TAG_Int(83);
7524 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7525 if (UNTAG_Bool(REGB13)) {
7526 } else {
7527 /* ../lib/standard/kernel.nit:227 */
7528 REGB14 = TAG_Bool((REGB7)==(REGB14));
7529 /* parser/lexer.nit:1640 */
7530 REGB13 = REGB14;
7531 }
7532 if (UNTAG_Bool(REGB13)) {
7533 /* parser/lexer.nit:1641 */
7534 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7535 /* parser/lexer.nit:1642 */
7536 fra.me.REG[4] = NEW_TAttrid_parser___lexer___TAttrid___init_tk(fra.me.REG[4], fra.me.REG[2]);
7537 fra.me.REG[3] = fra.me.REG[4];
7538 goto label3;
7539 }
7540 /* parser/lexer.nit:1644 */
7541 REGB13 = TAG_Int(84);
7542 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7543 if (UNTAG_Bool(REGB14)) {
7544 } else {
7545 /* ../lib/standard/kernel.nit:227 */
7546 REGB13 = TAG_Bool((REGB7)==(REGB13));
7547 /* parser/lexer.nit:1644 */
7548 REGB14 = REGB13;
7549 }
7550 if (UNTAG_Bool(REGB14)) {
7551 /* parser/lexer.nit:1645 */
7552 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7553 /* parser/lexer.nit:1646 */
7554 fra.me.REG[4] = NEW_TNumber_parser___lexer___TNumber___init_tk(fra.me.REG[4], fra.me.REG[2]);
7555 fra.me.REG[3] = fra.me.REG[4];
7556 goto label3;
7557 }
7558 /* parser/lexer.nit:1648 */
7559 REGB14 = TAG_Int(85);
7560 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7561 if (UNTAG_Bool(REGB13)) {
7562 } else {
7563 /* ../lib/standard/kernel.nit:227 */
7564 REGB14 = TAG_Bool((REGB7)==(REGB14));
7565 /* parser/lexer.nit:1648 */
7566 REGB13 = REGB14;
7567 }
7568 if (UNTAG_Bool(REGB13)) {
7569 /* parser/lexer.nit:1649 */
7570 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7571 /* parser/lexer.nit:1650 */
7572 fra.me.REG[4] = NEW_TFloat_parser___lexer___TFloat___init_tk(fra.me.REG[4], fra.me.REG[2]);
7573 fra.me.REG[3] = fra.me.REG[4];
7574 goto label3;
7575 }
7576 /* parser/lexer.nit:1652 */
7577 REGB13 = TAG_Int(86);
7578 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7579 if (UNTAG_Bool(REGB14)) {
7580 } else {
7581 /* ../lib/standard/kernel.nit:227 */
7582 REGB13 = TAG_Bool((REGB7)==(REGB13));
7583 /* parser/lexer.nit:1652 */
7584 REGB14 = REGB13;
7585 }
7586 if (UNTAG_Bool(REGB14)) {
7587 /* parser/lexer.nit:1653 */
7588 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7589 /* parser/lexer.nit:1654 */
7590 fra.me.REG[4] = NEW_TChar_parser___lexer___TChar___init_tk(fra.me.REG[4], fra.me.REG[2]);
7591 fra.me.REG[3] = fra.me.REG[4];
7592 goto label3;
7593 }
7594 /* parser/lexer.nit:1656 */
7595 REGB14 = TAG_Int(87);
7596 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7597 if (UNTAG_Bool(REGB13)) {
7598 } else {
7599 /* ../lib/standard/kernel.nit:227 */
7600 REGB14 = TAG_Bool((REGB7)==(REGB14));
7601 /* parser/lexer.nit:1656 */
7602 REGB13 = REGB14;
7603 }
7604 if (UNTAG_Bool(REGB13)) {
7605 /* parser/lexer.nit:1657 */
7606 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7607 /* parser/lexer.nit:1658 */
7608 fra.me.REG[4] = NEW_TString_parser___lexer___TString___init_tk(fra.me.REG[4], fra.me.REG[2]);
7609 fra.me.REG[3] = fra.me.REG[4];
7610 goto label3;
7611 }
7612 /* parser/lexer.nit:1660 */
7613 REGB13 = TAG_Int(88);
7614 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7615 if (UNTAG_Bool(REGB14)) {
7616 } else {
7617 /* ../lib/standard/kernel.nit:227 */
7618 REGB13 = TAG_Bool((REGB7)==(REGB13));
7619 /* parser/lexer.nit:1660 */
7620 REGB14 = REGB13;
7621 }
7622 if (UNTAG_Bool(REGB14)) {
7623 /* parser/lexer.nit:1661 */
7624 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7625 /* parser/lexer.nit:1662 */
7626 fra.me.REG[4] = NEW_TStartString_parser___lexer___TStartString___init_tk(fra.me.REG[4], fra.me.REG[2]);
7627 fra.me.REG[3] = fra.me.REG[4];
7628 goto label3;
7629 }
7630 /* parser/lexer.nit:1664 */
7631 REGB14 = TAG_Int(89);
7632 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7633 if (UNTAG_Bool(REGB13)) {
7634 } else {
7635 /* ../lib/standard/kernel.nit:227 */
7636 REGB14 = TAG_Bool((REGB7)==(REGB14));
7637 /* parser/lexer.nit:1664 */
7638 REGB13 = REGB14;
7639 }
7640 if (UNTAG_Bool(REGB13)) {
7641 /* parser/lexer.nit:1665 */
7642 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7643 /* parser/lexer.nit:1666 */
7644 fra.me.REG[4] = NEW_TMidString_parser___lexer___TMidString___init_tk(fra.me.REG[4], fra.me.REG[2]);
7645 fra.me.REG[3] = fra.me.REG[4];
7646 goto label3;
7647 }
7648 /* parser/lexer.nit:1668 */
7649 REGB13 = TAG_Int(90);
7650 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7651 if (UNTAG_Bool(REGB14)) {
7652 } else {
7653 /* ../lib/standard/kernel.nit:227 */
7654 REGB13 = TAG_Bool((REGB7)==(REGB13));
7655 /* parser/lexer.nit:1668 */
7656 REGB14 = REGB13;
7657 }
7658 if (UNTAG_Bool(REGB14)) {
7659 /* parser/lexer.nit:1669 */
7660 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7661 /* parser/lexer.nit:1670 */
7662 fra.me.REG[4] = NEW_TEndString_parser___lexer___TEndString___init_tk(fra.me.REG[4], fra.me.REG[2]);
7663 fra.me.REG[3] = fra.me.REG[4];
7664 goto label3;
7665 }
7666 /* parser/lexer.nit:1672 */
7667 REGB14 = TAG_Int(91);
7668 REGB13 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB14));
7669 if (UNTAG_Bool(REGB13)) {
7670 } else {
7671 /* ../lib/standard/kernel.nit:227 */
7672 REGB14 = TAG_Bool((REGB7)==(REGB14));
7673 /* parser/lexer.nit:1672 */
7674 REGB13 = REGB14;
7675 }
7676 if (UNTAG_Bool(REGB13)) {
7677 /* parser/lexer.nit:1673 */
7678 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7679 /* parser/lexer.nit:1674 */
7680 fra.me.REG[4] = NEW_TBadChar_parser___lexer___TBadChar___init_tk(fra.me.REG[4], fra.me.REG[2]);
7681 fra.me.REG[3] = fra.me.REG[4];
7682 goto label3;
7683 }
7684 /* parser/lexer.nit:1676 */
7685 REGB13 = TAG_Int(92);
7686 REGB14 = TAG_Bool(IS_EQUAL_OO(REGB7,REGB13));
7687 if (UNTAG_Bool(REGB14)) {
7688 } else {
7689 /* ../lib/standard/kernel.nit:227 */
7690 REGB13 = TAG_Bool((REGB7)==(REGB13));
7691 /* parser/lexer.nit:1676 */
7692 REGB14 = REGB13;
7693 }
7694 if (UNTAG_Bool(REGB14)) {
7695 /* parser/lexer.nit:1677 */
7696 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB8);
7697 /* parser/lexer.nit:1678 */
7698 fra.me.REG[2] = NEW_TBadString_parser___lexer___TBadString___init_tk(fra.me.REG[4], fra.me.REG[2]);
7699 fra.me.REG[3] = fra.me.REG[2];
7700 goto label3;
7701 }
7702 } else {
7703 /* parser/lexer.nit:1681 */
7704 ATTR_parser___lexer___Lexer____stream_pos(fra.me.REG[0]) = REGB1;
7705 /* parser/lexer.nit:1682 */
7706 REGB14 = TAG_Bool(ATTR_parser___lexer___Lexer____file(fra.me.REG[0])!=NIT_NULL);
7707 if (UNTAG_Bool(REGB14)) {
7708 } else {
7709 nit_abort("Uninitialized attribute %s", "_file", LOCATE_parser___lexer, 1682);
7710 }
7711 fra.me.REG[2] = ATTR_parser___lexer___Lexer____file(fra.me.REG[0]);
7712 REGB14 = TAG_Int(1);
7713 /* ../lib/standard/kernel.nit:235 */
7714 REGB14 = TAG_Int(UNTAG_Int(REGB4)+UNTAG_Int(REGB14));
7715 /* parser/lexer.nit:1682 */
7716 REGB13 = TAG_Int(1);
7717 /* ../lib/standard/kernel.nit:235 */
7718 REGB13 = TAG_Int(UNTAG_Int(REGB4)+UNTAG_Int(REGB13));
7719 /* parser/lexer.nit:1682 */
7720 REGB12 = TAG_Int(1);
7721 /* ../lib/standard/kernel.nit:235 */
7722 REGB12 = TAG_Int(UNTAG_Int(REGB3)+UNTAG_Int(REGB12));
7723 /* parser/lexer.nit:1682 */
7724 REGB11 = TAG_Int(1);
7725 /* ../lib/standard/kernel.nit:235 */
7726 REGB11 = TAG_Int(UNTAG_Int(REGB3)+UNTAG_Int(REGB11));
7727 /* parser/lexer.nit:1682 */
7728 fra.me.REG[2] = NEW_Location_location___Location___init(fra.me.REG[2], REGB14, REGB13, REGB12, REGB11);
7729 REGB11 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
7730 if (UNTAG_Bool(REGB11)) {
7731 } else {
7732 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
7733 }
7734 /* ../lib/standard/kernel.nit:234 */
7735 REGB11 = TAG_Bool(UNTAG_Int(REGB1)>UNTAG_Int(REGB2));
7736 /* parser/lexer.nit:1683 */
7737 if (UNTAG_Bool(REGB11)) {
7738 /* ../lib/standard/kernel.nit:237 */
7739 REGB11 = TAG_Int(UNTAG_Int(REGB1)-UNTAG_Int(REGB2));
7740 /* parser/lexer.nit:1684 */
7741 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB2, REGB11);
7742 /* parser/lexer.nit:1685 */
7743 REGB11 = TAG_Int(3);
7744 fra.me.REG[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB11);
7745 if (!once_value_4) {
7746 fra.me.REG[6] = BOX_NativeString("Syntax error: unknown token ");
7747 REGB11 = TAG_Int(28);
7748 fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB11);
7749 once_value_4 = fra.me.REG[6];
7750 register_static_object(&once_value_4);
7751 } else fra.me.REG[6] = once_value_4;
7752 fra.me.REG[6] = fra.me.REG[6];
7753 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
7754 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]);
7755 if (!once_value_5) {
7756 fra.me.REG[4] = BOX_NativeString(".");
7757 REGB11 = TAG_Int(1);
7758 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB11);
7759 once_value_5 = fra.me.REG[4];
7760 register_static_object(&once_value_5);
7761 } else fra.me.REG[4] = once_value_5;
7762 fra.me.REG[4] = fra.me.REG[4];
7763 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]);
7764 fra.me.REG[5] = CALL_standard___string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
7765 fra.me.REG[5] = NEW_AError_parser___lexer___AError___init_error(fra.me.REG[5], fra.me.REG[2]);
7766 /* parser/lexer.nit:1686 */
7767 fra.me.REG[3] = fra.me.REG[5];
7768 goto label3;
7769 } else {
7770 /* parser/lexer.nit:1688 */
7771 fra.me.REG[2] = NEW_EOF_parser___lexer___EOF___init(fra.me.REG[2]);
7772 /* parser/lexer.nit:1689 */
7773 fra.me.REG[3] = fra.me.REG[2];
7774 goto label3;
7775 }
7776 }
7777 }
7778 }
7779 label3: while(0);
7780 stack_frame_head = fra.me.prev;
7781 return fra.me.REG[3];
7782 }