1 #include "nitc__light_c.sep.0.h"
2 /* method light_c$CLanguage$identify_language for (self: CLanguage, AExternCodeBlock): Bool */
3 short int nitc___nitc__CLanguage___nitc__light_ffi_base__FFILanguage__identify_language(val
* self
, val
* p0
) {
4 short int var
/* : Bool */;
5 val
* var_n
/* var n: AExternCodeBlock */;
6 short int var1
/* : Bool */;
9 var1
= nitc__light_c___AExternCodeBlock___is_c(var_n
);
16 /* method light_c$CLanguage$compile_module_block for (self: CLanguage, AExternCodeBlock, CCompilationUnit, MModule) */
17 void nitc___nitc__CLanguage___nitc__light_ffi_base__FFILanguage__compile_module_block(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
18 val
* var_block
/* var block: AExternCodeBlock */;
19 val
* var_ecc
/* var ecc: CCompilationUnit */;
20 val
* var_mmodule
/* var mmodule: MModule */;
21 short int var
/* : Bool */;
22 val
* var1
/* : Template */;
23 val
* var3
/* : Template */;
24 val
* var4
/* : Location */;
25 val
* var6
/* : Location */;
26 val
* var7
/* : String */;
27 val
* var8
/* : Template */;
28 val
* var10
/* : Template */;
30 val
* var11
/* : String */;
31 char* var12
/* : CString */;
32 val
* var13
/* : String */;
33 val
* var14
/* : nullable Int */;
34 val
* var15
/* : nullable Int */;
35 val
* var16
/* : nullable Bool */;
36 val
* var17
/* : nullable Bool */;
37 val
* var18
/* : Template */;
38 val
* var20
/* : Template */;
39 val
* var21
/* : String */;
40 short int var22
/* : Bool */;
41 val
* var23
/* : Template */;
42 val
* var25
/* : Template */;
43 val
* var26
/* : Location */;
44 val
* var28
/* : Location */;
45 val
* var29
/* : String */;
46 val
* var30
/* : Template */;
47 val
* var32
/* : Template */;
48 static val
* varonce33
;
49 val
* var34
/* : String */;
50 char* var35
/* : CString */;
51 val
* var36
/* : String */;
52 val
* var37
/* : nullable Int */;
53 val
* var38
/* : nullable Int */;
54 val
* var39
/* : nullable Bool */;
55 val
* var40
/* : nullable Bool */;
56 val
* var41
/* : Template */;
57 val
* var43
/* : Template */;
58 val
* var44
/* : String */;
63 var
= nitc__light_c___AExternCodeBlock___is_c_header(var_block
);
67 { /* Inline c_tools$CCompilationUnit$header_custom (var_ecc) on <var_ecc:CCompilationUnit> */
68 var3
= var_ecc
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___header_custom
].val
; /* _header_custom on <var_ecc:CCompilationUnit> */
69 if (unlikely(var3
== NULL
)) {
70 if(catchStack
.cursor
>= 0){
71 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
73 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_custom");
74 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 28);
82 { /* Inline parser_nodes$ANode$location (var_block) on <var_block:AExternCodeBlock> */
83 var6
= var_block
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_block:AExternCodeBlock> */
84 if (unlikely(var6
== NULL
)) {
85 if(catchStack
.cursor
>= 0){
86 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
88 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
89 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
97 var7
= nitc__light_c___Location___as_line_pragma(var4
);
100 template___template__Template___add(var1
, var7
); /* Direct call template$Template$add on <var1:Template>*/
103 { /* Inline c_tools$CCompilationUnit$header_custom (var_ecc) on <var_ecc:CCompilationUnit> */
104 var10
= var_ecc
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___header_custom
].val
; /* _header_custom on <var_ecc:CCompilationUnit> */
105 if (unlikely(var10
== NULL
)) {
106 if(catchStack
.cursor
>= 0){
107 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
109 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_custom");
110 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 28);
117 if (likely(varonce
!=NULL
)) {
121 var14
= (val
*)(1l<<2|1);
122 var15
= (val
*)(1l<<2|1);
123 var16
= (val
*)((long)(0)<<2|3);
124 var17
= (val
*)((long)(0)<<2|3);
125 var13
= core__flat___CString___to_s_unsafe(var12
, var14
, var15
, var16
, var17
);
130 template___template__Template___add(var8
, var11
); /* Direct call template$Template$add on <var8:Template>*/
133 { /* Inline c_tools$CCompilationUnit$header_custom (var_ecc) on <var_ecc:CCompilationUnit> */
134 var20
= var_ecc
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___header_custom
].val
; /* _header_custom on <var_ecc:CCompilationUnit> */
135 if (unlikely(var20
== NULL
)) {
136 if(catchStack
.cursor
>= 0){
137 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
139 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_custom");
140 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 28);
148 var21
= nitc__light_ffi_base___AExternCodeBlock___code(var_block
);
151 template___template__Template___add(var18
, var21
); /* Direct call template$Template$add on <var18:Template>*/
155 var22
= nitc__light_c___AExternCodeBlock___is_c_body(var_block
);
159 { /* Inline c_tools$CCompilationUnit$body_impl (var_ecc) on <var_ecc:CCompilationUnit> */
160 var25
= var_ecc
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_impl
].val
; /* _body_impl on <var_ecc:CCompilationUnit> */
161 if (unlikely(var25
== NULL
)) {
162 if(catchStack
.cursor
>= 0){
163 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
165 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl");
166 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 44);
174 { /* Inline parser_nodes$ANode$location (var_block) on <var_block:AExternCodeBlock> */
175 var28
= var_block
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_block:AExternCodeBlock> */
176 if (unlikely(var28
== NULL
)) {
177 if(catchStack
.cursor
>= 0){
178 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
180 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
181 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
189 var29
= nitc__light_c___Location___as_line_pragma(var26
);
192 template___template__Template___add(var23
, var29
); /* Direct call template$Template$add on <var23:Template>*/
195 { /* Inline c_tools$CCompilationUnit$body_impl (var_ecc) on <var_ecc:CCompilationUnit> */
196 var32
= var_ecc
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_impl
].val
; /* _body_impl on <var_ecc:CCompilationUnit> */
197 if (unlikely(var32
== NULL
)) {
198 if(catchStack
.cursor
>= 0){
199 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
201 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl");
202 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 44);
209 if (likely(varonce33
!=NULL
)) {
213 var37
= (val
*)(1l<<2|1);
214 var38
= (val
*)(1l<<2|1);
215 var39
= (val
*)((long)(0)<<2|3);
216 var40
= (val
*)((long)(0)<<2|3);
217 var36
= core__flat___CString___to_s_unsafe(var35
, var37
, var38
, var39
, var40
);
222 template___template__Template___add(var30
, var34
); /* Direct call template$Template$add on <var30:Template>*/
225 { /* Inline c_tools$CCompilationUnit$body_impl (var_ecc) on <var_ecc:CCompilationUnit> */
226 var43
= var_ecc
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_impl
].val
; /* _body_impl on <var_ecc:CCompilationUnit> */
227 if (unlikely(var43
== NULL
)) {
228 if(catchStack
.cursor
>= 0){
229 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
231 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl");
232 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 44);
240 var44
= nitc__light_ffi_base___AExternCodeBlock___code(var_block
);
243 template___template__Template___add(var41
, var44
); /* Direct call template$Template$add on <var41:Template>*/
250 /* method light_c$CLanguage$compile_extern_method for (self: CLanguage, AExternCodeBlock, AMethPropdef, CCompilationUnit, MModule) */
251 void nitc___nitc__CLanguage___nitc__light_ffi_base__FFILanguage__compile_extern_method(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
252 val
* var_block
/* var block: AExternCodeBlock */;
253 val
* var_m
/* var m: AMethPropdef */;
254 val
* var_ecc
/* var ecc: CCompilationUnit */;
255 val
* var_mmodule
/* var mmodule: MModule */;
256 val
* var
/* : ExternCFunction */;
257 val
* var_fc
/* var fc: ExternCFunction */;
258 val
* var1
/* : Template */;
259 val
* var3
/* : Template */;
260 val
* var4
/* : Location */;
261 val
* var6
/* : Location */;
262 val
* var7
/* : String */;
263 val
* var8
/* : Template */;
264 val
* var10
/* : Template */;
265 val
* var11
/* : String */;
266 val
* var12
/* : Template */;
267 val
* var14
/* : Template */;
268 val
* var15
/* : Template */;
273 var
= NEW_nitc__ExternCFunction(&type_nitc__ExternCFunction
);
275 nitc___nitc__ExternCFunction___init(var
, var_m
, var_mmodule
); /* Direct call light_c$ExternCFunction$init on <var:ExternCFunction>*/
279 { /* Inline c_tools$CFunction$decls (var_fc) on <var_fc:ExternCFunction> */
280 var3
= var_fc
->attrs
[COLOR_nitc__c_tools__CFunction___decls
].val
; /* _decls on <var_fc:ExternCFunction> */
281 if (unlikely(var3
== NULL
)) {
282 if(catchStack
.cursor
>= 0){
283 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
285 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decls");
286 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 88);
294 { /* Inline parser_nodes$ANode$location (var_block) on <var_block:AExternCodeBlock> */
295 var6
= var_block
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_block:AExternCodeBlock> */
296 if (unlikely(var6
== NULL
)) {
297 if(catchStack
.cursor
>= 0){
298 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
300 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
301 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
309 var7
= nitc__light_c___Location___as_line_pragma(var4
);
312 template___template__Template___add(var1
, var7
); /* Direct call template$Template$add on <var1:Template>*/
315 { /* Inline c_tools$CFunction$exprs (var_fc) on <var_fc:ExternCFunction> */
316 var10
= var_fc
->attrs
[COLOR_nitc__c_tools__CFunction___exprs
].val
; /* _exprs on <var_fc:ExternCFunction> */
317 if (unlikely(var10
== NULL
)) {
318 if(catchStack
.cursor
>= 0){
319 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
321 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _exprs");
322 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 89);
330 var11
= nitc__light_ffi_base___AExternCodeBlock___code(var_block
);
333 template___template__Template___add(var8
, var11
); /* Direct call template$Template$add on <var8:Template>*/
336 { /* Inline c_tools$CCompilationUnit$body_impl (var_ecc) on <var_ecc:CCompilationUnit> */
337 var14
= var_ecc
->attrs
[COLOR_nitc__c_tools__CCompilationUnit___body_impl
].val
; /* _body_impl on <var_ecc:CCompilationUnit> */
338 if (unlikely(var14
== NULL
)) {
339 if(catchStack
.cursor
>= 0){
340 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
342 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl");
343 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__c_tools
, 44);
351 var15
= nitc___nitc__CFunction___to_writer(var_fc
);
354 template___template__Template___add(var12
, var15
); /* Direct call template$Template$add on <var12:Template>*/
358 /* method light_c$CLanguage$compile_extern_class for (self: CLanguage, AExternCodeBlock, AClassdef, CCompilationUnit, MModule) */
359 void nitc___nitc__CLanguage___nitc__light_ffi_base__FFILanguage__compile_extern_class(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
360 val
* var_block
/* var block: AExternCodeBlock */;
361 val
* var_m
/* var m: AClassdef */;
362 val
* var_ecc
/* var ecc: CCompilationUnit */;
363 val
* var_mmodule
/* var mmodule: MModule */;
370 /* method light_c$CLanguage$get_ftype for (self: CLanguage, AExternCodeBlock, AClassdef): ForeignType */
371 val
* nitc___nitc__CLanguage___nitc__light_ffi_base__FFILanguage__get_ftype(val
* self
, val
* p0
, val
* p1
) {
372 val
* var
/* : ForeignType */;
373 val
* var_block
/* var block: AExternCodeBlock */;
374 val
* var_m
/* var m: AClassdef */;
375 val
* var1
/* : ForeignCType */;
376 val
* var2
/* : String */;
379 var1
= NEW_nitc__ForeignCType(&type_nitc__ForeignCType
);
381 var2
= nitc__light_ffi_base___AExternCodeBlock___code(var_block
);
384 ((void(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_nitc__light_c__ForeignCType__ctype_61d
]))(var1
, var2
); /* ctype= on <var1:ForeignCType>*/
387 ((void(*)(val
* self
))(var1
->class->vft
[COLOR_core__kernel__Object__init
]))(var1
); /* init on <var1:ForeignCType>*/
394 /* method light_c$AExternCodeBlock$is_c for (self: AExternCodeBlock): Bool */
395 short int nitc__light_c___AExternCodeBlock___is_c(val
* self
) {
396 short int var
/* : Bool */;
397 short int var1
/* : Bool */;
398 short int var2
/* : Bool */;
399 val
* var3
/* : nullable String */;
400 short int var4
/* : Bool */;
401 short int var5
/* : Bool */;
402 short int var_
/* var : Bool */;
403 val
* var6
/* : nullable String */;
405 val
* var7
/* : String */;
406 char* var8
/* : CString */;
407 val
* var9
/* : String */;
408 val
* var10
/* : nullable Int */;
409 val
* var11
/* : nullable Int */;
410 val
* var12
/* : nullable Bool */;
411 val
* var13
/* : nullable Bool */;
412 short int var14
/* : Bool */;
413 short int var15
/* : Bool */;
414 short int var_16
/* var : Bool */;
415 val
* var17
/* : nullable String */;
416 static val
* varonce18
;
417 val
* var19
/* : String */;
418 char* var20
/* : CString */;
419 val
* var21
/* : String */;
420 val
* var22
/* : nullable Int */;
421 val
* var23
/* : nullable Int */;
422 val
* var24
/* : nullable Bool */;
423 val
* var25
/* : nullable Bool */;
424 short int var26
/* : Bool */;
426 var3
= nitc__light_ffi_base___AExternCodeBlock___language_name(self
);
429 var4
= 1; /* is null */
431 var4
= 0; /* arg is null but recv is not */
434 var5
= ((short int(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var3
, ((val
*)NULL
)); /* == on <var3:nullable String>*/
442 var6
= nitc__light_ffi_base___AExternCodeBlock___language_name_lowered(self
);
444 if (likely(varonce
!=NULL
)) {
448 var10
= (val
*)(1l<<2|1);
449 var11
= (val
*)(1l<<2|1);
450 var12
= (val
*)((long)(0)<<2|3);
451 var13
= (val
*)((long)(0)<<2|3);
452 var9
= core__flat___CString___to_s_unsafe(var8
, var10
, var11
, var12
, var13
);
457 var14
= 0; /* <var7:String> cannot be null */
459 var15
= ((short int(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var6
, var7
); /* == on <var6:nullable String>*/
469 var17
= nitc__light_ffi_base___AExternCodeBlock___language_name_lowered(self
);
471 if (likely(varonce18
!=NULL
)) {
475 var22
= (val
*)(2l<<2|1);
476 var23
= (val
*)(2l<<2|1);
477 var24
= (val
*)((long)(0)<<2|3);
478 var25
= (val
*)((long)(0)<<2|3);
479 var21
= core__flat___CString___to_s_unsafe(var20
, var22
, var23
, var24
, var25
);
484 if(catchStack
.cursor
>= 0){
485 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
487 PRINT_ERROR("Runtime error: %s", "Receiver is null");
488 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 61);
491 var26
= core___core__Text___has_prefix(var17
, var19
);
500 /* method light_c$AExternCodeBlock$is_c_body for (self: AExternCodeBlock): Bool */
501 short int nitc__light_c___AExternCodeBlock___is_c_body(val
* self
) {
502 short int var
/* : Bool */;
503 short int var1
/* : Bool */;
504 short int var2
/* : Bool */;
505 val
* var3
/* : nullable String */;
506 short int var4
/* : Bool */;
507 short int var5
/* : Bool */;
508 short int var_
/* var : Bool */;
509 val
* var6
/* : nullable String */;
511 val
* var7
/* : String */;
512 char* var8
/* : CString */;
513 val
* var9
/* : String */;
514 val
* var10
/* : nullable Int */;
515 val
* var11
/* : nullable Int */;
516 val
* var12
/* : nullable Bool */;
517 val
* var13
/* : nullable Bool */;
518 short int var14
/* : Bool */;
519 short int var15
/* : Bool */;
520 short int var_16
/* var : Bool */;
521 val
* var17
/* : nullable String */;
522 static val
* varonce18
;
523 val
* var19
/* : String */;
524 char* var20
/* : CString */;
525 val
* var21
/* : String */;
526 val
* var22
/* : nullable Int */;
527 val
* var23
/* : nullable Int */;
528 val
* var24
/* : nullable Bool */;
529 val
* var25
/* : nullable Bool */;
530 short int var26
/* : Bool */;
531 short int var27
/* : Bool */;
533 var3
= nitc__light_ffi_base___AExternCodeBlock___language_name(self
);
536 var4
= 1; /* is null */
538 var4
= 0; /* arg is null but recv is not */
541 var5
= ((short int(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var3
, ((val
*)NULL
)); /* == on <var3:nullable String>*/
549 var6
= nitc__light_ffi_base___AExternCodeBlock___language_name_lowered(self
);
551 if (likely(varonce
!=NULL
)) {
555 var10
= (val
*)(1l<<2|1);
556 var11
= (val
*)(1l<<2|1);
557 var12
= (val
*)((long)(0)<<2|3);
558 var13
= (val
*)((long)(0)<<2|3);
559 var9
= core__flat___CString___to_s_unsafe(var8
, var10
, var11
, var12
, var13
);
564 var14
= 0; /* <var7:String> cannot be null */
566 var15
= ((short int(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var6
, var7
); /* == on <var6:nullable String>*/
576 var17
= nitc__light_ffi_base___AExternCodeBlock___language_name_lowered(self
);
578 if (likely(varonce18
!=NULL
)) {
582 var22
= (val
*)(6l<<2|1);
583 var23
= (val
*)(6l<<2|1);
584 var24
= (val
*)((long)(0)<<2|3);
585 var25
= (val
*)((long)(0)<<2|3);
586 var21
= core__flat___CString___to_s_unsafe(var20
, var22
, var23
, var24
, var25
);
591 var26
= 0; /* <var19:String> cannot be null */
593 var27
= ((short int(*)(val
* self
, val
* p0
))(var17
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var17
, var19
); /* == on <var17:nullable String>*/
603 /* method light_c$AExternCodeBlock$is_c_header for (self: AExternCodeBlock): Bool */
604 short int nitc__light_c___AExternCodeBlock___is_c_header(val
* self
) {
605 short int var
/* : Bool */;
606 val
* var1
/* : nullable String */;
608 val
* var2
/* : String */;
609 char* var3
/* : CString */;
610 val
* var4
/* : String */;
611 val
* var5
/* : nullable Int */;
612 val
* var6
/* : nullable Int */;
613 val
* var7
/* : nullable Bool */;
614 val
* var8
/* : nullable Bool */;
615 short int var9
/* : Bool */;
616 short int var10
/* : Bool */;
618 var1
= nitc__light_ffi_base___AExternCodeBlock___language_name_lowered(self
);
620 if (likely(varonce
!=NULL
)) {
624 var5
= (val
*)(8l<<2|1);
625 var6
= (val
*)(8l<<2|1);
626 var7
= (val
*)((long)(0)<<2|3);
627 var8
= (val
*)((long)(0)<<2|3);
628 var4
= core__flat___CString___to_s_unsafe(var3
, var5
, var6
, var7
, var8
);
633 var9
= 0; /* <var2:String> cannot be null */
635 var10
= ((short int(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var1
, var2
); /* == on <var1:nullable String>*/
643 /* method light_c$Location$as_line_pragma for (self: Location): String */
644 val
* nitc__light_c___Location___as_line_pragma(val
* self
) {
645 val
* var
/* : String */;
646 val
* var1
/* : NativeArray[String] */;
648 static val
* varonce2
;
649 val
* var3
/* : String */;
650 char* var4
/* : CString */;
651 val
* var5
/* : String */;
652 val
* var6
/* : nullable Int */;
653 val
* var7
/* : nullable Int */;
654 val
* var8
/* : nullable Bool */;
655 val
* var9
/* : nullable Bool */;
656 static val
* varonce10
;
657 val
* var11
/* : String */;
658 char* var12
/* : CString */;
659 val
* var13
/* : String */;
660 val
* var14
/* : nullable Int */;
661 val
* var15
/* : nullable Int */;
662 val
* var16
/* : nullable Bool */;
663 val
* var17
/* : nullable Bool */;
664 static val
* varonce18
;
665 val
* var19
/* : String */;
666 char* var20
/* : CString */;
667 val
* var21
/* : String */;
668 val
* var22
/* : nullable Int */;
669 val
* var23
/* : nullable Int */;
670 val
* var24
/* : nullable Bool */;
671 val
* var25
/* : nullable Bool */;
672 long var26
/* : Int */;
673 long var28
/* : Int */;
674 long var29
/* : Int */;
675 short int var31
/* : Bool */;
678 const char* var_class_name
;
679 long var32
/* : Int */;
680 val
* var33
/* : String */;
681 val
* var34
/* : nullable SourceFile */;
682 val
* var36
/* : nullable SourceFile */;
683 val
* var37
/* : String */;
684 val
* var39
/* : String */;
685 val
* var40
/* : String */;
686 if (unlikely(varonce
==NULL
)) {
687 var1
= NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String
);
688 if (likely(varonce2
!=NULL
)) {
692 var6
= (val
*)(6l<<2|1);
693 var7
= (val
*)(6l<<2|1);
694 var8
= (val
*)((long)(0)<<2|3);
695 var9
= (val
*)((long)(0)<<2|3);
696 var5
= core__flat___CString___to_s_unsafe(var4
, var6
, var7
, var8
, var9
);
700 ((struct instance_core__NativeArray
*)var1
)->values
[0]=var3
;
701 if (likely(varonce10
!=NULL
)) {
705 var14
= (val
*)(2l<<2|1);
706 var15
= (val
*)(2l<<2|1);
707 var16
= (val
*)((long)(0)<<2|3);
708 var17
= (val
*)((long)(0)<<2|3);
709 var13
= core__flat___CString___to_s_unsafe(var12
, var14
, var15
, var16
, var17
);
713 ((struct instance_core__NativeArray
*)var1
)->values
[2]=var11
;
714 if (likely(varonce18
!=NULL
)) {
718 var22
= (val
*)(2l<<2|1);
719 var23
= (val
*)(2l<<2|1);
720 var24
= (val
*)((long)(0)<<2|3);
721 var25
= (val
*)((long)(0)<<2|3);
722 var21
= core__flat___CString___to_s_unsafe(var20
, var22
, var23
, var24
, var25
);
726 ((struct instance_core__NativeArray
*)var1
)->values
[4]=var19
;
732 { /* Inline location$Location$line_start (self) on <self:Location> */
733 var28
= self
->attrs
[COLOR_nitc__location__Location___line_start
].l
; /* _line_start on <self:Location> */
739 { /* Inline kernel$Int$- (var26,1l) on <var26:Int> */
740 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
741 /* <1l:Int> isa OTHER */
742 var31
= 1; /* easy <1l:Int> isa OTHER*/
743 if (unlikely(!var31
)) {
744 var_class_name
= type_core__Int
.name
;
745 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
746 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
755 var33
= core__flat___Int___core__abstract_text__Object__to_s(var29
);
756 ((struct instance_core__NativeArray
*)var1
)->values
[1]=var33
;
758 { /* Inline location$Location$file (self) on <self:Location> */
759 var36
= self
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <self:Location> */
765 if(catchStack
.cursor
>= 0){
766 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
768 PRINT_ERROR("Runtime error: %s", "Receiver is null");
769 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 70);
772 { /* Inline location$SourceFile$filename (var34) on <var34:nullable SourceFile> */
773 if (unlikely(var34
== NULL
)) {
774 if(catchStack
.cursor
>= 0){
775 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
777 PRINT_ERROR("Runtime error: %s", "Receiver is null");
778 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
781 var39
= var34
->attrs
[COLOR_nitc__location__SourceFile___filename
].val
; /* _filename on <var34:nullable SourceFile> */
782 if (unlikely(var39
== NULL
)) {
783 if(catchStack
.cursor
>= 0){
784 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
786 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
787 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
794 ((struct instance_core__NativeArray
*)var1
)->values
[3]=var37
;
796 var40
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var1
); /* native_to_s on <var1:NativeArray[String]>*/
804 /* method light_c$MModule$cflags for (self: MModule): MultiHashMap[String, String] */
805 val
* nitc__light_c___MModule___cflags(val
* self
) {
806 val
* var
/* : MultiHashMap[String, String] */;
807 val
* var1
/* : MultiHashMap[String, String] */;
808 var1
= self
->attrs
[COLOR_nitc__light_c__MModule___cflags
].val
; /* _cflags on <self:MModule> */
809 if (unlikely(var1
== NULL
)) {
810 if(catchStack
.cursor
>= 0){
811 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
813 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _cflags");
814 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 77);
821 /* method light_c$MModule$ldflags for (self: MModule): MultiHashMap[String, String] */
822 val
* nitc__light_c___MModule___ldflags(val
* self
) {
823 val
* var
/* : MultiHashMap[String, String] */;
824 val
* var1
/* : MultiHashMap[String, String] */;
825 var1
= self
->attrs
[COLOR_nitc__light_c__MModule___ldflags
].val
; /* _ldflags on <self:MModule> */
826 if (unlikely(var1
== NULL
)) {
827 if(catchStack
.cursor
>= 0){
828 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
830 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _ldflags");
831 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 80);
838 /* method light_c$MModule$pkgconfigs for (self: MModule): Array[String] */
839 val
* nitc__light_c___MModule___pkgconfigs(val
* self
) {
840 val
* var
/* : Array[String] */;
841 val
* var1
/* : Array[String] */;
842 var1
= self
->attrs
[COLOR_nitc__light_c__MModule___pkgconfigs
].val
; /* _pkgconfigs on <self:MModule> */
843 if (unlikely(var1
== NULL
)) {
844 if(catchStack
.cursor
>= 0){
845 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
847 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs");
848 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 83);
855 /* method light_c$ForeignCType$ctype for (self: ForeignCType): String */
856 val
* nitc___nitc__ForeignCType___nitc__light_ffi_base__ForeignType__ctype(val
* self
) {
857 val
* var
/* : String */;
858 val
* var1
/* : String */;
859 var1
= self
->attrs
[COLOR_nitc__light_c__ForeignCType___ctype
].val
; /* _ctype on <self:ForeignCType> */
860 if (unlikely(var1
== NULL
)) {
861 if(catchStack
.cursor
>= 0){
862 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
864 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _ctype");
865 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 91);
872 /* method light_c$ForeignCType$ctype= for (self: ForeignCType, String) */
873 void nitc___nitc__ForeignCType___ctype_61d(val
* self
, val
* p0
) {
874 self
->attrs
[COLOR_nitc__light_c__ForeignCType___ctype
].val
= p0
; /* _ctype on <self:ForeignCType> */
877 /* method light_c$ForeignCType$init for (self: ForeignCType) */
878 void nitc___nitc__ForeignCType___core__kernel__Object__init(val
* self
) {
880 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc___nitc__ForeignCType___core__kernel__Object__init
]))(self
); /* init on <self:ForeignCType>*/
884 /* method light_c$FromCCallContext$name_mtype for (self: FromCCallContext, MType): String */
885 val
* nitc___nitc__FromCCallContext___nitc__nitni_utilities__CallContext__name_mtype(val
* self
, val
* p0
) {
886 val
* var
/* : String */;
887 val
* var_mtype
/* var mtype: MType */;
888 val
* var1
/* : String */;
891 var1
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__nitni_base__MType__cname
]))(var_mtype
); /* cname on <var_mtype:MType>*/
898 /* method light_c$ExternCFunction$method= for (self: ExternCFunction, AMethPropdef) */
899 void nitc___nitc__ExternCFunction___method_61d(val
* self
, val
* p0
) {
900 self
->attrs
[COLOR_nitc__light_c__ExternCFunction___method
].val
= p0
; /* _method on <self:ExternCFunction> */
903 /* method light_c$ExternCFunction$init for (self: ExternCFunction, AMethPropdef, MModule) */
904 void nitc___nitc__ExternCFunction___init(val
* self
, val
* p0
, val
* p1
) {
905 val
* var_method
/* var method: AMethPropdef */;
906 val
* var_mmodule
/* var mmodule: MModule */;
907 val
* var
/* : nullable MPropDef */;
908 val
* var3
/* : nullable MPropDef */;
909 val
* var4
/* : MClassDef */;
910 val
* var6
/* : MClassDef */;
911 val
* var7
/* : MClassType */;
912 val
* var9
/* : MClassType */;
913 val
* var_recv_mtype
/* var recv_mtype: MClassType */;
914 val
* var10
/* : nullable MPropDef */;
915 val
* var12
/* : nullable MPropDef */;
916 val
* var13
/* : MProperty */;
917 val
* var15
/* : MProperty */;
919 val
* var16
/* : String */;
920 char* var17
/* : CString */;
921 val
* var18
/* : String */;
922 val
* var19
/* : nullable Int */;
923 val
* var20
/* : nullable Int */;
924 val
* var21
/* : nullable Bool */;
925 val
* var22
/* : nullable Bool */;
926 val
* var23
/* : Sys */;
927 val
* var24
/* : SignatureLength */;
928 val
* var25
/* : Sys */;
929 val
* var26
/* : FromCCallContext */;
930 val
* var27
/* : String */;
931 val
* var_csignature
/* var csignature: String */;
935 { /* Inline light_c$ExternCFunction$method= (self,var_method) on <self:ExternCFunction> */
936 self
->attrs
[COLOR_nitc__light_c__ExternCFunction___method
].val
= var_method
; /* _method on <self:ExternCFunction> */
941 { /* Inline modelize_property$APropdef$mpropdef (var_method) on <var_method:AMethPropdef> */
942 var3
= var_method
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <var_method:AMethPropdef> */
948 if(catchStack
.cursor
>= 0){
949 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
951 PRINT_ERROR("Runtime error: %s", "Receiver is null");
952 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 131);
955 { /* Inline model$MPropDef$mclassdef (var) on <var:nullable MPropDef(nullable MMethodDef)> */
956 if (unlikely(var
== 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__model
, 2354);
964 var6
= var
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var:nullable MPropDef(nullable MMethodDef)> */
965 if (unlikely(var6
== NULL
)) {
966 if(catchStack
.cursor
>= 0){
967 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
969 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
970 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2354);
978 { /* Inline model$MClassDef$bound_mtype (var4) on <var4:MClassDef> */
979 var9
= var4
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var4:MClassDef> */
980 if (unlikely(var9
== NULL
)) {
981 if(catchStack
.cursor
>= 0){
982 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
984 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
985 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 594);
992 var_recv_mtype
= var7
;
994 { /* Inline modelize_property$APropdef$mpropdef (var_method) on <var_method:AMethPropdef> */
995 var12
= var_method
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <var_method:AMethPropdef> */
1000 if (var10
== NULL
) {
1001 if(catchStack
.cursor
>= 0){
1002 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1004 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1005 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__light_c
, 132);
1008 { /* Inline model$MPropDef$mproperty (var10) on <var10:nullable MPropDef(nullable MMethodDef)> */
1009 if (unlikely(var10
== NULL
)) {
1010 if(catchStack
.cursor
>= 0){
1011 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1013 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1014 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2357);
1017 var15
= var10
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var10:nullable MPropDef(nullable MMethodDef)> */
1018 if (unlikely(var15
== NULL
)) {
1019 if(catchStack
.cursor
>= 0){
1020 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1022 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1023 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2357);
1027 RET_LABEL14
:(void)0;
1030 if (likely(varonce
!=NULL
)) {
1034 var19
= (val
*)(7l<<2|1);
1035 var20
= (val
*)(7l<<2|1);
1036 var21
= (val
*)((long)(0)<<2|3);
1037 var22
= (val
*)((long)(0)<<2|3);
1038 var18
= core__flat___CString___to_s_unsafe(var17
, var19
, var20
, var21
, var22
);
1044 var24
= nitc__nitni_utilities___core__Sys___long_signature(var23
);
1048 var26
= nitc__light_c___core__Sys___from_c_call_context(var25
);
1051 var27
= nitc__nitni_utilities___MMethod___build_csignature(var13
, var_recv_mtype
, var_mmodule
, var16
, var24
, var26
);
1053 var_csignature
= var27
;
1055 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__c_tools__CFunction__signature_61d
]))(self
, var_csignature
); /* signature= on <self:ExternCFunction>*/
1058 ((void(*)(val
* self
))(self
->class->vft
[COLOR_core__kernel__Object__init
]))(self
); /* init on <self:ExternCFunction>*/
1062 /* method light_c$Sys$from_c_call_context for (self: Sys): FromCCallContext */
1063 val
* nitc__light_c___core__Sys___from_c_call_context(val
* self
) {
1064 val
* var
/* : FromCCallContext */;
1065 static val
* varonce
;
1066 static int varonce_guard
;
1067 val
* var1
/* : FromCCallContext */;
1068 val
* var2
/* : FromCCallContext */;
1069 if (likely(varonce_guard
)) {
1072 var2
= NEW_nitc__FromCCallContext(&type_nitc__FromCCallContext
);
1074 { /* Inline kernel$Object$init (var2) on <var2:FromCCallContext> */