1 #include "nitc__light_ffi.sep.0.h"
2 /* method light_ffi$MModule$uses_ffi for (self: MModule): Bool */
3 short int nitc__light_ffi___MModule___uses_ffi(val
* self
) {
4 short int var
/* : Bool */;
5 short int var1
/* : Bool */;
6 var1
= self
->attrs
[COLOR_nitc__light_ffi__MModule___uses_ffi
].s
; /* _uses_ffi on <self:MModule> */
11 /* method light_ffi$MModule$uses_ffi= for (self: MModule, Bool) */
12 void nitc__light_ffi___MModule___uses_ffi_61d(val
* self
, short int p0
) {
13 self
->attrs
[COLOR_nitc__light_ffi__MModule___uses_ffi
].s
= p0
; /* _uses_ffi on <self:MModule> */
16 /* method light_ffi$MModule$ffi_ccu for (self: MModule): nullable CCompilationUnit */
17 val
* nitc__light_ffi___MModule___ffi_ccu(val
* self
) {
18 val
* var
/* : nullable CCompilationUnit */;
19 val
* var1
/* : nullable CCompilationUnit */;
20 var1
= self
->attrs
[COLOR_nitc__light_ffi__MModule___ffi_ccu
].val
; /* _ffi_ccu on <self:MModule> */
25 /* method light_ffi$MModule$ffi_ccu= for (self: MModule, nullable CCompilationUnit) */
26 void nitc__light_ffi___MModule___ffi_ccu_61d(val
* self
, val
* p0
) {
27 self
->attrs
[COLOR_nitc__light_ffi__MModule___ffi_ccu
].val
= p0
; /* _ffi_ccu on <self:MModule> */
30 /* method light_ffi$MModule$present_languages for (self: MModule): HashSet[FFILanguage] */
31 val
* nitc__light_ffi___MModule___present_languages(val
* self
) {
32 val
* var
/* : HashSet[FFILanguage] */;
33 val
* var1
/* : HashSet[FFILanguage] */;
34 var1
= self
->attrs
[COLOR_nitc__light_ffi__MModule___present_languages
].val
; /* _present_languages on <self:MModule> */
35 if (unlikely(var1
== NULL
)) {
36 if(catchStack
.cursor
>= 0){
37 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
39 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _present_languages");
40 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 50);
47 /* method light_ffi$MModule$finalize_ffi_wrapper for (self: MModule, String, MModule) */
48 void nitc__light_ffi___MModule___finalize_ffi_wrapper(val
* self
, val
* p0
, val
* p1
) {
49 val
* var_compdir
/* var compdir: String */;
50 val
* var_mainmodule
/* var mainmodule: MModule */;
51 val
* var
/* : MultiHashMap[String, String] */;
52 val
* var2
/* : MultiHashMap[String, String] */;
54 val
* var3
/* : String */;
55 char* var4
/* : CString */;
56 val
* var5
/* : String */;
57 val
* var6
/* : nullable Int */;
58 val
* var7
/* : nullable Int */;
59 val
* var8
/* : nullable Bool */;
60 val
* var9
/* : nullable Bool */;
61 val
* var10
/* : nullable Object */;
62 static val
* varonce11
;
63 val
* var12
/* : String */;
64 char* var13
/* : CString */;
65 val
* var14
/* : String */;
66 val
* var15
/* : nullable Int */;
67 val
* var16
/* : nullable Int */;
68 val
* var17
/* : nullable Bool */;
69 val
* var18
/* : nullable Bool */;
70 val
* var19
/* : String */;
71 val
* var_cflags
/* var cflags: String */;
72 val
* var20
/* : nullable CCompilationUnit */;
73 val
* var22
/* : nullable CCompilationUnit */;
74 val
* var23
/* : nullable CCompilationUnit */;
75 val
* var25
/* : nullable CCompilationUnit */;
76 val
* var26
/* : Array[String] */;
77 val
* var28
/* : Array[String] */;
78 val
* var_
/* var : Array[String] */;
79 val
* var29
/* : IndexedIterator[nullable Object] */;
80 val
* var_30
/* var : IndexedIterator[String] */;
81 short int var31
/* : Bool */;
82 val
* var32
/* : nullable Object */;
83 val
* var_filename
/* var filename: String */;
84 val
* var33
/* : ExternCFile */;
85 val
* var_f
/* var f: ExternCFile */;
86 val
* var34
/* : Array[String] */;
87 val
* var36
/* : Array[String] */;
88 val
* var37
/* : Array[String] */;
89 val
* var39
/* : Array[String] */;
90 val
* var40
/* : Array[ExternFile] */;
91 val
* var42
/* : Array[ExternFile] */;
95 { /* Inline light_c$MModule$cflags (self) on <self:MModule> */
96 var2
= self
->attrs
[COLOR_nitc__light_c__MModule___cflags
].val
; /* _cflags on <self:MModule> */
97 if (unlikely(var2
== NULL
)) {
98 if(catchStack
.cursor
>= 0){
99 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
101 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _cflags");
102 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 77);
109 if (likely(varonce
!=NULL
)) {
113 var6
= (val
*)(0l<<2|1);
114 var7
= (val
*)(0l<<2|1);
115 var8
= (val
*)((long)(0)<<2|3);
116 var9
= (val
*)((long)(0)<<2|3);
117 var5
= core__flat___CString___to_s_unsafe(var4
, var6
, var7
, var8
, var9
);
122 var10
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var
, var3
);
124 if (likely(varonce11
!=NULL
)) {
128 var15
= (val
*)(1l<<2|1);
129 var16
= (val
*)(1l<<2|1);
130 var17
= (val
*)((long)(0)<<2|3);
131 var18
= (val
*)((long)(0)<<2|3);
132 var14
= core__flat___CString___to_s_unsafe(var13
, var15
, var16
, var17
, var18
);
137 var19
= core__abstract_text___Collection___join(var10
, var12
, ((val
*)NULL
));
141 { /* Inline light_ffi$MModule$ffi_ccu (self) on <self:MModule> */
142 var22
= self
->attrs
[COLOR_nitc__light_ffi__MModule___ffi_ccu
].val
; /* _ffi_ccu on <self:MModule> */
148 if(catchStack
.cursor
>= 0){
149 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
151 PRINT_ERROR("Runtime error: %s", "Receiver is null");
152 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 58);
155 nitc__light_ffi_base___CCompilationUnit___write_as_impl(var20
, self
, var_compdir
); /* Direct call light_ffi_base$CCompilationUnit$write_as_impl on <var20:nullable CCompilationUnit>*/
158 { /* Inline light_ffi$MModule$ffi_ccu (self) on <self:MModule> */
159 var25
= self
->attrs
[COLOR_nitc__light_ffi__MModule___ffi_ccu
].val
; /* _ffi_ccu on <self:MModule> */
165 if(catchStack
.cursor
>= 0){
166 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
168 PRINT_ERROR("Runtime error: %s", "Receiver is null");
169 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 59);
172 { /* Inline c_tools$CCompilationUnit$files (var23) on <var23:nullable CCompilationUnit> */
173 if (unlikely(var23
== NULL
)) {
174 if(catchStack
.cursor
>= 0){
175 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
177 PRINT_ERROR("Runtime error: %s", "Receiver is null");
178 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 47);
181 var28
= var23
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___files
].val
; /* _files on <var23:nullable CCompilationUnit> */
182 if (unlikely(var28
== NULL
)) {
183 if(catchStack
.cursor
>= 0){
184 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
186 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _files");
187 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 47);
196 var29
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
201 var31
= ((short int(*)(val
* self
))((((long)var_30
&3)?class_info
[((long)var_30
&3)]:var_30
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_30
); /* is_ok on <var_30:IndexedIterator[String]>*/
208 var32
= ((val
*(*)(val
* self
))((((long)var_30
&3)?class_info
[((long)var_30
&3)]:var_30
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_30
); /* item on <var_30:IndexedIterator[String]>*/
210 var_filename
= var32
;
211 var33
= NEW_nitc__ExternCFile(&type_nitc__ExternCFile
);
213 ((void(*)(val
* self
, val
* p0
))(var33
->class->vft
[COLOR_nitc__c_tools__ExternFile__filename_61d
]))(var33
, var_filename
); /* filename= on <var33:ExternCFile>*/
216 ((void(*)(val
* self
, val
* p0
))(var33
->class->vft
[COLOR_nitc__c_tools__ExternCFile__cflags_61d
]))(var33
, var_cflags
); /* cflags= on <var33:ExternCFile>*/
219 ((void(*)(val
* self
))(var33
->class->vft
[COLOR_core__kernel__Object__init
]))(var33
); /* init on <var33:ExternCFile>*/
223 { /* Inline c_tools$ExternFile$pkgconfigs (var_f) on <var_f:ExternCFile> */
224 var36
= var_f
->attrs
[COLOR_nitc__c_tools__ExternFile___pkgconfigs
].val
; /* _pkgconfigs on <var_f:ExternCFile> */
225 if (unlikely(var36
== NULL
)) {
226 if(catchStack
.cursor
>= 0){
227 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
229 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs");
230 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 123);
238 { /* Inline light_c$MModule$pkgconfigs (self) on <self:MModule> */
239 var39
= self
->attrs
[COLOR_nitc__light_c__MModule___pkgconfigs
].val
; /* _pkgconfigs on <self:MModule> */
240 if (unlikely(var39
== NULL
)) {
241 if(catchStack
.cursor
>= 0){
242 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
244 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs");
245 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 83);
253 core___core__Array___core__abstract_collection__SimpleCollection__add_all(var34
, var37
); /* Direct call array$Array$add_all on <var34:Array[String]>*/
256 { /* Inline light_ffi_base$MModule$ffi_files (self) on <self:MModule> */
257 var42
= self
->attrs
[COLOR_nitc__light_ffi_base__MModule___ffi_files
].val
; /* _ffi_files on <self:MModule> */
258 if (unlikely(var42
== NULL
)) {
259 if(catchStack
.cursor
>= 0){
260 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
262 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _ffi_files");
263 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi_base
, 82);
271 core___core__Array___core__abstract_collection__SimpleCollection__add(var40
, var_f
); /* Direct call array$Array$add on <var40:Array[ExternFile]>*/
274 ((void(*)(val
* self
))((((long)var_30
&3)?class_info
[((long)var_30
&3)]:var_30
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_30
); /* next on <var_30:IndexedIterator[String]>*/
277 BREAK_label
: (void)0;
279 ((void(*)(val
* self
))((((long)var_30
&3)?class_info
[((long)var_30
&3)]:var_30
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_30
); /* finish on <var_30:IndexedIterator[String]>*/
283 /* method light_ffi$MModule$compiled_ffi_methods for (self: MModule): HashSet[AMethPropdef] */
284 val
* nitc__light_ffi___MModule___compiled_ffi_methods(val
* self
) {
285 val
* var
/* : HashSet[AMethPropdef] */;
286 val
* var1
/* : HashSet[AMethPropdef] */;
287 var1
= self
->attrs
[COLOR_nitc__light_ffi__MModule___compiled_ffi_methods
].val
; /* _compiled_ffi_methods on <self:MModule> */
288 if (unlikely(var1
== NULL
)) {
289 if(catchStack
.cursor
>= 0){
290 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
292 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiled_ffi_methods");
293 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 66);
300 /* method light_ffi$AModule$ensure_compile_ffi_wrapper for (self: AModule) */
301 void nitc__light_ffi___AModule___ensure_compile_ffi_wrapper(val
* self
) {
302 val
* var
/* : nullable MModule */;
303 val
* var2
/* : nullable MModule */;
304 val
* var_mmodule
/* var mmodule: nullable MModule */;
305 short int var3
/* : Bool */;
306 short int var4
/* : Bool */;
307 short int var5
/* : Bool */;
308 val
* var_other
/* var other: nullable Object */;
309 short int var7
/* : Bool */;
310 short int var9
/* : Bool */;
311 short int var_
/* var : Bool */;
312 val
* var10
/* : nullable CCompilationUnit */;
313 val
* var12
/* : nullable CCompilationUnit */;
314 short int var13
/* : Bool */;
315 short int var14
/* : Bool */;
316 val
* var_other16
/* var other: nullable Object */;
317 short int var17
/* : Bool */;
318 short int var18
/* : Bool */;
319 val
* var19
/* : CCompilationUnit */;
320 val
* var_ffi_ccu
/* var ffi_ccu: CCompilationUnit */;
321 val
* var22
/* : ANodes[AExternCodeBlock] */;
322 val
* var24
/* : ANodes[AExternCodeBlock] */;
323 val
* var_25
/* var : ANodes[AExternCodeBlock] */;
324 val
* var26
/* : Iterator[ANode] */;
325 val
* var_27
/* var : Iterator[AExternCodeBlock] */;
326 short int var28
/* : Bool */;
327 val
* var29
/* : nullable Object */;
328 val
* var_block
/* var block: AExternCodeBlock */;
329 val
* var30
/* : nullable FFILanguage */;
330 val
* var32
/* : nullable FFILanguage */;
331 val
* var_language
/* var language: nullable FFILanguage */;
332 short int var33
/* : Bool */;
333 short int var34
/* : Bool */;
334 short int var36
/* : Bool */;
335 short int var37
/* : Bool */;
336 val
* var38
/* : HashSet[FFILanguage] */;
337 val
* var40
/* : HashSet[FFILanguage] */;
338 val
* var41
/* : Template */;
339 val
* var43
/* : Template */;
340 val
* var44
/* : NativeArray[String] */;
342 static val
* varonce45
;
343 val
* var46
/* : String */;
344 char* var47
/* : CString */;
345 val
* var48
/* : String */;
346 val
* var49
/* : nullable Int */;
347 val
* var50
/* : nullable Int */;
348 val
* var51
/* : nullable Bool */;
349 val
* var52
/* : nullable Bool */;
350 static val
* varonce53
;
351 val
* var54
/* : String */;
352 char* var55
/* : CString */;
353 val
* var56
/* : String */;
354 val
* var57
/* : nullable Int */;
355 val
* var58
/* : nullable Int */;
356 val
* var59
/* : nullable Bool */;
357 val
* var60
/* : nullable Bool */;
358 val
* var61
/* : String */;
359 val
* var62
/* : String */;
360 val
* var63
/* : Template */;
361 val
* var65
/* : Template */;
362 static val
* varonce66
;
363 val
* var67
/* : String */;
364 char* var68
/* : CString */;
365 val
* var69
/* : String */;
366 val
* var70
/* : nullable Int */;
367 val
* var71
/* : nullable Int */;
368 val
* var72
/* : nullable Bool */;
369 val
* var73
/* : nullable Bool */;
370 val
* var74
/* : Template */;
371 val
* var76
/* : Template */;
372 static val
* varonce77
;
373 val
* var78
/* : String */;
374 char* var79
/* : CString */;
375 val
* var80
/* : String */;
376 val
* var81
/* : nullable Int */;
377 val
* var82
/* : nullable Int */;
378 val
* var83
/* : nullable Bool */;
379 val
* var84
/* : nullable Bool */;
380 val
* var85
/* : Template */;
381 val
* var87
/* : Template */;
382 static val
* varonce88
;
383 val
* var89
/* : String */;
384 char* var90
/* : CString */;
385 val
* var91
/* : String */;
386 val
* var92
/* : nullable Int */;
387 val
* var93
/* : nullable Int */;
388 val
* var94
/* : nullable Bool */;
389 val
* var95
/* : nullable Bool */;
390 val
* var96
/* : Template */;
391 val
* var98
/* : Template */;
392 static val
* varonce99
;
393 val
* var100
/* : String */;
394 char* var101
/* : CString */;
395 val
* var102
/* : String */;
396 val
* var103
/* : nullable Int */;
397 val
* var104
/* : nullable Int */;
398 val
* var105
/* : nullable Bool */;
399 val
* var106
/* : nullable Bool */;
400 val
* var107
/* : Template */;
401 val
* var109
/* : Template */;
402 static val
* varonce110
;
403 val
* var111
/* : String */;
404 char* var112
/* : CString */;
405 val
* var113
/* : String */;
406 val
* var114
/* : nullable Int */;
407 val
* var115
/* : nullable Int */;
408 val
* var116
/* : nullable Bool */;
409 val
* var117
/* : nullable Bool */;
410 val
* var118
/* : Template */;
411 val
* var120
/* : Template */;
412 static val
* varonce121
;
413 val
* var122
/* : String */;
414 char* var123
/* : CString */;
415 val
* var124
/* : String */;
416 val
* var125
/* : nullable Int */;
417 val
* var126
/* : nullable Int */;
418 val
* var127
/* : nullable Bool */;
419 val
* var128
/* : nullable Bool */;
420 val
* var129
/* : ANodes[AClassdef] */;
421 val
* var131
/* : ANodes[AClassdef] */;
422 val
* var_132
/* var : ANodes[AClassdef] */;
423 val
* var133
/* : Iterator[ANode] */;
424 val
* var_134
/* var : Iterator[AClassdef] */;
425 short int var135
/* : Bool */;
426 val
* var137
/* : nullable Object */;
427 val
* var_nclassdef
/* var nclassdef: AClassdef */;
428 short int var138
/* : Bool */;
429 short int var139
/* : Bool */;
432 short int var_140
/* var : Bool */;
433 val
* var141
/* : nullable AExternCodeBlock */;
434 val
* var143
/* : nullable AExternCodeBlock */;
435 short int var144
/* : Bool */;
436 short int var145
/* : Bool */;
437 short int var147
/* : Bool */;
438 short int var148
/* : Bool */;
439 val
* var150
/* : nullable AExternCodeBlock */;
440 val
* var152
/* : nullable AExternCodeBlock */;
441 val
* var153
/* : nullable FFILanguage */;
442 val
* var155
/* : nullable FFILanguage */;
443 val
* var_language156
/* var language: nullable FFILanguage */;
444 short int var157
/* : Bool */;
445 short int var158
/* : Bool */;
446 short int var160
/* : Bool */;
447 short int var161
/* : Bool */;
448 val
* var162
/* : HashSet[FFILanguage] */;
449 val
* var164
/* : HashSet[FFILanguage] */;
450 val
* var165
/* : nullable AExternCodeBlock */;
451 val
* var167
/* : nullable AExternCodeBlock */;
452 val
* var168
/* : nullable FFILanguage */;
453 val
* var170
/* : nullable FFILanguage */;
454 val
* var171
/* : nullable AExternCodeBlock */;
455 val
* var173
/* : nullable AExternCodeBlock */;
456 val
* var_block175
/* var block: AExternCodeBlock */;
457 val
* var_m
/* var m: AClassdef */;
458 val
* var_ecc
/* var ecc: CCompilationUnit */;
459 val
* var_mmodule176
/* var mmodule: MModule */;
461 { /* Inline loader$AModule$mmodule (self) on <self:AModule> */
462 var2
= self
->attrs
[COLOR_nitc__loader__AModule___mmodule
].val
; /* _mmodule on <self:AModule> */
468 if (var_mmodule
== NULL
) {
469 var4
= 1; /* is null */
471 var4
= 0; /* arg is null but recv is not */
474 { /* Inline kernel$Object$== (var_mmodule,((val*)NULL)) on <var_mmodule:nullable MModule> */
475 var_other
= ((val
*)NULL
);
477 { /* Inline kernel$Object$is_same_instance (var_mmodule,var_other) on <var_mmodule:nullable MModule(MModule)> */
478 var9
= var_mmodule
== var_other
;
495 { /* Inline light_ffi$MModule$ffi_ccu (var_mmodule) on <var_mmodule:nullable MModule(MModule)> */
496 var12
= var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___ffi_ccu
].val
; /* _ffi_ccu on <var_mmodule:nullable MModule(MModule)> */
502 var13
= 0; /* is null */
504 var13
= 1; /* arg is null and recv is not */
507 { /* Inline kernel$Object$!= (var10,((val*)NULL)) on <var10:nullable CCompilationUnit> */
508 var_other16
= ((val
*)NULL
);
510 var17
= ((short int(*)(val
* self
, val
* p0
))(var10
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var10
, var_other16
); /* == on <var10:nullable CCompilationUnit(CCompilationUnit)>*/
525 var19
= NEW_nitc__CCompilationUnit(&type_nitc__CCompilationUnit
);
527 { /* Inline kernel$Object$init (var19) on <var19:CCompilationUnit> */
533 { /* Inline light_ffi$MModule$ffi_ccu= (var_mmodule,var_ffi_ccu) on <var_mmodule:nullable MModule(MModule)> */
534 var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___ffi_ccu
].val
= var_ffi_ccu
; /* _ffi_ccu on <var_mmodule:nullable MModule(MModule)> */
539 { /* Inline parser_nodes$AModule$n_extern_code_blocks (self) on <self:AModule> */
540 var24
= self
->attrs
[COLOR_nitc__parser_nodes__AModule___n_extern_code_blocks
].val
; /* _n_extern_code_blocks on <self:AModule> */
541 if (unlikely(var24
== NULL
)) {
542 if(catchStack
.cursor
>= 0){
543 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
545 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_extern_code_blocks");
546 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1122);
555 var26
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_25
);
560 var28
= ((short int(*)(val
* self
))((((long)var_27
&3)?class_info
[((long)var_27
&3)]:var_27
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_27
); /* is_ok on <var_27:Iterator[AExternCodeBlock]>*/
567 var29
= ((val
*(*)(val
* self
))((((long)var_27
&3)?class_info
[((long)var_27
&3)]:var_27
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_27
); /* item on <var_27:Iterator[AExternCodeBlock]>*/
571 { /* Inline light_ffi_base$AExternCodeBlock$language (var_block) on <var_block:AExternCodeBlock> */
572 var32
= var_block
->attrs
[COLOR_nitc__light_ffi_base__AExternCodeBlock___language
].val
; /* _language on <var_block:AExternCodeBlock> */
577 var_language
= var30
;
578 if (var_language
== NULL
) {
579 var33
= 0; /* is null */
581 var33
= 1; /* arg is null and recv is not */
584 { /* Inline kernel$Object$!= (var_language,((val*)NULL)) on <var_language:nullable FFILanguage> */
585 var_other16
= ((val
*)NULL
);
587 var36
= ((short int(*)(val
* self
, val
* p0
))(var_language
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_language
, var_other16
); /* == on <var_language:nullable FFILanguage(FFILanguage)>*/
596 if (unlikely(!var33
)) {
597 if(catchStack
.cursor
>= 0){
598 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
600 PRINT_ERROR("Runtime error: %s", "Assert failed");
601 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 88);
605 { /* Inline light_ffi$MModule$present_languages (var_mmodule) on <var_mmodule:nullable MModule(MModule)> */
606 var40
= var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___present_languages
].val
; /* _present_languages on <var_mmodule:nullable MModule(MModule)> */
607 if (unlikely(var40
== NULL
)) {
608 if(catchStack
.cursor
>= 0){
609 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
611 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _present_languages");
612 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 50);
620 core___core__HashSet___core__abstract_collection__SimpleCollection__add(var38
, var_language
); /* Direct call hash_collection$HashSet$add on <var38:HashSet[FFILanguage]>*/
623 nitc___nitc__CLanguage___nitc__light_ffi_base__FFILanguage__compile_module_block(var_language
, var_block
, var_ffi_ccu
, var_mmodule
); /* Direct call light_c$CLanguage$compile_module_block on <var_language:nullable FFILanguage(FFILanguage)>*/
626 ((void(*)(val
* self
))((((long)var_27
&3)?class_info
[((long)var_27
&3)]:var_27
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_27
); /* next on <var_27:Iterator[AExternCodeBlock]>*/
629 BREAK_label
: (void)0;
631 ((void(*)(val
* self
))((((long)var_27
&3)?class_info
[((long)var_27
&3)]:var_27
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_27
); /* finish on <var_27:Iterator[AExternCodeBlock]>*/
634 { /* Inline c_tools$CCompilationUnit$header_c_base (var_ffi_ccu) on <var_ffi_ccu:CCompilationUnit> */
635 var43
= var_ffi_ccu
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___header_c_base
].val
; /* _header_c_base on <var_ffi_ccu:CCompilationUnit> */
636 if (unlikely(var43
== NULL
)) {
637 if(catchStack
.cursor
>= 0){
638 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
640 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_base");
641 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 24);
648 if (unlikely(varonce
==NULL
)) {
649 var44
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
650 if (likely(varonce45
!=NULL
)) {
653 var47
= "#include \"";
654 var49
= (val
*)(10l<<2|1);
655 var50
= (val
*)(10l<<2|1);
656 var51
= (val
*)((long)(0)<<2|3);
657 var52
= (val
*)((long)(0)<<2|3);
658 var48
= core__flat___CString___to_s_unsafe(var47
, var49
, var50
, var51
, var52
);
662 ((struct instance_core__NativeArray
*)var44
)->values
[0]=var46
;
663 if (likely(varonce53
!=NULL
)) {
666 var55
= "._nitni.h\"\n";
667 var57
= (val
*)(11l<<2|1);
668 var58
= (val
*)(11l<<2|1);
669 var59
= (val
*)((long)(0)<<2|3);
670 var60
= (val
*)((long)(0)<<2|3);
671 var56
= core__flat___CString___to_s_unsafe(var55
, var57
, var58
, var59
, var60
);
675 ((struct instance_core__NativeArray
*)var44
)->values
[2]=var54
;
681 var61
= nitc___nitc__MModule___nitc__model_base__MEntity__c_name(var_mmodule
);
683 ((struct instance_core__NativeArray
*)var44
)->values
[1]=var61
;
685 var62
= ((val
*(*)(val
* self
))(var44
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var44
); /* native_to_s on <var44:NativeArray[String]>*/
689 template___template__Template___add(var41
, var62
); /* Direct call template$Template$add on <var41:Template>*/
692 { /* Inline c_tools$CCompilationUnit$body_decl (var_ffi_ccu) on <var_ffi_ccu:CCompilationUnit> */
693 var65
= var_ffi_ccu
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_decl
].val
; /* _body_decl on <var_ffi_ccu:CCompilationUnit> */
694 if (unlikely(var65
== NULL
)) {
695 if(catchStack
.cursor
>= 0){
696 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
698 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
699 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 37);
706 if (likely(varonce66
!=NULL
)) {
709 var68
= "#ifdef ANDROID\n";
710 var70
= (val
*)(15l<<2|1);
711 var71
= (val
*)(15l<<2|1);
712 var72
= (val
*)((long)(0)<<2|3);
713 var73
= (val
*)((long)(0)<<2|3);
714 var69
= core__flat___CString___to_s_unsafe(var68
, var70
, var71
, var72
, var73
);
719 template___template__Template___add(var63
, var67
); /* Direct call template$Template$add on <var63:Template>*/
722 { /* Inline c_tools$CCompilationUnit$body_decl (var_ffi_ccu) on <var_ffi_ccu:CCompilationUnit> */
723 var76
= var_ffi_ccu
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_decl
].val
; /* _body_decl on <var_ffi_ccu:CCompilationUnit> */
724 if (unlikely(var76
== NULL
)) {
725 if(catchStack
.cursor
>= 0){
726 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
728 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
729 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 37);
736 if (likely(varonce77
!=NULL
)) {
739 var79
= "\t#include <android/log.h>\n";
740 var81
= (val
*)(26l<<2|1);
741 var82
= (val
*)(26l<<2|1);
742 var83
= (val
*)((long)(0)<<2|3);
743 var84
= (val
*)((long)(0)<<2|3);
744 var80
= core__flat___CString___to_s_unsafe(var79
, var81
, var82
, var83
, var84
);
749 template___template__Template___add(var74
, var78
); /* Direct call template$Template$add on <var74:Template>*/
752 { /* Inline c_tools$CCompilationUnit$body_decl (var_ffi_ccu) on <var_ffi_ccu:CCompilationUnit> */
753 var87
= var_ffi_ccu
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_decl
].val
; /* _body_decl on <var_ffi_ccu:CCompilationUnit> */
754 if (unlikely(var87
== NULL
)) {
755 if(catchStack
.cursor
>= 0){
756 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
758 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
759 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 37);
766 if (likely(varonce88
!=NULL
)) {
769 var90
= "\t#define PRINT_ERROR(...) (void)__android_log_print(ANDROID_LOG_WARN, \"Nit\", __VA_ARGS__)\n";
770 var92
= (val
*)(90l<<2|1);
771 var93
= (val
*)(90l<<2|1);
772 var94
= (val
*)((long)(0)<<2|3);
773 var95
= (val
*)((long)(0)<<2|3);
774 var91
= core__flat___CString___to_s_unsafe(var90
, var92
, var93
, var94
, var95
);
779 template___template__Template___add(var85
, var89
); /* Direct call template$Template$add on <var85:Template>*/
782 { /* Inline c_tools$CCompilationUnit$body_decl (var_ffi_ccu) on <var_ffi_ccu:CCompilationUnit> */
783 var98
= var_ffi_ccu
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_decl
].val
; /* _body_decl on <var_ffi_ccu:CCompilationUnit> */
784 if (unlikely(var98
== NULL
)) {
785 if(catchStack
.cursor
>= 0){
786 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
788 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
789 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 37);
796 if (likely(varonce99
!=NULL
)) {
800 var103
= (val
*)(6l<<2|1);
801 var104
= (val
*)(6l<<2|1);
802 var105
= (val
*)((long)(0)<<2|3);
803 var106
= (val
*)((long)(0)<<2|3);
804 var102
= core__flat___CString___to_s_unsafe(var101
, var103
, var104
, var105
, var106
);
809 template___template__Template___add(var96
, var100
); /* Direct call template$Template$add on <var96:Template>*/
812 { /* Inline c_tools$CCompilationUnit$body_decl (var_ffi_ccu) on <var_ffi_ccu:CCompilationUnit> */
813 var109
= var_ffi_ccu
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_decl
].val
; /* _body_decl on <var_ffi_ccu:CCompilationUnit> */
814 if (unlikely(var109
== NULL
)) {
815 if(catchStack
.cursor
>= 0){
816 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
818 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
819 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 37);
823 RET_LABEL108
:(void)0;
826 if (likely(varonce110
!=NULL
)) {
829 var112
= "\t#define PRINT_ERROR(...) fprintf(stderr, __VA_ARGS__)\n";
830 var114
= (val
*)(55l<<2|1);
831 var115
= (val
*)(55l<<2|1);
832 var116
= (val
*)((long)(0)<<2|3);
833 var117
= (val
*)((long)(0)<<2|3);
834 var113
= core__flat___CString___to_s_unsafe(var112
, var114
, var115
, var116
, var117
);
839 template___template__Template___add(var107
, var111
); /* Direct call template$Template$add on <var107:Template>*/
842 { /* Inline c_tools$CCompilationUnit$body_decl (var_ffi_ccu) on <var_ffi_ccu:CCompilationUnit> */
843 var120
= var_ffi_ccu
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_decl
].val
; /* _body_decl on <var_ffi_ccu:CCompilationUnit> */
844 if (unlikely(var120
== NULL
)) {
845 if(catchStack
.cursor
>= 0){
846 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
848 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl");
849 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 37);
853 RET_LABEL119
:(void)0;
856 if (likely(varonce121
!=NULL
)) {
860 var125
= (val
*)(7l<<2|1);
861 var126
= (val
*)(7l<<2|1);
862 var127
= (val
*)((long)(0)<<2|3);
863 var128
= (val
*)((long)(0)<<2|3);
864 var124
= core__flat___CString___to_s_unsafe(var123
, var125
, var126
, var127
, var128
);
869 template___template__Template___add(var118
, var122
); /* Direct call template$Template$add on <var118:Template>*/
872 { /* Inline parser_nodes$AModule$n_classdefs (self) on <self:AModule> */
873 var131
= self
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <self:AModule> */
874 if (unlikely(var131
== NULL
)) {
875 if(catchStack
.cursor
>= 0){
876 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
878 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
879 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1125);
883 RET_LABEL130
:(void)0;
888 var133
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_132
);
893 var135
= ((short int(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_134
); /* is_ok on <var_134:Iterator[AClassdef]>*/
900 var137
= ((val
*(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_134
); /* item on <var_134:Iterator[AClassdef]>*/
902 var_nclassdef
= var137
;
903 /* <var_nclassdef:AClassdef> isa AStdClassdef */
904 cltype
= type_nitc__AStdClassdef
.color
;
905 idtype
= type_nitc__AStdClassdef
.id
;
906 if(cltype
>= var_nclassdef
->type
->table_size
) {
909 var139
= var_nclassdef
->type
->type_table
[cltype
] == idtype
;
914 { /* Inline parser_nodes$AStdClassdef$n_extern_code_block (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
915 var143
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_extern_code_block
].val
; /* _n_extern_code_block on <var_nclassdef:AClassdef(AStdClassdef)> */
917 RET_LABEL142
:(void)0;
920 if (var141
== NULL
) {
921 var144
= 0; /* is null */
923 var144
= 1; /* arg is null and recv is not */
926 { /* Inline kernel$Object$!= (var141,((val*)NULL)) on <var141:nullable AExternCodeBlock> */
927 var_other16
= ((val
*)NULL
);
929 var147
= ((short int(*)(val
* self
, val
* p0
))(var141
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var141
, var_other16
); /* == on <var141:nullable AExternCodeBlock(AExternCodeBlock)>*/
934 RET_LABEL146
:(void)0;
944 { /* Inline light_ffi$MModule$uses_ffi= (var_mmodule,1) on <var_mmodule:nullable MModule(MModule)> */
945 var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___uses_ffi
].s
= 1; /* _uses_ffi on <var_mmodule:nullable MModule(MModule)> */
946 RET_LABEL149
:(void)0;
950 { /* Inline parser_nodes$AStdClassdef$n_extern_code_block (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
951 var152
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_extern_code_block
].val
; /* _n_extern_code_block on <var_nclassdef:AClassdef(AStdClassdef)> */
953 RET_LABEL151
:(void)0;
956 if (var150
== NULL
) {
957 if(catchStack
.cursor
>= 0){
958 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
960 PRINT_ERROR("Runtime error: %s", "Receiver is null");
961 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 106);
964 { /* Inline light_ffi_base$AExternCodeBlock$language (var150) on <var150:nullable AExternCodeBlock> */
965 if (unlikely(var150
== NULL
)) {
966 if(catchStack
.cursor
>= 0){
967 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
969 PRINT_ERROR("Runtime error: %s", "Receiver is null");
970 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi_base
, 102);
973 var155
= var150
->attrs
[COLOR_nitc__light_ffi_base__AExternCodeBlock___language
].val
; /* _language on <var150:nullable AExternCodeBlock> */
975 RET_LABEL154
:(void)0;
978 var_language156
= var153
;
979 if (var_language156
== NULL
) {
980 var157
= 0; /* is null */
982 var157
= 1; /* arg is null and recv is not */
985 { /* Inline kernel$Object$!= (var_language156,((val*)NULL)) on <var_language156:nullable FFILanguage> */
986 var_other16
= ((val
*)NULL
);
988 var160
= ((short int(*)(val
* self
, val
* p0
))(var_language156
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_language156
, var_other16
); /* == on <var_language156:nullable FFILanguage(FFILanguage)>*/
993 RET_LABEL159
:(void)0;
997 if (unlikely(!var157
)) {
998 if(catchStack
.cursor
>= 0){
999 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1001 PRINT_ERROR("Runtime error: %s", "Assert failed");
1002 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 107);
1006 { /* Inline light_ffi$MModule$present_languages (var_mmodule) on <var_mmodule:nullable MModule(MModule)> */
1007 var164
= var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___present_languages
].val
; /* _present_languages on <var_mmodule:nullable MModule(MModule)> */
1008 if (unlikely(var164
== NULL
)) {
1009 if(catchStack
.cursor
>= 0){
1010 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1012 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _present_languages");
1013 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 50);
1017 RET_LABEL163
:(void)0;
1021 core___core__HashSet___core__abstract_collection__SimpleCollection__add(var162
, var_language156
); /* Direct call hash_collection$HashSet$add on <var162:HashSet[FFILanguage]>*/
1024 { /* Inline parser_nodes$AStdClassdef$n_extern_code_block (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
1025 var167
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_extern_code_block
].val
; /* _n_extern_code_block on <var_nclassdef:AClassdef(AStdClassdef)> */
1027 RET_LABEL166
:(void)0;
1030 if (var165
== NULL
) {
1031 if(catchStack
.cursor
>= 0){
1032 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1034 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1035 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 109);
1038 { /* Inline light_ffi_base$AExternCodeBlock$language (var165) on <var165:nullable AExternCodeBlock> */
1039 if (unlikely(var165
== NULL
)) {
1040 if(catchStack
.cursor
>= 0){
1041 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1043 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1044 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi_base
, 102);
1047 var170
= var165
->attrs
[COLOR_nitc__light_ffi_base__AExternCodeBlock___language
].val
; /* _language on <var165:nullable AExternCodeBlock> */
1049 RET_LABEL169
:(void)0;
1053 { /* Inline parser_nodes$AStdClassdef$n_extern_code_block (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
1054 var173
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_extern_code_block
].val
; /* _n_extern_code_block on <var_nclassdef:AClassdef(AStdClassdef)> */
1056 RET_LABEL172
:(void)0;
1059 if (unlikely(var171
== NULL
)) {
1060 if(catchStack
.cursor
>= 0){
1061 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1063 PRINT_ERROR("Runtime error: %s", "Cast failed");
1064 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 110);
1067 if (var168
== NULL
) {
1068 if(catchStack
.cursor
>= 0){
1069 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1071 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1072 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 109);
1075 { /* Inline light_c$CLanguage$compile_extern_class (var168,var171,var_nclassdef,var_ffi_ccu,var_mmodule) on <var168:nullable FFILanguage> */
1076 var_block175
= var171
;
1077 var_m
= var_nclassdef
;
1078 var_ecc
= var_ffi_ccu
;
1079 var_mmodule176
= var_mmodule
;
1080 RET_LABEL174
:(void)0;
1086 ((void(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_134
); /* next on <var_134:Iterator[AClassdef]>*/
1089 BREAK_label136
: (void)0;
1091 ((void(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_134
); /* finish on <var_134:Iterator[AClassdef]>*/
1095 /* method light_ffi$AMethPropdef$compile_ffi_method for (self: AMethPropdef, MModule) */
1096 void nitc__light_ffi___AMethPropdef___compile_ffi_method(val
* self
, val
* p0
) {
1097 val
* var_mmodule
/* var mmodule: MModule */;
1098 val
* var
/* : nullable AExternCodeBlock */;
1099 val
* var2
/* : nullable AExternCodeBlock */;
1100 short int var3
/* : Bool */;
1101 short int var4
/* : Bool */;
1102 val
* var_other
/* var other: nullable Object */;
1103 short int var6
/* : Bool */;
1104 short int var7
/* : Bool */;
1105 val
* var8
/* : HashSet[AMethPropdef] */;
1106 val
* var10
/* : HashSet[AMethPropdef] */;
1107 short int var11
/* : Bool */;
1108 val
* var12
/* : HashSet[AMethPropdef] */;
1109 val
* var14
/* : HashSet[AMethPropdef] */;
1110 val
* var15
/* : nullable AExternCodeBlock */;
1111 val
* var17
/* : nullable AExternCodeBlock */;
1112 val
* var18
/* : nullable FFILanguage */;
1113 val
* var20
/* : nullable FFILanguage */;
1114 val
* var_language
/* var language: nullable FFILanguage */;
1115 short int var21
/* : Bool */;
1116 short int var22
/* : Bool */;
1117 short int var24
/* : Bool */;
1118 short int var25
/* : Bool */;
1119 val
* var26
/* : HashSet[FFILanguage] */;
1120 val
* var28
/* : HashSet[FFILanguage] */;
1121 val
* var29
/* : nullable AExternCodeBlock */;
1122 val
* var31
/* : nullable AExternCodeBlock */;
1123 val
* var32
/* : nullable FFILanguage */;
1124 val
* var34
/* : nullable FFILanguage */;
1125 val
* var35
/* : nullable AExternCodeBlock */;
1126 val
* var37
/* : nullable AExternCodeBlock */;
1127 val
* var38
/* : nullable CCompilationUnit */;
1128 val
* var40
/* : nullable CCompilationUnit */;
1131 { /* Inline parser_nodes$AMethPropdef$n_extern_code_block (self) on <self:AMethPropdef> */
1132 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AMethPropdef___n_extern_code_block
].val
; /* _n_extern_code_block on <self:AMethPropdef> */
1138 var3
= 0; /* is null */
1140 var3
= 1; /* arg is null and recv is not */
1143 { /* Inline kernel$Object$!= (var,((val*)NULL)) on <var:nullable AExternCodeBlock> */
1144 var_other
= ((val
*)NULL
);
1146 var6
= ((short int(*)(val
* self
, val
* p0
))(var
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var
, var_other
); /* == on <var:nullable AExternCodeBlock(AExternCodeBlock)>*/
1155 if (unlikely(!var3
)) {
1156 if(catchStack
.cursor
>= 0){
1157 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1159 PRINT_ERROR("Runtime error: %s", "Assert failed");
1160 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 120);
1164 { /* Inline light_ffi$MModule$compiled_ffi_methods (var_mmodule) on <var_mmodule:MModule> */
1165 var10
= var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___compiled_ffi_methods
].val
; /* _compiled_ffi_methods on <var_mmodule:MModule> */
1166 if (unlikely(var10
== NULL
)) {
1167 if(catchStack
.cursor
>= 0){
1168 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1170 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiled_ffi_methods");
1171 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 66);
1179 var11
= core___core__HashSet___core__abstract_collection__Collection__has(var8
, self
);
1186 { /* Inline light_ffi$MModule$compiled_ffi_methods (var_mmodule) on <var_mmodule:MModule> */
1187 var14
= var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___compiled_ffi_methods
].val
; /* _compiled_ffi_methods on <var_mmodule:MModule> */
1188 if (unlikely(var14
== NULL
)) {
1189 if(catchStack
.cursor
>= 0){
1190 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1192 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiled_ffi_methods");
1193 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 66);
1197 RET_LABEL13
:(void)0;
1201 core___core__HashSet___core__abstract_collection__SimpleCollection__add(var12
, self
); /* Direct call hash_collection$HashSet$add on <var12:HashSet[AMethPropdef]>*/
1204 { /* Inline parser_nodes$AMethPropdef$n_extern_code_block (self) on <self:AMethPropdef> */
1205 var17
= self
->attrs
[COLOR_nitc__parser_nodes__AMethPropdef___n_extern_code_block
].val
; /* _n_extern_code_block on <self:AMethPropdef> */
1207 RET_LABEL16
:(void)0;
1210 if (var15
== NULL
) {
1211 if(catchStack
.cursor
>= 0){
1212 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1214 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1215 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 125);
1218 { /* Inline light_ffi_base$AExternCodeBlock$language (var15) on <var15:nullable AExternCodeBlock> */
1219 if (unlikely(var15
== NULL
)) {
1220 if(catchStack
.cursor
>= 0){
1221 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1223 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1224 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi_base
, 102);
1227 var20
= var15
->attrs
[COLOR_nitc__light_ffi_base__AExternCodeBlock___language
].val
; /* _language on <var15:nullable AExternCodeBlock> */
1229 RET_LABEL19
:(void)0;
1232 var_language
= var18
;
1233 if (var_language
== NULL
) {
1234 var21
= 0; /* is null */
1236 var21
= 1; /* arg is null and recv is not */
1239 { /* Inline kernel$Object$!= (var_language,((val*)NULL)) on <var_language:nullable FFILanguage> */
1240 var_other
= ((val
*)NULL
);
1242 var24
= ((short int(*)(val
* self
, val
* p0
))(var_language
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_language
, var_other
); /* == on <var_language:nullable FFILanguage(FFILanguage)>*/
1247 RET_LABEL23
:(void)0;
1251 if (unlikely(!var21
)) {
1252 if(catchStack
.cursor
>= 0){
1253 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1255 PRINT_ERROR("Runtime error: %s", "Assert failed");
1256 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 126);
1260 { /* Inline light_ffi$MModule$present_languages (var_mmodule) on <var_mmodule:MModule> */
1261 var28
= var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___present_languages
].val
; /* _present_languages on <var_mmodule:MModule> */
1262 if (unlikely(var28
== NULL
)) {
1263 if(catchStack
.cursor
>= 0){
1264 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1266 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _present_languages");
1267 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 50);
1271 RET_LABEL27
:(void)0;
1275 core___core__HashSet___core__abstract_collection__SimpleCollection__add(var26
, var_language
); /* Direct call hash_collection$HashSet$add on <var26:HashSet[FFILanguage]>*/
1278 { /* Inline parser_nodes$AMethPropdef$n_extern_code_block (self) on <self:AMethPropdef> */
1279 var31
= self
->attrs
[COLOR_nitc__parser_nodes__AMethPropdef___n_extern_code_block
].val
; /* _n_extern_code_block on <self:AMethPropdef> */
1281 RET_LABEL30
:(void)0;
1284 if (var29
== NULL
) {
1285 if(catchStack
.cursor
>= 0){
1286 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1288 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1289 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 128);
1292 { /* Inline light_ffi_base$AExternCodeBlock$language (var29) on <var29:nullable AExternCodeBlock> */
1293 if (unlikely(var29
== NULL
)) {
1294 if(catchStack
.cursor
>= 0){
1295 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1297 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1298 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi_base
, 102);
1301 var34
= var29
->attrs
[COLOR_nitc__light_ffi_base__AExternCodeBlock___language
].val
; /* _language on <var29:nullable AExternCodeBlock> */
1303 RET_LABEL33
:(void)0;
1307 { /* Inline parser_nodes$AMethPropdef$n_extern_code_block (self) on <self:AMethPropdef> */
1308 var37
= self
->attrs
[COLOR_nitc__parser_nodes__AMethPropdef___n_extern_code_block
].val
; /* _n_extern_code_block on <self:AMethPropdef> */
1310 RET_LABEL36
:(void)0;
1313 if (unlikely(var35
== NULL
)) {
1314 if(catchStack
.cursor
>= 0){
1315 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1317 PRINT_ERROR("Runtime error: %s", "Cast failed");
1318 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 129);
1322 { /* Inline light_ffi$MModule$ffi_ccu (var_mmodule) on <var_mmodule:MModule> */
1323 var40
= var_mmodule
->attrs
[COLOR_nitc__light_ffi__MModule___ffi_ccu
].val
; /* _ffi_ccu on <var_mmodule:MModule> */
1325 RET_LABEL39
:(void)0;
1328 if (unlikely(var38
== NULL
)) {
1329 if(catchStack
.cursor
>= 0){
1330 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1332 PRINT_ERROR("Runtime error: %s", "Cast failed");
1333 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 129);
1336 if (var32
== NULL
) {
1337 if(catchStack
.cursor
>= 0){
1338 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1340 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1341 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_ffi
, 128);
1344 nitc___nitc__CLanguage___nitc__light_ffi_base__FFILanguage__compile_extern_method(var32
, var35
, self
, var38
, var_mmodule
); /* Direct call light_c$CLanguage$compile_extern_method on <var32:nullable FFILanguage>*/