README: document nit_env.sh
[nit.git] / c_src / nit__model_base.sep.1.c
1 #include "nit__model_base.sep.0.h"
2 /* method model_base#MEntity#full_name for (self: MEntity): String */
3 val* nit___nit__MEntity___full_name(val* self) {
4 val* var /* : String */;
5 const char* var_class_name;
6 var_class_name = self == NULL ? "null" : self->type->name;
7 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "full_name", var_class_name);
8 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model_base, 37);
9 fatal_exit(1);
10 RET_LABEL:;
11 return var;
12 }
13 /* method model_base#MEntity#c_name for (self: MEntity): String */
14 val* nit___nit__MEntity___c_name(val* self) {
15 val* var /* : String */;
16 const char* var_class_name;
17 var_class_name = self == NULL ? "null" : self->type->name;
18 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "c_name", var_class_name);
19 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model_base, 50);
20 fatal_exit(1);
21 RET_LABEL:;
22 return var;
23 }
24 /* method model_base#MEntity#model for (self: MEntity): Model */
25 val* nit___nit__MEntity___model(val* self) {
26 val* var /* : Model */;
27 const char* var_class_name;
28 var_class_name = self == NULL ? "null" : self->type->name;
29 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "model", var_class_name);
30 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model_base, 65);
31 fatal_exit(1);
32 RET_LABEL:;
33 return var;
34 }
35 /* method model_base#MVisibility#to_s for (self: MVisibility): String */
36 val* nit___nit__MVisibility___standard__string__Object__to_s(val* self) {
37 val* var /* : String */;
38 val* var1 /* : String */;
39 var1 = self->attrs[COLOR_nit__model_base__MVisibility___to_s].val; /* _to_s on <self:MVisibility> */
40 if (unlikely(var1 == NULL)) {
41 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _to_s");
42 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model_base, 91);
43 fatal_exit(1);
44 }
45 var = var1;
46 RET_LABEL:;
47 return var;
48 }
49 /* method model_base#MVisibility#to_s= for (self: MVisibility, String) */
50 void nit___nit__MVisibility___to_s_61d(val* self, val* p0) {
51 self->attrs[COLOR_nit__model_base__MVisibility___to_s].val = p0; /* _to_s on <self:MVisibility> */
52 RET_LABEL:;
53 }
54 /* method model_base#MVisibility#level for (self: MVisibility): Int */
55 long nit___nit__MVisibility___level(val* self) {
56 long var /* : Int */;
57 long var1 /* : Int */;
58 var1 = self->attrs[COLOR_nit__model_base__MVisibility___level].l; /* _level on <self:MVisibility> */
59 var = var1;
60 RET_LABEL:;
61 return var;
62 }
63 /* method model_base#MVisibility#level= for (self: MVisibility, Int) */
64 void nit___nit__MVisibility___level_61d(val* self, long p0) {
65 self->attrs[COLOR_nit__model_base__MVisibility___level].l = p0; /* _level on <self:MVisibility> */
66 RET_LABEL:;
67 }
68 /* method model_base#MVisibility#< for (self: MVisibility, MVisibility): Bool */
69 short int nit___nit__MVisibility___standard__kernel__Comparable___60d(val* self, val* p0) {
70 short int var /* : Bool */;
71 short int var1 /* : Bool */;
72 int cltype;
73 int idtype;
74 const struct type* type_struct;
75 const char* var_class_name;
76 val* var_other /* var other: MVisibility */;
77 long var2 /* : Int */;
78 long var4 /* : Int */;
79 long var5 /* : Int */;
80 long var7 /* : Int */;
81 short int var8 /* : Bool */;
82 short int var10 /* : Bool */;
83 int cltype11;
84 int idtype12;
85 const char* var_class_name13;
86 short int var14 /* : Bool */;
87 /* Covariant cast for argument 0 (other) <p0:MVisibility> isa OTHER */
88 /* <p0:MVisibility> isa OTHER */
89 type_struct = self->type->resolution_table->types[COLOR_standard__kernel__Comparable__OTHER];
90 cltype = type_struct->color;
91 idtype = type_struct->id;
92 if(cltype >= p0->type->table_size) {
93 var1 = 0;
94 } else {
95 var1 = p0->type->type_table[cltype] == idtype;
96 }
97 if (unlikely(!var1)) {
98 var_class_name = p0 == NULL ? "null" : p0->type->name;
99 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
100 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model_base, 97);
101 fatal_exit(1);
102 }
103 var_other = p0;
104 {
105 { /* Inline model_base#MVisibility#level (self) on <self:MVisibility> */
106 var4 = self->attrs[COLOR_nit__model_base__MVisibility___level].l; /* _level on <self:MVisibility> */
107 var2 = var4;
108 RET_LABEL3:(void)0;
109 }
110 }
111 {
112 { /* Inline model_base#MVisibility#level (var_other) on <var_other:MVisibility> */
113 var7 = var_other->attrs[COLOR_nit__model_base__MVisibility___level].l; /* _level on <var_other:MVisibility> */
114 var5 = var7;
115 RET_LABEL6:(void)0;
116 }
117 }
118 {
119 { /* Inline kernel#Int#< (var2,var5) on <var2:Int> */
120 /* Covariant cast for argument 0 (i) <var5:Int> isa OTHER */
121 /* <var5:Int> isa OTHER */
122 var10 = 1; /* easy <var5:Int> isa OTHER*/
123 if (unlikely(!var10)) {
124 var_class_name13 = type_standard__Int.name;
125 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name13);
126 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 534);
127 fatal_exit(1);
128 }
129 var14 = var2 < var5;
130 var8 = var14;
131 goto RET_LABEL9;
132 RET_LABEL9:(void)0;
133 }
134 }
135 var = var8;
136 goto RET_LABEL;
137 RET_LABEL:;
138 return var;
139 }
140 /* method model_base#MVisibility#init for (self: MVisibility) */
141 void nit___nit__MVisibility___standard__kernel__Object__init(val* self) {
142 {
143 ((void(*)(val* self))(self->class->vft[COLOR_nit___nit__MVisibility___standard__kernel__Object__init]))(self); /* init on <self:MVisibility>*/
144 }
145 RET_LABEL:;
146 }
147 /* method model_base#Sys#intrude_visibility for (self: Sys): MVisibility */
148 val* nit__model_base___standard__Sys___intrude_visibility(val* self) {
149 val* var /* : MVisibility */;
150 static val* varonce;
151 static int varonce_guard;
152 val* var1 /* : MVisibility */;
153 val* var2 /* : MVisibility */;
154 static val* varonce3;
155 val* var4 /* : String */;
156 char* var5 /* : NativeString */;
157 val* var6 /* : FlatString */;
158 if (likely(varonce_guard)) {
159 var1 = varonce;
160 } else {
161 var2 = NEW_nit__MVisibility(&type_nit__MVisibility);
162 if (likely(varonce3!=NULL)) {
163 var4 = varonce3;
164 } else {
165 var5 = "intrude";
166 var6 = standard___standard__NativeString___to_s_with_length(var5, 7l);
167 var4 = var6;
168 varonce3 = var4;
169 }
170 {
171 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__to_s_61d]))(var2, var4); /* to_s= on <var2:MVisibility>*/
172 }
173 {
174 ((void(*)(val* self, long p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__level_61d]))(var2, 5l); /* level= on <var2:MVisibility>*/
175 }
176 {
177 ((void(*)(val* self))(var2->class->vft[COLOR_standard__kernel__Object__init]))(var2); /* init on <var2:MVisibility>*/
178 }
179 var1 = var2;
180 varonce = var1;
181 varonce_guard = 1;
182 }
183 var = var1;
184 goto RET_LABEL;
185 RET_LABEL:;
186 return var;
187 }
188 /* method model_base#Sys#public_visibility for (self: Sys): MVisibility */
189 val* nit__model_base___standard__Sys___public_visibility(val* self) {
190 val* var /* : MVisibility */;
191 static val* varonce;
192 static int varonce_guard;
193 val* var1 /* : MVisibility */;
194 val* var2 /* : MVisibility */;
195 static val* varonce3;
196 val* var4 /* : String */;
197 char* var5 /* : NativeString */;
198 val* var6 /* : FlatString */;
199 if (likely(varonce_guard)) {
200 var1 = varonce;
201 } else {
202 var2 = NEW_nit__MVisibility(&type_nit__MVisibility);
203 if (likely(varonce3!=NULL)) {
204 var4 = varonce3;
205 } else {
206 var5 = "public";
207 var6 = standard___standard__NativeString___to_s_with_length(var5, 6l);
208 var4 = var6;
209 varonce3 = var4;
210 }
211 {
212 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__to_s_61d]))(var2, var4); /* to_s= on <var2:MVisibility>*/
213 }
214 {
215 ((void(*)(val* self, long p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__level_61d]))(var2, 4l); /* level= on <var2:MVisibility>*/
216 }
217 {
218 ((void(*)(val* self))(var2->class->vft[COLOR_standard__kernel__Object__init]))(var2); /* init on <var2:MVisibility>*/
219 }
220 var1 = var2;
221 varonce = var1;
222 varonce_guard = 1;
223 }
224 var = var1;
225 goto RET_LABEL;
226 RET_LABEL:;
227 return var;
228 }
229 /* method model_base#Sys#protected_visibility for (self: Sys): MVisibility */
230 val* nit__model_base___standard__Sys___protected_visibility(val* self) {
231 val* var /* : MVisibility */;
232 static val* varonce;
233 static int varonce_guard;
234 val* var1 /* : MVisibility */;
235 val* var2 /* : MVisibility */;
236 static val* varonce3;
237 val* var4 /* : String */;
238 char* var5 /* : NativeString */;
239 val* var6 /* : FlatString */;
240 if (likely(varonce_guard)) {
241 var1 = varonce;
242 } else {
243 var2 = NEW_nit__MVisibility(&type_nit__MVisibility);
244 if (likely(varonce3!=NULL)) {
245 var4 = varonce3;
246 } else {
247 var5 = "protected";
248 var6 = standard___standard__NativeString___to_s_with_length(var5, 9l);
249 var4 = var6;
250 varonce3 = var4;
251 }
252 {
253 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__to_s_61d]))(var2, var4); /* to_s= on <var2:MVisibility>*/
254 }
255 {
256 ((void(*)(val* self, long p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__level_61d]))(var2, 3l); /* level= on <var2:MVisibility>*/
257 }
258 {
259 ((void(*)(val* self))(var2->class->vft[COLOR_standard__kernel__Object__init]))(var2); /* init on <var2:MVisibility>*/
260 }
261 var1 = var2;
262 varonce = var1;
263 varonce_guard = 1;
264 }
265 var = var1;
266 goto RET_LABEL;
267 RET_LABEL:;
268 return var;
269 }
270 /* method model_base#Sys#private_visibility for (self: Sys): MVisibility */
271 val* nit__model_base___standard__Sys___private_visibility(val* self) {
272 val* var /* : MVisibility */;
273 static val* varonce;
274 static int varonce_guard;
275 val* var1 /* : MVisibility */;
276 val* var2 /* : MVisibility */;
277 static val* varonce3;
278 val* var4 /* : String */;
279 char* var5 /* : NativeString */;
280 val* var6 /* : FlatString */;
281 if (likely(varonce_guard)) {
282 var1 = varonce;
283 } else {
284 var2 = NEW_nit__MVisibility(&type_nit__MVisibility);
285 if (likely(varonce3!=NULL)) {
286 var4 = varonce3;
287 } else {
288 var5 = "private";
289 var6 = standard___standard__NativeString___to_s_with_length(var5, 7l);
290 var4 = var6;
291 varonce3 = var4;
292 }
293 {
294 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__to_s_61d]))(var2, var4); /* to_s= on <var2:MVisibility>*/
295 }
296 {
297 ((void(*)(val* self, long p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__level_61d]))(var2, 2l); /* level= on <var2:MVisibility>*/
298 }
299 {
300 ((void(*)(val* self))(var2->class->vft[COLOR_standard__kernel__Object__init]))(var2); /* init on <var2:MVisibility>*/
301 }
302 var1 = var2;
303 varonce = var1;
304 varonce_guard = 1;
305 }
306 var = var1;
307 goto RET_LABEL;
308 RET_LABEL:;
309 return var;
310 }
311 /* method model_base#Sys#none_visibility for (self: Sys): MVisibility */
312 val* nit__model_base___standard__Sys___none_visibility(val* self) {
313 val* var /* : MVisibility */;
314 static val* varonce;
315 static int varonce_guard;
316 val* var1 /* : MVisibility */;
317 val* var2 /* : MVisibility */;
318 static val* varonce3;
319 val* var4 /* : String */;
320 char* var5 /* : NativeString */;
321 val* var6 /* : FlatString */;
322 if (likely(varonce_guard)) {
323 var1 = varonce;
324 } else {
325 var2 = NEW_nit__MVisibility(&type_nit__MVisibility);
326 if (likely(varonce3!=NULL)) {
327 var4 = varonce3;
328 } else {
329 var5 = "none";
330 var6 = standard___standard__NativeString___to_s_with_length(var5, 4l);
331 var4 = var6;
332 varonce3 = var4;
333 }
334 {
335 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__to_s_61d]))(var2, var4); /* to_s= on <var2:MVisibility>*/
336 }
337 {
338 ((void(*)(val* self, long p0))(var2->class->vft[COLOR_nit__model_base__MVisibility__level_61d]))(var2, 1l); /* level= on <var2:MVisibility>*/
339 }
340 {
341 ((void(*)(val* self))(var2->class->vft[COLOR_standard__kernel__Object__init]))(var2); /* init on <var2:MVisibility>*/
342 }
343 var1 = var2;
344 varonce = var1;
345 varonce_guard = 1;
346 }
347 var = var1;
348 goto RET_LABEL;
349 RET_LABEL:;
350 return var;
351 }