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