6865541e8316c4dfdc66cf0b59a9de4cb3a35a90
[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, LOCATE_vararg, 24, LOCATE_vararg___MMSignature___vararg_rank};
5 trace.prev = tracehead; tracehead = &trace;
6 tracehead = trace.prev;
7 return ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/;
8 }
9 void vararg___MMSignature___vararg_rank__eq(val_t self, val_t param0) {
10 struct trace_t trace = {NULL, LOCATE_vararg, 24, LOCATE_vararg___MMSignature___vararg_rank__eq};
11 trace.prev = tracehead; tracehead = &trace;
12 ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/ = param0;
13 tracehead = trace.prev;
14 return;
15 }
16 val_t vararg___MMSignature___has_vararg(val_t self) {
17 struct trace_t trace = {NULL, LOCATE_vararg, 27, LOCATE_vararg___MMSignature___has_vararg};
18 val_t variable0;
19 trace.prev = tracehead; tracehead = &trace;
20 variable0 = ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/;
21 variable0 = TAG_Bool(UNTAG_Int(variable0)>=UNTAG_Int( TAG_Int(0)));
22 goto return_label0;
23 return_label0: while(false);
24 tracehead = trace.prev;
25 return variable0;
26 }
27 val_t vararg___MMSignature___adaptation_to(val_t self, val_t param0) {
28 struct trace_t trace = {NULL, LOCATE_vararg, 33, LOCATE_vararg___MMSignature___adaptation_to};
29 val_t variable0;
30 val_t variable1;
31 val_t variable2;
32 trace.prev = tracehead; tracehead = &trace;
33 variable0 = param0;
34 variable2 = ((vararg___MMSignature___adaptation_to_t)CALL( self,COLOR_SUPER_vararg___MMSignature___adaptation_to))( self, variable0 /*r*/) /*super MMSignature::adaptation_to*/;
35 variable1 = variable2;
36 variable2 = ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/;
37 ((vararg___MMSignature___vararg_rank__eq_t)CALL( variable1 /*s*/,COLOR_vararg___MMSignature___vararg_rank__eq))( variable1 /*s*/, variable2) /*MMSignature::vararg_rank=*/;
38 variable1 = variable1 /*s*/;
39 goto return_label1;
40 return_label1: while(false);
41 tracehead = trace.prev;
42 return variable1;
43 }
44 void vararg___MMSignature___init(val_t self, val_t param0, val_t param1, val_t param2, int* init_table) {
45 struct trace_t trace = {NULL, LOCATE_vararg, 40, LOCATE_vararg___MMSignature___init};
46 val_t variable0;
47 val_t variable1;
48 val_t variable2;
49 val_t variable3;
50 trace.prev = tracehead; tracehead = &trace;
51 variable0 = param0;
52 variable1 = param1;
53 variable2 = param2;
54 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_MMSignature].i]) return;
55 ((vararg___MMSignature___init_t)CALL( self,COLOR_SUPER_vararg___MMSignature___init))( self, param0, param1, param2, init_table) /*super MMSignature::init*/;
56 variable3 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
57 ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/ = variable3;
58 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_MMSignature].i] = 1;
59 tracehead = trace.prev;
60 return;
61 }