new c_src
[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___adaptation_to(val_t self, val_t param0) {
4 struct trace_t trace = {NULL, NULL, 33, LOCATE_vararg___MMSignature___adaptation_to};
5 val_t variable[5];
6 void **closurevariable = NULL;
7 trace.prev = tracehead; tracehead = &trace;
8 trace.file = LOCATE_vararg;
9 variable[0] = self;
10 variable[1] = param0;
11 variable[4] = CALL_SUPER_vararg___MMSignature___adaptation_to(variable[0])(variable[0], variable[1] /*r*/) /*super MMSignature::adaptation_to*/;
12 variable[3] = variable[4];
13 variable[4] = variable[0];
14 variable[4] = ATTR_vararg___MMSignature____vararg_rank(variable[4]) /*MMSignature::_vararg_rank*/;
15 CALL_vararg___MMSignature___vararg_rank__eq( variable[3] /*s*/)( variable[3] /*s*/, variable[4]) /*MMSignature::vararg_rank=*/;
16 variable[2] = variable[3] /*s*/;
17 goto return_label0;
18 return_label0: while(false);
19 tracehead = trace.prev;
20 return variable[2];
21 }
22 val_t vararg___MMSignature___not_for_self(val_t self) {
23 struct trace_t trace = {NULL, NULL, 40, LOCATE_vararg___MMSignature___not_for_self};
24 val_t variable[4];
25 void **closurevariable = NULL;
26 trace.prev = tracehead; tracehead = &trace;
27 trace.file = LOCATE_vararg;
28 variable[0] = self;
29 variable[3] = CALL_SUPER_vararg___MMSignature___not_for_self(variable[0])(variable[0]) /*super MMSignature::not_for_self*/;
30 variable[2] = variable[3];
31 variable[3] = variable[0];
32 variable[3] = ATTR_vararg___MMSignature____vararg_rank(variable[3]) /*MMSignature::_vararg_rank*/;
33 CALL_vararg___MMSignature___vararg_rank__eq( variable[2] /*s*/)( variable[2] /*s*/, variable[3]) /*MMSignature::vararg_rank=*/;
34 variable[1] = variable[2] /*s*/;
35 goto return_label1;
36 return_label1: while(false);
37 tracehead = trace.prev;
38 return variable[1];
39 }
40 void vararg___MMSignature___init(val_t self, val_t param0, val_t param1, val_t param2, int* init_table) {
41 struct trace_t trace = {NULL, NULL, 47, LOCATE_vararg___MMSignature___init};
42 val_t variable[7];
43 void **closurevariable = NULL;
44 trace.prev = tracehead; tracehead = &trace;
45 trace.file = LOCATE_vararg;
46 variable[0] = self;
47 variable[1] = param0;
48 variable[2] = param1;
49 variable[3] = param2;
50 if (init_table[VAL2OBJ(variable[0])->vft[INIT_TABLE_POS_MMSignature].i]) return;
51 CALL_SUPER_vararg___MMSignature___init(variable[0])(variable[0], variable[1], variable[2], variable[3], init_table) /*super MMSignature::init*/;
52 variable[5] = variable[0];
53 variable[6] = TAG_Int(-UNTAG_Int( TAG_Int(1)));
54 ATTR_vararg___MMSignature____vararg_rank(variable[5]) /*MMSignature::_vararg_rank*/ = variable[6];
55 return_label2: while(false);
56 init_table[VAL2OBJ(variable[0])->vft[INIT_TABLE_POS_MMSignature].i] = 1;
57 tracehead = trace.prev;
58 return;
59 }
60 val_t vararg___MMSignature___vararg_rank(val_t self) {
61 struct trace_t trace = {NULL, NULL, 24, LOCATE_vararg___MMSignature___vararg_rank};
62 val_t *variable = NULL;
63 void **closurevariable = NULL;
64 trace.prev = tracehead; tracehead = &trace;
65 trace.file = LOCATE_vararg;
66 tracehead = trace.prev;
67 return ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/;
68 }
69 void vararg___MMSignature___vararg_rank__eq(val_t self, val_t param0) {
70 struct trace_t trace = {NULL, NULL, 24, LOCATE_vararg___MMSignature___vararg_rank__eq};
71 val_t *variable = NULL;
72 void **closurevariable = NULL;
73 trace.prev = tracehead; tracehead = &trace;
74 trace.file = LOCATE_vararg;
75 ATTR_vararg___MMSignature____vararg_rank( self) /*MMSignature::_vararg_rank*/ = param0;
76 tracehead = trace.prev;
77 return;
78 }
79 val_t vararg___MMSignature___has_vararg(val_t self) {
80 struct trace_t trace = {NULL, NULL, 27, LOCATE_vararg___MMSignature___has_vararg};
81 val_t variable[3];
82 void **closurevariable = NULL;
83 trace.prev = tracehead; tracehead = &trace;
84 trace.file = LOCATE_vararg;
85 variable[0] = self;
86 variable[2] = variable[0];
87 variable[2] = ATTR_vararg___MMSignature____vararg_rank(variable[2]) /*MMSignature::_vararg_rank*/;
88 variable[2] = TAG_Bool(UNTAG_Int(variable[2])>=UNTAG_Int( TAG_Int(0)));
89 variable[1] = variable[2];
90 goto return_label3;
91 return_label3: while(false);
92 tracehead = trace.prev;
93 return variable[1];
94 }