c_src: update
[nit.git] / c_src / metamodel___vararg._sep.c
1 /* This C file is generated by NIT to compile module metamodel___vararg. */
2 #include "metamodel___vararg._sep.h"
3 val_t metamodel___vararg___MMSignature___vararg_rank(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_metamodel___vararg;
9 fra.me.line = 24;
10 fra.me.meth = LOCATE_metamodel___vararg___MMSignature___vararg_rank;
11 fra.me.has_broke = 0;
12 fra.me.REG_size = 1;
13 fra.me.nitni_local_ref_head = NULL;
14 fra.me.REG[0] = NIT_NULL;
15 fra.me.REG[0] = p0;
16 /* metamodel/vararg.nit:24 */
17 REGB0 = TAG_Bool(ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[0])!=NIT_NULL);
18 if (UNTAG_Bool(REGB0)) {
19 } else {
20 nit_abort("Uninitialized attribute %s", "_vararg_rank", LOCATE_metamodel___vararg, 24);
21 }
22 REGB0 = ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[0]);
23 stack_frame_head = fra.me.prev;
24 return REGB0;
25 }
26 void metamodel___vararg___MMSignature___vararg_rank__eq(val_t p0, val_t p1){
27 struct {struct stack_frame_t me;} fra;
28 val_t REGB0;
29 val_t tmp;
30 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
31 fra.me.file = LOCATE_metamodel___vararg;
32 fra.me.line = 24;
33 fra.me.meth = LOCATE_metamodel___vararg___MMSignature___vararg_rank__eq;
34 fra.me.has_broke = 0;
35 fra.me.REG_size = 1;
36 fra.me.nitni_local_ref_head = NULL;
37 fra.me.REG[0] = NIT_NULL;
38 fra.me.REG[0] = p0;
39 REGB0 = p1;
40 /* metamodel/vararg.nit:24 */
41 ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[0]) = REGB0;
42 stack_frame_head = fra.me.prev;
43 return;
44 }
45 val_t metamodel___vararg___MMSignature___has_vararg(val_t p0){
46 struct {struct stack_frame_t me;} fra;
47 val_t REGB0;
48 val_t REGB1;
49 val_t REGB2;
50 val_t tmp;
51 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
52 fra.me.file = LOCATE_metamodel___vararg;
53 fra.me.line = 27;
54 fra.me.meth = LOCATE_metamodel___vararg___MMSignature___has_vararg;
55 fra.me.has_broke = 0;
56 fra.me.REG_size = 1;
57 fra.me.nitni_local_ref_head = NULL;
58 fra.me.REG[0] = NIT_NULL;
59 fra.me.REG[0] = p0;
60 /* metamodel/vararg.nit:30 */
61 REGB0 = TAG_Bool(ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[0])!=NIT_NULL);
62 if (UNTAG_Bool(REGB0)) {
63 } else {
64 nit_abort("Uninitialized attribute %s", "_vararg_rank", LOCATE_metamodel___vararg, 30);
65 }
66 REGB0 = ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[0]);
67 REGB1 = TAG_Int(0);
68 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
69 if (UNTAG_Bool(REGB2)) {
70 } else {
71 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
72 }
73 /* ../lib/standard/kernel.nit:233 */
74 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
75 /* metamodel/vararg.nit:30 */
76 goto label1;
77 label1: while(0);
78 stack_frame_head = fra.me.prev;
79 return REGB1;
80 }
81 val_t metamodel___vararg___MMSignature___adaptation_to(val_t p0, val_t p1){
82 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
83 val_t REGB0;
84 val_t tmp;
85 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
86 fra.me.file = LOCATE_metamodel___vararg;
87 fra.me.line = 33;
88 fra.me.meth = LOCATE_metamodel___vararg___MMSignature___adaptation_to;
89 fra.me.has_broke = 0;
90 fra.me.REG_size = 3;
91 fra.me.nitni_local_ref_head = NULL;
92 fra.me.REG[0] = NIT_NULL;
93 fra.me.REG[1] = NIT_NULL;
94 fra.me.REG[2] = NIT_NULL;
95 fra.me.REG[0] = p0;
96 fra.me.REG[1] = p1;
97 /* metamodel/vararg.nit:33 */
98 fra.me.REG[2] = fra.me.REG[0];
99 /* metamodel/vararg.nit:35 */
100 fra.me.REG[1] = CALL_SUPER_metamodel___vararg___MMSignature___adaptation_to(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
101 /* metamodel/vararg.nit:36 */
102 REGB0 = TAG_Bool(ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[2])!=NIT_NULL);
103 if (UNTAG_Bool(REGB0)) {
104 } else {
105 nit_abort("Uninitialized attribute %s", "_vararg_rank", LOCATE_metamodel___vararg, 36);
106 }
107 REGB0 = ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[2]);
108 CALL_metamodel___vararg___MMSignature___vararg_rank__eq(fra.me.REG[1])(fra.me.REG[1], REGB0);
109 /* metamodel/vararg.nit:37 */
110 goto label1;
111 label1: while(0);
112 stack_frame_head = fra.me.prev;
113 return fra.me.REG[1];
114 }
115 val_t metamodel___vararg___MMSignature___not_for_self(val_t p0){
116 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
117 val_t REGB0;
118 val_t tmp;
119 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
120 fra.me.file = LOCATE_metamodel___vararg;
121 fra.me.line = 40;
122 fra.me.meth = LOCATE_metamodel___vararg___MMSignature___not_for_self;
123 fra.me.has_broke = 0;
124 fra.me.REG_size = 2;
125 fra.me.nitni_local_ref_head = NULL;
126 fra.me.REG[0] = NIT_NULL;
127 fra.me.REG[1] = NIT_NULL;
128 fra.me.REG[0] = p0;
129 /* metamodel/vararg.nit:40 */
130 fra.me.REG[1] = fra.me.REG[0];
131 /* metamodel/vararg.nit:42 */
132 fra.me.REG[0] = CALL_SUPER_metamodel___vararg___MMSignature___not_for_self(fra.me.REG[0])(fra.me.REG[0]);
133 /* metamodel/vararg.nit:43 */
134 REGB0 = TAG_Bool(ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[1])!=NIT_NULL);
135 if (UNTAG_Bool(REGB0)) {
136 } else {
137 nit_abort("Uninitialized attribute %s", "_vararg_rank", LOCATE_metamodel___vararg, 43);
138 }
139 REGB0 = ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[1]);
140 CALL_metamodel___vararg___MMSignature___vararg_rank__eq(fra.me.REG[0])(fra.me.REG[0], REGB0);
141 /* metamodel/vararg.nit:44 */
142 goto label1;
143 label1: while(0);
144 stack_frame_head = fra.me.prev;
145 return fra.me.REG[0];
146 }
147 void metamodel___vararg___MMSignature___init(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
148 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_metamodel___static_type___MMSignature].i;
149 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
150 val_t REGB0;
151 val_t tmp;
152 if (init_table[itpos0]) return;
153 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
154 fra.me.file = LOCATE_metamodel___vararg;
155 fra.me.line = 47;
156 fra.me.meth = LOCATE_metamodel___vararg___MMSignature___init;
157 fra.me.has_broke = 0;
158 fra.me.REG_size = 5;
159 fra.me.nitni_local_ref_head = NULL;
160 fra.me.REG[0] = NIT_NULL;
161 fra.me.REG[1] = NIT_NULL;
162 fra.me.REG[2] = NIT_NULL;
163 fra.me.REG[3] = NIT_NULL;
164 fra.me.REG[4] = NIT_NULL;
165 fra.me.REG[0] = p0;
166 fra.me.REG[1] = p1;
167 fra.me.REG[2] = p2;
168 fra.me.REG[3] = p3;
169 /* metamodel/vararg.nit:47 */
170 fra.me.REG[4] = fra.me.REG[0];
171 /* metamodel/vararg.nit:49 */
172 CALL_SUPER_metamodel___vararg___MMSignature___init(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[2], fra.me.REG[3], init_table);
173 /* metamodel/vararg.nit:50 */
174 REGB0 = TAG_Int(1);
175 /* ../lib/standard/kernel.nit:236 */
176 REGB0 = TAG_Int(-UNTAG_Int(REGB0));
177 /* metamodel/vararg.nit:50 */
178 ATTR_metamodel___vararg___MMSignature____vararg_rank(fra.me.REG[4]) = REGB0;
179 stack_frame_head = fra.me.prev;
180 init_table[itpos0] = 1;
181 return;
182 }