1 #include "nit__mixin.sep.0.h"
2 /* method mixin#ToolContext#opt_mixins for (self: ToolContext): OptionArray */
3 val
* nit__mixin___ToolContext___opt_mixins(val
* self
) {
4 val
* var
/* : OptionArray */;
5 val
* var1
/* : OptionArray */;
6 var1
= self
->attrs
[COLOR_nit__mixin__ToolContext___opt_mixins
].val
; /* _opt_mixins on <self:ToolContext> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_mixins");
9 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 23);
16 /* method mixin#ToolContext#opt_defines for (self: ToolContext): OptionArray */
17 val
* nit__mixin___ToolContext___opt_defines(val
* self
) {
18 val
* var
/* : OptionArray */;
19 val
* var1
/* : OptionArray */;
20 var1
= self
->attrs
[COLOR_nit__mixin__ToolContext___opt_defines
].val
; /* _opt_defines on <self:ToolContext> */
21 if (unlikely(var1
== NULL
)) {
22 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_defines");
23 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 25);
30 /* method mixin#ToolContext#init for (self: ToolContext) */
31 void nit__mixin___ToolContext___standard__kernel__Object__init(val
* self
) {
32 val
* var
/* : OptionContext */;
33 val
* var2
/* : OptionContext */;
34 val
* var3
/* : OptionArray */;
35 val
* var5
/* : OptionArray */;
36 val
* var6
/* : OptionArray */;
37 val
* var8
/* : OptionArray */;
38 val
* var9
/* : Array[Option] */;
39 val
* var10
/* : NativeArray[Option] */;
41 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit__mixin___ToolContext___standard__kernel__Object__init
]))(self
); /* init on <self:ToolContext>*/
44 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
45 var2
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
46 if (unlikely(var2
== NULL
)) {
47 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
48 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
56 { /* Inline mixin#ToolContext#opt_mixins (self) on <self:ToolContext> */
57 var5
= self
->attrs
[COLOR_nit__mixin__ToolContext___opt_mixins
].val
; /* _opt_mixins on <self:ToolContext> */
58 if (unlikely(var5
== NULL
)) {
59 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_mixins");
60 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 23);
68 { /* Inline mixin#ToolContext#opt_defines (self) on <self:ToolContext> */
69 var8
= self
->attrs
[COLOR_nit__mixin__ToolContext___opt_defines
].val
; /* _opt_defines on <self:ToolContext> */
70 if (unlikely(var8
== NULL
)) {
71 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_defines");
72 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 25);
79 var9
= NEW_standard__Array(&type_standard__Array__opts__Option
);
80 { /* var9 = array_instance Array[Option] */
81 var10
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__opts__Option
);
82 ((struct instance_standard__NativeArray
*)var10
)->values
[0] = (val
*) var3
;
83 ((struct instance_standard__NativeArray
*)var10
)->values
[1] = (val
*) var6
;
85 ((void(*)(val
* self
, val
* p0
, long p1
))(var9
->class->vft
[COLOR_standard__array__Array__with_native
]))(var9
, var10
, 2l); /* with_native on <var9:Array[Option]>*/
89 opts___opts__OptionContext___add_option(var
, var9
); /* Direct call opts#OptionContext#add_option on <var:OptionContext>*/
93 /* method mixin#ToolContext#make_main_module for (self: ToolContext, Array[MModule]): MModule */
94 val
* nit__mixin___ToolContext___make_main_module(val
* self
, val
* p0
) {
95 val
* var
/* : MModule */;
96 val
* var_mmodules
/* var mmodules: Array[MModule] */;
97 val
* var1
/* : OptionArray */;
98 val
* var3
/* : OptionArray */;
99 val
* var4
/* : nullable Object */;
100 val
* var6
/* : nullable Object */;
101 val
* var_mixins
/* var mixins: Array[String] */;
102 short int var7
/* : Bool */;
103 short int var8
/* : Bool */;
104 val
* var9
/* : ModelBuilder */;
105 val
* var10
/* : OptionArray */;
106 val
* var12
/* : OptionArray */;
107 val
* var13
/* : nullable Object */;
108 val
* var15
/* : nullable Object */;
109 val
* var16
/* : Array[MModule] */;
110 val
* var17
/* : ModelBuilder */;
111 val
* var18
/* : MModule */;
112 val
* var_mainmodule
/* var mainmodule: MModule */;
113 val
* var19
/* : OptionArray */;
114 val
* var21
/* : OptionArray */;
115 val
* var22
/* : nullable Object */;
116 val
* var24
/* : nullable Object */;
117 val
* var_defines
/* var defines: Array[String] */;
118 short int var25
/* : Bool */;
119 short int var26
/* : Bool */;
120 val
* var27
/* : Location */;
121 val
* var29
/* : Location */;
122 val
* var_location
/* var location: Location */;
123 val
* var30
/* : Model */;
124 val
* var32
/* : Model */;
125 val
* var_model
/* var model: Model */;
126 val
* var33
/* : nullable Object */;
127 short int var34
/* : Bool */;
128 val
* var_other
/* var other: nullable Object */;
129 short int var36
/* : Bool */;
130 short int var38
/* : Bool */;
131 val
* var39
/* : MModule */;
132 val
* var40
/* : String */;
133 val
* var42
/* : String */;
135 val
* var43
/* : String */;
136 char* var44
/* : NativeString */;
137 val
* var45
/* : FlatString */;
138 val
* var46
/* : String */;
139 val
* var48
/* : nullable MClassType */;
140 val
* var_recv
/* var recv: nullable MClassType */;
141 short int var49
/* : Bool */;
142 short int var50
/* : Bool */;
143 val
* var_other52
/* var other: nullable Object */;
144 short int var53
/* : Bool */;
145 short int var54
/* : Bool */;
146 val
* var55
/* : MClassDef */;
147 val
* var_mclassdef
/* var mclassdef: MClassDef */;
148 val
* var_
/* var : Array[String] */;
149 val
* var56
/* : ArrayIterator[nullable Object] */;
150 val
* var_57
/* var : ArrayIterator[String] */;
151 short int var58
/* : Bool */;
152 val
* var59
/* : nullable Object */;
153 val
* var_define
/* var define: String */;
154 val
* var60
/* : Array[Text] */;
155 val
* var61
/* : Pattern */;
156 val
* var_spl
/* var spl: Array[String] */;
157 val
* var62
/* : nullable Object */;
158 val
* var_name
/* var name: String */;
159 val
* var_val
/* var val: nullable Object */;
160 long var63
/* : Int */;
161 long var65
/* : Int */;
162 short int var66
/* : Bool */;
163 short int var68
/* : Bool */;
166 const char* var_class_name
;
167 short int var69
/* : Bool */;
168 val
* var70
/* : nullable Object */;
169 val
* var71
/* : MClass */;
170 val
* var73
/* : MClass */;
171 val
* var74
/* : nullable MMethod */;
172 val
* var_prop
/* var prop: nullable MMethod */;
173 short int var75
/* : Bool */;
174 short int var76
/* : Bool */;
175 short int var78
/* : Bool */;
176 short int var80
/* : Bool */;
177 val
* var82
/* : NativeArray[String] */;
178 static val
* varonce81
;
179 static val
* varonce83
;
180 val
* var84
/* : String */;
181 char* var85
/* : NativeString */;
182 val
* var86
/* : FlatString */;
183 static val
* varonce87
;
184 val
* var88
/* : String */;
185 char* var89
/* : NativeString */;
186 val
* var90
/* : FlatString */;
187 val
* var91
/* : String */;
188 val
* var92
/* : Message */;
189 val
* var93
/* : MPropDef */;
190 val
* var95
/* : MPropDef */;
191 val
* var96
/* : nullable MSignature */;
192 val
* var98
/* : nullable MSignature */;
193 val
* var99
/* : nullable MType */;
194 val
* var101
/* : nullable MType */;
195 val
* var_ret
/* var ret: nullable MType */;
196 short int var102
/* : Bool */;
197 short int var103
/* : Bool */;
198 short int var105
/* : Bool */;
199 short int var107
/* : Bool */;
200 val
* var109
/* : NativeArray[String] */;
201 static val
* varonce108
;
202 static val
* varonce110
;
203 val
* var111
/* : String */;
204 char* var112
/* : NativeString */;
205 val
* var113
/* : FlatString */;
206 static val
* varonce114
;
207 val
* var115
/* : String */;
208 char* var116
/* : NativeString */;
209 val
* var117
/* : FlatString */;
210 val
* var118
/* : String */;
211 val
* var119
/* : String */;
212 val
* var120
/* : Message */;
213 val
* var121
/* : String */;
214 static val
* varonce122
;
215 val
* var123
/* : String */;
216 char* var124
/* : NativeString */;
217 val
* var125
/* : FlatString */;
218 short int var126
/* : Bool */;
219 short int var127
/* : Bool */;
220 short int var128
/* : Bool */;
221 short int var129
/* : Bool */;
222 short int var_130
/* var : Bool */;
223 static val
* varonce131
;
224 val
* var132
/* : String */;
225 char* var133
/* : NativeString */;
226 val
* var134
/* : FlatString */;
227 short int var135
/* : Bool */;
228 val
* var136
/* : nullable Object */;
229 val
* var_v
/* var v: nullable Object */;
230 static val
* varonce137
;
231 val
* var138
/* : String */;
232 char* var139
/* : NativeString */;
233 val
* var140
/* : FlatString */;
234 short int var141
/* : Bool */;
235 val
* var142
/* : nullable Object */;
236 val
* var144
/* : NativeArray[String] */;
237 static val
* varonce143
;
238 static val
* varonce145
;
239 val
* var146
/* : String */;
240 char* var147
/* : NativeString */;
241 val
* var148
/* : FlatString */;
242 static val
* varonce149
;
243 val
* var150
/* : String */;
244 char* var151
/* : NativeString */;
245 val
* var152
/* : FlatString */;
246 val
* var153
/* : String */;
247 val
* var154
/* : String */;
248 val
* var155
/* : Message */;
249 val
* var156
/* : String */;
250 static val
* varonce157
;
251 val
* var158
/* : String */;
252 char* var159
/* : NativeString */;
253 val
* var160
/* : FlatString */;
254 short int var161
/* : Bool */;
255 short int var162
/* : Bool */;
256 short int var163
/* : Bool */;
257 short int var164
/* : Bool */;
258 short int var166
/* : Bool */;
259 short int var167
/* : Bool */;
260 short int var_168
/* var : Bool */;
261 short int var169
/* : Bool */;
262 long var170
/* : Int */;
263 val
* var171
/* : nullable Object */;
264 val
* var173
/* : NativeArray[String] */;
265 static val
* varonce172
;
266 static val
* varonce174
;
267 val
* var175
/* : String */;
268 char* var176
/* : NativeString */;
269 val
* var177
/* : FlatString */;
270 static val
* varonce178
;
271 val
* var179
/* : String */;
272 char* var180
/* : NativeString */;
273 val
* var181
/* : FlatString */;
274 val
* var182
/* : String */;
275 val
* var183
/* : String */;
276 val
* var184
/* : Message */;
277 val
* var185
/* : String */;
278 static val
* varonce186
;
279 val
* var187
/* : String */;
280 char* var188
/* : NativeString */;
281 val
* var189
/* : FlatString */;
282 short int var190
/* : Bool */;
283 short int var191
/* : Bool */;
284 short int var192
/* : Bool */;
285 short int var194
/* : Bool */;
286 short int var195
/* : Bool */;
287 val
* var197
/* : NativeArray[String] */;
288 static val
* varonce196
;
289 static val
* varonce198
;
290 val
* var199
/* : String */;
291 char* var200
/* : NativeString */;
292 val
* var201
/* : FlatString */;
293 static val
* varonce202
;
294 val
* var203
/* : String */;
295 char* var204
/* : NativeString */;
296 val
* var205
/* : FlatString */;
297 val
* var206
/* : String */;
298 val
* var207
/* : String */;
299 val
* var208
/* : Message */;
300 val
* var210
/* : NativeArray[String] */;
301 static val
* varonce209
;
302 static val
* varonce211
;
303 val
* var212
/* : String */;
304 char* var213
/* : NativeString */;
305 val
* var214
/* : FlatString */;
306 static val
* varonce215
;
307 val
* var216
/* : String */;
308 char* var217
/* : NativeString */;
309 val
* var218
/* : FlatString */;
310 static val
* varonce219
;
311 val
* var220
/* : String */;
312 char* var221
/* : NativeString */;
313 val
* var222
/* : FlatString */;
314 val
* var223
/* : String */;
315 val
* var224
/* : String */;
316 val
* var225
/* : String */;
317 val
* var226
/* : Message */;
318 val
* var227
/* : MMethodDef */;
319 val
* var_pd
/* var pd: MMethodDef */;
320 val
* var228
/* : MPropDef */;
321 val
* var230
/* : MPropDef */;
322 val
* var231
/* : nullable MSignature */;
323 val
* var233
/* : nullable MSignature */;
324 short int var237
/* : Bool */;
327 { /* Inline mixin#ToolContext#opt_mixins (self) on <self:ToolContext> */
328 var3
= self
->attrs
[COLOR_nit__mixin__ToolContext___opt_mixins
].val
; /* _opt_mixins on <self:ToolContext> */
329 if (unlikely(var3
== NULL
)) {
330 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_mixins");
331 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 23);
339 { /* Inline opts#Option#value (var1) on <var1:OptionArray> */
340 var6
= var1
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var1:OptionArray> */
347 var7
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_mixins
);
352 var9
= nit__modelbuilder_base___ToolContext___modelbuilder(self
);
355 { /* Inline mixin#ToolContext#opt_mixins (self) on <self:ToolContext> */
356 var12
= self
->attrs
[COLOR_nit__mixin__ToolContext___opt_mixins
].val
; /* _opt_mixins on <self:ToolContext> */
357 if (unlikely(var12
== NULL
)) {
358 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_mixins");
359 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 23);
367 { /* Inline opts#Option#value (var10) on <var10:OptionArray> */
368 var15
= var10
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var10:OptionArray> */
374 var16
= nit__loader___ModelBuilder___parse(var9
, var13
);
377 standard___standard__Array___standard__abstract_collection__SimpleCollection__add_all(var_mmodules
, var16
); /* Direct call array#Array#add_all on <var_mmodules:Array[MModule]>*/
380 var17
= nit__modelbuilder_base___ToolContext___modelbuilder(self
);
383 nit__modelbuilder___ModelBuilder___run_phases(var17
); /* Direct call modelbuilder#ModelBuilder#run_phases on <var17:ModelBuilder>*/
388 var18
= ((val
*(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__mixin___ToolContext___make_main_module
]))(self
, p0
); /* make_main_module on <self:ToolContext>*/
390 var_mainmodule
= var18
;
392 { /* Inline mixin#ToolContext#opt_defines (self) on <self:ToolContext> */
393 var21
= self
->attrs
[COLOR_nit__mixin__ToolContext___opt_defines
].val
; /* _opt_defines on <self:ToolContext> */
394 if (unlikely(var21
== NULL
)) {
395 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_defines");
396 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 25);
404 { /* Inline opts#Option#value (var19) on <var19:OptionArray> */
405 var24
= var19
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var19:OptionArray> */
412 var25
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_defines
);
417 { /* Inline mmodule#MModule#location (var_mainmodule) on <var_mainmodule:MModule> */
418 var29
= var_mainmodule
->attrs
[COLOR_nit__mmodule__MModule___location
].val
; /* _location on <var_mainmodule:MModule> */
419 if (unlikely(var29
== NULL
)) {
420 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
421 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 90);
428 var_location
= var27
;
430 { /* Inline mmodule#MModule#model (var_mainmodule) on <var_mainmodule:MModule> */
431 var32
= var_mainmodule
->attrs
[COLOR_nit__mmodule__MModule___model
].val
; /* _model on <var_mainmodule:MModule> */
432 if (unlikely(var32
== NULL
)) {
433 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
434 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 73);
443 var33
= standard___standard__SequenceRead___Collection__first(var_mmodules
);
446 { /* Inline kernel#Object#== (var_mainmodule,var33) on <var_mainmodule:MModule> */
449 { /* Inline kernel#Object#is_same_instance (var_mainmodule,var_other) on <var_mainmodule:MModule> */
450 var38
= var_mainmodule
== var_other
;
462 var39
= NEW_nit__MModule(&type_nit__MModule
);
464 { /* Inline mmodule#MModule#name (var_mainmodule) on <var_mainmodule:MModule> */
465 var42
= var_mainmodule
->attrs
[COLOR_nit__mmodule__MModule___name
].val
; /* _name on <var_mainmodule:MModule> */
466 if (unlikely(var42
== NULL
)) {
467 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
468 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 87);
475 if (likely(varonce
!=NULL
)) {
479 var45
= standard___standard__NativeString___to_s_with_length(var44
, 2l);
484 var46
= ((val
*(*)(val
* self
, val
* p0
))(var40
->class->vft
[COLOR_standard__string__String___43d
]))(var40
, var43
); /* + on <var40:String>*/
487 ((void(*)(val
* self
, val
* p0
))(var39
->class->vft
[COLOR_nit__mmodule__MModule__model_61d
]))(var39
, var_model
); /* model= on <var39:MModule>*/
490 ((void(*)(val
* self
, val
* p0
))(var39
->class->vft
[COLOR_nit__mmodule__MModule__mgroup_61d
]))(var39
, ((val
*)NULL
)); /* mgroup= on <var39:MModule>*/
493 ((void(*)(val
* self
, val
* p0
))(var39
->class->vft
[COLOR_nit__mmodule__MModule__name_61d
]))(var39
, var46
); /* name= on <var39:MModule>*/
496 ((void(*)(val
* self
, val
* p0
))(var39
->class->vft
[COLOR_nit__mmodule__MModule__location_61d
]))(var39
, var_location
); /* location= on <var39:MModule>*/
499 ((void(*)(val
* self
))(var39
->class->vft
[COLOR_standard__kernel__Object__init
]))(var39
); /* init on <var39:MModule>*/
501 var_mainmodule
= var39
;
503 nit___nit__MModule___set_imported_mmodules(var_mainmodule
, var_mmodules
); /* Direct call mmodule#MModule#set_imported_mmodules on <var_mainmodule:MModule>*/
506 { /* Inline mmodule#MModule#is_fictive= (var_mainmodule,1) on <var_mainmodule:MModule> */
507 var_mainmodule
->attrs
[COLOR_nit__mmodule__MModule___is_fictive
].s
= 1; /* _is_fictive on <var_mainmodule:MModule> */
514 var48
= nit__model___MModule___sys_type(var_mainmodule
);
517 if (var_recv
== NULL
) {
518 var49
= 0; /* is null */
520 var49
= 1; /* arg is null and recv is not */
523 { /* Inline kernel#Object#!= (var_recv,((val*)NULL)) on <var_recv:nullable MClassType> */
524 var_other52
= ((val
*)NULL
);
526 var53
= ((short int(*)(val
* self
, val
* p0
))(var_recv
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_recv
, var_other52
); /* == on <var_recv:nullable MClassType(MClassType)>*/
535 if (unlikely(!var49
)) {
536 PRINT_ERROR("Runtime error: %s", "Assert failed");
537 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 56);
540 var55
= NEW_nit__MClassDef(&type_nit__MClassDef
);
542 ((void(*)(val
* self
, val
* p0
))(var55
->class->vft
[COLOR_nit__model__MClassDef__mmodule_61d
]))(var55
, var_mainmodule
); /* mmodule= on <var55:MClassDef>*/
545 ((void(*)(val
* self
, val
* p0
))(var55
->class->vft
[COLOR_nit__model__MClassDef__bound_mtype_61d
]))(var55
, var_recv
); /* bound_mtype= on <var55:MClassDef>*/
548 ((void(*)(val
* self
, val
* p0
))(var55
->class->vft
[COLOR_nit__model__MClassDef__location_61d
]))(var55
, var_location
); /* location= on <var55:MClassDef>*/
551 ((void(*)(val
* self
))(var55
->class->vft
[COLOR_standard__kernel__Object__init
]))(var55
); /* init on <var55:MClassDef>*/
553 var_mclassdef
= var55
;
555 nit___nit__MClassDef___add_in_hierarchy(var_mclassdef
); /* Direct call model#MClassDef#add_in_hierarchy on <var_mclassdef:MClassDef>*/
559 var56
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
564 var58
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_57
);
568 var59
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_57
);
572 var61
= (val
*)((long)('=')<<2|2);
573 var60
= standard__string_search___Text___split_once_on(var_define
, var61
);
577 var62
= standard___standard__SequenceRead___Collection__first(var_spl
);
580 var_val
= ((val
*)NULL
);
582 { /* Inline array#AbstractArrayRead#length (var_spl) on <var_spl:Array[String]> */
583 var65
= var_spl
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var_spl:Array[String]> */
589 { /* Inline kernel#Int#> (var63,1l) on <var63:Int> */
590 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
591 /* <1l:Int> isa OTHER */
592 var68
= 1; /* easy <1l:Int> isa OTHER*/
593 if (unlikely(!var68
)) {
594 var_class_name
= type_standard__Int
.name
;
595 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
596 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 536);
607 var70
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_spl
, 1l);
613 { /* Inline model#MClassType#mclass (var_recv) on <var_recv:nullable MClassType(MClassType)> */
614 var73
= var_recv
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_recv:nullable MClassType(MClassType)> */
615 if (unlikely(var73
== NULL
)) {
616 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
617 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
625 var74
= nit__model___MModule___try_get_primitive_method(var_mainmodule
, var_name
, var71
);
628 if (var_prop
== NULL
) {
629 var75
= 1; /* is null */
631 var75
= 0; /* arg is null but recv is not */
634 { /* Inline kernel#Object#== (var_prop,((val*)NULL)) on <var_prop:nullable MMethod> */
635 var_other
= ((val
*)NULL
);
637 { /* Inline kernel#Object#is_same_instance (var_prop,var_other) on <var_prop:nullable MMethod(MMethod)> */
638 var80
= var_prop
== var_other
;
651 if (unlikely(varonce81
==NULL
)) {
652 var82
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
653 if (likely(varonce83
!=NULL
)) {
656 var85
= "Error: --define: no top-level function `";
657 var86
= standard___standard__NativeString___to_s_with_length(var85
, 40l);
661 ((struct instance_standard__NativeArray
*)var82
)->values
[0]=var84
;
662 if (likely(varonce87
!=NULL
)) {
666 var90
= standard___standard__NativeString___to_s_with_length(var89
, 2l);
670 ((struct instance_standard__NativeArray
*)var82
)->values
[2]=var88
;
675 ((struct instance_standard__NativeArray
*)var82
)->values
[1]=var_name
;
677 var91
= ((val
*(*)(val
* self
))(var82
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var82
); /* native_to_s on <var82:NativeArray[String]>*/
681 var92
= nit___nit__ToolContext___error(self
, ((val
*)NULL
), var91
);
687 { /* Inline model#MProperty#intro (var_prop) on <var_prop:nullable MMethod(MMethod)> */
688 var95
= var_prop
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_prop:nullable MMethod(MMethod)> */
689 if (unlikely(var95
== NULL
)) {
690 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
691 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
699 { /* Inline model#MMethodDef#msignature (var93) on <var93:MPropDef(MMethodDef)> */
700 var98
= var93
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var93:MPropDef(MMethodDef)> */
706 PRINT_ERROR("Runtime error: %s", "Receiver is null");
707 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mixin
, 70);
710 { /* Inline model#MSignature#return_mtype (var96) on <var96:nullable MSignature> */
711 if (unlikely(var96
== NULL
)) {
712 PRINT_ERROR("Runtime error: %s", "Receiver is null");
713 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1768);
716 var101
= var96
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var96:nullable MSignature> */
718 RET_LABEL100
:(void)0;
722 if (var_ret
== NULL
) {
723 var102
= 1; /* is null */
725 var102
= 0; /* arg is null but recv is not */
728 { /* Inline kernel#Object#== (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
729 var_other
= ((val
*)NULL
);
731 { /* Inline kernel#Object#is_same_instance (var_ret,var_other) on <var_ret:nullable MType(MType)> */
732 var107
= var_ret
== var_other
;
735 RET_LABEL106
:(void)0;
740 RET_LABEL104
:(void)0;
745 if (unlikely(varonce108
==NULL
)) {
746 var109
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
747 if (likely(varonce110
!=NULL
)) {
750 var112
= "Error: --define: method `";
751 var113
= standard___standard__NativeString___to_s_with_length(var112
, 25l);
755 ((struct instance_standard__NativeArray
*)var109
)->values
[0]=var111
;
756 if (likely(varonce114
!=NULL
)) {
759 var116
= "` is not a function.";
760 var117
= standard___standard__NativeString___to_s_with_length(var116
, 20l);
764 ((struct instance_standard__NativeArray
*)var109
)->values
[2]=var115
;
770 var118
= ((val
*(*)(val
* self
))(var_prop
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_prop
); /* to_s on <var_prop:nullable MMethod(MMethod)>*/
772 ((struct instance_standard__NativeArray
*)var109
)->values
[1]=var118
;
774 var119
= ((val
*(*)(val
* self
))(var109
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var109
); /* native_to_s on <var109:NativeArray[String]>*/
778 var120
= nit___nit__ToolContext___error(self
, ((val
*)NULL
), var119
);
783 var121
= ((val
*(*)(val
* self
))(var_ret
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_ret
); /* to_s on <var_ret:nullable MType(MType)>*/
785 if (likely(varonce122
!=NULL
)) {
789 var125
= standard___standard__NativeString___to_s_with_length(var124
, 4l);
794 var126
= ((short int(*)(val
* self
, val
* p0
))(var121
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var121
, var123
); /* == on <var121:String>*/
797 if (var_val
== NULL
) {
798 var128
= 1; /* is null */
800 var128
= 0; /* arg is null but recv is not */
803 var129
= ((short int(*)(val
* self
, val
* p0
))(var_val
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_val
, ((val
*)NULL
)); /* == on <var_val:nullable Object(nullable String)>*/
810 if (likely(varonce131
!=NULL
)) {
814 var134
= standard___standard__NativeString___to_s_with_length(var133
, 4l);
819 var135
= ((short int(*)(val
* self
, val
* p0
))(var_val
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_val
, var132
); /* == on <var_val:nullable Object(String)>*/
824 var136
= (val
*)((long)(1)<<2|3);
827 if (likely(varonce137
!=NULL
)) {
831 var140
= standard___standard__NativeString___to_s_with_length(var139
, 5l);
836 var141
= ((short int(*)(val
* self
, val
* p0
))(var_val
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_val
, var138
); /* == on <var_val:nullable Object(String)>*/
839 var142
= (val
*)((long)(0)<<2|3);
842 if (unlikely(varonce143
==NULL
)) {
843 var144
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
844 if (likely(varonce145
!=NULL
)) {
847 var147
= "Error: --define: method `";
848 var148
= standard___standard__NativeString___to_s_with_length(var147
, 25l);
852 ((struct instance_standard__NativeArray
*)var144
)->values
[0]=var146
;
853 if (likely(varonce149
!=NULL
)) {
856 var151
= "` needs a Bool.";
857 var152
= standard___standard__NativeString___to_s_with_length(var151
, 15l);
861 ((struct instance_standard__NativeArray
*)var144
)->values
[2]=var150
;
867 var153
= ((val
*(*)(val
* self
))(var_prop
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_prop
); /* to_s on <var_prop:nullable MMethod(MMethod)>*/
869 ((struct instance_standard__NativeArray
*)var144
)->values
[1]=var153
;
871 var154
= ((val
*(*)(val
* self
))(var144
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var144
); /* native_to_s on <var144:NativeArray[String]>*/
875 var155
= nit___nit__ToolContext___error(self
, ((val
*)NULL
), var154
);
882 var156
= ((val
*(*)(val
* self
))(var_ret
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_ret
); /* to_s on <var_ret:nullable MType(MType)>*/
884 if (likely(varonce157
!=NULL
)) {
888 var160
= standard___standard__NativeString___to_s_with_length(var159
, 3l);
893 var161
= ((short int(*)(val
* self
, val
* p0
))(var156
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var156
, var158
); /* == on <var156:String>*/
896 if (var_val
== NULL
) {
897 var163
= 0; /* is null */
899 var163
= 1; /* arg is null and recv is not */
902 { /* Inline kernel#Object#!= (var_val,((val*)NULL)) on <var_val:nullable Object(nullable String)> */
903 var_other52
= ((val
*)NULL
);
905 var166
= ((short int(*)(val
* self
, val
* p0
))(var_val
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_val
, var_other52
); /* == on <var_val:nullable String(String)>*/
910 RET_LABEL165
:(void)0;
917 var169
= standard___standard__Text___is_numeric(var_val
);
925 var170
= standard___standard__Text___to_i(var_val
);
927 var171
= (val
*)(var170
<<2|1);
930 if (unlikely(varonce172
==NULL
)) {
931 var173
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
932 if (likely(varonce174
!=NULL
)) {
935 var176
= "Error: --define: method `";
936 var177
= standard___standard__NativeString___to_s_with_length(var176
, 25l);
940 ((struct instance_standard__NativeArray
*)var173
)->values
[0]=var175
;
941 if (likely(varonce178
!=NULL
)) {
944 var180
= "` needs a Int.";
945 var181
= standard___standard__NativeString___to_s_with_length(var180
, 14l);
949 ((struct instance_standard__NativeArray
*)var173
)->values
[2]=var179
;
955 var182
= ((val
*(*)(val
* self
))(var_prop
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_prop
); /* to_s on <var_prop:nullable MMethod(MMethod)>*/
957 ((struct instance_standard__NativeArray
*)var173
)->values
[1]=var182
;
959 var183
= ((val
*(*)(val
* self
))(var173
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var173
); /* native_to_s on <var173:NativeArray[String]>*/
963 var184
= nit___nit__ToolContext___error(self
, ((val
*)NULL
), var183
);
969 var185
= ((val
*(*)(val
* self
))(var_ret
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_ret
); /* to_s on <var_ret:nullable MType(MType)>*/
971 if (likely(varonce186
!=NULL
)) {
975 var189
= standard___standard__NativeString___to_s_with_length(var188
, 6l);
980 var190
= ((short int(*)(val
* self
, val
* p0
))(var185
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var185
, var187
); /* == on <var185:String>*/
983 if (var_val
== NULL
) {
984 var191
= 0; /* is null */
986 var191
= 1; /* arg is null and recv is not */
989 { /* Inline kernel#Object#!= (var_val,((val*)NULL)) on <var_val:nullable Object(nullable String)> */
990 var_other52
= ((val
*)NULL
);
992 var194
= ((short int(*)(val
* self
, val
* p0
))(var_val
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_val
, var_other52
); /* == on <var_val:nullable String(String)>*/
997 RET_LABEL193
:(void)0;
1004 if (unlikely(varonce196
==NULL
)) {
1005 var197
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
1006 if (likely(varonce198
!=NULL
)) {
1007 var199
= varonce198
;
1009 var200
= "Error: --define: method `";
1010 var201
= standard___standard__NativeString___to_s_with_length(var200
, 25l);
1012 varonce198
= var199
;
1014 ((struct instance_standard__NativeArray
*)var197
)->values
[0]=var199
;
1015 if (likely(varonce202
!=NULL
)) {
1016 var203
= varonce202
;
1018 var204
= "` needs a String.";
1019 var205
= standard___standard__NativeString___to_s_with_length(var204
, 17l);
1021 varonce202
= var203
;
1023 ((struct instance_standard__NativeArray
*)var197
)->values
[2]=var203
;
1025 var197
= varonce196
;
1029 var206
= ((val
*(*)(val
* self
))(var_prop
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_prop
); /* to_s on <var_prop:nullable MMethod(MMethod)>*/
1031 ((struct instance_standard__NativeArray
*)var197
)->values
[1]=var206
;
1033 var207
= ((val
*(*)(val
* self
))(var197
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var197
); /* native_to_s on <var197:NativeArray[String]>*/
1035 varonce196
= var197
;
1037 var208
= nit___nit__ToolContext___error(self
, ((val
*)NULL
), var207
);
1042 if (unlikely(varonce209
==NULL
)) {
1043 var210
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
1044 if (likely(varonce211
!=NULL
)) {
1045 var212
= varonce211
;
1047 var213
= "Error: --define: method `";
1048 var214
= standard___standard__NativeString___to_s_with_length(var213
, 25l);
1050 varonce211
= var212
;
1052 ((struct instance_standard__NativeArray
*)var210
)->values
[0]=var212
;
1053 if (likely(varonce215
!=NULL
)) {
1054 var216
= varonce215
;
1056 var217
= "` returns an unsupported type `";
1057 var218
= standard___standard__NativeString___to_s_with_length(var217
, 31l);
1059 varonce215
= var216
;
1061 ((struct instance_standard__NativeArray
*)var210
)->values
[2]=var216
;
1062 if (likely(varonce219
!=NULL
)) {
1063 var220
= varonce219
;
1066 var222
= standard___standard__NativeString___to_s_with_length(var221
, 2l);
1068 varonce219
= var220
;
1070 ((struct instance_standard__NativeArray
*)var210
)->values
[4]=var220
;
1072 var210
= varonce209
;
1076 var223
= ((val
*(*)(val
* self
))(var_prop
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_prop
); /* to_s on <var_prop:nullable MMethod(MMethod)>*/
1078 ((struct instance_standard__NativeArray
*)var210
)->values
[1]=var223
;
1080 var224
= ((val
*(*)(val
* self
))(var_ret
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_ret
); /* to_s on <var_ret:nullable MType(MType)>*/
1082 ((struct instance_standard__NativeArray
*)var210
)->values
[3]=var224
;
1084 var225
= ((val
*(*)(val
* self
))(var210
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var210
); /* native_to_s on <var210:NativeArray[String]>*/
1086 varonce209
= var210
;
1088 var226
= nit___nit__ToolContext___error(self
, ((val
*)NULL
), var225
);
1095 var227
= NEW_nit__MMethodDef(&type_nit__MMethodDef
);
1097 ((void(*)(val
* self
, val
* p0
))(var227
->class->vft
[COLOR_nit__model__MPropDef__mclassdef_61d
]))(var227
, var_mclassdef
); /* mclassdef= on <var227:MMethodDef>*/
1100 ((void(*)(val
* self
, val
* p0
))(var227
->class->vft
[COLOR_nit__model__MPropDef__mproperty_61d
]))(var227
, var_prop
); /* mproperty= on <var227:MMethodDef>*/
1103 ((void(*)(val
* self
, val
* p0
))(var227
->class->vft
[COLOR_nit__model__MPropDef__location_61d
]))(var227
, var_location
); /* location= on <var227:MMethodDef>*/
1106 ((void(*)(val
* self
))(var227
->class->vft
[COLOR_standard__kernel__Object__init
]))(var227
); /* init on <var227:MMethodDef>*/
1110 { /* Inline model#MProperty#intro (var_prop) on <var_prop:nullable MMethod(MMethod)> */
1111 var230
= var_prop
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_prop:nullable MMethod(MMethod)> */
1112 if (unlikely(var230
== NULL
)) {
1113 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
1114 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
1118 RET_LABEL229
:(void)0;
1122 { /* Inline model#MMethodDef#msignature (var228) on <var228:MPropDef(MMethodDef)> */
1123 var233
= var228
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var228:MPropDef(MMethodDef)> */
1125 RET_LABEL232
:(void)0;
1129 { /* Inline model#MMethodDef#msignature= (var_pd,var231) on <var_pd:MMethodDef> */
1130 var_pd
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
= var231
; /* _msignature on <var_pd:MMethodDef> */
1131 RET_LABEL234
:(void)0;
1135 { /* Inline model#MMethodDef#constant_value= (var_pd,var_v) on <var_pd:MMethodDef> */
1136 var_pd
->attrs
[COLOR_nit__model__MMethodDef___constant_value
].val
= var_v
; /* _constant_value on <var_pd:MMethodDef> */
1137 RET_LABEL235
:(void)0;
1140 BREAK_label
: (void)0;
1142 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_57
); /* Direct call array#ArrayIterator#next on <var_57:ArrayIterator[String]>*/
1145 goto BREAK_label236
;
1148 BREAK_label236
: (void)0;
1150 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_57
); /* Direct call array#ArrayIterator#finish on <var_57:ArrayIterator[String]>*/
1153 var237
= nit___nit__ToolContext___check_errors(self
);
1157 var
= var_mainmodule
;