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