c_src: update Makefile to compile on MacOSX
[nit.git] / c_src / mproject.sep.1.c
1 #include "mproject.sep.0.h"
2 /* method mproject#MProject#name for (self: MProject): String */
3 val* mproject__MProject__name(val* self) {
4 val* var /* : String */;
5 val* var1 /* : String */;
6 var1 = self->attrs[COLOR_mproject__MProject___64dname].val; /* @name on <self:MProject> */
7 if (var1 == NULL) {
8 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
9 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 24);
10 show_backtrace(1);
11 }
12 var = var1;
13 RET_LABEL:;
14 return var;
15 }
16 /* method mproject#MProject#name for (self: Object): String */
17 val* VIRTUAL_mproject__MProject__name(val* self) {
18 val* var /* : String */;
19 val* var1 /* : String */;
20 var1 = mproject__MProject__name(self);
21 var = var1;
22 RET_LABEL:;
23 return var;
24 }
25 /* method mproject#MProject#name= for (self: MProject, String) */
26 void mproject__MProject__name_61d(val* self, val* p0) {
27 self->attrs[COLOR_mproject__MProject___64dname].val = p0; /* @name on <self:MProject> */
28 RET_LABEL:;
29 }
30 /* method mproject#MProject#name= for (self: Object, String) */
31 void VIRTUAL_mproject__MProject__name_61d(val* self, val* p0) {
32 mproject__MProject__name_61d(self, p0);
33 RET_LABEL:;
34 }
35 /* method mproject#MProject#model for (self: MProject): Model */
36 val* mproject__MProject__model(val* self) {
37 val* var /* : Model */;
38 val* var1 /* : Model */;
39 var1 = self->attrs[COLOR_mproject__MProject___64dmodel].val; /* @model on <self:MProject> */
40 if (var1 == NULL) {
41 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @model");
42 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 27);
43 show_backtrace(1);
44 }
45 var = var1;
46 RET_LABEL:;
47 return var;
48 }
49 /* method mproject#MProject#model for (self: Object): Model */
50 val* VIRTUAL_mproject__MProject__model(val* self) {
51 val* var /* : Model */;
52 val* var1 /* : Model */;
53 var1 = mproject__MProject__model(self);
54 var = var1;
55 RET_LABEL:;
56 return var;
57 }
58 /* method mproject#MProject#model= for (self: MProject, Model) */
59 void mproject__MProject__model_61d(val* self, val* p0) {
60 self->attrs[COLOR_mproject__MProject___64dmodel].val = p0; /* @model on <self:MProject> */
61 RET_LABEL:;
62 }
63 /* method mproject#MProject#model= for (self: Object, Model) */
64 void VIRTUAL_mproject__MProject__model_61d(val* self, val* p0) {
65 mproject__MProject__model_61d(self, p0);
66 RET_LABEL:;
67 }
68 /* method mproject#MProject#root for (self: MProject): nullable MGroup */
69 val* mproject__MProject__root(val* self) {
70 val* var /* : nullable MGroup */;
71 val* var1 /* : nullable MGroup */;
72 var1 = self->attrs[COLOR_mproject__MProject___64droot].val; /* @root on <self:MProject> */
73 var = var1;
74 RET_LABEL:;
75 return var;
76 }
77 /* method mproject#MProject#root for (self: Object): nullable MGroup */
78 val* VIRTUAL_mproject__MProject__root(val* self) {
79 val* var /* : nullable MGroup */;
80 val* var1 /* : nullable MGroup */;
81 var1 = mproject__MProject__root(self);
82 var = var1;
83 RET_LABEL:;
84 return var;
85 }
86 /* method mproject#MProject#root= for (self: MProject, nullable MGroup) */
87 void mproject__MProject__root_61d(val* self, val* p0) {
88 self->attrs[COLOR_mproject__MProject___64droot].val = p0; /* @root on <self:MProject> */
89 RET_LABEL:;
90 }
91 /* method mproject#MProject#root= for (self: Object, nullable MGroup) */
92 void VIRTUAL_mproject__MProject__root_61d(val* self, val* p0) {
93 mproject__MProject__root_61d(self, p0);
94 RET_LABEL:;
95 }
96 /* method mproject#MProject#mgroups for (self: MProject): POSet[MGroup] */
97 val* mproject__MProject__mgroups(val* self) {
98 val* var /* : POSet[MGroup] */;
99 val* var1 /* : POSet[MGroup] */;
100 var1 = self->attrs[COLOR_mproject__MProject___64dmgroups].val; /* @mgroups on <self:MProject> */
101 if (var1 == NULL) {
102 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mgroups");
103 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 33);
104 show_backtrace(1);
105 }
106 var = var1;
107 RET_LABEL:;
108 return var;
109 }
110 /* method mproject#MProject#mgroups for (self: Object): POSet[MGroup] */
111 val* VIRTUAL_mproject__MProject__mgroups(val* self) {
112 val* var /* : POSet[MGroup] */;
113 val* var1 /* : POSet[MGroup] */;
114 var1 = mproject__MProject__mgroups(self);
115 var = var1;
116 RET_LABEL:;
117 return var;
118 }
119 /* method mproject#MProject#mgroups= for (self: MProject, POSet[MGroup]) */
120 void mproject__MProject__mgroups_61d(val* self, val* p0) {
121 self->attrs[COLOR_mproject__MProject___64dmgroups].val = p0; /* @mgroups on <self:MProject> */
122 RET_LABEL:;
123 }
124 /* method mproject#MProject#mgroups= for (self: Object, POSet[MGroup]) */
125 void VIRTUAL_mproject__MProject__mgroups_61d(val* self, val* p0) {
126 mproject__MProject__mgroups_61d(self, p0);
127 RET_LABEL:;
128 }
129 /* method mproject#MProject#to_s for (self: MProject): String */
130 val* mproject__MProject__to_s(val* self) {
131 val* var /* : String */;
132 val* var1 /* : String */;
133 var1 = ((val* (*)(val*))(self->class->vft[COLOR_mproject__MProject__name]))(self) /* name on <self:MProject>*/;
134 var = var1;
135 goto RET_LABEL;
136 RET_LABEL:;
137 return var;
138 }
139 /* method mproject#MProject#to_s for (self: Object): String */
140 val* VIRTUAL_mproject__MProject__to_s(val* self) {
141 val* var /* : String */;
142 val* var1 /* : String */;
143 var1 = mproject__MProject__to_s(self);
144 var = var1;
145 RET_LABEL:;
146 return var;
147 }
148 /* method mproject#MProject#init for (self: MProject, String, Model) */
149 void mproject__MProject__init(val* self, val* p0, val* p1) {
150 val* var_name /* var name: String */;
151 val* var_model /* var model: Model */;
152 val* var /* : Array[MProject] */;
153 val* var1 /* : MultiHashMap[String, MProject] */;
154 var_name = p0;
155 var_model = p1;
156 ((void (*)(val*, val*))(self->class->vft[COLOR_mproject__MProject__name_61d]))(self, var_name) /* name= on <self:MProject>*/;
157 ((void (*)(val*, val*))(self->class->vft[COLOR_mproject__MProject__model_61d]))(self, var_model) /* model= on <self:MProject>*/;
158 var = ((val* (*)(val*))(var_model->class->vft[COLOR_mproject__Model__mprojects]))(var_model) /* mprojects on <var_model:Model>*/;
159 ((void (*)(val*, val*))(var->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var, self) /* add on <var:Array[MProject]>*/;
160 var1 = ((val* (*)(val*))(var_model->class->vft[COLOR_mproject__Model__mproject_by_name]))(var_model) /* mproject_by_name on <var_model:Model>*/;
161 ((void (*)(val*, val*, val*))(var1->class->vft[COLOR_more_collections__MultiHashMap__add_one]))(var1, var_name, self) /* add_one on <var1:MultiHashMap[String, MProject]>*/;
162 RET_LABEL:;
163 }
164 /* method mproject#MProject#init for (self: Object, String, Model) */
165 void VIRTUAL_mproject__MProject__init(val* self, val* p0, val* p1) {
166 mproject__MProject__init(self, p0, p1);
167 RET_LABEL:;
168 }
169 /* method mproject#MGroup#name for (self: MGroup): String */
170 val* mproject__MGroup__name(val* self) {
171 val* var /* : String */;
172 val* var1 /* : String */;
173 var1 = self->attrs[COLOR_mproject__MGroup___64dname].val; /* @name on <self:MGroup> */
174 if (var1 == NULL) {
175 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
176 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 49);
177 show_backtrace(1);
178 }
179 var = var1;
180 RET_LABEL:;
181 return var;
182 }
183 /* method mproject#MGroup#name for (self: Object): String */
184 val* VIRTUAL_mproject__MGroup__name(val* self) {
185 val* var /* : String */;
186 val* var1 /* : String */;
187 var1 = mproject__MGroup__name(self);
188 var = var1;
189 RET_LABEL:;
190 return var;
191 }
192 /* method mproject#MGroup#name= for (self: MGroup, String) */
193 void mproject__MGroup__name_61d(val* self, val* p0) {
194 self->attrs[COLOR_mproject__MGroup___64dname].val = p0; /* @name on <self:MGroup> */
195 RET_LABEL:;
196 }
197 /* method mproject#MGroup#name= for (self: Object, String) */
198 void VIRTUAL_mproject__MGroup__name_61d(val* self, val* p0) {
199 mproject__MGroup__name_61d(self, p0);
200 RET_LABEL:;
201 }
202 /* method mproject#MGroup#mproject for (self: MGroup): MProject */
203 val* mproject__MGroup__mproject(val* self) {
204 val* var /* : MProject */;
205 val* var1 /* : MProject */;
206 var1 = self->attrs[COLOR_mproject__MGroup___64dmproject].val; /* @mproject on <self:MGroup> */
207 if (var1 == NULL) {
208 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mproject");
209 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 53);
210 show_backtrace(1);
211 }
212 var = var1;
213 RET_LABEL:;
214 return var;
215 }
216 /* method mproject#MGroup#mproject for (self: Object): MProject */
217 val* VIRTUAL_mproject__MGroup__mproject(val* self) {
218 val* var /* : MProject */;
219 val* var1 /* : MProject */;
220 var1 = mproject__MGroup__mproject(self);
221 var = var1;
222 RET_LABEL:;
223 return var;
224 }
225 /* method mproject#MGroup#mproject= for (self: MGroup, MProject) */
226 void mproject__MGroup__mproject_61d(val* self, val* p0) {
227 self->attrs[COLOR_mproject__MGroup___64dmproject].val = p0; /* @mproject on <self:MGroup> */
228 RET_LABEL:;
229 }
230 /* method mproject#MGroup#mproject= for (self: Object, MProject) */
231 void VIRTUAL_mproject__MGroup__mproject_61d(val* self, val* p0) {
232 mproject__MGroup__mproject_61d(self, p0);
233 RET_LABEL:;
234 }
235 /* method mproject#MGroup#parent for (self: MGroup): nullable MGroup */
236 val* mproject__MGroup__parent(val* self) {
237 val* var /* : nullable MGroup */;
238 val* var1 /* : nullable MGroup */;
239 var1 = self->attrs[COLOR_mproject__MGroup___64dparent].val; /* @parent on <self:MGroup> */
240 var = var1;
241 RET_LABEL:;
242 return var;
243 }
244 /* method mproject#MGroup#parent for (self: Object): nullable MGroup */
245 val* VIRTUAL_mproject__MGroup__parent(val* self) {
246 val* var /* : nullable MGroup */;
247 val* var1 /* : nullable MGroup */;
248 var1 = mproject__MGroup__parent(self);
249 var = var1;
250 RET_LABEL:;
251 return var;
252 }
253 /* method mproject#MGroup#parent= for (self: MGroup, nullable MGroup) */
254 void mproject__MGroup__parent_61d(val* self, val* p0) {
255 self->attrs[COLOR_mproject__MGroup___64dparent].val = p0; /* @parent on <self:MGroup> */
256 RET_LABEL:;
257 }
258 /* method mproject#MGroup#parent= for (self: Object, nullable MGroup) */
259 void VIRTUAL_mproject__MGroup__parent_61d(val* self, val* p0) {
260 mproject__MGroup__parent_61d(self, p0);
261 RET_LABEL:;
262 }
263 /* method mproject#MGroup#full_name for (self: MGroup): String */
264 val* mproject__MGroup__full_name(val* self) {
265 val* var /* : String */;
266 val* var1 /* : nullable MGroup */;
267 val* var_p /* var p: nullable MGroup */;
268 val* var2 /* : null */;
269 short int var3 /* : Bool */;
270 val* var4 /* : String */;
271 val* var5 /* : Array[Object] */;
272 long var6 /* : Int */;
273 val* var_ /* var : Array[Object] */;
274 static val* varonce;
275 val* var7 /* : String */;
276 char* var8 /* : NativeString */;
277 long var9 /* : Int */;
278 val* var10 /* : String */;
279 val* var11 /* : String */;
280 static val* varonce12;
281 val* var13 /* : String */;
282 char* var14 /* : NativeString */;
283 long var15 /* : Int */;
284 val* var16 /* : String */;
285 val* var17 /* : String */;
286 static val* varonce18;
287 val* var19 /* : String */;
288 char* var20 /* : NativeString */;
289 long var21 /* : Int */;
290 val* var22 /* : String */;
291 val* var23 /* : String */;
292 var1 = ((val* (*)(val*))(self->class->vft[COLOR_mproject__MGroup__parent]))(self) /* parent on <self:MGroup>*/;
293 var_p = var1;
294 var2 = NULL;
295 if (var_p == NULL) {
296 var3 = 1; /* is null */
297 } else {
298 var3 = 0; /* arg is null but recv is not */
299 }
300 if (var3){
301 var4 = ((val* (*)(val*))(self->class->vft[COLOR_mproject__MGroup__name]))(self) /* name on <self:MGroup>*/;
302 var = var4;
303 goto RET_LABEL;
304 } else {
305 }
306 var5 = NEW_array__Array(&type_array__Arraykernel__Object);
307 var6 = 5;
308 ((void (*)(val*, long))(var5->class->vft[COLOR_array__Array__with_capacity]))(var5, var6) /* with_capacity on <var5:Array[Object]>*/;
309 var_ = var5;
310 if (varonce) {
311 var7 = varonce;
312 } else {
313 var8 = "";
314 var9 = 0;
315 var10 = string__NativeString__to_s_with_length(var8, var9);
316 var7 = var10;
317 varonce = var7;
318 }
319 ((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var7) /* add on <var_:Array[Object]>*/;
320 var11 = ((val* (*)(val*))(var_p->class->vft[COLOR_mproject__MGroup__full_name]))(var_p) /* full_name on <var_p:nullable MGroup(MGroup)>*/;
321 ((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var11) /* add on <var_:Array[Object]>*/;
322 if (varonce12) {
323 var13 = varonce12;
324 } else {
325 var14 = "/";
326 var15 = 1;
327 var16 = string__NativeString__to_s_with_length(var14, var15);
328 var13 = var16;
329 varonce12 = var13;
330 }
331 ((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var13) /* add on <var_:Array[Object]>*/;
332 var17 = ((val* (*)(val*))(self->class->vft[COLOR_mproject__MGroup__name]))(self) /* name on <self:MGroup>*/;
333 ((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var17) /* add on <var_:Array[Object]>*/;
334 if (varonce18) {
335 var19 = varonce18;
336 } else {
337 var20 = "";
338 var21 = 0;
339 var22 = string__NativeString__to_s_with_length(var20, var21);
340 var19 = var22;
341 varonce18 = var19;
342 }
343 ((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var19) /* add on <var_:Array[Object]>*/;
344 var23 = ((val* (*)(val*))(var_->class->vft[COLOR_string__Object__to_s]))(var_) /* to_s on <var_:Array[Object]>*/;
345 var = var23;
346 goto RET_LABEL;
347 RET_LABEL:;
348 return var;
349 }
350 /* method mproject#MGroup#full_name for (self: Object): String */
351 val* VIRTUAL_mproject__MGroup__full_name(val* self) {
352 val* var /* : String */;
353 val* var1 /* : String */;
354 var1 = mproject__MGroup__full_name(self);
355 var = var1;
356 RET_LABEL:;
357 return var;
358 }
359 /* method mproject#MGroup#in_nesting for (self: MGroup): POSetElement[MGroup] */
360 val* mproject__MGroup__in_nesting(val* self) {
361 val* var /* : POSetElement[MGroup] */;
362 val* var1 /* : POSetElement[MGroup] */;
363 var1 = self->attrs[COLOR_mproject__MGroup___64din_nesting].val; /* @in_nesting on <self:MGroup> */
364 if (var1 == NULL) {
365 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_nesting");
366 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 68);
367 show_backtrace(1);
368 }
369 var = var1;
370 RET_LABEL:;
371 return var;
372 }
373 /* method mproject#MGroup#in_nesting for (self: Object): POSetElement[MGroup] */
374 val* VIRTUAL_mproject__MGroup__in_nesting(val* self) {
375 val* var /* : POSetElement[MGroup] */;
376 val* var1 /* : POSetElement[MGroup] */;
377 var1 = mproject__MGroup__in_nesting(self);
378 var = var1;
379 RET_LABEL:;
380 return var;
381 }
382 /* method mproject#MGroup#in_nesting= for (self: MGroup, POSetElement[MGroup]) */
383 void mproject__MGroup__in_nesting_61d(val* self, val* p0) {
384 self->attrs[COLOR_mproject__MGroup___64din_nesting].val = p0; /* @in_nesting on <self:MGroup> */
385 RET_LABEL:;
386 }
387 /* method mproject#MGroup#in_nesting= for (self: Object, POSetElement[MGroup]) */
388 void VIRTUAL_mproject__MGroup__in_nesting_61d(val* self, val* p0) {
389 mproject__MGroup__in_nesting_61d(self, p0);
390 RET_LABEL:;
391 }
392 /* method mproject#MGroup#filepath for (self: MGroup): nullable String */
393 val* mproject__MGroup__filepath(val* self) {
394 val* var /* : nullable String */;
395 val* var1 /* : nullable String */;
396 var1 = self->attrs[COLOR_mproject__MGroup___64dfilepath].val; /* @filepath on <self:MGroup> */
397 var = var1;
398 RET_LABEL:;
399 return var;
400 }
401 /* method mproject#MGroup#filepath for (self: Object): nullable String */
402 val* VIRTUAL_mproject__MGroup__filepath(val* self) {
403 val* var /* : nullable String */;
404 val* var1 /* : nullable String */;
405 var1 = mproject__MGroup__filepath(self);
406 var = var1;
407 RET_LABEL:;
408 return var;
409 }
410 /* method mproject#MGroup#filepath= for (self: MGroup, nullable String) */
411 void mproject__MGroup__filepath_61d(val* self, val* p0) {
412 self->attrs[COLOR_mproject__MGroup___64dfilepath].val = p0; /* @filepath on <self:MGroup> */
413 RET_LABEL:;
414 }
415 /* method mproject#MGroup#filepath= for (self: Object, nullable String) */
416 void VIRTUAL_mproject__MGroup__filepath_61d(val* self, val* p0) {
417 mproject__MGroup__filepath_61d(self, p0);
418 RET_LABEL:;
419 }
420 /* method mproject#MGroup#init for (self: MGroup, String, MProject, nullable MGroup) */
421 void mproject__MGroup__init(val* self, val* p0, val* p1, val* p2) {
422 val* var_name /* var name: String */;
423 val* var_mproject /* var mproject: MProject */;
424 val* var_parent /* var parent: nullable MGroup */;
425 val* var /* : POSet[MGroup] */;
426 val* var_tree /* var tree: POSet[MGroup] */;
427 val* var1 /* : POSetElement[Object] */;
428 val* var2 /* : null */;
429 short int var3 /* : Bool */;
430 var_name = p0;
431 var_mproject = p1;
432 var_parent = p2;
433 ((void (*)(val*, val*))(self->class->vft[COLOR_mproject__MGroup__name_61d]))(self, var_name) /* name= on <self:MGroup>*/;
434 ((void (*)(val*, val*))(self->class->vft[COLOR_mproject__MGroup__mproject_61d]))(self, var_mproject) /* mproject= on <self:MGroup>*/;
435 ((void (*)(val*, val*))(self->class->vft[COLOR_mproject__MGroup__parent_61d]))(self, var_parent) /* parent= on <self:MGroup>*/;
436 var = ((val* (*)(val*))(var_mproject->class->vft[COLOR_mproject__MProject__mgroups]))(var_mproject) /* mgroups on <var_mproject:MProject>*/;
437 var_tree = var;
438 var1 = ((val* (*)(val*, val*))(var_tree->class->vft[COLOR_poset__POSet__add_node]))(var_tree, self) /* add_node on <var_tree:POSet[MGroup]>*/;
439 ((void (*)(val*, val*))(self->class->vft[COLOR_mproject__MGroup__in_nesting_61d]))(self, var1) /* in_nesting= on <self:MGroup>*/;
440 var2 = NULL;
441 if (var_parent == NULL) {
442 var3 = 0; /* is null */
443 } else {
444 var3 = 1; /* arg is null and recv is not */
445 }
446 if (var3){
447 ((void (*)(val*, val*, val*))(var_tree->class->vft[COLOR_poset__POSet__add_edge]))(var_tree, self, var_parent) /* add_edge on <var_tree:POSet[MGroup]>*/;
448 } else {
449 }
450 RET_LABEL:;
451 }
452 /* method mproject#MGroup#init for (self: Object, String, MProject, nullable MGroup) */
453 void VIRTUAL_mproject__MGroup__init(val* self, val* p0, val* p1, val* p2) {
454 mproject__MGroup__init(self, p0, p1, p2);
455 RET_LABEL:;
456 }
457 /* method mproject#MGroup#to_s for (self: MGroup): String */
458 val* mproject__MGroup__to_s(val* self) {
459 val* var /* : String */;
460 val* var1 /* : String */;
461 var1 = ((val* (*)(val*))(self->class->vft[COLOR_mproject__MGroup__name]))(self) /* name on <self:MGroup>*/;
462 var = var1;
463 goto RET_LABEL;
464 RET_LABEL:;
465 return var;
466 }
467 /* method mproject#MGroup#to_s for (self: Object): String */
468 val* VIRTUAL_mproject__MGroup__to_s(val* self) {
469 val* var /* : String */;
470 val* var1 /* : String */;
471 var1 = mproject__MGroup__to_s(self);
472 var = var1;
473 RET_LABEL:;
474 return var;
475 }
476 /* method mproject#Model#mprojects for (self: Model): Array[MProject] */
477 val* mproject__Model__mprojects(val* self) {
478 val* var /* : Array[MProject] */;
479 val* var1 /* : Array[MProject] */;
480 var1 = self->attrs[COLOR_mproject__Model___64dmprojects].val; /* @mprojects on <self:Model> */
481 if (var1 == NULL) {
482 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mprojects");
483 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 92);
484 show_backtrace(1);
485 }
486 var = var1;
487 RET_LABEL:;
488 return var;
489 }
490 /* method mproject#Model#mprojects for (self: Object): Array[MProject] */
491 val* VIRTUAL_mproject__Model__mprojects(val* self) {
492 val* var /* : Array[MProject] */;
493 val* var1 /* : Array[MProject] */;
494 var1 = mproject__Model__mprojects(self);
495 var = var1;
496 RET_LABEL:;
497 return var;
498 }
499 /* method mproject#Model#mprojects= for (self: Model, Array[MProject]) */
500 void mproject__Model__mprojects_61d(val* self, val* p0) {
501 self->attrs[COLOR_mproject__Model___64dmprojects].val = p0; /* @mprojects on <self:Model> */
502 RET_LABEL:;
503 }
504 /* method mproject#Model#mprojects= for (self: Object, Array[MProject]) */
505 void VIRTUAL_mproject__Model__mprojects_61d(val* self, val* p0) {
506 mproject__Model__mprojects_61d(self, p0);
507 RET_LABEL:;
508 }
509 /* method mproject#Model#mproject_by_name for (self: Model): MultiHashMap[String, MProject] */
510 val* mproject__Model__mproject_by_name(val* self) {
511 val* var /* : MultiHashMap[String, MProject] */;
512 val* var1 /* : MultiHashMap[String, MProject] */;
513 var1 = self->attrs[COLOR_mproject__Model___64dmproject_by_name].val; /* @mproject_by_name on <self:Model> */
514 if (var1 == NULL) {
515 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mproject_by_name");
516 fprintf(stderr, " (%s:%d)\n", "src/model/mproject.nit", 95);
517 show_backtrace(1);
518 }
519 var = var1;
520 RET_LABEL:;
521 return var;
522 }
523 /* method mproject#Model#mproject_by_name for (self: Object): MultiHashMap[String, MProject] */
524 val* VIRTUAL_mproject__Model__mproject_by_name(val* self) {
525 val* var /* : MultiHashMap[String, MProject] */;
526 val* var1 /* : MultiHashMap[String, MProject] */;
527 var1 = mproject__Model__mproject_by_name(self);
528 var = var1;
529 RET_LABEL:;
530 return var;
531 }
532 /* method mproject#Model#mproject_by_name= for (self: Model, MultiHashMap[String, MProject]) */
533 void mproject__Model__mproject_by_name_61d(val* self, val* p0) {
534 self->attrs[COLOR_mproject__Model___64dmproject_by_name].val = p0; /* @mproject_by_name on <self:Model> */
535 RET_LABEL:;
536 }
537 /* method mproject#Model#mproject_by_name= for (self: Object, MultiHashMap[String, MProject]) */
538 void VIRTUAL_mproject__Model__mproject_by_name_61d(val* self, val* p0) {
539 mproject__Model__mproject_by_name_61d(self, p0);
540 RET_LABEL:;
541 }
542 /* method mproject#Model#get_mprojects_by_name for (self: Model, String): nullable Array[MProject] */
543 val* mproject__Model__get_mprojects_by_name(val* self, val* p0) {
544 val* var /* : nullable Array[MProject] */;
545 val* var_name /* var name: String */;
546 val* var1 /* : MultiHashMap[String, MProject] */;
547 short int var2 /* : Bool */;
548 val* var3 /* : MultiHashMap[String, MProject] */;
549 val* var4 /* : nullable Object */;
550 val* var5 /* : null */;
551 var_name = p0;
552 var1 = ((val* (*)(val*))(self->class->vft[COLOR_mproject__Model__mproject_by_name]))(self) /* mproject_by_name on <self:Model>*/;
553 var2 = ((short int (*)(val*, val*))(var1->class->vft[COLOR_abstract_collection__MapRead__has_key]))(var1, var_name) /* has_key on <var1:MultiHashMap[String, MProject]>*/;
554 if (var2){
555 var3 = ((val* (*)(val*))(self->class->vft[COLOR_mproject__Model__mproject_by_name]))(self) /* mproject_by_name on <self:Model>*/;
556 var4 = ((val* (*)(val*, val*))(var3->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var3, var_name) /* [] on <var3:MultiHashMap[String, MProject]>*/;
557 var = var4;
558 goto RET_LABEL;
559 } else {
560 var5 = NULL;
561 var = var5;
562 goto RET_LABEL;
563 }
564 RET_LABEL:;
565 return var;
566 }
567 /* method mproject#Model#get_mprojects_by_name for (self: Object, String): nullable Array[MProject] */
568 val* VIRTUAL_mproject__Model__get_mprojects_by_name(val* self, val* p0) {
569 val* var /* : nullable Array[MProject] */;
570 val* var1 /* : nullable Array[MProject] */;
571 var1 = mproject__Model__get_mprojects_by_name(self, p0);
572 var = var1;
573 RET_LABEL:;
574 return var;
575 }