First NIT release and new clean mercurial repository
[nit.git] / c_src / kernel._sep.c
1 #include "kernel._sep.h"
2 val_t kernel___Object___object_id(val_t self) {
3 struct trace_t trace = {NULL, "kernel::Object::object_id (bin/../lib/standard//kernel.nit:26,2--27:20)"};
4 trace.prev = tracehead; tracehead = &trace;
5 tracehead = trace.prev;
6 return TAG_Int((int) self);
7 }
8 val_t kernel___Object___is_same_type(val_t self, val_t param0) {
9 struct trace_t trace = {NULL, "kernel::Object::is_same_type (bin/../lib/standard//kernel.nit:29,2--30:39)"};
10 trace.prev = tracehead; tracehead = &trace;
11 tracehead = trace.prev;
12 return TAG_Bool((VAL2VFT( self)==VAL2VFT( param0)));
13 }
14 val_t kernel___Object_____eqeq(val_t self, val_t param0) {
15 struct trace_t trace = {NULL, "kernel::Object::== (bin/../lib/standard//kernel.nit:32,2--35:53)"};
16 val_t variable0;
17 val_t variable1;
18 trace.prev = tracehead; tracehead = &trace;
19 variable0 = param0;
20 variable1 = TAG_Bool(IS_EQUAL_NN( self, variable0 /*other*/));
21 goto return_label0;
22 return_label0: while(false);
23 tracehead = trace.prev;
24 return variable1;
25 }
26 val_t kernel___Object_____neq(val_t self, val_t param0) {
27 struct trace_t trace = {NULL, "kernel::Object::!= (bin/../lib/standard//kernel.nit:37,2--40:58)"};
28 val_t variable0;
29 val_t variable1;
30 trace.prev = tracehead; tracehead = &trace;
31 variable0 = param0;
32 variable1 = TAG_Bool(( self == variable0 /*other*/) || (( self != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( self,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( self, variable0 /*other*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( self,COLOR_kernel___Object_____eqeq))( self, variable0 /*other*/) /*Object::==*/)))));
33 variable1 = TAG_Bool(!UNTAG_Bool(variable1));
34 goto return_label1;
35 return_label1: while(false);
36 tracehead = trace.prev;
37 return variable1;
38 }
39 void kernel___Object___output(val_t self) {
40 struct trace_t trace = {NULL, "kernel::Object::output (bin/../lib/standard//kernel.nit:42,2--47:12)"};
41 val_t variable0;
42 trace.prev = tracehead; tracehead = &trace;
43 printf("%c", (unsigned char)UNTAG_Char( TAG_Char('<')));
44 variable0 = TAG_Int((int) self);
45 printf("%d\n", UNTAG_Int(variable0));
46 printf("%c", (unsigned char)UNTAG_Char( TAG_Char('>')));
47 tracehead = trace.prev;
48 return;
49 }
50 void kernel___Object___exit(val_t self, val_t param0) {
51 struct trace_t trace = {NULL, "kernel::Object::exit (bin/../lib/standard//kernel.nit:50,2--36)"};
52 trace.prev = tracehead; tracehead = &trace;
53 exit(UNTAG_Int( param0));
54 tracehead = trace.prev;
55 return;
56 }
57 val_t kernel___Object___sys(val_t self) {
58 struct trace_t trace = {NULL, "kernel::Object::sys (bin/../lib/standard//kernel.nit:51,2--24)"};
59 trace.prev = tracehead; tracehead = &trace;
60 tracehead = trace.prev;
61 return (G_sys);
62 }
63 void kernel___Sys___main(val_t self) {
64 struct trace_t trace = {NULL, "kernel::Sys::main (bin/../lib/standard//kernel.nit:56,2--57:10)"};
65 trace.prev = tracehead; tracehead = &trace;
66 tracehead = trace.prev;
67 return;
68 }
69 val_t kernel___Comparable_____l(val_t self, val_t param0) {
70 struct trace_t trace = {NULL, "kernel::Comparable::< (bin/../lib/standard//kernel.nit:69,2--70:27)"};
71 trace.prev = tracehead; tracehead = &trace;
72 fprintf(stderr, "Deferred method < called (bin/../lib/standard//kernel.nit:69,2)\n");
73 nit_exit(1);
74 tracehead = trace.prev;
75 return NIT_NULL;
76 }
77 val_t kernel___Comparable_____leq(val_t self, val_t param0) {
78 struct trace_t trace = {NULL, "kernel::Comparable::<= (bin/../lib/standard//kernel.nit:72,2--73:55)"};
79 val_t variable0;
80 val_t variable1;
81 trace.prev = tracehead; tracehead = &trace;
82 variable0 = param0;
83 variable1 = ((kernel___Comparable_____l_t)CALL( variable0 /*other*/,COLOR_kernel___Comparable_____l))( variable0 /*other*/, self) /*Comparable::<*/;
84 variable1 = TAG_Bool(!UNTAG_Bool(variable1));
85 goto return_label4;
86 return_label4: while(false);
87 tracehead = trace.prev;
88 return variable1;
89 }
90 val_t kernel___Comparable_____geq(val_t self, val_t param0) {
91 struct trace_t trace = {NULL, "kernel::Comparable::>= (bin/../lib/standard//kernel.nit:75,2--76:55)"};
92 val_t variable0;
93 val_t variable1;
94 trace.prev = tracehead; tracehead = &trace;
95 variable0 = param0;
96 variable1 = ((kernel___Comparable_____l_t)CALL( self,COLOR_kernel___Comparable_____l))( self, variable0 /*other*/) /*Comparable::<*/;
97 variable1 = TAG_Bool(!UNTAG_Bool(variable1));
98 goto return_label5;
99 return_label5: while(false);
100 tracehead = trace.prev;
101 return variable1;
102 }
103 val_t kernel___Comparable_____g(val_t self, val_t param0) {
104 struct trace_t trace = {NULL, "kernel::Comparable::> (bin/../lib/standard//kernel.nit:78,2--79:50)"};
105 val_t variable0;
106 val_t variable1;
107 trace.prev = tracehead; tracehead = &trace;
108 variable0 = param0;
109 variable1 = ((kernel___Comparable_____l_t)CALL( variable0 /*other*/,COLOR_kernel___Comparable_____l))( variable0 /*other*/, self) /*Comparable::<*/;
110 goto return_label6;
111 return_label6: while(false);
112 tracehead = trace.prev;
113 return variable1;
114 }
115 val_t kernel___Comparable_____leqg(val_t self, val_t param0) {
116 struct trace_t trace = {NULL, "kernel::Comparable::<=> (bin/../lib/standard//kernel.nit:81,2--89:11)"};
117 val_t variable0;
118 val_t variable1;
119 trace.prev = tracehead; tracehead = &trace;
120 variable0 = param0;
121 variable1 = ((kernel___Comparable_____l_t)CALL( self,COLOR_kernel___Comparable_____l))( self, variable0 /*other*/) /*Comparable::<*/;
122 if (UNTAG_Bool(variable1)) { /*if*/
123 variable1 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
124 goto return_label7;
125 } else { /*if*/
126 variable1 = ((kernel___Comparable_____l_t)CALL( variable0 /*other*/,COLOR_kernel___Comparable_____l))( variable0 /*other*/, self) /*Comparable::<*/;
127 if (UNTAG_Bool(variable1)) { /*if*/
128 variable1 = TAG_Int(1);
129 goto return_label7;
130 } else { /*if*/
131 variable1 = TAG_Int(0);
132 goto return_label7;
133 }
134 }
135 return_label7: while(false);
136 tracehead = trace.prev;
137 return variable1;
138 }
139 val_t kernel___Comparable___is_between(val_t self, val_t param0, val_t param1) {
140 struct trace_t trace = {NULL, "kernel::Comparable::is_between (bin/../lib/standard//kernel.nit:93,2--96:32)"};
141 val_t variable0;
142 val_t variable1;
143 val_t variable2;
144 val_t variable3;
145 trace.prev = tracehead; tracehead = &trace;
146 variable0 = param0;
147 variable1 = param1;
148 variable2 = ((kernel___Comparable_____leq_t)CALL( variable0 /*c*/,COLOR_kernel___Comparable_____leq))( variable0 /*c*/, self) /*Comparable::<=*/;
149 variable3 = variable2;
150 if (UNTAG_Bool(variable3)) { /* and */
151 variable3 = ((kernel___Comparable_____leq_t)CALL( self,COLOR_kernel___Comparable_____leq))( self, variable1 /*d*/) /*Comparable::<=*/;
152 }
153 variable2 = variable3;
154 goto return_label8;
155 return_label8: while(false);
156 tracehead = trace.prev;
157 return variable2;
158 }
159 val_t kernel___Comparable___max(val_t self, val_t param0) {
160 struct trace_t trace = {NULL, "kernel::Comparable::max (bin/../lib/standard//kernel.nit:99,2--105:14)"};
161 val_t variable0;
162 val_t variable1;
163 trace.prev = tracehead; tracehead = &trace;
164 variable0 = param0;
165 variable1 = ((kernel___Comparable_____l_t)CALL( self,COLOR_kernel___Comparable_____l))( self, variable0 /*other*/) /*Comparable::<*/;
166 if (UNTAG_Bool(variable1)) { /*if*/
167 variable1 = variable0 /*other*/;
168 goto return_label9;
169 } else { /*if*/
170 variable1 = self;
171 goto return_label9;
172 }
173 return_label9: while(false);
174 tracehead = trace.prev;
175 return variable1;
176 }
177 val_t kernel___Comparable___min(val_t self, val_t param0) {
178 struct trace_t trace = {NULL, "kernel::Comparable::min (bin/../lib/standard//kernel.nit:109,2--115:14)"};
179 val_t variable0;
180 val_t variable1;
181 trace.prev = tracehead; tracehead = &trace;
182 variable0 = param0;
183 variable1 = ((kernel___Comparable_____l_t)CALL( variable0 /*c*/,COLOR_kernel___Comparable_____l))( variable0 /*c*/, self) /*Comparable::<*/;
184 if (UNTAG_Bool(variable1)) { /*if*/
185 variable1 = variable0 /*c*/;
186 goto return_label10;
187 } else { /*if*/
188 variable1 = self;
189 goto return_label10;
190 }
191 return_label10: while(false);
192 tracehead = trace.prev;
193 return variable1;
194 }
195 val_t kernel___Discrete___succ(val_t self) {
196 struct trace_t trace = {NULL, "kernel::Discrete::succ (bin/../lib/standard//kernel.nit:126,2--127:36)"};
197 val_t variable0;
198 trace.prev = tracehead; tracehead = &trace;
199 variable0 = ((kernel___Discrete_____plus_t)CALL( self,COLOR_kernel___Discrete_____plus))( self, TAG_Int(1)) /*Discrete::+*/;
200 goto return_label11;
201 return_label11: while(false);
202 tracehead = trace.prev;
203 return variable0;
204 }
205 val_t kernel___Discrete___prec(val_t self) {
206 struct trace_t trace = {NULL, "kernel::Discrete::prec (bin/../lib/standard//kernel.nit:129,2--130:36)"};
207 val_t variable0;
208 trace.prev = tracehead; tracehead = &trace;
209 variable0 = ((kernel___Discrete_____minus_t)CALL( self,COLOR_kernel___Discrete_____minus))( self, TAG_Int(1)) /*Discrete::-*/;
210 goto return_label12;
211 return_label12: while(false);
212 tracehead = trace.prev;
213 return variable0;
214 }
215 val_t kernel___Discrete_____plus(val_t self, val_t param0) {
216 struct trace_t trace = {NULL, "kernel::Discrete::+ (bin/../lib/standard//kernel.nit:132,2--133:22)"};
217 trace.prev = tracehead; tracehead = &trace;
218 fprintf(stderr, "Deferred method + called (bin/../lib/standard//kernel.nit:132,2)\n");
219 nit_exit(1);
220 tracehead = trace.prev;
221 return NIT_NULL;
222 }
223 val_t kernel___Discrete_____minus(val_t self, val_t param0) {
224 struct trace_t trace = {NULL, "kernel::Discrete::- (bin/../lib/standard//kernel.nit:135,2--136:22)"};
225 trace.prev = tracehead; tracehead = &trace;
226 fprintf(stderr, "Deferred method - called (bin/../lib/standard//kernel.nit:135,2)\n");
227 nit_exit(1);
228 tracehead = trace.prev;
229 return NIT_NULL;
230 }
231 val_t kernel___Discrete___distance(val_t self, val_t param0) {
232 struct trace_t trace = {NULL, "kernel::Discrete::distance (bin/../lib/standard//kernel.nit:138,2--160:11)"};
233 val_t variable0;
234 val_t variable1;
235 val_t variable2;
236 val_t variable3;
237 val_t variable4;
238 trace.prev = tracehead; tracehead = &trace;
239 variable0 = param0;
240 variable1 = NIT_NULL /*decl variable cursor*/;
241 variable2 = NIT_NULL /*decl variable stop*/;
242 variable3 = ((kernel___Comparable_____l_t)CALL( self,COLOR_kernel___Comparable_____l))( self, variable0 /*d*/) /*Discrete::<*/;
243 if (UNTAG_Bool(variable3)) { /*if*/
244 variable1 = self /*cursor=*/;
245 variable2 = variable0 /*d*/ /*stop=*/;
246 } else { /*if*/
247 variable3 = ((kernel___Comparable_____g_t)CALL( self,COLOR_kernel___Comparable_____g))( self, variable0 /*d*/) /*Discrete::>*/;
248 if (UNTAG_Bool(variable3)) { /*if*/
249 variable1 = variable0 /*d*/ /*cursor=*/;
250 variable2 = self /*stop=*/;
251 } else { /*if*/
252 variable1 = TAG_Int(0);
253 goto return_label13;
254 }
255 }
256 variable3 = TAG_Int(0);
257 while (true) { /*while*/
258 variable4 = ((kernel___Comparable_____l_t)CALL( variable1 /*cursor*/,COLOR_kernel___Comparable_____l))( variable1 /*cursor*/, variable2 /*stop*/) /*Discrete::<*/;
259 if (!UNTAG_Bool(variable4)) break; /* while*/
260 variable4 = ((kernel___Discrete___succ_t)CALL( variable1 /*cursor*/,COLOR_kernel___Discrete___succ))( variable1 /*cursor*/) /*Discrete::succ*/;
261 variable1 = variable4 /*cursor=*/;
262 variable3 = TAG_Int(UNTAG_Int(variable3)+UNTAG_Int( TAG_Int(1))) /*nb*/;
263 continue_14: while(0);
264 }
265 break_14: while(0);
266 variable1 = variable3 /*nb*/;
267 goto return_label13;
268 return_label13: while(false);
269 tracehead = trace.prev;
270 return variable1;
271 }
272 val_t kernel___Bool___object_id(val_t self) {
273 struct trace_t trace = {NULL, "kernel::Bool::object_id (bin/../lib/standard//kernel.nit:174,2--21)"};
274 trace.prev = tracehead; tracehead = &trace;
275 tracehead = trace.prev;
276 return TAG_Int(UNTAG_Bool( self));
277 }
278 val_t kernel___Bool_____eqeq(val_t self, val_t param0) {
279 struct trace_t trace = {NULL, "kernel::Bool::== (bin/../lib/standard//kernel.nit:175,2--16)"};
280 trace.prev = tracehead; tracehead = &trace;
281 tracehead = trace.prev;
282 return TAG_Bool(( self)==( param0));
283 }
284 val_t kernel___Bool_____neq(val_t self, val_t param0) {
285 struct trace_t trace = {NULL, "kernel::Bool::!= (bin/../lib/standard//kernel.nit:176,2--16)"};
286 trace.prev = tracehead; tracehead = &trace;
287 tracehead = trace.prev;
288 return TAG_Bool(( self)!=( param0));
289 }
290 void kernel___Bool___output(val_t self) {
291 struct trace_t trace = {NULL, "kernel::Bool::output (bin/../lib/standard//kernel.nit:177,2--18)"};
292 trace.prev = tracehead; tracehead = &trace;
293 (void)printf(UNTAG_Bool( self)?"true\n":"false\n");
294 tracehead = trace.prev;
295 return;
296 }
297 val_t kernel___Float___object_id(val_t self) {
298 struct trace_t trace = {NULL, "kernel::Float::object_id (bin/../lib/standard//kernel.nit:183,2--21)"};
299 trace.prev = tracehead; tracehead = &trace;
300 tracehead = trace.prev;
301 return TAG_Int((int)UNBOX_Float( self));
302 }
303 void kernel___Float___output(val_t self) {
304 struct trace_t trace = {NULL, "kernel::Float::output (bin/../lib/standard//kernel.nit:184,2--18)"};
305 trace.prev = tracehead; tracehead = &trace;
306 printf("%f\n", UNBOX_Float( self));
307 tracehead = trace.prev;
308 return;
309 }
310 val_t kernel___Float_____leq(val_t self, val_t param0) {
311 struct trace_t trace = {NULL, "kernel::Float::<= (bin/../lib/standard//kernel.nit:186,2--24)"};
312 trace.prev = tracehead; tracehead = &trace;
313 tracehead = trace.prev;
314 return TAG_Bool(UNBOX_Float( self)<=UNBOX_Float( param0));
315 }
316 val_t kernel___Float_____l(val_t self, val_t param0) {
317 struct trace_t trace = {NULL, "kernel::Float::< (bin/../lib/standard//kernel.nit:187,2--23)"};
318 trace.prev = tracehead; tracehead = &trace;
319 tracehead = trace.prev;
320 return TAG_Bool(UNBOX_Float( self)<UNBOX_Float( param0));
321 }
322 val_t kernel___Float_____geq(val_t self, val_t param0) {
323 struct trace_t trace = {NULL, "kernel::Float::>= (bin/../lib/standard//kernel.nit:188,2--24)"};
324 trace.prev = tracehead; tracehead = &trace;
325 tracehead = trace.prev;
326 return TAG_Bool(UNBOX_Float( self)>=UNBOX_Float( param0));
327 }
328 val_t kernel___Float_____g(val_t self, val_t param0) {
329 struct trace_t trace = {NULL, "kernel::Float::> (bin/../lib/standard//kernel.nit:189,2--23)"};
330 trace.prev = tracehead; tracehead = &trace;
331 tracehead = trace.prev;
332 return TAG_Bool(UNBOX_Float( self)>UNBOX_Float( param0));
333 }
334 val_t kernel___Float_____plus(val_t self, val_t param0) {
335 struct trace_t trace = {NULL, "kernel::Float::+ (bin/../lib/standard//kernel.nit:190,2--24)"};
336 trace.prev = tracehead; tracehead = &trace;
337 tracehead = trace.prev;
338 return BOX_Float(UNBOX_Float( self)+UNBOX_Float( param0));
339 }
340 val_t kernel___Float___unary__minus(val_t self) {
341 struct trace_t trace = {NULL, "kernel::Float::unary - (bin/../lib/standard//kernel.nit:191,2--14)"};
342 trace.prev = tracehead; tracehead = &trace;
343 tracehead = trace.prev;
344 return BOX_Float(-UNBOX_Float( self));
345 }
346 val_t kernel___Float_____minus(val_t self, val_t param0) {
347 struct trace_t trace = {NULL, "kernel::Float::- (bin/../lib/standard//kernel.nit:192,2--24)"};
348 trace.prev = tracehead; tracehead = &trace;
349 tracehead = trace.prev;
350 return BOX_Float(UNBOX_Float( self)-UNBOX_Float( param0));
351 }
352 val_t kernel___Float_____star(val_t self, val_t param0) {
353 struct trace_t trace = {NULL, "kernel::Float::* (bin/../lib/standard//kernel.nit:193,2--24)"};
354 trace.prev = tracehead; tracehead = &trace;
355 tracehead = trace.prev;
356 return BOX_Float(UNBOX_Float( self)*UNBOX_Float( param0));
357 }
358 val_t kernel___Float_____slash(val_t self, val_t param0) {
359 struct trace_t trace = {NULL, "kernel::Float::/ (bin/../lib/standard//kernel.nit:194,2--24)"};
360 trace.prev = tracehead; tracehead = &trace;
361 tracehead = trace.prev;
362 return BOX_Float(UNBOX_Float( self)/UNBOX_Float( param0));
363 }
364 val_t kernel___Float___to_i(val_t self) {
365 struct trace_t trace = {NULL, "kernel::Float::to_i (bin/../lib/standard//kernel.nit:196,2--197:15)"};
366 trace.prev = tracehead; tracehead = &trace;
367 tracehead = trace.prev;
368 return TAG_Int((int)UNBOX_Float( self));
369 }
370 val_t kernel___Int___object_id(val_t self) {
371 struct trace_t trace = {NULL, "kernel::Int::object_id (bin/../lib/standard//kernel.nit:206,2--21)"};
372 trace.prev = tracehead; tracehead = &trace;
373 tracehead = trace.prev;
374 return self;
375 }
376 val_t kernel___Int_____eqeq(val_t self, val_t param0) {
377 struct trace_t trace = {NULL, "kernel::Int::== (bin/../lib/standard//kernel.nit:207,2--16)"};
378 trace.prev = tracehead; tracehead = &trace;
379 tracehead = trace.prev;
380 return TAG_Bool(( self)==( param0));
381 }
382 val_t kernel___Int_____neq(val_t self, val_t param0) {
383 struct trace_t trace = {NULL, "kernel::Int::!= (bin/../lib/standard//kernel.nit:208,2--16)"};
384 trace.prev = tracehead; tracehead = &trace;
385 tracehead = trace.prev;
386 return TAG_Bool(( self)!=( param0));
387 }
388 void kernel___Int___output(val_t self) {
389 struct trace_t trace = {NULL, "kernel::Int::output (bin/../lib/standard//kernel.nit:209,2--18)"};
390 trace.prev = tracehead; tracehead = &trace;
391 printf("%d\n", UNTAG_Int( self));
392 tracehead = trace.prev;
393 return;
394 }
395 val_t kernel___Int_____leq(val_t self, val_t param0) {
396 struct trace_t trace = {NULL, "kernel::Int::<= (bin/../lib/standard//kernel.nit:211,2--16)"};
397 trace.prev = tracehead; tracehead = &trace;
398 tracehead = trace.prev;
399 return TAG_Bool(UNTAG_Int( self)<=UNTAG_Int( param0));
400 }
401 val_t kernel___Int_____l(val_t self, val_t param0) {
402 struct trace_t trace = {NULL, "kernel::Int::< (bin/../lib/standard//kernel.nit:212,2--15)"};
403 trace.prev = tracehead; tracehead = &trace;
404 tracehead = trace.prev;
405 return TAG_Bool(UNTAG_Int( self)<UNTAG_Int( param0));
406 }
407 val_t kernel___Int_____geq(val_t self, val_t param0) {
408 struct trace_t trace = {NULL, "kernel::Int::>= (bin/../lib/standard//kernel.nit:213,2--16)"};
409 trace.prev = tracehead; tracehead = &trace;
410 tracehead = trace.prev;
411 return TAG_Bool(UNTAG_Int( self)>=UNTAG_Int( param0));
412 }
413 val_t kernel___Int_____g(val_t self, val_t param0) {
414 struct trace_t trace = {NULL, "kernel::Int::> (bin/../lib/standard//kernel.nit:214,2--15)"};
415 trace.prev = tracehead; tracehead = &trace;
416 tracehead = trace.prev;
417 return TAG_Bool(UNTAG_Int( self)>UNTAG_Int( param0));
418 }
419 val_t kernel___Int_____plus(val_t self, val_t param0) {
420 struct trace_t trace = {NULL, "kernel::Int::+ (bin/../lib/standard//kernel.nit:215,2--15)"};
421 trace.prev = tracehead; tracehead = &trace;
422 tracehead = trace.prev;
423 return TAG_Int(UNTAG_Int( self)+UNTAG_Int( param0));
424 }
425 val_t kernel___Int___unary__minus(val_t self) {
426 struct trace_t trace = {NULL, "kernel::Int::unary - (bin/../lib/standard//kernel.nit:216,2--12)"};
427 trace.prev = tracehead; tracehead = &trace;
428 tracehead = trace.prev;
429 return TAG_Int(-UNTAG_Int( self));
430 }
431 val_t kernel___Int_____minus(val_t self, val_t param0) {
432 struct trace_t trace = {NULL, "kernel::Int::- (bin/../lib/standard//kernel.nit:217,2--15)"};
433 trace.prev = tracehead; tracehead = &trace;
434 tracehead = trace.prev;
435 return TAG_Int(UNTAG_Int( self)-UNTAG_Int( param0));
436 }
437 val_t kernel___Int_____star(val_t self, val_t param0) {
438 struct trace_t trace = {NULL, "kernel::Int::* (bin/../lib/standard//kernel.nit:218,2--20)"};
439 trace.prev = tracehead; tracehead = &trace;
440 tracehead = trace.prev;
441 return TAG_Int(UNTAG_Int( self)*UNTAG_Int( param0));
442 }
443 val_t kernel___Int_____slash(val_t self, val_t param0) {
444 struct trace_t trace = {NULL, "kernel::Int::/ (bin/../lib/standard//kernel.nit:219,2--20)"};
445 trace.prev = tracehead; tracehead = &trace;
446 tracehead = trace.prev;
447 return TAG_Int(UNTAG_Int( self)/UNTAG_Int( param0));
448 }
449 val_t kernel___Int_____percent(val_t self, val_t param0) {
450 struct trace_t trace = {NULL, "kernel::Int::% (bin/../lib/standard//kernel.nit:220,2--20)"};
451 trace.prev = tracehead; tracehead = &trace;
452 tracehead = trace.prev;
453 return TAG_Int(UNTAG_Int( self)%UNTAG_Int( param0));
454 }
455 val_t kernel___Int___lshift(val_t self, val_t param0) {
456 struct trace_t trace = {NULL, "kernel::Int::lshift (bin/../lib/standard//kernel.nit:221,2--25)"};
457 trace.prev = tracehead; tracehead = &trace;
458 tracehead = trace.prev;
459 return TAG_Int(UNTAG_Int( self)<<UNTAG_Int( param0));
460 }
461 val_t kernel___Int___rshift(val_t self, val_t param0) {
462 struct trace_t trace = {NULL, "kernel::Int::rshift (bin/../lib/standard//kernel.nit:222,2--25)"};
463 trace.prev = tracehead; tracehead = &trace;
464 tracehead = trace.prev;
465 return TAG_Int(UNTAG_Int( self)>>UNTAG_Int( param0));
466 }
467 val_t kernel___Int___to_f(val_t self) {
468 struct trace_t trace = {NULL, "kernel::Int::to_f (bin/../lib/standard//kernel.nit:224,2--225:17)"};
469 trace.prev = tracehead; tracehead = &trace;
470 tracehead = trace.prev;
471 return BOX_Float((float)UNTAG_Int( self));
472 }
473 val_t kernel___Int___succ(val_t self) {
474 struct trace_t trace = {NULL, "kernel::Int::succ (bin/../lib/standard//kernel.nit:227,2--16)"};
475 trace.prev = tracehead; tracehead = &trace;
476 tracehead = trace.prev;
477 return TAG_Int(UNTAG_Int( self)+1);
478 }
479 val_t kernel___Int___prec(val_t self) {
480 struct trace_t trace = {NULL, "kernel::Int::prec (bin/../lib/standard//kernel.nit:228,2--16)"};
481 trace.prev = tracehead; tracehead = &trace;
482 tracehead = trace.prev;
483 return TAG_Int(UNTAG_Int( self)-1);
484 }
485 val_t kernel___Int___distance(val_t self, val_t param0) {
486 struct trace_t trace = {NULL, "kernel::Int::distance (bin/../lib/standard//kernel.nit:229,2--235:12)"};
487 val_t variable0;
488 val_t variable1;
489 val_t variable2;
490 trace.prev = tracehead; tracehead = &trace;
491 variable0 = param0;
492 variable2 = TAG_Int(UNTAG_Int( self)-UNTAG_Int( variable0 /*i*/));
493 variable1 = variable2;
494 variable2 = TAG_Bool(UNTAG_Int( variable1 /*d*/)>=UNTAG_Int( TAG_Int(0)));
495 if (UNTAG_Bool(variable2)) { /*if*/
496 variable1 = variable1 /*d*/;
497 goto return_label15;
498 } else { /*if*/
499 variable2 = TAG_Int(-UNTAG_Int( variable1 /*d*/));
500 variable1 = variable2;
501 goto return_label15;
502 }
503 return_label15: while(false);
504 tracehead = trace.prev;
505 return variable1;
506 }
507 val_t kernel___Int_____leqg(val_t self, val_t param0) {
508 struct trace_t trace = {NULL, "kernel::Int::<=> (bin/../lib/standard//kernel.nit:239,2--246:11)"};
509 val_t variable0;
510 val_t variable1;
511 trace.prev = tracehead; tracehead = &trace;
512 variable0 = param0;
513 variable1 = TAG_Bool(UNTAG_Int( self)<UNTAG_Int( variable0 /*other*/));
514 if (UNTAG_Bool(variable1)) { /*if*/
515 variable1 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
516 goto return_label16;
517 } else { /*if*/
518 variable1 = TAG_Bool(UNTAG_Int( variable0 /*other*/)<UNTAG_Int( self));
519 if (UNTAG_Bool(variable1)) { /*if*/
520 variable1 = TAG_Int(1);
521 goto return_label16;
522 } else { /*if*/
523 variable1 = TAG_Int(0);
524 goto return_label16;
525 }
526 }
527 return_label16: while(false);
528 tracehead = trace.prev;
529 return variable1;
530 }
531 val_t kernel___Int___is_between(val_t self, val_t param0, val_t param1) {
532 struct trace_t trace = {NULL, "kernel::Int::is_between (bin/../lib/standard//kernel.nit:250,2--255:14)"};
533 val_t variable0;
534 val_t variable1;
535 val_t variable2;
536 val_t variable3;
537 trace.prev = tracehead; tracehead = &trace;
538 variable0 = param0;
539 variable1 = param1;
540 variable2 = TAG_Bool(UNTAG_Int( self)<UNTAG_Int( variable0 /*c*/));
541 variable3 = variable2;
542 if (!UNTAG_Bool(variable3)) { /* or */
543 variable3 = TAG_Bool(UNTAG_Int( variable1 /*d*/)<UNTAG_Int( self));
544 }
545 variable2 = variable3;
546 if (UNTAG_Bool(variable2)) { /*if*/
547 variable2 = TAG_Bool(false);
548 goto return_label17;
549 } else { /*if*/
550 variable2 = TAG_Bool(true);
551 goto return_label17;
552 }
553 return_label17: while(false);
554 tracehead = trace.prev;
555 return variable2;
556 }
557 val_t kernel___Int___max(val_t self, val_t param0) {
558 struct trace_t trace = {NULL, "kernel::Int::max (bin/../lib/standard//kernel.nit:259,2--264:14)"};
559 val_t variable0;
560 val_t variable1;
561 trace.prev = tracehead; tracehead = &trace;
562 variable0 = param0;
563 variable1 = TAG_Bool(UNTAG_Int( self)<UNTAG_Int( variable0 /*other*/));
564 if (UNTAG_Bool(variable1)) { /*if*/
565 variable1 = variable0 /*other*/;
566 goto return_label18;
567 } else { /*if*/
568 variable1 = self;
569 goto return_label18;
570 }
571 return_label18: while(false);
572 tracehead = trace.prev;
573 return variable1;
574 }
575 val_t kernel___Int___min(val_t self, val_t param0) {
576 struct trace_t trace = {NULL, "kernel::Int::min (bin/../lib/standard//kernel.nit:268,2--273:14)"};
577 val_t variable0;
578 val_t variable1;
579 trace.prev = tracehead; tracehead = &trace;
580 variable0 = param0;
581 variable1 = TAG_Bool(UNTAG_Int( variable0 /*c*/)<UNTAG_Int( self));
582 if (UNTAG_Bool(variable1)) { /*if*/
583 variable1 = variable0 /*c*/;
584 goto return_label19;
585 } else { /*if*/
586 variable1 = self;
587 goto return_label19;
588 }
589 return_label19: while(false);
590 tracehead = trace.prev;
591 return variable1;
592 }
593 val_t kernel___Int___ascii(val_t self) {
594 struct trace_t trace = {NULL, "kernel::Int::ascii (bin/../lib/standard//kernel.nit:277,2--278:17)"};
595 trace.prev = tracehead; tracehead = &trace;
596 tracehead = trace.prev;
597 return TAG_Char(UNTAG_Int( self));
598 }
599 val_t kernel___Int___digit_count(val_t self, val_t param0) {
600 struct trace_t trace = {NULL, "kernel::Int::digit_count (bin/../lib/standard//kernel.nit:280,2--300:10)"};
601 val_t variable0;
602 val_t variable1;
603 val_t variable2;
604 val_t variable3;
605 trace.prev = tracehead; tracehead = &trace;
606 variable0 = param0;
607 variable1 = TAG_Int((int)0) /*decl variable d*/;
608 variable2 = TAG_Int((int)0) /*decl variable n*/;
609 variable3 = TAG_Bool(UNTAG_Int( self)<UNTAG_Int( TAG_Int(0)));
610 if (UNTAG_Bool(variable3)) { /*if*/
611 variable1 = TAG_Int(1) /*d=*/;
612 variable3 = TAG_Int(-UNTAG_Int( self));
613 variable2 = variable3 /*n=*/;
614 } else { /*if*/
615 variable3 = TAG_Bool(( self)==( TAG_Int(0)));
616 if (UNTAG_Bool(variable3)) { /*if*/
617 variable1 = TAG_Int(1);
618 goto return_label20;
619 } else { /*if*/
620 variable1 = TAG_Int(0) /*d=*/;
621 variable2 = self /*n=*/;
622 }
623 }
624 while (true) { /*while*/
625 variable3 = TAG_Bool(UNTAG_Int( variable2 /*n*/)>UNTAG_Int( TAG_Int(0)));
626 if (!UNTAG_Bool(variable3)) break; /* while*/
627 variable1 = TAG_Int(UNTAG_Int(variable1)+UNTAG_Int( TAG_Int(1))) /*d*/;
628 variable3 = TAG_Int(UNTAG_Int( variable2 /*n*/)/UNTAG_Int( variable0 /*b*/));
629 variable2 = variable3 /*n=*/;
630 continue_21: while(0);
631 }
632 break_21: while(0);
633 variable1 = variable1 /*d*/;
634 goto return_label20;
635 return_label20: while(false);
636 tracehead = trace.prev;
637 return variable1;
638 }
639 val_t kernel___Int___to_c(val_t self) {
640 struct trace_t trace = {NULL, "kernel::Int::to_c (bin/../lib/standard//kernel.nit:303,2--312:41)"};
641 val_t variable0;
642 val_t variable1;
643 trace.prev = tracehead; tracehead = &trace;
644 variable0 = TAG_Bool(UNTAG_Int( self)>=UNTAG_Int( TAG_Int(0)));
645 variable1 = variable0;
646 if (UNTAG_Bool(variable1)) { /* and */
647 variable1 = TAG_Bool(UNTAG_Int( self)<=UNTAG_Int( TAG_Int(36)));
648 }
649 variable0 = variable1;
650 if (!UNTAG_Bool(variable0)) { fprintf(stderr, "Assert failed: bin/../lib/standard//kernel.nit:308,3--33\n"); nit_exit(1);}
651 variable0 = TAG_Bool(UNTAG_Int( self)<UNTAG_Int( TAG_Int(10)));
652 if (UNTAG_Bool(variable0)) { /*if*/
653 variable0 = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('0')));
654 variable0 = TAG_Int(UNTAG_Int( self)+UNTAG_Int(variable0));
655 variable0 = TAG_Char(UNTAG_Int(variable0));
656 goto return_label22;
657 } else { /*if*/
658 variable0 = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('a')));
659 variable0 = TAG_Int(UNTAG_Int(variable0)-UNTAG_Int( TAG_Int(10)));
660 variable0 = TAG_Int(UNTAG_Int( self)+UNTAG_Int(variable0));
661 variable0 = TAG_Char(UNTAG_Int(variable0));
662 goto return_label22;
663 }
664 return_label22: while(false);
665 tracehead = trace.prev;
666 return variable0;
667 }
668 val_t kernel___Char___object_id(val_t self) {
669 struct trace_t trace = {NULL, "kernel::Char::object_id (bin/../lib/standard//kernel.nit:324,2--21)"};
670 trace.prev = tracehead; tracehead = &trace;
671 tracehead = trace.prev;
672 return TAG_Int(UNTAG_Char( self));
673 }
674 val_t kernel___Char_____eqeq(val_t self, val_t param0) {
675 struct trace_t trace = {NULL, "kernel::Char::== (bin/../lib/standard//kernel.nit:325,2--16)"};
676 trace.prev = tracehead; tracehead = &trace;
677 tracehead = trace.prev;
678 return TAG_Bool(( self)==( param0));
679 }
680 val_t kernel___Char_____neq(val_t self, val_t param0) {
681 struct trace_t trace = {NULL, "kernel::Char::!= (bin/../lib/standard//kernel.nit:326,2--16)"};
682 trace.prev = tracehead; tracehead = &trace;
683 tracehead = trace.prev;
684 return TAG_Bool(( self)!=( param0));
685 }
686 void kernel___Char___output(val_t self) {
687 struct trace_t trace = {NULL, "kernel::Char::output (bin/../lib/standard//kernel.nit:327,2--18)"};
688 trace.prev = tracehead; tracehead = &trace;
689 printf("%c", (unsigned char)UNTAG_Char( self));
690 tracehead = trace.prev;
691 return;
692 }
693 val_t kernel___Char_____leq(val_t self, val_t param0) {
694 struct trace_t trace = {NULL, "kernel::Char::<= (bin/../lib/standard//kernel.nit:329,2--16)"};
695 trace.prev = tracehead; tracehead = &trace;
696 tracehead = trace.prev;
697 return TAG_Bool(UNTAG_Char( self)<=UNTAG_Char( param0));
698 }
699 val_t kernel___Char_____l(val_t self, val_t param0) {
700 struct trace_t trace = {NULL, "kernel::Char::< (bin/../lib/standard//kernel.nit:330,2--15)"};
701 trace.prev = tracehead; tracehead = &trace;
702 tracehead = trace.prev;
703 return TAG_Bool(UNTAG_Char( self)<UNTAG_Char( param0));
704 }
705 val_t kernel___Char_____geq(val_t self, val_t param0) {
706 struct trace_t trace = {NULL, "kernel::Char::>= (bin/../lib/standard//kernel.nit:331,2--16)"};
707 trace.prev = tracehead; tracehead = &trace;
708 tracehead = trace.prev;
709 return TAG_Bool(UNTAG_Char( self)>=UNTAG_Char( param0));
710 }
711 val_t kernel___Char_____g(val_t self, val_t param0) {
712 struct trace_t trace = {NULL, "kernel::Char::> (bin/../lib/standard//kernel.nit:332,2--15)"};
713 trace.prev = tracehead; tracehead = &trace;
714 tracehead = trace.prev;
715 return TAG_Bool(UNTAG_Char( self)>UNTAG_Char( param0));
716 }
717 val_t kernel___Char___succ(val_t self) {
718 struct trace_t trace = {NULL, "kernel::Char::succ (bin/../lib/standard//kernel.nit:334,2--16)"};
719 trace.prev = tracehead; tracehead = &trace;
720 tracehead = trace.prev;
721 return TAG_Char(UNTAG_Char( self)+1);
722 }
723 val_t kernel___Char___prec(val_t self) {
724 struct trace_t trace = {NULL, "kernel::Char::prec (bin/../lib/standard//kernel.nit:335,2--16)"};
725 trace.prev = tracehead; tracehead = &trace;
726 tracehead = trace.prev;
727 return TAG_Char(UNTAG_Char( self)-1);
728 }
729 val_t kernel___Char___distance(val_t self, val_t param0) {
730 struct trace_t trace = {NULL, "kernel::Char::distance (bin/../lib/standard//kernel.nit:337,2--343:12)"};
731 val_t variable0;
732 val_t variable1;
733 val_t variable2;
734 val_t variable3;
735 trace.prev = tracehead; tracehead = &trace;
736 variable0 = param0;
737 variable2 = TAG_Int((unsigned char)UNTAG_Char( self));
738 variable3 = TAG_Int((unsigned char)UNTAG_Char( variable0 /*c*/));
739 variable2 = TAG_Int(UNTAG_Int(variable2)-UNTAG_Int(variable3));
740 variable1 = variable2;
741 variable2 = TAG_Bool(UNTAG_Int( variable1 /*d*/)>=UNTAG_Int( TAG_Int(0)));
742 if (UNTAG_Bool(variable2)) { /*if*/
743 variable1 = variable1 /*d*/;
744 goto return_label23;
745 } else { /*if*/
746 variable2 = TAG_Int(-UNTAG_Int( variable1 /*d*/));
747 variable1 = variable2;
748 goto return_label23;
749 }
750 return_label23: while(false);
751 tracehead = trace.prev;
752 return variable1;
753 }
754 val_t kernel___Char___to_i(val_t self) {
755 struct trace_t trace = {NULL, "kernel::Char::to_i (bin/../lib/standard//kernel.nit:347,2--356:47)"};
756 val_t variable0;
757 val_t variable1;
758 trace.prev = tracehead; tracehead = &trace;
759 variable0 = TAG_Bool(( self)==( TAG_Char('-')));
760 if (UNTAG_Bool(variable0)) { /*if*/
761 variable0 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
762 goto return_label24;
763 } else { /*if*/
764 variable0 = TAG_Bool(UNTAG_Char( self)>=UNTAG_Char( TAG_Char('0')));
765 variable1 = variable0;
766 if (UNTAG_Bool(variable1)) { /* and */
767 variable1 = TAG_Bool(UNTAG_Char( self)<=UNTAG_Char( TAG_Char('9')));
768 }
769 variable0 = variable1;
770 if (UNTAG_Bool(variable0)) { /*if*/
771 variable0 = TAG_Int((unsigned char)UNTAG_Char( self));
772 variable1 = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('0')));
773 variable0 = TAG_Int(UNTAG_Int(variable0)-UNTAG_Int(variable1));
774 goto return_label24;
775 } else { /*if*/
776 variable0 = ((kernel___Char___to_lower_t)CALL( self,COLOR_kernel___Char___to_lower))( self) /*Char::to_lower*/;
777 variable0 = TAG_Int((unsigned char)UNTAG_Char(variable0));
778 variable1 = TAG_Int((unsigned char)UNTAG_Char( TAG_Char('a')));
779 variable1 = TAG_Int(UNTAG_Int(variable1)+UNTAG_Int( TAG_Int(10)));
780 variable0 = TAG_Int(UNTAG_Int(variable0)-UNTAG_Int(variable1));
781 goto return_label24;
782 }
783 }
784 return_label24: while(false);
785 tracehead = trace.prev;
786 return variable0;
787 }
788 val_t kernel___Char___ascii(val_t self) {
789 struct trace_t trace = {NULL, "kernel::Char::ascii (bin/../lib/standard//kernel.nit:360,2--361:16)"};
790 trace.prev = tracehead; tracehead = &trace;
791 tracehead = trace.prev;
792 return TAG_Int((unsigned char)UNTAG_Char( self));
793 }
794 val_t kernel___Char_____plus(val_t self, val_t param0) {
795 struct trace_t trace = {NULL, "kernel::Char::+ (bin/../lib/standard//kernel.nit:363,2--15)"};
796 trace.prev = tracehead; tracehead = &trace;
797 tracehead = trace.prev;
798 return TAG_Char(UNTAG_Char( self)+UNTAG_Char( param0));
799 }
800 val_t kernel___Char_____minus(val_t self, val_t param0) {
801 struct trace_t trace = {NULL, "kernel::Char::- (bin/../lib/standard//kernel.nit:364,2--15)"};
802 trace.prev = tracehead; tracehead = &trace;
803 tracehead = trace.prev;
804 return TAG_Char(UNTAG_Char( self)-UNTAG_Char( param0));
805 }
806 val_t kernel___Char___to_lower(val_t self) {
807 struct trace_t trace = {NULL, "kernel::Char::to_lower (bin/../lib/standard//kernel.nit:366,2--372:14)"};
808 val_t variable0;
809 val_t variable1;
810 trace.prev = tracehead; tracehead = &trace;
811 variable0 = TAG_Bool(UNTAG_Char( self)>=UNTAG_Char( TAG_Char('A')));
812 variable1 = variable0;
813 if (UNTAG_Bool(variable1)) { /* and */
814 variable1 = TAG_Bool(UNTAG_Char( self)<=UNTAG_Char( TAG_Char('Z')));
815 }
816 variable0 = variable1;
817 if (UNTAG_Bool(variable0)) { /*if*/
818 variable0 = TAG_Int((unsigned char)UNTAG_Char( self));
819 variable1 = ((kernel___Char___distance_t)CALL( TAG_Char('a'),COLOR_kernel___Discrete___distance))( TAG_Char('a'), TAG_Char('A')) /*Char::distance*/;
820 variable0 = TAG_Int(UNTAG_Int(variable0)+UNTAG_Int(variable1));
821 variable0 = TAG_Char(UNTAG_Int(variable0));
822 goto return_label25;
823 } else { /*if*/
824 variable0 = self;
825 goto return_label25;
826 }
827 return_label25: while(false);
828 tracehead = trace.prev;
829 return variable0;
830 }
831 val_t kernel___Char___to_upper(val_t self) {
832 struct trace_t trace = {NULL, "kernel::Char::to_upper (bin/../lib/standard//kernel.nit:376,2--382:14)"};
833 val_t variable0;
834 val_t variable1;
835 trace.prev = tracehead; tracehead = &trace;
836 variable0 = TAG_Bool(UNTAG_Char( self)>=UNTAG_Char( TAG_Char('a')));
837 variable1 = variable0;
838 if (UNTAG_Bool(variable1)) { /* and */
839 variable1 = TAG_Bool(UNTAG_Char( self)<=UNTAG_Char( TAG_Char('z')));
840 }
841 variable0 = variable1;
842 if (UNTAG_Bool(variable0)) { /*if*/
843 variable0 = TAG_Int((unsigned char)UNTAG_Char( self));
844 variable1 = ((kernel___Char___distance_t)CALL( TAG_Char('a'),COLOR_kernel___Discrete___distance))( TAG_Char('a'), TAG_Char('A')) /*Char::distance*/;
845 variable0 = TAG_Int(UNTAG_Int(variable0)-UNTAG_Int(variable1));
846 variable0 = TAG_Char(UNTAG_Int(variable0));
847 goto return_label26;
848 } else { /*if*/
849 variable0 = self;
850 goto return_label26;
851 }
852 return_label26: while(false);
853 tracehead = trace.prev;
854 return variable0;
855 }