d123ec5729962ebd706997b86186d10ff998d3fa
[nit.git] / c_src / vararg._sep.c
1 /* This C file is generated by NIT to compile module vararg. */
2 #include "vararg._sep.h"
3 val_t vararg___MMSignature___vararg_rank(val_t self) {
4 struct trace_t trace = {NULL, NULL, 24, LOCATE_vararg___MMSignature___vararg_rank};
5 trace.prev = tracehead; tracehead = &trace;
6 trace.file = LOCATE_vararg;
7 tracehead = trace.prev;
8 return ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/;
9 }
10 void vararg___MMSignature___vararg_rank__eq(val_t self, val_t param0) {
11 struct trace_t trace = {NULL, NULL, 24, LOCATE_vararg___MMSignature___vararg_rank__eq};
12 trace.prev = tracehead; tracehead = &trace;
13 trace.file = LOCATE_vararg;
14 ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/ = param0;
15 tracehead = trace.prev;
16 return;
17 }
18 val_t vararg___MMSignature___has_vararg(val_t self) {
19 struct trace_t trace = {NULL, NULL, 27, LOCATE_vararg___MMSignature___has_vararg};
20 val_t variable0;
21 trace.prev = tracehead; tracehead = &trace;
22 trace.file = LOCATE_vararg;
23 variable0 = ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/;
24 variable0 = TAG_Bool(UNTAG_Int(variable0)>=UNTAG_Int( TAG_Int(0)));
25 goto return_label0;
26 return_label0: while(false);
27 tracehead = trace.prev;
28 return variable0;
29 }
30 val_t vararg___MMSignature___adaptation_to(val_t self, val_t param0) {
31 struct trace_t trace = {NULL, NULL, 33, LOCATE_vararg___MMSignature___adaptation_to};
32 val_t variable0;
33 val_t variable1;
34 val_t variable2;
35 trace.prev = tracehead; tracehead = &trace;
36 trace.file = LOCATE_vararg;
37 variable0 = param0;
38 variable2 = ((vararg___MMSignature___adaptation_to_t)CALL( self,COLOR_SUPER_vararg___MMSignature___adaptation_to))( self, variable0 /*r*/) /*super MMSignature::adaptation_to*/;
39 variable1 = variable2;
40 variable2 = ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/;
41 ((vararg___MMSignature___vararg_rank__eq_t)CALL( variable1 /*s*/,COLOR_vararg___MMSignature___vararg_rank__eq))( variable1 /*s*/, variable2) /*MMSignature::vararg_rank=*/;
42 variable1 = variable1 /*s*/;
43 goto return_label1;
44 return_label1: while(false);
45 tracehead = trace.prev;
46 return variable1;
47 }
48 void vararg___MMSignature___init(val_t self, val_t param0, val_t param1, val_t param2, int* init_table) {
49 struct trace_t trace = {NULL, NULL, 40, LOCATE_vararg___MMSignature___init};
50 val_t variable0;
51 val_t variable1;
52 val_t variable2;
53 val_t variable3;
54 trace.prev = tracehead; tracehead = &trace;
55 trace.file = LOCATE_vararg;
56 variable0 = param0;
57 variable1 = param1;
58 variable2 = param2;
59 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_MMSignature].i]) return;
60 ((vararg___MMSignature___init_t)CALL( self,COLOR_SUPER_vararg___MMSignature___init))( self, param0, param1, param2, init_table) /*super MMSignature::init*/;
61 variable3 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
62 ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/ = variable3;
63 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_MMSignature].i] = 1;
64 tracehead = trace.prev;
65 return;
66 }