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