1 #include "nit__toolcontext.sep.0.h"
2 /* method toolcontext#Message#location for (self: Message): nullable Location */
3 val
* nit___nit__Message___location(val
* self
) {
4 val
* var
/* : nullable Location */;
5 val
* var1
/* : nullable Location */;
6 var1
= self
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <self:Message> */
11 /* method toolcontext#Message#location= for (self: Message, nullable Location) */
12 void nit___nit__Message___location_61d(val
* self
, val
* p0
) {
13 self
->attrs
[COLOR_nit__toolcontext__Message___location
].val
= p0
; /* _location on <self:Message> */
16 /* method toolcontext#Message#tag for (self: Message): nullable String */
17 val
* nit___nit__Message___tag(val
* self
) {
18 val
* var
/* : nullable String */;
19 val
* var1
/* : nullable String */;
20 var1
= self
->attrs
[COLOR_nit__toolcontext__Message___tag
].val
; /* _tag on <self:Message> */
25 /* method toolcontext#Message#tag= for (self: Message, nullable String) */
26 void nit___nit__Message___tag_61d(val
* self
, val
* p0
) {
27 self
->attrs
[COLOR_nit__toolcontext__Message___tag
].val
= p0
; /* _tag on <self:Message> */
30 /* method toolcontext#Message#text for (self: Message): String */
31 val
* nit___nit__Message___text(val
* self
) {
32 val
* var
/* : String */;
33 val
* var1
/* : String */;
34 var1
= self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <self:Message> */
35 if (unlikely(var1
== NULL
)) {
36 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
37 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
44 /* method toolcontext#Message#text= for (self: Message, String) */
45 void nit___nit__Message___text_61d(val
* self
, val
* p0
) {
46 self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
= p0
; /* _text on <self:Message> */
49 /* method toolcontext#Message#< for (self: Message, Message): Bool */
50 short int nit___nit__Message___standard__kernel__Comparable___60d(val
* self
, val
* p0
) {
51 short int var
/* : Bool */;
52 short int var1
/* : Bool */;
55 const struct type
* type_struct
;
56 const char* var_class_name
;
57 val
* var_other
/* var other: Message */;
58 val
* var2
/* : nullable Location */;
59 val
* var4
/* : nullable Location */;
60 short int var5
/* : Bool */;
61 short int var6
/* : Bool */;
62 val
* var7
/* : nullable Location */;
63 val
* var9
/* : nullable Location */;
64 short int var10
/* : Bool */;
65 short int var11
/* : Bool */;
66 val
* var12
/* : nullable Location */;
67 val
* var14
/* : nullable Location */;
68 val
* var15
/* : nullable Location */;
69 val
* var17
/* : nullable Location */;
70 short int var18
/* : Bool */;
71 /* Covariant cast for argument 0 (other) <p0:Message> isa OTHER */
72 /* <p0:Message> isa OTHER */
73 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__kernel__Comparable__OTHER
];
74 cltype
= type_struct
->color
;
75 idtype
= type_struct
->id
;
76 if(cltype
>= p0
->type
->table_size
) {
79 var1
= p0
->type
->type_table
[cltype
] == idtype
;
81 if (unlikely(!var1
)) {
82 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
83 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
84 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 61);
89 { /* Inline toolcontext#Message#location (self) on <self:Message> */
90 var4
= self
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <self:Message> */
96 var5
= 1; /* is null */
98 var5
= 0; /* arg is null but recv is not */
101 var6
= nit___nit__Location___standard__kernel__Object___61d_61d(var2
, ((val
*)NULL
));
110 { /* Inline toolcontext#Message#location (var_other) on <var_other:Message> */
111 var9
= var_other
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <var_other:Message> */
117 var10
= 1; /* is null */
119 var10
= 0; /* arg is null but recv is not */
122 var11
= nit___nit__Location___standard__kernel__Object___61d_61d(var7
, ((val
*)NULL
));
131 { /* Inline toolcontext#Message#location (self) on <self:Message> */
132 var14
= self
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <self:Message> */
137 if (unlikely(var12
== NULL
)) {
138 PRINT_ERROR("Runtime error: %s", "Cast failed");
139 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 66);
143 { /* Inline toolcontext#Message#location (var_other) on <var_other:Message> */
144 var17
= var_other
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <var_other:Message> */
149 if (unlikely(var15
== NULL
)) {
150 PRINT_ERROR("Runtime error: %s", "Cast failed");
151 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 66);
155 var18
= nit___nit__Location___standard__kernel__Comparable___60d(var12
, var15
);
162 /* method toolcontext#Message#== for (self: Message, nullable Object): Bool */
163 short int nit___nit__Message___standard__kernel__Object___61d_61d(val
* self
, val
* p0
) {
164 short int var
/* : Bool */;
165 val
* var_other
/* var other: nullable Object */;
166 short int var1
/* : Bool */;
169 short int var2
/* : Bool */;
170 short int var3
/* : Bool */;
171 short int var4
/* : Bool */;
172 val
* var5
/* : nullable Location */;
173 val
* var7
/* : nullable Location */;
174 val
* var8
/* : nullable Location */;
175 val
* var10
/* : nullable Location */;
176 short int var11
/* : Bool */;
177 short int var12
/* : Bool */;
178 short int var_
/* var : Bool */;
179 val
* var13
/* : nullable String */;
180 val
* var15
/* : nullable String */;
181 val
* var16
/* : nullable String */;
182 val
* var18
/* : nullable String */;
183 short int var19
/* : Bool */;
184 short int var20
/* : Bool */;
185 short int var_21
/* var : Bool */;
186 val
* var22
/* : String */;
187 val
* var24
/* : String */;
188 val
* var25
/* : String */;
189 val
* var27
/* : String */;
190 short int var28
/* : Bool */;
192 /* <var_other:nullable Object> isa Message */
193 cltype
= type_nit__Message
.color
;
194 idtype
= type_nit__Message
.id
;
195 if(var_other
== NULL
) {
198 if(cltype
>= (((long)var_other
&3)?type_info
[((long)var_other
&3)]:var_other
->type
)->table_size
) {
201 var1
= (((long)var_other
&3)?type_info
[((long)var_other
&3)]:var_other
->type
)->type_table
[cltype
] == idtype
;
211 { /* Inline toolcontext#Message#location (self) on <self:Message> */
212 var7
= self
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <self:Message> */
218 { /* Inline toolcontext#Message#location (var_other) on <var_other:nullable Object(Message)> */
219 var10
= var_other
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <var_other:nullable Object(Message)> */
225 var11
= (var8
== NULL
);
227 var12
= nit___nit__Location___standard__kernel__Object___61d_61d(var5
, var8
);
233 { /* Inline toolcontext#Message#tag (self) on <self:Message> */
234 var15
= self
->attrs
[COLOR_nit__toolcontext__Message___tag
].val
; /* _tag on <self:Message> */
240 { /* Inline toolcontext#Message#tag (var_other) on <var_other:nullable Object(Message)> */
241 var18
= var_other
->attrs
[COLOR_nit__toolcontext__Message___tag
].val
; /* _tag on <var_other:nullable Object(Message)> */
247 var19
= (var16
== NULL
);
249 var20
= ((short int(*)(val
* self
, val
* p0
))(var13
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var13
, var16
); /* == on <var13:nullable String>*/
259 { /* Inline toolcontext#Message#text (self) on <self:Message> */
260 var24
= self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <self:Message> */
261 if (unlikely(var24
== NULL
)) {
262 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
263 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
271 { /* Inline toolcontext#Message#text (var_other) on <var_other:nullable Object(Message)> */
272 var27
= var_other
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <var_other:nullable Object(Message)> */
273 if (unlikely(var27
== NULL
)) {
274 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
275 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
283 var28
= ((short int(*)(val
* self
, val
* p0
))(var22
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var22
, var25
); /* == on <var22:String>*/
294 /* method toolcontext#Message#to_s for (self: Message): String */
295 val
* nit___nit__Message___standard__string__Object__to_s(val
* self
) {
296 val
* var
/* : String */;
297 val
* var1
/* : nullable Location */;
298 val
* var3
/* : nullable Location */;
299 val
* var_l
/* var l: nullable Location */;
300 short int var4
/* : Bool */;
301 short int var5
/* : Bool */;
302 val
* var6
/* : String */;
303 val
* var8
/* : String */;
304 val
* var9
/* : NativeArray[String] */;
306 static val
* varonce10
;
307 val
* var11
/* : String */;
308 char* var12
/* : NativeString */;
309 val
* var13
/* : FlatString */;
310 val
* var14
/* : String */;
311 val
* var15
/* : String */;
312 val
* var17
/* : String */;
313 val
* var18
/* : String */;
315 { /* Inline toolcontext#Message#location (self) on <self:Message> */
316 var3
= self
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <self:Message> */
323 var4
= 1; /* is null */
325 var4
= 0; /* arg is null but recv is not */
328 var5
= nit___nit__Location___standard__kernel__Object___61d_61d(var_l
, ((val
*)NULL
));
333 { /* Inline toolcontext#Message#text (self) on <self:Message> */
334 var8
= self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <self:Message> */
335 if (unlikely(var8
== NULL
)) {
336 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
337 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
347 if (unlikely(varonce
==NULL
)) {
348 var9
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
349 if (likely(varonce10
!=NULL
)) {
353 var13
= standard___standard__NativeString___to_s_with_length(var12
, 2l);
357 ((struct instance_standard__NativeArray
*)var9
)->values
[1]=var11
;
363 var14
= ((val
*(*)(val
* self
))(var_l
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_l
); /* to_s on <var_l:nullable Location(Location)>*/
365 ((struct instance_standard__NativeArray
*)var9
)->values
[0]=var14
;
367 { /* Inline toolcontext#Message#text (self) on <self:Message> */
368 var17
= self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <self:Message> */
369 if (unlikely(var17
== NULL
)) {
370 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
371 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
378 ((struct instance_standard__NativeArray
*)var9
)->values
[2]=var15
;
380 var18
= ((val
*(*)(val
* self
))(var9
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var9
); /* native_to_s on <var9:NativeArray[String]>*/
389 /* method toolcontext#Message#to_color_string for (self: Message): String */
390 val
* nit___nit__Message___to_color_string(val
* self
) {
391 val
* var
/* : String */;
392 uint32_t var1
/* : Char */;
393 uint32_t var3
/* : Char */;
394 uint32_t var_esc
/* var esc: Char */;
395 val
* var4
/* : NativeArray[String] */;
397 static val
* varonce5
;
398 val
* var6
/* : String */;
399 char* var7
/* : NativeString */;
400 val
* var8
/* : FlatString */;
401 val
* var9
/* : String */;
402 val
* var10
/* : String */;
403 val
* var_yellow
/* var yellow: String */;
404 val
* var12
/* : NativeArray[String] */;
405 static val
* varonce11
;
406 static val
* varonce13
;
407 val
* var14
/* : String */;
408 char* var15
/* : NativeString */;
409 val
* var16
/* : FlatString */;
410 val
* var17
/* : String */;
411 val
* var18
/* : String */;
412 val
* var_def
/* var def: String */;
413 val
* var19
/* : nullable String */;
414 val
* var21
/* : nullable String */;
415 val
* var_tag
/* var tag: nullable String */;
416 short int var22
/* : Bool */;
417 short int var23
/* : Bool */;
418 val
* var_other
/* var other: nullable Object */;
419 short int var25
/* : Bool */;
420 short int var26
/* : Bool */;
421 val
* var28
/* : NativeArray[String] */;
422 static val
* varonce27
;
423 static val
* varonce29
;
424 val
* var30
/* : String */;
425 char* var31
/* : NativeString */;
426 val
* var32
/* : FlatString */;
427 static val
* varonce33
;
428 val
* var34
/* : String */;
429 char* var35
/* : NativeString */;
430 val
* var36
/* : FlatString */;
431 val
* var37
/* : String */;
432 static val
* varonce38
;
433 val
* var39
/* : String */;
434 char* var40
/* : NativeString */;
435 val
* var41
/* : FlatString */;
436 val
* var42
/* : nullable Location */;
437 val
* var44
/* : nullable Location */;
438 val
* var_l
/* var l: nullable Location */;
439 short int var45
/* : Bool */;
440 short int var46
/* : Bool */;
441 val
* var48
/* : NativeArray[String] */;
442 static val
* varonce47
;
443 val
* var49
/* : String */;
444 val
* var51
/* : String */;
445 val
* var52
/* : String */;
446 val
* var53
/* : nullable SourceFile */;
447 val
* var55
/* : nullable SourceFile */;
448 short int var56
/* : Bool */;
449 short int var57
/* : Bool */;
450 val
* var_other59
/* var other: nullable Object */;
451 short int var60
/* : Bool */;
452 short int var62
/* : Bool */;
453 val
* var64
/* : NativeArray[String] */;
454 static val
* varonce63
;
455 static val
* varonce65
;
456 val
* var66
/* : String */;
457 char* var67
/* : NativeString */;
458 val
* var68
/* : FlatString */;
459 val
* var69
/* : String */;
460 val
* var70
/* : String */;
461 val
* var72
/* : String */;
462 val
* var73
/* : String */;
463 val
* var75
/* : NativeArray[String] */;
464 static val
* varonce74
;
465 static val
* varonce76
;
466 val
* var77
/* : String */;
467 char* var78
/* : NativeString */;
468 val
* var79
/* : FlatString */;
469 static val
* varonce80
;
470 val
* var81
/* : String */;
471 char* var82
/* : NativeString */;
472 val
* var83
/* : FlatString */;
473 val
* var84
/* : String */;
474 val
* var85
/* : String */;
475 val
* var87
/* : String */;
476 static val
* varonce88
;
477 val
* var89
/* : String */;
478 char* var90
/* : NativeString */;
479 val
* var91
/* : FlatString */;
480 val
* var92
/* : String */;
481 val
* var93
/* : String */;
483 { /* Inline kernel#Int#ascii (27l) on <27l:Int> */
484 var3
= (uint32_t)27l;
491 if (unlikely(varonce
==NULL
)) {
492 var4
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
493 if (likely(varonce5
!=NULL
)) {
497 var8
= standard___standard__NativeString___to_s_with_length(var7
, 6l);
501 ((struct instance_standard__NativeArray
*)var4
)->values
[1]=var6
;
506 var9
= standard__string___Char___Object__to_s(var_esc
);
507 ((struct instance_standard__NativeArray
*)var4
)->values
[0]=var9
;
509 var10
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
513 if (unlikely(varonce11
==NULL
)) {
514 var12
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
515 if (likely(varonce13
!=NULL
)) {
519 var16
= standard___standard__NativeString___to_s_with_length(var15
, 3l);
523 ((struct instance_standard__NativeArray
*)var12
)->values
[1]=var14
;
528 var17
= standard__string___Char___Object__to_s(var_esc
);
529 ((struct instance_standard__NativeArray
*)var12
)->values
[0]=var17
;
531 var18
= ((val
*(*)(val
* self
))(var12
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var12
); /* native_to_s on <var12:NativeArray[String]>*/
536 { /* Inline toolcontext#Message#tag (self) on <self:Message> */
537 var21
= self
->attrs
[COLOR_nit__toolcontext__Message___tag
].val
; /* _tag on <self:Message> */
543 if (var_tag
== NULL
) {
544 var22
= 0; /* is null */
546 var22
= 1; /* arg is null and recv is not */
549 { /* Inline kernel#Object#!= (var_tag,((val*)NULL)) on <var_tag:nullable String> */
550 var_other
= ((val
*)NULL
);
552 var25
= ((short int(*)(val
* self
, val
* p0
))(var_tag
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_tag
, var_other
); /* == on <var_tag:nullable String(String)>*/
562 if (unlikely(varonce27
==NULL
)) {
563 var28
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
564 if (likely(varonce29
!=NULL
)) {
568 var32
= standard___standard__NativeString___to_s_with_length(var31
, 2l);
572 ((struct instance_standard__NativeArray
*)var28
)->values
[0]=var30
;
573 if (likely(varonce33
!=NULL
)) {
577 var36
= standard___standard__NativeString___to_s_with_length(var35
, 1l);
581 ((struct instance_standard__NativeArray
*)var28
)->values
[2]=var34
;
586 ((struct instance_standard__NativeArray
*)var28
)->values
[1]=var_tag
;
588 var37
= ((val
*(*)(val
* self
))(var28
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var28
); /* native_to_s on <var28:NativeArray[String]>*/
593 if (likely(varonce38
!=NULL
)) {
597 var41
= standard___standard__NativeString___to_s_with_length(var40
, 0l);
604 { /* Inline toolcontext#Message#location (self) on <self:Message> */
605 var44
= self
->attrs
[COLOR_nit__toolcontext__Message___location
].val
; /* _location on <self:Message> */
612 var45
= 1; /* is null */
614 var45
= 0; /* arg is null but recv is not */
617 var46
= nit___nit__Location___standard__kernel__Object___61d_61d(var_l
, ((val
*)NULL
));
621 if (unlikely(varonce47
==NULL
)) {
622 var48
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
628 { /* Inline toolcontext#Message#text (self) on <self:Message> */
629 var51
= self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <self:Message> */
630 if (unlikely(var51
== NULL
)) {
631 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
632 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
639 ((struct instance_standard__NativeArray
*)var48
)->values
[0]=var49
;
640 ((struct instance_standard__NativeArray
*)var48
)->values
[1]=var_tag
;
642 var52
= ((val
*(*)(val
* self
))(var48
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var48
); /* native_to_s on <var48:NativeArray[String]>*/
649 { /* Inline location#Location#file (var_l) on <var_l:nullable Location(Location)> */
650 var55
= var_l
->attrs
[COLOR_nit__location__Location___file
].val
; /* _file on <var_l:nullable Location(Location)> */
656 var56
= 1; /* is null */
658 var56
= 0; /* arg is null but recv is not */
661 { /* Inline kernel#Object#== (var53,((val*)NULL)) on <var53:nullable SourceFile> */
662 var_other59
= ((val
*)NULL
);
664 { /* Inline kernel#Object#is_same_instance (var53,var_other59) on <var53:nullable SourceFile(SourceFile)> */
665 var62
= var53
== var_other59
;
678 if (unlikely(varonce63
==NULL
)) {
679 var64
= NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String
);
680 if (likely(varonce65
!=NULL
)) {
684 var68
= standard___standard__NativeString___to_s_with_length(var67
, 2l);
688 ((struct instance_standard__NativeArray
*)var64
)->values
[3]=var66
;
693 ((struct instance_standard__NativeArray
*)var64
)->values
[0]=var_yellow
;
695 var69
= ((val
*(*)(val
* self
))(var_l
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_l
); /* to_s on <var_l:nullable Location(Location)>*/
697 ((struct instance_standard__NativeArray
*)var64
)->values
[1]=var69
;
698 ((struct instance_standard__NativeArray
*)var64
)->values
[2]=var_def
;
700 { /* Inline toolcontext#Message#text (self) on <self:Message> */
701 var72
= self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <self:Message> */
702 if (unlikely(var72
== NULL
)) {
703 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
704 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
711 ((struct instance_standard__NativeArray
*)var64
)->values
[4]=var70
;
712 ((struct instance_standard__NativeArray
*)var64
)->values
[5]=var_tag
;
714 var73
= ((val
*(*)(val
* self
))(var64
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var64
); /* native_to_s on <var64:NativeArray[String]>*/
720 if (unlikely(varonce74
==NULL
)) {
721 var75
= NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String
);
722 if (likely(varonce76
!=NULL
)) {
726 var79
= standard___standard__NativeString___to_s_with_length(var78
, 2l);
730 ((struct instance_standard__NativeArray
*)var75
)->values
[3]=var77
;
731 if (likely(varonce80
!=NULL
)) {
735 var83
= standard___standard__NativeString___to_s_with_length(var82
, 1l);
739 ((struct instance_standard__NativeArray
*)var75
)->values
[6]=var81
;
744 ((struct instance_standard__NativeArray
*)var75
)->values
[0]=var_yellow
;
746 var84
= ((val
*(*)(val
* self
))(var_l
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_l
); /* to_s on <var_l:nullable Location(Location)>*/
748 ((struct instance_standard__NativeArray
*)var75
)->values
[1]=var84
;
749 ((struct instance_standard__NativeArray
*)var75
)->values
[2]=var_def
;
751 { /* Inline toolcontext#Message#text (self) on <self:Message> */
752 var87
= self
->attrs
[COLOR_nit__toolcontext__Message___text
].val
; /* _text on <self:Message> */
753 if (unlikely(var87
== NULL
)) {
754 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
755 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 42);
762 ((struct instance_standard__NativeArray
*)var75
)->values
[4]=var85
;
763 ((struct instance_standard__NativeArray
*)var75
)->values
[5]=var_tag
;
764 if (likely(varonce88
!=NULL
)) {
768 var91
= standard___standard__NativeString___to_s_with_length(var90
, 4l);
773 var92
= nit___nit__Location___colored_line(var_l
, var89
);
775 ((struct instance_standard__NativeArray
*)var75
)->values
[7]=var92
;
777 var93
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var75
); /* native_to_s on <var75:NativeArray[String]>*/
787 /* method toolcontext#Message#init for (self: Message) */
788 void nit___nit__Message___standard__kernel__Object__init(val
* self
) {
790 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit___nit__Message___standard__kernel__Object__init
]))(self
); /* init on <self:Message>*/
794 /* method toolcontext#Location#messages for (self: Location): nullable Array[Message] */
795 val
* nit__toolcontext___Location___messages(val
* self
) {
796 val
* var
/* : nullable Array[Message] */;
797 val
* var1
/* : nullable Array[Message] */;
798 var1
= self
->attrs
[COLOR_nit__toolcontext__Location___messages
].val
; /* _messages on <self:Location> */
803 /* method toolcontext#Location#messages= for (self: Location, nullable Array[Message]) */
804 void nit__toolcontext___Location___messages_61d(val
* self
, val
* p0
) {
805 self
->attrs
[COLOR_nit__toolcontext__Location___messages
].val
= p0
; /* _messages on <self:Location> */
808 /* method toolcontext#Location#add_message for (self: Location, Message) */
809 void nit__toolcontext___Location___add_message(val
* self
, val
* p0
) {
810 val
* var_m
/* var m: Message */;
811 val
* var
/* : nullable Array[Message] */;
812 val
* var2
/* : nullable Array[Message] */;
813 val
* var_ms
/* var ms: nullable Array[Message] */;
814 short int var3
/* : Bool */;
815 short int var4
/* : Bool */;
816 val
* var5
/* : Array[Message] */;
819 { /* Inline toolcontext#Location#messages (self) on <self:Location> */
820 var2
= self
->attrs
[COLOR_nit__toolcontext__Location___messages
].val
; /* _messages on <self:Location> */
826 if (var_ms
== NULL
) {
827 var3
= 1; /* is null */
829 var3
= 0; /* arg is null but recv is not */
832 var4
= standard___standard__Array___standard__kernel__Object___61d_61d(var_ms
, ((val
*)NULL
));
836 var5
= NEW_standard__Array(&type_standard__Array__nit__Message
);
838 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Message]>*/
842 { /* Inline toolcontext#Location#messages= (self,var_ms) on <self:Location> */
843 self
->attrs
[COLOR_nit__toolcontext__Location___messages
].val
= var_ms
; /* _messages on <self:Location> */
850 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_ms
, var_m
); /* Direct call array#Array#add on <var_ms:nullable Array[Message](Array[Message])>*/
854 /* method toolcontext#ToolContext#error_count for (self: ToolContext): Int */
855 long nit___nit__ToolContext___error_count(val
* self
) {
856 long var
/* : Int */;
857 long var1
/* : Int */;
858 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
863 /* method toolcontext#ToolContext#error_count= for (self: ToolContext, Int) */
864 void nit___nit__ToolContext___error_count_61d(val
* self
, long p0
) {
865 self
->attrs
[COLOR_nit__toolcontext__ToolContext___error_count
].l
= p0
; /* _error_count on <self:ToolContext> */
868 /* method toolcontext#ToolContext#warning_count for (self: ToolContext): Int */
869 long nit___nit__ToolContext___warning_count(val
* self
) {
870 long var
/* : Int */;
871 long var1
/* : Int */;
872 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
; /* _warning_count on <self:ToolContext> */
877 /* method toolcontext#ToolContext#warning_count= for (self: ToolContext, Int) */
878 void nit___nit__ToolContext___warning_count_61d(val
* self
, long p0
) {
879 self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
= p0
; /* _warning_count on <self:ToolContext> */
882 /* method toolcontext#ToolContext#log_directory for (self: ToolContext): String */
883 val
* nit___nit__ToolContext___log_directory(val
* self
) {
884 val
* var
/* : String */;
885 val
* var1
/* : String */;
886 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_directory
].val
; /* _log_directory on <self:ToolContext> */
887 if (unlikely(var1
== NULL
)) {
888 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _log_directory");
889 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 137);
896 /* method toolcontext#ToolContext#log_directory= for (self: ToolContext, String) */
897 void nit___nit__ToolContext___log_directory_61d(val
* self
, val
* p0
) {
898 self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_directory
].val
= p0
; /* _log_directory on <self:ToolContext> */
901 /* method toolcontext#ToolContext#log_info for (self: ToolContext): nullable Writer */
902 val
* nit___nit__ToolContext___log_info(val
* self
) {
903 val
* var
/* : nullable Writer */;
904 val
* var1
/* : nullable Writer */;
905 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_info
].val
; /* _log_info on <self:ToolContext> */
910 /* method toolcontext#ToolContext#log_info= for (self: ToolContext, nullable Writer) */
911 void nit___nit__ToolContext___log_info_61d(val
* self
, val
* p0
) {
912 self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_info
].val
= p0
; /* _log_info on <self:ToolContext> */
915 /* method toolcontext#ToolContext#messages for (self: ToolContext): Array[Message] */
916 val
* nit___nit__ToolContext___messages(val
* self
) {
917 val
* var
/* : Array[Message] */;
918 val
* var1
/* : Array[Message] */;
919 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
920 if (unlikely(var1
== NULL
)) {
921 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
922 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
929 /* method toolcontext#ToolContext#message_sorter for (self: ToolContext): Comparator */
930 val
* nit___nit__ToolContext___message_sorter(val
* self
) {
931 val
* var
/* : Comparator */;
932 val
* var1
/* : Comparator */;
933 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___message_sorter
].val
; /* _message_sorter on <self:ToolContext> */
934 if (unlikely(var1
== NULL
)) {
935 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _message_sorter");
936 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 145);
943 /* method toolcontext#ToolContext#keep_going for (self: ToolContext): Bool */
944 short int nit___nit__ToolContext___keep_going(val
* self
) {
945 short int var
/* : Bool */;
946 short int var1
/* : Bool */;
947 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___keep_going
].s
; /* _keep_going on <self:ToolContext> */
952 /* method toolcontext#ToolContext#keep_going= for (self: ToolContext, Bool) */
953 void nit___nit__ToolContext___keep_going_61d(val
* self
, short int p0
) {
954 self
->attrs
[COLOR_nit__toolcontext__ToolContext___keep_going
].s
= p0
; /* _keep_going on <self:ToolContext> */
957 /* method toolcontext#ToolContext#warning_blacklist for (self: ToolContext): MultiHashMap[SourceFile, String] */
958 val
* nit___nit__ToolContext___warning_blacklist(val
* self
) {
959 val
* var
/* : MultiHashMap[SourceFile, String] */;
960 val
* var1
/* : MultiHashMap[SourceFile, String] */;
961 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_blacklist
].val
; /* _warning_blacklist on <self:ToolContext> */
962 if (unlikely(var1
== NULL
)) {
963 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _warning_blacklist");
964 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 153);
971 /* method toolcontext#ToolContext#is_warning_blacklisted for (self: ToolContext, nullable Location, String): Bool */
972 short int nit___nit__ToolContext___is_warning_blacklisted(val
* self
, val
* p0
, val
* p1
) {
973 short int var
/* : Bool */;
974 val
* var_l
/* var l: nullable Location */;
975 val
* var_tag
/* var tag: String */;
976 short int var1
/* : Bool */;
977 short int var2
/* : Bool */;
978 val
* var3
/* : nullable SourceFile */;
979 val
* var5
/* : nullable SourceFile */;
980 val
* var_f
/* var f: nullable SourceFile */;
981 short int var6
/* : Bool */;
982 short int var7
/* : Bool */;
983 val
* var_other
/* var other: nullable Object */;
984 short int var9
/* : Bool */;
985 short int var11
/* : Bool */;
986 val
* var12
/* : MultiHashMap[SourceFile, String] */;
987 val
* var14
/* : MultiHashMap[SourceFile, String] */;
988 val
* var15
/* : nullable Object */;
989 val
* var_tags
/* var tags: nullable Array[String] */;
990 short int var16
/* : Bool */;
991 short int var17
/* : Bool */;
992 short int var18
/* : Bool */;
994 val
* var19
/* : String */;
995 char* var20
/* : NativeString */;
996 val
* var21
/* : FlatString */;
997 short int var22
/* : Bool */;
998 short int var_
/* var : Bool */;
999 short int var23
/* : Bool */;
1002 if (var_l
== NULL
) {
1003 var1
= 1; /* is null */
1005 var1
= 0; /* arg is null but recv is not */
1008 var2
= nit___nit__Location___standard__kernel__Object___61d_61d(var_l
, ((val
*)NULL
));
1017 { /* Inline location#Location#file (var_l) on <var_l:nullable Location(Location)> */
1018 var5
= var_l
->attrs
[COLOR_nit__location__Location___file
].val
; /* _file on <var_l:nullable Location(Location)> */
1024 if (var_f
== NULL
) {
1025 var6
= 1; /* is null */
1027 var6
= 0; /* arg is null but recv is not */
1030 { /* Inline kernel#Object#== (var_f,((val*)NULL)) on <var_f:nullable SourceFile> */
1031 var_other
= ((val
*)NULL
);
1033 { /* Inline kernel#Object#is_same_instance (var_f,var_other) on <var_f:nullable SourceFile(SourceFile)> */
1034 var11
= var_f
== var_other
;
1037 RET_LABEL10
:(void)0;
1052 { /* Inline toolcontext#ToolContext#warning_blacklist (self) on <self:ToolContext> */
1053 var14
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_blacklist
].val
; /* _warning_blacklist on <self:ToolContext> */
1054 if (unlikely(var14
== NULL
)) {
1055 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _warning_blacklist");
1056 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 153);
1060 RET_LABEL13
:(void)0;
1064 var15
= standard___standard__HashMap___standard__abstract_collection__MapRead__get_or_null(var12
, var_f
);
1067 if (var_tags
== NULL
) {
1068 var16
= 1; /* is null */
1070 var16
= 0; /* arg is null but recv is not */
1073 var17
= standard___standard__Array___standard__kernel__Object___61d_61d(var_tags
, ((val
*)NULL
));
1081 if (likely(varonce
!=NULL
)) {
1085 var21
= standard___standard__NativeString___to_s_with_length(var20
, 3l);
1090 var22
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var_tags
, var19
);
1097 var23
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var_tags
, var_tag
);
1106 /* method toolcontext#ToolContext#check_errors for (self: ToolContext): Bool */
1107 short int nit___nit__ToolContext___check_errors(val
* self
) {
1108 short int var
/* : Bool */;
1109 val
* var1
/* : Array[Message] */;
1110 val
* var3
/* : Array[Message] */;
1111 long var4
/* : Int */;
1112 long var6
/* : Int */;
1113 short int var7
/* : Bool */;
1114 short int var9
/* : Bool */;
1117 const char* var_class_name
;
1118 short int var10
/* : Bool */;
1119 val
* var11
/* : Comparator */;
1120 val
* var13
/* : Comparator */;
1121 val
* var14
/* : Array[Message] */;
1122 val
* var16
/* : Array[Message] */;
1123 val
* var17
/* : Array[Message] */;
1124 val
* var19
/* : Array[Message] */;
1125 val
* var_
/* var : Array[Message] */;
1126 val
* var20
/* : ArrayIterator[nullable Object] */;
1127 val
* var_21
/* var : ArrayIterator[Message] */;
1128 short int var22
/* : Bool */;
1129 val
* var23
/* : nullable Object */;
1130 val
* var_m
/* var m: Message */;
1131 val
* var24
/* : OptionBool */;
1132 val
* var26
/* : OptionBool */;
1133 val
* var27
/* : nullable Object */;
1134 val
* var29
/* : nullable Object */;
1135 short int var30
/* : Bool */;
1136 val
* var31
/* : Sys */;
1137 val
* var33
/* : Sys */;
1138 val
* var34
/* : Writer */;
1139 val
* var35
/* : NativeArray[String] */;
1140 static val
* varonce
;
1141 static val
* varonce36
;
1142 val
* var37
/* : String */;
1143 char* var38
/* : NativeString */;
1144 val
* var39
/* : FlatString */;
1145 val
* var40
/* : String */;
1146 val
* var41
/* : String */;
1147 val
* var42
/* : Sys */;
1148 val
* var44
/* : Sys */;
1149 val
* var45
/* : Writer */;
1150 val
* var47
/* : NativeArray[String] */;
1151 static val
* varonce46
;
1152 static val
* varonce48
;
1153 val
* var49
/* : String */;
1154 char* var50
/* : NativeString */;
1155 val
* var51
/* : FlatString */;
1156 val
* var52
/* : String */;
1157 val
* var53
/* : String */;
1158 val
* var54
/* : Array[Message] */;
1159 val
* var56
/* : Array[Message] */;
1160 long var57
/* : Int */;
1161 long var59
/* : Int */;
1162 short int var60
/* : Bool */;
1163 short int var62
/* : Bool */;
1166 const char* var_class_name65
;
1167 short int var66
/* : Bool */;
1168 short int var67
/* : Bool */;
1169 short int var69
/* : Bool */;
1170 short int var70
/* : Bool */;
1171 val
* var71
/* : Sys */;
1173 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
1174 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
1175 if (unlikely(var3
== NULL
)) {
1176 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
1177 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
1185 { /* Inline array#AbstractArrayRead#length (var1) on <var1:Array[Message]> */
1186 var6
= var1
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var1:Array[Message]> */
1192 { /* Inline kernel#Int#> (var4,0l) on <var4:Int> */
1193 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
1194 /* <0l:Int> isa OTHER */
1195 var9
= 1; /* easy <0l:Int> isa OTHER*/
1196 if (unlikely(!var9
)) {
1197 var_class_name
= type_standard__Int
.name
;
1198 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1199 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 536);
1210 { /* Inline toolcontext#ToolContext#message_sorter (self) on <self:ToolContext> */
1211 var13
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___message_sorter
].val
; /* _message_sorter on <self:ToolContext> */
1212 if (unlikely(var13
== NULL
)) {
1213 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _message_sorter");
1214 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 145);
1218 RET_LABEL12
:(void)0;
1222 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
1223 var16
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
1224 if (unlikely(var16
== NULL
)) {
1225 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
1226 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
1230 RET_LABEL15
:(void)0;
1234 standard___standard__Comparator___sort(var11
, var14
); /* Direct call sorter#Comparator#sort on <var11:Comparator>*/
1237 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
1238 var19
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
1239 if (unlikely(var19
== NULL
)) {
1240 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
1241 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
1245 RET_LABEL18
:(void)0;
1250 var20
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
1255 var22
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_21
);
1259 var23
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_21
);
1263 { /* Inline toolcontext#ToolContext#opt_no_color (self) on <self:ToolContext> */
1264 var26
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_no_color
].val
; /* _opt_no_color on <self:ToolContext> */
1265 if (unlikely(var26
== NULL
)) {
1266 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_color");
1267 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 371);
1271 RET_LABEL25
:(void)0;
1275 { /* Inline opts#Option#value (var24) on <var24:OptionBool> */
1276 var29
= var24
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var24:OptionBool> */
1278 RET_LABEL28
:(void)0;
1281 var30
= (short int)((long)(var27
)>>2);
1284 { /* Inline kernel#Object#sys (self) on <self:ToolContext> */
1288 RET_LABEL32
:(void)0;
1292 var34
= standard__file___Sys___stderr(var31
);
1294 if (unlikely(varonce
==NULL
)) {
1295 var35
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
1296 if (likely(varonce36
!=NULL
)) {
1300 var39
= standard___standard__NativeString___to_s_with_length(var38
, 1l);
1304 ((struct instance_standard__NativeArray
*)var35
)->values
[1]=var37
;
1310 var40
= ((val
*(*)(val
* self
))(var_m
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_m
); /* to_s on <var_m:Message>*/
1312 ((struct instance_standard__NativeArray
*)var35
)->values
[0]=var40
;
1314 var41
= ((val
*(*)(val
* self
))(var35
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var35
); /* native_to_s on <var35:NativeArray[String]>*/
1318 standard___standard__FileWriter___standard__stream__Writer__write(var34
, var41
); /* Direct call file#FileWriter#write on <var34:Writer>*/
1322 { /* Inline kernel#Object#sys (self) on <self:ToolContext> */
1326 RET_LABEL43
:(void)0;
1330 var45
= standard__file___Sys___stderr(var42
);
1332 if (unlikely(varonce46
==NULL
)) {
1333 var47
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
1334 if (likely(varonce48
!=NULL
)) {
1338 var51
= standard___standard__NativeString___to_s_with_length(var50
, 1l);
1342 ((struct instance_standard__NativeArray
*)var47
)->values
[1]=var49
;
1348 var52
= nit___nit__Message___to_color_string(var_m
);
1350 ((struct instance_standard__NativeArray
*)var47
)->values
[0]=var52
;
1352 var53
= ((val
*(*)(val
* self
))(var47
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var47
); /* native_to_s on <var47:NativeArray[String]>*/
1356 standard___standard__FileWriter___standard__stream__Writer__write(var45
, var53
); /* Direct call file#FileWriter#write on <var45:Writer>*/
1360 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_21
); /* Direct call array#ArrayIterator#next on <var_21:ArrayIterator[Message]>*/
1366 BREAK_label
: (void)0;
1368 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_21
); /* Direct call array#ArrayIterator#finish on <var_21:ArrayIterator[Message]>*/
1371 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
1372 var56
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
1373 if (unlikely(var56
== NULL
)) {
1374 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
1375 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
1379 RET_LABEL55
:(void)0;
1383 standard___standard__AbstractArray___standard__abstract_collection__RemovableCollection__clear(var54
); /* Direct call array#AbstractArray#clear on <var54:Array[Message]>*/
1388 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1389 var59
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1391 RET_LABEL58
:(void)0;
1395 { /* Inline kernel#Int#> (var57,0l) on <var57:Int> */
1396 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
1397 /* <0l:Int> isa OTHER */
1398 var62
= 1; /* easy <0l:Int> isa OTHER*/
1399 if (unlikely(!var62
)) {
1400 var_class_name65
= type_standard__Int
.name
;
1401 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name65
);
1402 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 536);
1408 RET_LABEL61
:(void)0;
1413 { /* Inline toolcontext#ToolContext#keep_going (self) on <self:ToolContext> */
1414 var69
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___keep_going
].s
; /* _keep_going on <self:ToolContext> */
1416 RET_LABEL68
:(void)0;
1422 nit___nit__ToolContext___errors_info(self
); /* Direct call toolcontext#ToolContext#errors_info on <self:ToolContext>*/
1426 { /* Inline kernel#Sys#exit (var71,1l) on <var71:Sys> */
1428 RET_LABEL72
:(void)0;
1442 /* method toolcontext#ToolContext#errors_info for (self: ToolContext) */
1443 void nit___nit__ToolContext___errors_info(val
* self
) {
1444 short int var
/* : Bool */;
1445 long var1
/* : Int */;
1446 long var3
/* : Int */;
1447 short int var4
/* : Bool */;
1448 short int var6
/* : Bool */;
1449 short int var_
/* var : Bool */;
1450 long var7
/* : Int */;
1451 long var9
/* : Int */;
1452 short int var10
/* : Bool */;
1453 short int var12
/* : Bool */;
1454 val
* var13
/* : OptionBool */;
1455 val
* var15
/* : OptionBool */;
1456 val
* var16
/* : nullable Object */;
1457 val
* var18
/* : nullable Object */;
1458 short int var19
/* : Bool */;
1459 val
* var20
/* : Sys */;
1460 val
* var22
/* : Sys */;
1461 val
* var23
/* : Writer */;
1462 val
* var24
/* : NativeArray[String] */;
1463 static val
* varonce
;
1464 static val
* varonce25
;
1465 val
* var26
/* : String */;
1466 char* var27
/* : NativeString */;
1467 val
* var28
/* : FlatString */;
1468 static val
* varonce29
;
1469 val
* var30
/* : String */;
1470 char* var31
/* : NativeString */;
1471 val
* var32
/* : FlatString */;
1472 static val
* varonce33
;
1473 val
* var34
/* : String */;
1474 char* var35
/* : NativeString */;
1475 val
* var36
/* : FlatString */;
1476 long var37
/* : Int */;
1477 long var39
/* : Int */;
1478 val
* var40
/* : String */;
1479 long var41
/* : Int */;
1480 long var43
/* : Int */;
1481 val
* var44
/* : String */;
1482 val
* var45
/* : String */;
1484 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1485 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1491 { /* Inline kernel#Int#== (var1,0l) on <var1:Int> */
1501 { /* Inline toolcontext#ToolContext#warning_count (self) on <self:ToolContext> */
1502 var9
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
; /* _warning_count on <self:ToolContext> */
1508 { /* Inline kernel#Int#== (var7,0l) on <var7:Int> */
1512 RET_LABEL11
:(void)0;
1524 { /* Inline toolcontext#ToolContext#opt_no_color (self) on <self:ToolContext> */
1525 var15
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_no_color
].val
; /* _opt_no_color on <self:ToolContext> */
1526 if (unlikely(var15
== NULL
)) {
1527 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_color");
1528 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 371);
1532 RET_LABEL14
:(void)0;
1536 { /* Inline opts#Option#value (var13) on <var13:OptionBool> */
1537 var18
= var13
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var13:OptionBool> */
1539 RET_LABEL17
:(void)0;
1542 var19
= (short int)((long)(var16
)>>2);
1548 { /* Inline kernel#Object#sys (self) on <self:ToolContext> */
1552 RET_LABEL21
:(void)0;
1556 var23
= standard__file___Sys___stderr(var20
);
1558 if (unlikely(varonce
==NULL
)) {
1559 var24
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
1560 if (likely(varonce25
!=NULL
)) {
1564 var28
= standard___standard__NativeString___to_s_with_length(var27
, 8l);
1568 ((struct instance_standard__NativeArray
*)var24
)->values
[0]=var26
;
1569 if (likely(varonce29
!=NULL
)) {
1572 var31
= ". Warnings: ";
1573 var32
= standard___standard__NativeString___to_s_with_length(var31
, 12l);
1577 ((struct instance_standard__NativeArray
*)var24
)->values
[2]=var30
;
1578 if (likely(varonce33
!=NULL
)) {
1582 var36
= standard___standard__NativeString___to_s_with_length(var35
, 2l);
1586 ((struct instance_standard__NativeArray
*)var24
)->values
[4]=var34
;
1592 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1593 var39
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1595 RET_LABEL38
:(void)0;
1598 var40
= standard__string___Int___Object__to_s(var37
);
1599 ((struct instance_standard__NativeArray
*)var24
)->values
[1]=var40
;
1601 { /* Inline toolcontext#ToolContext#warning_count (self) on <self:ToolContext> */
1602 var43
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
; /* _warning_count on <self:ToolContext> */
1604 RET_LABEL42
:(void)0;
1607 var44
= standard__string___Int___Object__to_s(var41
);
1608 ((struct instance_standard__NativeArray
*)var24
)->values
[3]=var44
;
1610 var45
= ((val
*(*)(val
* self
))(var24
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var24
); /* native_to_s on <var24:NativeArray[String]>*/
1614 standard___standard__FileWriter___standard__stream__Writer__write(var23
, var45
); /* Direct call file#FileWriter#write on <var23:Writer>*/
1618 /* method toolcontext#ToolContext#error for (self: ToolContext, nullable Location, String): Message */
1619 val
* nit___nit__ToolContext___error(val
* self
, val
* p0
, val
* p1
) {
1620 val
* var
/* : Message */;
1621 val
* var_l
/* var l: nullable Location */;
1622 val
* var_s
/* var s: String */;
1623 val
* var1
/* : Message */;
1624 val
* var_m
/* var m: Message */;
1625 val
* var2
/* : Array[Message] */;
1626 val
* var4
/* : Array[Message] */;
1627 short int var5
/* : Bool */;
1628 short int var6
/* : Bool */;
1629 short int var7
/* : Bool */;
1630 val
* var_other
/* var other: nullable Object */;
1631 short int var9
/* : Bool */;
1632 short int var10
/* : Bool */;
1633 val
* var11
/* : Array[Message] */;
1634 val
* var13
/* : Array[Message] */;
1635 long var14
/* : Int */;
1636 long var16
/* : Int */;
1637 long var17
/* : Int */;
1638 short int var19
/* : Bool */;
1641 const char* var_class_name
;
1642 long var20
/* : Int */;
1643 val
* var22
/* : OptionBool */;
1644 val
* var24
/* : OptionBool */;
1645 val
* var25
/* : nullable Object */;
1646 val
* var27
/* : nullable Object */;
1647 short int var28
/* : Bool */;
1648 short int var29
/* : Bool */;
1651 var1
= NEW_nit__Message(&type_nit__Message
);
1653 ((void(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_nit__toolcontext__Message__location_61d
]))(var1
, var_l
); /* location= on <var1:Message>*/
1656 ((void(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_nit__toolcontext__Message__tag_61d
]))(var1
, ((val
*)NULL
)); /* tag= on <var1:Message>*/
1659 ((void(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_nit__toolcontext__Message__text_61d
]))(var1
, var_s
); /* text= on <var1:Message>*/
1662 ((void(*)(val
* self
))(var1
->class->vft
[COLOR_standard__kernel__Object__init
]))(var1
); /* init on <var1:Message>*/
1666 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
1667 var4
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
1668 if (unlikely(var4
== NULL
)) {
1669 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
1670 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
1678 var5
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var2
, var_m
);
1685 if (var_l
== NULL
) {
1686 var6
= 0; /* is null */
1688 var6
= 1; /* arg is null and recv is not */
1691 { /* Inline kernel#Object#!= (var_l,((val*)NULL)) on <var_l:nullable Location> */
1692 var_other
= ((val
*)NULL
);
1694 var9
= ((short int(*)(val
* self
, val
* p0
))(var_l
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_l
, var_other
); /* == on <var_l:nullable Location(Location)>*/
1705 nit__toolcontext___Location___add_message(var_l
, var_m
); /* Direct call toolcontext#Location#add_message on <var_l:nullable Location(Location)>*/
1710 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
1711 var13
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
1712 if (unlikely(var13
== NULL
)) {
1713 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
1714 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
1718 RET_LABEL12
:(void)0;
1722 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var11
, var_m
); /* Direct call array#Array#add on <var11:Array[Message]>*/
1725 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1726 var16
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1728 RET_LABEL15
:(void)0;
1732 { /* Inline kernel#Int#+ (var14,1l) on <var14:Int> */
1733 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1734 /* <1l:Int> isa OTHER */
1735 var19
= 1; /* easy <1l:Int> isa OTHER*/
1736 if (unlikely(!var19
)) {
1737 var_class_name
= type_standard__Int
.name
;
1738 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1739 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
1745 RET_LABEL18
:(void)0;
1749 { /* Inline toolcontext#ToolContext#error_count= (self,var17) on <self:ToolContext> */
1750 self
->attrs
[COLOR_nit__toolcontext__ToolContext___error_count
].l
= var17
; /* _error_count on <self:ToolContext> */
1751 RET_LABEL21
:(void)0;
1755 { /* Inline toolcontext#ToolContext#opt_stop_on_first_error (self) on <self:ToolContext> */
1756 var24
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stop_on_first_error
].val
; /* _opt_stop_on_first_error on <self:ToolContext> */
1757 if (unlikely(var24
== NULL
)) {
1758 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stop_on_first_error");
1759 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 365);
1763 RET_LABEL23
:(void)0;
1767 { /* Inline opts#Option#value (var22) on <var22:OptionBool> */
1768 var27
= var22
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var22:OptionBool> */
1770 RET_LABEL26
:(void)0;
1773 var28
= (short int)((long)(var25
)>>2);
1776 var29
= nit___nit__ToolContext___check_errors(self
);
1785 /* method toolcontext#ToolContext#fatal_error for (self: ToolContext, nullable Location, String) */
1786 void nit___nit__ToolContext___fatal_error(val
* self
, val
* p0
, val
* p1
) {
1787 val
* var_l
/* var l: nullable Location */;
1788 val
* var_s
/* var s: String */;
1789 val
* var
/* : Message */;
1790 short int var1
/* : Bool */;
1794 var
= nit___nit__ToolContext___error(self
, var_l
, var_s
);
1797 var1
= nit___nit__ToolContext___check_errors(self
);
1801 /* method toolcontext#ToolContext#warning for (self: ToolContext, nullable Location, String, String): nullable Message */
1802 val
* nit___nit__ToolContext___warning(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1803 val
* var
/* : nullable Message */;
1804 val
* var_l
/* var l: nullable Location */;
1805 val
* var_tag
/* var tag: String */;
1806 val
* var_text
/* var text: String */;
1807 val
* var1
/* : OptionArray */;
1808 val
* var3
/* : OptionArray */;
1809 val
* var4
/* : nullable Object */;
1810 val
* var6
/* : nullable Object */;
1811 val
* var7
/* : NativeArray[String] */;
1812 static val
* varonce
;
1813 static val
* varonce8
;
1814 val
* var9
/* : String */;
1815 char* var10
/* : NativeString */;
1816 val
* var11
/* : FlatString */;
1817 val
* var12
/* : String */;
1818 short int var13
/* : Bool */;
1819 short int var14
/* : Bool */;
1820 val
* var15
/* : OptionArray */;
1821 val
* var17
/* : OptionArray */;
1822 val
* var18
/* : nullable Object */;
1823 val
* var20
/* : nullable Object */;
1824 short int var21
/* : Bool */;
1825 short int var22
/* : Bool */;
1826 short int var_
/* var : Bool */;
1827 val
* var23
/* : OptionCount */;
1828 val
* var25
/* : OptionCount */;
1829 val
* var26
/* : nullable Object */;
1830 val
* var28
/* : nullable Object */;
1831 short int var29
/* : Bool */;
1832 short int var31
/* : Bool */;
1833 long var32
/* : Int */;
1834 short int var33
/* : Bool */;
1835 val
* var34
/* : Message */;
1836 val
* var_m
/* var m: Message */;
1837 val
* var35
/* : Array[Message] */;
1838 val
* var37
/* : Array[Message] */;
1839 short int var38
/* : Bool */;
1840 short int var39
/* : Bool */;
1841 short int var40
/* : Bool */;
1842 val
* var_other
/* var other: nullable Object */;
1843 short int var42
/* : Bool */;
1844 short int var43
/* : Bool */;
1845 val
* var44
/* : Array[Message] */;
1846 val
* var46
/* : Array[Message] */;
1847 long var47
/* : Int */;
1848 long var49
/* : Int */;
1849 long var50
/* : Int */;
1850 short int var52
/* : Bool */;
1853 const char* var_class_name
;
1854 long var53
/* : Int */;
1855 val
* var55
/* : OptionBool */;
1856 val
* var57
/* : OptionBool */;
1857 val
* var58
/* : nullable Object */;
1858 val
* var60
/* : nullable Object */;
1859 short int var61
/* : Bool */;
1860 short int var62
/* : Bool */;
1865 { /* Inline toolcontext#ToolContext#opt_warning (self) on <self:ToolContext> */
1866 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warning
].val
; /* _opt_warning on <self:ToolContext> */
1867 if (unlikely(var3
== NULL
)) {
1868 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warning");
1869 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 338);
1877 { /* Inline opts#Option#value (var1) on <var1:OptionArray> */
1878 var6
= var1
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var1:OptionArray> */
1883 if (unlikely(varonce
==NULL
)) {
1884 var7
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
1885 if (likely(varonce8
!=NULL
)) {
1889 var11
= standard___standard__NativeString___to_s_with_length(var10
, 3l);
1893 ((struct instance_standard__NativeArray
*)var7
)->values
[0]=var9
;
1898 ((struct instance_standard__NativeArray
*)var7
)->values
[1]=var_tag
;
1900 var12
= ((val
*(*)(val
* self
))(var7
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var7
); /* native_to_s on <var7:NativeArray[String]>*/
1904 var13
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var4
, var12
);
1912 { /* Inline toolcontext#ToolContext#opt_warning (self) on <self:ToolContext> */
1913 var17
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warning
].val
; /* _opt_warning on <self:ToolContext> */
1914 if (unlikely(var17
== NULL
)) {
1915 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warning");
1916 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 338);
1920 RET_LABEL16
:(void)0;
1924 { /* Inline opts#Option#value (var15) on <var15:OptionArray> */
1925 var20
= var15
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var15:OptionArray> */
1927 RET_LABEL19
:(void)0;
1931 var21
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var18
, var_tag
);
1937 { /* Inline toolcontext#ToolContext#opt_warn (self) on <self:ToolContext> */
1938 var25
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warn
].val
; /* _opt_warn on <self:ToolContext> */
1939 if (unlikely(var25
== NULL
)) {
1940 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warn");
1941 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 335);
1945 RET_LABEL24
:(void)0;
1949 { /* Inline opts#Option#value (var23) on <var23:OptionCount> */
1950 var28
= var23
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var23:OptionCount> */
1952 RET_LABEL27
:(void)0;
1956 { /* Inline kernel#Int#== (var26,0l) on <var26:nullable Object(Int)> */
1957 var32
= (long)(var26
)>>2;
1958 var31
= (var26
!= NULL
) && (var32
== 0l);
1961 RET_LABEL30
:(void)0;
1974 var33
= nit___nit__ToolContext___is_warning_blacklisted(self
, var_l
, var_tag
);
1981 var34
= NEW_nit__Message(&type_nit__Message
);
1983 ((void(*)(val
* self
, val
* p0
))(var34
->class->vft
[COLOR_nit__toolcontext__Message__location_61d
]))(var34
, var_l
); /* location= on <var34:Message>*/
1986 ((void(*)(val
* self
, val
* p0
))(var34
->class->vft
[COLOR_nit__toolcontext__Message__tag_61d
]))(var34
, var_tag
); /* tag= on <var34:Message>*/
1989 ((void(*)(val
* self
, val
* p0
))(var34
->class->vft
[COLOR_nit__toolcontext__Message__text_61d
]))(var34
, var_text
); /* text= on <var34:Message>*/
1992 ((void(*)(val
* self
))(var34
->class->vft
[COLOR_standard__kernel__Object__init
]))(var34
); /* init on <var34:Message>*/
1996 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
1997 var37
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
1998 if (unlikely(var37
== NULL
)) {
1999 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
2000 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
2004 RET_LABEL36
:(void)0;
2008 var38
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var35
, var_m
);
2015 if (var_l
== NULL
) {
2016 var39
= 0; /* is null */
2018 var39
= 1; /* arg is null and recv is not */
2021 { /* Inline kernel#Object#!= (var_l,((val*)NULL)) on <var_l:nullable Location> */
2022 var_other
= ((val
*)NULL
);
2024 var42
= ((short int(*)(val
* self
, val
* p0
))(var_l
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_l
, var_other
); /* == on <var_l:nullable Location(Location)>*/
2029 RET_LABEL41
:(void)0;
2035 nit__toolcontext___Location___add_message(var_l
, var_m
); /* Direct call toolcontext#Location#add_message on <var_l:nullable Location(Location)>*/
2040 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
2041 var46
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
2042 if (unlikely(var46
== NULL
)) {
2043 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
2044 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
2048 RET_LABEL45
:(void)0;
2052 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var44
, var_m
); /* Direct call array#Array#add on <var44:Array[Message]>*/
2055 { /* Inline toolcontext#ToolContext#warning_count (self) on <self:ToolContext> */
2056 var49
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
; /* _warning_count on <self:ToolContext> */
2058 RET_LABEL48
:(void)0;
2062 { /* Inline kernel#Int#+ (var47,1l) on <var47:Int> */
2063 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
2064 /* <1l:Int> isa OTHER */
2065 var52
= 1; /* easy <1l:Int> isa OTHER*/
2066 if (unlikely(!var52
)) {
2067 var_class_name
= type_standard__Int
.name
;
2068 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2069 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
2075 RET_LABEL51
:(void)0;
2079 { /* Inline toolcontext#ToolContext#warning_count= (self,var50) on <self:ToolContext> */
2080 self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
= var50
; /* _warning_count on <self:ToolContext> */
2081 RET_LABEL54
:(void)0;
2085 { /* Inline toolcontext#ToolContext#opt_stop_on_first_error (self) on <self:ToolContext> */
2086 var57
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stop_on_first_error
].val
; /* _opt_stop_on_first_error on <self:ToolContext> */
2087 if (unlikely(var57
== NULL
)) {
2088 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stop_on_first_error");
2089 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 365);
2093 RET_LABEL56
:(void)0;
2097 { /* Inline opts#Option#value (var55) on <var55:OptionBool> */
2098 var60
= var55
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var55:OptionBool> */
2100 RET_LABEL59
:(void)0;
2103 var61
= (short int)((long)(var58
)>>2);
2106 var62
= nit___nit__ToolContext___check_errors(self
);
2115 /* method toolcontext#ToolContext#advice for (self: ToolContext, nullable Location, String, String): nullable Message */
2116 val
* nit___nit__ToolContext___advice(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
2117 val
* var
/* : nullable Message */;
2118 val
* var_l
/* var l: nullable Location */;
2119 val
* var_tag
/* var tag: String */;
2120 val
* var_text
/* var text: String */;
2121 val
* var1
/* : OptionArray */;
2122 val
* var3
/* : OptionArray */;
2123 val
* var4
/* : nullable Object */;
2124 val
* var6
/* : nullable Object */;
2125 val
* var7
/* : NativeArray[String] */;
2126 static val
* varonce
;
2127 static val
* varonce8
;
2128 val
* var9
/* : String */;
2129 char* var10
/* : NativeString */;
2130 val
* var11
/* : FlatString */;
2131 val
* var12
/* : String */;
2132 short int var13
/* : Bool */;
2133 short int var14
/* : Bool */;
2134 val
* var15
/* : OptionArray */;
2135 val
* var17
/* : OptionArray */;
2136 val
* var18
/* : nullable Object */;
2137 val
* var20
/* : nullable Object */;
2138 short int var21
/* : Bool */;
2139 short int var22
/* : Bool */;
2140 short int var_
/* var : Bool */;
2141 val
* var23
/* : OptionCount */;
2142 val
* var25
/* : OptionCount */;
2143 val
* var26
/* : nullable Object */;
2144 val
* var28
/* : nullable Object */;
2145 short int var29
/* : Bool */;
2146 short int var31
/* : Bool */;
2149 const char* var_class_name
;
2150 long var32
/* : Int */;
2151 short int var33
/* : Bool */;
2152 short int var34
/* : Bool */;
2153 val
* var35
/* : Message */;
2154 val
* var_m
/* var m: Message */;
2155 val
* var36
/* : Array[Message] */;
2156 val
* var38
/* : Array[Message] */;
2157 short int var39
/* : Bool */;
2158 short int var40
/* : Bool */;
2159 short int var41
/* : Bool */;
2160 val
* var_other
/* var other: nullable Object */;
2161 short int var43
/* : Bool */;
2162 short int var44
/* : Bool */;
2163 val
* var45
/* : Array[Message] */;
2164 val
* var47
/* : Array[Message] */;
2165 long var48
/* : Int */;
2166 long var50
/* : Int */;
2167 long var51
/* : Int */;
2168 short int var53
/* : Bool */;
2171 const char* var_class_name56
;
2172 long var57
/* : Int */;
2173 val
* var59
/* : OptionBool */;
2174 val
* var61
/* : OptionBool */;
2175 val
* var62
/* : nullable Object */;
2176 val
* var64
/* : nullable Object */;
2177 short int var65
/* : Bool */;
2178 short int var66
/* : Bool */;
2183 { /* Inline toolcontext#ToolContext#opt_warning (self) on <self:ToolContext> */
2184 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warning
].val
; /* _opt_warning on <self:ToolContext> */
2185 if (unlikely(var3
== NULL
)) {
2186 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warning");
2187 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 338);
2195 { /* Inline opts#Option#value (var1) on <var1:OptionArray> */
2196 var6
= var1
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var1:OptionArray> */
2201 if (unlikely(varonce
==NULL
)) {
2202 var7
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
2203 if (likely(varonce8
!=NULL
)) {
2207 var11
= standard___standard__NativeString___to_s_with_length(var10
, 3l);
2211 ((struct instance_standard__NativeArray
*)var7
)->values
[0]=var9
;
2216 ((struct instance_standard__NativeArray
*)var7
)->values
[1]=var_tag
;
2218 var12
= ((val
*(*)(val
* self
))(var7
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var7
); /* native_to_s on <var7:NativeArray[String]>*/
2222 var13
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var4
, var12
);
2230 { /* Inline toolcontext#ToolContext#opt_warning (self) on <self:ToolContext> */
2231 var17
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warning
].val
; /* _opt_warning on <self:ToolContext> */
2232 if (unlikely(var17
== NULL
)) {
2233 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warning");
2234 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 338);
2238 RET_LABEL16
:(void)0;
2242 { /* Inline opts#Option#value (var15) on <var15:OptionArray> */
2243 var20
= var15
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var15:OptionArray> */
2245 RET_LABEL19
:(void)0;
2249 var21
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var18
, var_tag
);
2255 { /* Inline toolcontext#ToolContext#opt_warn (self) on <self:ToolContext> */
2256 var25
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warn
].val
; /* _opt_warn on <self:ToolContext> */
2257 if (unlikely(var25
== NULL
)) {
2258 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warn");
2259 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 335);
2263 RET_LABEL24
:(void)0;
2267 { /* Inline opts#Option#value (var23) on <var23:OptionCount> */
2268 var28
= var23
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var23:OptionCount> */
2270 RET_LABEL27
:(void)0;
2274 { /* Inline kernel#Int#<= (var26,1l) on <var26:nullable Object(Int)> */
2275 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
2276 /* <1l:Int> isa OTHER */
2277 var31
= 1; /* easy <1l:Int> isa OTHER*/
2278 if (unlikely(!var31
)) {
2279 var_class_name
= type_standard__Int
.name
;
2280 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2281 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 533);
2284 var32
= (long)(var26
)>>2;
2285 var33
= var32
<= 1l;
2288 RET_LABEL30
:(void)0;
2301 var34
= nit___nit__ToolContext___is_warning_blacklisted(self
, var_l
, var_tag
);
2308 var35
= NEW_nit__Message(&type_nit__Message
);
2310 ((void(*)(val
* self
, val
* p0
))(var35
->class->vft
[COLOR_nit__toolcontext__Message__location_61d
]))(var35
, var_l
); /* location= on <var35:Message>*/
2313 ((void(*)(val
* self
, val
* p0
))(var35
->class->vft
[COLOR_nit__toolcontext__Message__tag_61d
]))(var35
, var_tag
); /* tag= on <var35:Message>*/
2316 ((void(*)(val
* self
, val
* p0
))(var35
->class->vft
[COLOR_nit__toolcontext__Message__text_61d
]))(var35
, var_text
); /* text= on <var35:Message>*/
2319 ((void(*)(val
* self
))(var35
->class->vft
[COLOR_standard__kernel__Object__init
]))(var35
); /* init on <var35:Message>*/
2323 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
2324 var38
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
2325 if (unlikely(var38
== NULL
)) {
2326 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
2327 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
2331 RET_LABEL37
:(void)0;
2335 var39
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var36
, var_m
);
2342 if (var_l
== NULL
) {
2343 var40
= 0; /* is null */
2345 var40
= 1; /* arg is null and recv is not */
2348 { /* Inline kernel#Object#!= (var_l,((val*)NULL)) on <var_l:nullable Location> */
2349 var_other
= ((val
*)NULL
);
2351 var43
= ((short int(*)(val
* self
, val
* p0
))(var_l
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_l
, var_other
); /* == on <var_l:nullable Location(Location)>*/
2356 RET_LABEL42
:(void)0;
2362 nit__toolcontext___Location___add_message(var_l
, var_m
); /* Direct call toolcontext#Location#add_message on <var_l:nullable Location(Location)>*/
2367 { /* Inline toolcontext#ToolContext#messages (self) on <self:ToolContext> */
2368 var47
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___messages
].val
; /* _messages on <self:ToolContext> */
2369 if (unlikely(var47
== NULL
)) {
2370 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _messages");
2371 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 143);
2375 RET_LABEL46
:(void)0;
2379 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var45
, var_m
); /* Direct call array#Array#add on <var45:Array[Message]>*/
2382 { /* Inline toolcontext#ToolContext#warning_count (self) on <self:ToolContext> */
2383 var50
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
; /* _warning_count on <self:ToolContext> */
2385 RET_LABEL49
:(void)0;
2389 { /* Inline kernel#Int#+ (var48,1l) on <var48:Int> */
2390 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
2391 /* <1l:Int> isa OTHER */
2392 var53
= 1; /* easy <1l:Int> isa OTHER*/
2393 if (unlikely(!var53
)) {
2394 var_class_name56
= type_standard__Int
.name
;
2395 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name56
);
2396 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
2402 RET_LABEL52
:(void)0;
2406 { /* Inline toolcontext#ToolContext#warning_count= (self,var51) on <self:ToolContext> */
2407 self
->attrs
[COLOR_nit__toolcontext__ToolContext___warning_count
].l
= var51
; /* _warning_count on <self:ToolContext> */
2408 RET_LABEL58
:(void)0;
2412 { /* Inline toolcontext#ToolContext#opt_stop_on_first_error (self) on <self:ToolContext> */
2413 var61
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stop_on_first_error
].val
; /* _opt_stop_on_first_error on <self:ToolContext> */
2414 if (unlikely(var61
== NULL
)) {
2415 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stop_on_first_error");
2416 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 365);
2420 RET_LABEL60
:(void)0;
2424 { /* Inline opts#Option#value (var59) on <var59:OptionBool> */
2425 var64
= var59
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var59:OptionBool> */
2427 RET_LABEL63
:(void)0;
2430 var65
= (short int)((long)(var62
)>>2);
2433 var66
= nit___nit__ToolContext___check_errors(self
);
2442 /* method toolcontext#ToolContext#info for (self: ToolContext, String, Int) */
2443 void nit___nit__ToolContext___info(val
* self
, val
* p0
, long p1
) {
2444 val
* var_s
/* var s: String */;
2445 long var_level
/* var level: Int */;
2446 long var
/* : Int */;
2447 long var2
/* : Int */;
2448 short int var3
/* : Bool */;
2449 short int var5
/* : Bool */;
2452 const char* var_class_name
;
2453 short int var6
/* : Bool */;
2454 val
* var7
/* : Sys */;
2455 val
* var8
/* : NativeArray[String] */;
2456 static val
* varonce
;
2457 val
* var9
/* : String */;
2458 val
* var10
/* : nullable Writer */;
2459 val
* var12
/* : nullable Writer */;
2460 short int var13
/* : Bool */;
2461 short int var14
/* : Bool */;
2462 val
* var_other
/* var other: nullable Object */;
2463 short int var16
/* : Bool */;
2464 short int var17
/* : Bool */;
2465 val
* var18
/* : nullable Writer */;
2466 val
* var20
/* : nullable Writer */;
2467 val
* var21
/* : nullable Writer */;
2468 val
* var23
/* : nullable Writer */;
2469 static val
* varonce24
;
2470 val
* var25
/* : String */;
2471 char* var26
/* : NativeString */;
2472 val
* var27
/* : FlatString */;
2476 { /* Inline toolcontext#ToolContext#verbose_level (self) on <self:ToolContext> */
2477 var2
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___verbose_level
].l
; /* _verbose_level on <self:ToolContext> */
2483 { /* Inline kernel#Int#<= (var_level,var) on <var_level:Int> */
2484 /* Covariant cast for argument 0 (i) <var:Int> isa OTHER */
2485 /* <var:Int> isa OTHER */
2486 var5
= 1; /* easy <var:Int> isa OTHER*/
2487 if (unlikely(!var5
)) {
2488 var_class_name
= type_standard__Int
.name
;
2489 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2490 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 533);
2493 var6
= var_level
<= var
;
2501 if (unlikely(varonce
==NULL
)) {
2502 var8
= NEW_standard__NativeArray(1l, &type_standard__NativeArray__standard__String
);
2507 ((struct instance_standard__NativeArray
*)var8
)->values
[0]=var_s
;
2509 var9
= ((val
*(*)(val
* self
))(var8
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var8
); /* native_to_s on <var8:NativeArray[String]>*/
2513 standard__file___Sys___print(var7
, var9
); /* Direct call file#Sys#print on <var7:Sys>*/
2518 { /* Inline toolcontext#ToolContext#log_info (self) on <self:ToolContext> */
2519 var12
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_info
].val
; /* _log_info on <self:ToolContext> */
2521 RET_LABEL11
:(void)0;
2524 if (var10
== NULL
) {
2525 var13
= 0; /* is null */
2527 var13
= 1; /* arg is null and recv is not */
2530 { /* Inline kernel#Object#!= (var10,((val*)NULL)) on <var10:nullable Writer> */
2531 var_other
= ((val
*)NULL
);
2533 var16
= ((short int(*)(val
* self
, val
* p0
))(var10
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var10
, var_other
); /* == on <var10:nullable Writer(Writer)>*/
2538 RET_LABEL15
:(void)0;
2544 { /* Inline toolcontext#ToolContext#log_info (self) on <self:ToolContext> */
2545 var20
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_info
].val
; /* _log_info on <self:ToolContext> */
2547 RET_LABEL19
:(void)0;
2550 if (var18
== NULL
) {
2551 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2552 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 298);
2555 standard___standard__FileWriter___standard__stream__Writer__write(var18
, var_s
); /* Direct call file#FileWriter#write on <var18:nullable Writer>*/
2558 { /* Inline toolcontext#ToolContext#log_info (self) on <self:ToolContext> */
2559 var23
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_info
].val
; /* _log_info on <self:ToolContext> */
2561 RET_LABEL22
:(void)0;
2564 if (likely(varonce24
!=NULL
)) {
2568 var27
= standard___standard__NativeString___to_s_with_length(var26
, 1l);
2572 if (var21
== NULL
) {
2573 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2574 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 299);
2577 standard___standard__FileWriter___standard__stream__Writer__write(var21
, var25
); /* Direct call file#FileWriter#write on <var21:nullable Writer>*/
2583 /* method toolcontext#ToolContext#option_context for (self: ToolContext): OptionContext */
2584 val
* nit___nit__ToolContext___option_context(val
* self
) {
2585 val
* var
/* : OptionContext */;
2586 val
* var1
/* : OptionContext */;
2587 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
2588 if (unlikely(var1
== NULL
)) {
2589 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
2590 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
2597 /* method toolcontext#ToolContext#opt_warn for (self: ToolContext): OptionCount */
2598 val
* nit___nit__ToolContext___opt_warn(val
* self
) {
2599 val
* var
/* : OptionCount */;
2600 val
* var1
/* : OptionCount */;
2601 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warn
].val
; /* _opt_warn on <self:ToolContext> */
2602 if (unlikely(var1
== NULL
)) {
2603 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warn");
2604 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 335);
2611 /* method toolcontext#ToolContext#opt_warning for (self: ToolContext): OptionArray */
2612 val
* nit___nit__ToolContext___opt_warning(val
* self
) {
2613 val
* var
/* : OptionArray */;
2614 val
* var1
/* : OptionArray */;
2615 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warning
].val
; /* _opt_warning on <self:ToolContext> */
2616 if (unlikely(var1
== NULL
)) {
2617 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warning");
2618 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 338);
2625 /* method toolcontext#ToolContext#opt_quiet for (self: ToolContext): OptionBool */
2626 val
* nit___nit__ToolContext___opt_quiet(val
* self
) {
2627 val
* var
/* : OptionBool */;
2628 val
* var1
/* : OptionBool */;
2629 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_quiet
].val
; /* _opt_quiet on <self:ToolContext> */
2630 if (unlikely(var1
== NULL
)) {
2631 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_quiet");
2632 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 341);
2639 /* method toolcontext#ToolContext#opt_log for (self: ToolContext): OptionBool */
2640 val
* nit___nit__ToolContext___opt_log(val
* self
) {
2641 val
* var
/* : OptionBool */;
2642 val
* var1
/* : OptionBool */;
2643 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_log
].val
; /* _opt_log on <self:ToolContext> */
2644 if (unlikely(var1
== NULL
)) {
2645 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_log");
2646 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 344);
2653 /* method toolcontext#ToolContext#opt_log_dir for (self: ToolContext): OptionString */
2654 val
* nit___nit__ToolContext___opt_log_dir(val
* self
) {
2655 val
* var
/* : OptionString */;
2656 val
* var1
/* : OptionString */;
2657 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_log_dir
].val
; /* _opt_log_dir on <self:ToolContext> */
2658 if (unlikely(var1
== NULL
)) {
2659 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_log_dir");
2660 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 347);
2667 /* method toolcontext#ToolContext#opt_nit_dir for (self: ToolContext): OptionString */
2668 val
* nit___nit__ToolContext___opt_nit_dir(val
* self
) {
2669 val
* var
/* : OptionString */;
2670 val
* var1
/* : OptionString */;
2671 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_nit_dir
].val
; /* _opt_nit_dir on <self:ToolContext> */
2672 if (unlikely(var1
== NULL
)) {
2673 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_nit_dir");
2674 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 350);
2681 /* method toolcontext#ToolContext#opt_help for (self: ToolContext): OptionBool */
2682 val
* nit___nit__ToolContext___opt_help(val
* self
) {
2683 val
* var
/* : OptionBool */;
2684 val
* var1
/* : OptionBool */;
2685 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_help
].val
; /* _opt_help on <self:ToolContext> */
2686 if (unlikely(var1
== NULL
)) {
2687 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_help");
2688 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 353);
2695 /* method toolcontext#ToolContext#opt_version for (self: ToolContext): OptionBool */
2696 val
* nit___nit__ToolContext___opt_version(val
* self
) {
2697 val
* var
/* : OptionBool */;
2698 val
* var1
/* : OptionBool */;
2699 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_version
].val
; /* _opt_version on <self:ToolContext> */
2700 if (unlikely(var1
== NULL
)) {
2701 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_version");
2702 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 356);
2709 /* method toolcontext#ToolContext#opt_set_dummy_tool for (self: ToolContext): OptionBool */
2710 val
* nit___nit__ToolContext___opt_set_dummy_tool(val
* self
) {
2711 val
* var
/* : OptionBool */;
2712 val
* var1
/* : OptionBool */;
2713 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_set_dummy_tool
].val
; /* _opt_set_dummy_tool on <self:ToolContext> */
2714 if (unlikely(var1
== NULL
)) {
2715 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_set_dummy_tool");
2716 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 359);
2723 /* method toolcontext#ToolContext#opt_verbose for (self: ToolContext): OptionCount */
2724 val
* nit___nit__ToolContext___opt_verbose(val
* self
) {
2725 val
* var
/* : OptionCount */;
2726 val
* var1
/* : OptionCount */;
2727 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_verbose
].val
; /* _opt_verbose on <self:ToolContext> */
2728 if (unlikely(var1
== NULL
)) {
2729 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_verbose");
2730 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 362);
2737 /* method toolcontext#ToolContext#opt_stop_on_first_error for (self: ToolContext): OptionBool */
2738 val
* nit___nit__ToolContext___opt_stop_on_first_error(val
* self
) {
2739 val
* var
/* : OptionBool */;
2740 val
* var1
/* : OptionBool */;
2741 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stop_on_first_error
].val
; /* _opt_stop_on_first_error on <self:ToolContext> */
2742 if (unlikely(var1
== NULL
)) {
2743 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stop_on_first_error");
2744 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 365);
2751 /* method toolcontext#ToolContext#opt_keep_going for (self: ToolContext): OptionBool */
2752 val
* nit___nit__ToolContext___opt_keep_going(val
* self
) {
2753 val
* var
/* : OptionBool */;
2754 val
* var1
/* : OptionBool */;
2755 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_keep_going
].val
; /* _opt_keep_going on <self:ToolContext> */
2756 if (unlikely(var1
== NULL
)) {
2757 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_keep_going");
2758 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 368);
2765 /* method toolcontext#ToolContext#opt_no_color for (self: ToolContext): OptionBool */
2766 val
* nit___nit__ToolContext___opt_no_color(val
* self
) {
2767 val
* var
/* : OptionBool */;
2768 val
* var1
/* : OptionBool */;
2769 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_no_color
].val
; /* _opt_no_color on <self:ToolContext> */
2770 if (unlikely(var1
== NULL
)) {
2771 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_color");
2772 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 371);
2779 /* method toolcontext#ToolContext#opt_bash_completion for (self: ToolContext): OptionBool */
2780 val
* nit___nit__ToolContext___opt_bash_completion(val
* self
) {
2781 val
* var
/* : OptionBool */;
2782 val
* var1
/* : OptionBool */;
2783 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_bash_completion
].val
; /* _opt_bash_completion on <self:ToolContext> */
2784 if (unlikely(var1
== NULL
)) {
2785 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_bash_completion");
2786 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 374);
2793 /* method toolcontext#ToolContext#opt_stub_man for (self: ToolContext): OptionBool */
2794 val
* nit___nit__ToolContext___opt_stub_man(val
* self
) {
2795 val
* var
/* : OptionBool */;
2796 val
* var1
/* : OptionBool */;
2797 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stub_man
].val
; /* _opt_stub_man on <self:ToolContext> */
2798 if (unlikely(var1
== NULL
)) {
2799 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stub_man");
2800 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 377);
2807 /* method toolcontext#ToolContext#verbose_level for (self: ToolContext): Int */
2808 long nit___nit__ToolContext___verbose_level(val
* self
) {
2809 long var
/* : Int */;
2810 long var1
/* : Int */;
2811 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___verbose_level
].l
; /* _verbose_level on <self:ToolContext> */
2816 /* method toolcontext#ToolContext#verbose_level= for (self: ToolContext, Int) */
2817 void nit___nit__ToolContext___verbose_level_61d(val
* self
, long p0
) {
2818 self
->attrs
[COLOR_nit__toolcontext__ToolContext___verbose_level
].l
= p0
; /* _verbose_level on <self:ToolContext> */
2821 /* method toolcontext#ToolContext#init for (self: ToolContext) */
2822 void nit___nit__ToolContext___standard__kernel__Object__init(val
* self
) {
2823 val
* var
/* : OptionContext */;
2824 val
* var2
/* : OptionContext */;
2825 val
* var3
/* : OptionCount */;
2826 val
* var5
/* : OptionCount */;
2827 val
* var6
/* : OptionArray */;
2828 val
* var8
/* : OptionArray */;
2829 val
* var9
/* : OptionBool */;
2830 val
* var11
/* : OptionBool */;
2831 val
* var12
/* : OptionBool */;
2832 val
* var14
/* : OptionBool */;
2833 val
* var15
/* : OptionBool */;
2834 val
* var17
/* : OptionBool */;
2835 val
* var18
/* : OptionBool */;
2836 val
* var20
/* : OptionBool */;
2837 val
* var21
/* : OptionBool */;
2838 val
* var23
/* : OptionBool */;
2839 val
* var24
/* : OptionString */;
2840 val
* var26
/* : OptionString */;
2841 val
* var27
/* : OptionString */;
2842 val
* var29
/* : OptionString */;
2843 val
* var30
/* : OptionBool */;
2844 val
* var32
/* : OptionBool */;
2845 val
* var33
/* : OptionBool */;
2846 val
* var35
/* : OptionBool */;
2847 val
* var36
/* : OptionBool */;
2848 val
* var38
/* : OptionBool */;
2849 val
* var39
/* : OptionCount */;
2850 val
* var41
/* : OptionCount */;
2851 val
* var42
/* : OptionBool */;
2852 val
* var44
/* : OptionBool */;
2853 val
* var45
/* : OptionBool */;
2854 val
* var47
/* : OptionBool */;
2855 val
* var48
/* : Array[Option] */;
2856 val
* var49
/* : NativeArray[Option] */;
2857 val
* var50
/* : OptionBool */;
2858 val
* var52
/* : OptionBool */;
2859 val
* var54
/* : OptionBool */;
2860 val
* var56
/* : OptionBool */;
2861 val
* var58
/* : OptionBool */;
2862 val
* var60
/* : OptionBool */;
2864 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
2865 var2
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
2866 if (unlikely(var2
== NULL
)) {
2867 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
2868 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
2876 { /* Inline toolcontext#ToolContext#opt_warn (self) on <self:ToolContext> */
2877 var5
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warn
].val
; /* _opt_warn on <self:ToolContext> */
2878 if (unlikely(var5
== NULL
)) {
2879 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warn");
2880 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 335);
2888 { /* Inline toolcontext#ToolContext#opt_warning (self) on <self:ToolContext> */
2889 var8
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warning
].val
; /* _opt_warning on <self:ToolContext> */
2890 if (unlikely(var8
== NULL
)) {
2891 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warning");
2892 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 338);
2900 { /* Inline toolcontext#ToolContext#opt_quiet (self) on <self:ToolContext> */
2901 var11
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_quiet
].val
; /* _opt_quiet on <self:ToolContext> */
2902 if (unlikely(var11
== NULL
)) {
2903 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_quiet");
2904 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 341);
2908 RET_LABEL10
:(void)0;
2912 { /* Inline toolcontext#ToolContext#opt_stop_on_first_error (self) on <self:ToolContext> */
2913 var14
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stop_on_first_error
].val
; /* _opt_stop_on_first_error on <self:ToolContext> */
2914 if (unlikely(var14
== NULL
)) {
2915 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stop_on_first_error");
2916 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 365);
2920 RET_LABEL13
:(void)0;
2924 { /* Inline toolcontext#ToolContext#opt_keep_going (self) on <self:ToolContext> */
2925 var17
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_keep_going
].val
; /* _opt_keep_going on <self:ToolContext> */
2926 if (unlikely(var17
== NULL
)) {
2927 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_keep_going");
2928 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 368);
2932 RET_LABEL16
:(void)0;
2936 { /* Inline toolcontext#ToolContext#opt_no_color (self) on <self:ToolContext> */
2937 var20
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_no_color
].val
; /* _opt_no_color on <self:ToolContext> */
2938 if (unlikely(var20
== NULL
)) {
2939 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_color");
2940 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 371);
2944 RET_LABEL19
:(void)0;
2948 { /* Inline toolcontext#ToolContext#opt_log (self) on <self:ToolContext> */
2949 var23
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_log
].val
; /* _opt_log on <self:ToolContext> */
2950 if (unlikely(var23
== NULL
)) {
2951 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_log");
2952 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 344);
2956 RET_LABEL22
:(void)0;
2960 { /* Inline toolcontext#ToolContext#opt_log_dir (self) on <self:ToolContext> */
2961 var26
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_log_dir
].val
; /* _opt_log_dir on <self:ToolContext> */
2962 if (unlikely(var26
== NULL
)) {
2963 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_log_dir");
2964 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 347);
2968 RET_LABEL25
:(void)0;
2972 { /* Inline toolcontext#ToolContext#opt_nit_dir (self) on <self:ToolContext> */
2973 var29
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_nit_dir
].val
; /* _opt_nit_dir on <self:ToolContext> */
2974 if (unlikely(var29
== NULL
)) {
2975 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_nit_dir");
2976 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 350);
2980 RET_LABEL28
:(void)0;
2984 { /* Inline toolcontext#ToolContext#opt_help (self) on <self:ToolContext> */
2985 var32
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_help
].val
; /* _opt_help on <self:ToolContext> */
2986 if (unlikely(var32
== NULL
)) {
2987 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_help");
2988 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 353);
2992 RET_LABEL31
:(void)0;
2996 { /* Inline toolcontext#ToolContext#opt_version (self) on <self:ToolContext> */
2997 var35
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_version
].val
; /* _opt_version on <self:ToolContext> */
2998 if (unlikely(var35
== NULL
)) {
2999 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_version");
3000 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 356);
3004 RET_LABEL34
:(void)0;
3008 { /* Inline toolcontext#ToolContext#opt_set_dummy_tool (self) on <self:ToolContext> */
3009 var38
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_set_dummy_tool
].val
; /* _opt_set_dummy_tool on <self:ToolContext> */
3010 if (unlikely(var38
== NULL
)) {
3011 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_set_dummy_tool");
3012 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 359);
3016 RET_LABEL37
:(void)0;
3020 { /* Inline toolcontext#ToolContext#opt_verbose (self) on <self:ToolContext> */
3021 var41
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_verbose
].val
; /* _opt_verbose on <self:ToolContext> */
3022 if (unlikely(var41
== NULL
)) {
3023 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_verbose");
3024 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 362);
3028 RET_LABEL40
:(void)0;
3032 { /* Inline toolcontext#ToolContext#opt_bash_completion (self) on <self:ToolContext> */
3033 var44
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_bash_completion
].val
; /* _opt_bash_completion on <self:ToolContext> */
3034 if (unlikely(var44
== NULL
)) {
3035 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_bash_completion");
3036 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 374);
3040 RET_LABEL43
:(void)0;
3044 { /* Inline toolcontext#ToolContext#opt_stub_man (self) on <self:ToolContext> */
3045 var47
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stub_man
].val
; /* _opt_stub_man on <self:ToolContext> */
3046 if (unlikely(var47
== NULL
)) {
3047 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stub_man");
3048 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 377);
3052 RET_LABEL46
:(void)0;
3055 var48
= NEW_standard__Array(&type_standard__Array__opts__Option
);
3056 { /* var48 = array_instance Array[Option] */
3057 var49
= NEW_standard__NativeArray(15l, &type_standard__NativeArray__opts__Option
);
3058 ((struct instance_standard__NativeArray
*)var49
)->values
[0] = (val
*) var3
;
3059 ((struct instance_standard__NativeArray
*)var49
)->values
[1] = (val
*) var6
;
3060 ((struct instance_standard__NativeArray
*)var49
)->values
[2] = (val
*) var9
;
3061 ((struct instance_standard__NativeArray
*)var49
)->values
[3] = (val
*) var12
;
3062 ((struct instance_standard__NativeArray
*)var49
)->values
[4] = (val
*) var15
;
3063 ((struct instance_standard__NativeArray
*)var49
)->values
[5] = (val
*) var18
;
3064 ((struct instance_standard__NativeArray
*)var49
)->values
[6] = (val
*) var21
;
3065 ((struct instance_standard__NativeArray
*)var49
)->values
[7] = (val
*) var24
;
3066 ((struct instance_standard__NativeArray
*)var49
)->values
[8] = (val
*) var27
;
3067 ((struct instance_standard__NativeArray
*)var49
)->values
[9] = (val
*) var30
;
3068 ((struct instance_standard__NativeArray
*)var49
)->values
[10] = (val
*) var33
;
3069 ((struct instance_standard__NativeArray
*)var49
)->values
[11] = (val
*) var36
;
3070 ((struct instance_standard__NativeArray
*)var49
)->values
[12] = (val
*) var39
;
3071 ((struct instance_standard__NativeArray
*)var49
)->values
[13] = (val
*) var42
;
3072 ((struct instance_standard__NativeArray
*)var49
)->values
[14] = (val
*) var45
;
3074 ((void(*)(val
* self
, val
* p0
, long p1
))(var48
->class->vft
[COLOR_standard__array__Array__with_native
]))(var48
, var49
, 15l); /* with_native on <var48:Array[Option]>*/
3078 opts___opts__OptionContext___add_option(var
, var48
); /* Direct call opts#OptionContext#add_option on <var:OptionContext>*/
3081 { /* Inline toolcontext#ToolContext#opt_stub_man (self) on <self:ToolContext> */
3082 var52
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stub_man
].val
; /* _opt_stub_man on <self:ToolContext> */
3083 if (unlikely(var52
== NULL
)) {
3084 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stub_man");
3085 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 377);
3089 RET_LABEL51
:(void)0;
3093 { /* Inline opts#Option#hidden= (var50,1) on <var50:OptionBool> */
3094 var50
->attrs
[COLOR_opts__Option___hidden
].s
= 1; /* _hidden on <var50:OptionBool> */
3095 RET_LABEL53
:(void)0;
3099 { /* Inline toolcontext#ToolContext#opt_bash_completion (self) on <self:ToolContext> */
3100 var56
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_bash_completion
].val
; /* _opt_bash_completion on <self:ToolContext> */
3101 if (unlikely(var56
== NULL
)) {
3102 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_bash_completion");
3103 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 374);
3107 RET_LABEL55
:(void)0;
3111 { /* Inline opts#Option#hidden= (var54,1) on <var54:OptionBool> */
3112 var54
->attrs
[COLOR_opts__Option___hidden
].s
= 1; /* _hidden on <var54:OptionBool> */
3113 RET_LABEL57
:(void)0;
3117 { /* Inline toolcontext#ToolContext#opt_set_dummy_tool (self) on <self:ToolContext> */
3118 var60
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_set_dummy_tool
].val
; /* _opt_set_dummy_tool on <self:ToolContext> */
3119 if (unlikely(var60
== NULL
)) {
3120 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_set_dummy_tool");
3121 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 359);
3125 RET_LABEL59
:(void)0;
3129 { /* Inline opts#Option#hidden= (var58,1) on <var58:OptionBool> */
3130 var58
->attrs
[COLOR_opts__Option___hidden
].s
= 1; /* _hidden on <var58:OptionBool> */
3131 RET_LABEL61
:(void)0;
3136 /* method toolcontext#ToolContext#tooldescription for (self: ToolContext): String */
3137 val
* nit___nit__ToolContext___tooldescription(val
* self
) {
3138 val
* var
/* : String */;
3139 val
* var1
/* : String */;
3140 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___tooldescription
].val
; /* _tooldescription on <self:ToolContext> */
3141 if (unlikely(var1
== NULL
)) {
3142 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _tooldescription");
3143 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 393);
3150 /* method toolcontext#ToolContext#tooldescription= for (self: ToolContext, String) */
3151 void nit___nit__ToolContext___tooldescription_61d(val
* self
, val
* p0
) {
3152 self
->attrs
[COLOR_nit__toolcontext__ToolContext___tooldescription
].val
= p0
; /* _tooldescription on <self:ToolContext> */
3155 /* method toolcontext#ToolContext#accept_no_arguments for (self: ToolContext): Bool */
3156 short int nit___nit__ToolContext___accept_no_arguments(val
* self
) {
3157 short int var
/* : Bool */;
3158 short int var1
/* : Bool */;
3159 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___accept_no_arguments
].s
; /* _accept_no_arguments on <self:ToolContext> */
3164 /* method toolcontext#ToolContext#usage for (self: ToolContext) */
3165 void nit___nit__ToolContext___usage(val
* self
) {
3166 val
* var
/* : Sys */;
3167 val
* var1
/* : String */;
3168 val
* var3
/* : String */;
3169 val
* var4
/* : OptionContext */;
3170 val
* var6
/* : OptionContext */;
3173 { /* Inline toolcontext#ToolContext#tooldescription (self) on <self:ToolContext> */
3174 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___tooldescription
].val
; /* _tooldescription on <self:ToolContext> */
3175 if (unlikely(var3
== NULL
)) {
3176 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _tooldescription");
3177 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 393);
3185 standard__file___Sys___print(var
, var1
); /* Direct call file#Sys#print on <var:Sys>*/
3188 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
3189 var6
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
3190 if (unlikely(var6
== NULL
)) {
3191 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
3192 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
3200 opts___opts__OptionContext___usage(var4
); /* Direct call opts#OptionContext#usage on <var4:OptionContext>*/
3204 /* method toolcontext#ToolContext#process_options for (self: ToolContext, Sequence[String]) */
3205 void nit___nit__ToolContext___process_options(val
* self
, val
* p0
) {
3206 val
* var_args
/* var args: Sequence[String] */;
3207 val
* var
/* : OptionCount */;
3208 val
* var2
/* : OptionCount */;
3209 short int var4
/* : Bool */;
3212 const struct type
* type_struct
;
3213 const char* var_class_name
;
3214 val
* var5
/* : nullable Object */;
3215 val
* var6
/* : OptionContext */;
3216 val
* var8
/* : OptionContext */;
3217 val
* var9
/* : OptionBool */;
3218 val
* var11
/* : OptionBool */;
3219 val
* var12
/* : nullable Object */;
3220 val
* var14
/* : nullable Object */;
3221 short int var15
/* : Bool */;
3222 val
* var16
/* : Sys */;
3223 val
* var18
/* : OptionBool */;
3224 val
* var20
/* : OptionBool */;
3225 val
* var21
/* : nullable Object */;
3226 val
* var23
/* : nullable Object */;
3227 short int var24
/* : Bool */;
3228 val
* var25
/* : Sys */;
3229 val
* var26
/* : String */;
3230 val
* var27
/* : Sys */;
3231 val
* var29
/* : OptionBool */;
3232 val
* var31
/* : OptionBool */;
3233 val
* var32
/* : nullable Object */;
3234 val
* var34
/* : nullable Object */;
3235 short int var35
/* : Bool */;
3236 val
* var36
/* : BashCompletion */;
3237 val
* var_bash_completion
/* var bash_completion: BashCompletion */;
3238 val
* var37
/* : Sys */;
3239 val
* var39
/* : Sys */;
3240 val
* var40
/* : Writer */;
3241 val
* var41
/* : Sys */;
3242 val
* var43
/* : OptionBool */;
3243 val
* var45
/* : OptionBool */;
3244 val
* var46
/* : nullable Object */;
3245 val
* var48
/* : nullable Object */;
3246 short int var49
/* : Bool */;
3247 val
* var50
/* : Sys */;
3248 val
* var51
/* : NativeArray[String] */;
3249 static val
* varonce
;
3250 static val
* varonce52
;
3251 val
* var53
/* : String */;
3252 char* var54
/* : NativeString */;
3253 val
* var55
/* : FlatString */;
3254 static val
* varonce56
;
3255 val
* var57
/* : String */;
3256 char* var58
/* : NativeString */;
3257 val
* var59
/* : FlatString */;
3258 static val
* varonce60
;
3259 val
* var61
/* : String */;
3260 char* var62
/* : NativeString */;
3261 val
* var63
/* : FlatString */;
3262 static val
* varonce64
;
3263 val
* var65
/* : String */;
3264 char* var66
/* : NativeString */;
3265 val
* var67
/* : FlatString */;
3266 val
* var68
/* : String */;
3267 val
* var69
/* : String */;
3268 val
* var70
/* : String */;
3269 val
* var72
/* : String */;
3270 static val
* varonce73
;
3271 val
* var74
/* : String */;
3272 char* var75
/* : NativeString */;
3273 val
* var76
/* : FlatString */;
3274 val
* var77
/* : Array[String] */;
3275 val
* var78
/* : nullable Object */;
3276 val
* var79
/* : String */;
3277 val
* var80
/* : String */;
3278 val
* var81
/* : OptionContext */;
3279 val
* var83
/* : OptionContext */;
3280 val
* var84
/* : Array[Option] */;
3281 val
* var86
/* : Array[Option] */;
3282 val
* var_
/* var : Array[Option] */;
3283 val
* var87
/* : ArrayIterator[nullable Object] */;
3284 val
* var_88
/* var : ArrayIterator[Option] */;
3285 short int var89
/* : Bool */;
3286 val
* var90
/* : nullable Object */;
3287 val
* var_o
/* var o: Option */;
3288 short int var_first
/* var first: Bool */;
3289 val
* var91
/* : Array[String] */;
3290 val
* var93
/* : Array[String] */;
3291 val
* var_94
/* var : Array[String] */;
3292 val
* var95
/* : ArrayIterator[nullable Object] */;
3293 val
* var_96
/* var : ArrayIterator[String] */;
3294 short int var97
/* : Bool */;
3295 val
* var98
/* : nullable Object */;
3296 val
* var_n
/* var n: String */;
3297 val
* var99
/* : Sys */;
3298 static val
* varonce100
;
3299 val
* var101
/* : String */;
3300 char* var102
/* : NativeString */;
3301 val
* var103
/* : FlatString */;
3302 val
* var104
/* : Array[Object] */;
3303 val
* var105
/* : NativeArray[Object] */;
3304 val
* var106
/* : Sys */;
3305 val
* var108
/* : NativeArray[String] */;
3306 static val
* varonce107
;
3307 static val
* varonce109
;
3308 val
* var110
/* : String */;
3309 char* var111
/* : NativeString */;
3310 val
* var112
/* : FlatString */;
3311 static val
* varonce113
;
3312 val
* var114
/* : String */;
3313 char* var115
/* : NativeString */;
3314 val
* var116
/* : FlatString */;
3315 val
* var117
/* : String */;
3316 val
* var118
/* : Array[Object] */;
3317 val
* var119
/* : NativeArray[Object] */;
3318 val
* var120
/* : Sys */;
3319 static val
* varonce121
;
3320 val
* var122
/* : String */;
3321 char* var123
/* : NativeString */;
3322 val
* var124
/* : FlatString */;
3323 val
* var125
/* : Sys */;
3324 val
* var127
/* : NativeArray[String] */;
3325 static val
* varonce126
;
3326 static val
* varonce128
;
3327 val
* var129
/* : String */;
3328 char* var130
/* : NativeString */;
3329 val
* var131
/* : FlatString */;
3330 val
* var132
/* : String */;
3331 val
* var134
/* : String */;
3332 val
* var135
/* : String */;
3333 val
* var136
/* : Sys */;
3334 static val
* varonce137
;
3335 val
* var138
/* : String */;
3336 char* var139
/* : NativeString */;
3337 val
* var140
/* : FlatString */;
3338 val
* var142
/* : Sys */;
3339 static val
* varonce143
;
3340 val
* var144
/* : String */;
3341 char* var145
/* : NativeString */;
3342 val
* var146
/* : FlatString */;
3343 val
* var147
/* : Sys */;
3344 val
* var149
/* : OptionContext */;
3345 val
* var151
/* : OptionContext */;
3346 val
* var152
/* : Array[String] */;
3347 val
* var_errors
/* var errors: Array[String] */;
3348 short int var153
/* : Bool */;
3349 short int var154
/* : Bool */;
3350 val
* var_155
/* var : Array[String] */;
3351 val
* var156
/* : ArrayIterator[nullable Object] */;
3352 val
* var_157
/* var : ArrayIterator[String] */;
3353 short int var158
/* : Bool */;
3354 val
* var159
/* : nullable Object */;
3355 val
* var_e
/* var e: String */;
3356 val
* var160
/* : Sys */;
3357 val
* var162
/* : NativeArray[String] */;
3358 static val
* varonce161
;
3359 static val
* varonce163
;
3360 val
* var164
/* : String */;
3361 char* var165
/* : NativeString */;
3362 val
* var166
/* : FlatString */;
3363 val
* var167
/* : String */;
3364 val
* var169
/* : Sys */;
3365 val
* var170
/* : String */;
3366 val
* var172
/* : String */;
3367 val
* var173
/* : Sys */;
3368 static val
* varonce174
;
3369 val
* var175
/* : String */;
3370 char* var176
/* : NativeString */;
3371 val
* var177
/* : FlatString */;
3372 val
* var178
/* : Sys */;
3373 val
* var180
/* : String */;
3374 short int var182
/* : Bool */;
3375 val
* var183
/* : OptionContext */;
3376 val
* var185
/* : OptionContext */;
3377 val
* var186
/* : Array[String] */;
3378 val
* var188
/* : Array[String] */;
3379 short int var189
/* : Bool */;
3380 short int var_190
/* var : Bool */;
3381 short int var191
/* : Bool */;
3382 short int var193
/* : Bool */;
3383 short int var194
/* : Bool */;
3384 val
* var195
/* : Sys */;
3385 val
* var196
/* : String */;
3386 val
* var198
/* : String */;
3387 val
* var199
/* : Sys */;
3388 static val
* varonce200
;
3389 val
* var201
/* : String */;
3390 char* var202
/* : NativeString */;
3391 val
* var203
/* : FlatString */;
3392 val
* var204
/* : Sys */;
3393 val
* var206
/* : OptionCount */;
3394 val
* var208
/* : OptionCount */;
3395 val
* var209
/* : nullable Object */;
3396 val
* var211
/* : nullable Object */;
3397 long var213
/* : Int */;
3398 val
* var214
/* : OptionBool */;
3399 val
* var216
/* : OptionBool */;
3400 val
* var217
/* : nullable Object */;
3401 val
* var219
/* : nullable Object */;
3402 short int var220
/* : Bool */;
3403 val
* var222
/* : OptionBool */;
3404 val
* var224
/* : OptionBool */;
3405 val
* var225
/* : nullable Object */;
3406 val
* var227
/* : nullable Object */;
3407 short int var228
/* : Bool */;
3408 val
* var229
/* : OptionCount */;
3409 val
* var231
/* : OptionCount */;
3410 short int var233
/* : Bool */;
3413 const struct type
* type_struct236
;
3414 const char* var_class_name237
;
3415 val
* var238
/* : nullable Object */;
3416 val
* var239
/* : OptionString */;
3417 val
* var241
/* : OptionString */;
3418 val
* var242
/* : nullable Object */;
3419 val
* var244
/* : nullable Object */;
3420 short int var245
/* : Bool */;
3421 short int var246
/* : Bool */;
3422 val
* var_other
/* var other: nullable Object */;
3423 short int var248
/* : Bool */;
3424 short int var249
/* : Bool */;
3425 val
* var250
/* : OptionString */;
3426 val
* var252
/* : OptionString */;
3427 val
* var253
/* : nullable Object */;
3428 val
* var255
/* : nullable Object */;
3429 val
* var257
/* : OptionBool */;
3430 val
* var259
/* : OptionBool */;
3431 val
* var260
/* : nullable Object */;
3432 val
* var262
/* : nullable Object */;
3433 short int var263
/* : Bool */;
3434 val
* var264
/* : String */;
3435 val
* var266
/* : String */;
3436 val
* var267
/* : nullable Error */;
3437 val
* var268
/* : String */;
3438 val
* var270
/* : String */;
3439 static val
* varonce271
;
3440 val
* var272
/* : String */;
3441 char* var273
/* : NativeString */;
3442 val
* var274
/* : FlatString */;
3443 val
* var275
/* : String */;
3444 val
* var276
/* : Path */;
3445 val
* var277
/* : FileWriter */;
3448 { /* Inline toolcontext#ToolContext#opt_warn (self) on <self:ToolContext> */
3449 var2
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warn
].val
; /* _opt_warn on <self:ToolContext> */
3450 if (unlikely(var2
== NULL
)) {
3451 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warn");
3452 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 335);
3460 { /* Inline opts#Option#value= (var,1l) on <var:OptionCount> */
3461 /* Covariant cast for argument 0 (value) <1l:Int> isa VALUE */
3462 /* <1l:Int> isa VALUE */
3463 type_struct
= var
->type
->resolution_table
->types
[COLOR_opts__Option__VALUE
];
3464 cltype
= type_struct
->color
;
3465 idtype
= type_struct
->id
;
3466 if(cltype
>= (&type_standard__Int
)->table_size
) {
3469 var4
= (&type_standard__Int
)->type_table
[cltype
] == idtype
;
3471 if (unlikely(!var4
)) {
3472 var_class_name
= type_standard__Int
.name
;
3473 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
3474 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 40);
3477 var5
= (val
*)(1l<<2|1);
3478 var
->attrs
[COLOR_opts__Option___value
].val
= var5
; /* _value on <var:OptionCount> */
3483 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
3484 var8
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
3485 if (unlikely(var8
== NULL
)) {
3486 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
3487 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
3495 opts___opts__OptionContext___parse(var6
, var_args
); /* Direct call opts#OptionContext#parse on <var6:OptionContext>*/
3498 { /* Inline toolcontext#ToolContext#opt_help (self) on <self:ToolContext> */
3499 var11
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_help
].val
; /* _opt_help on <self:ToolContext> */
3500 if (unlikely(var11
== NULL
)) {
3501 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_help");
3502 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 353);
3506 RET_LABEL10
:(void)0;
3510 { /* Inline opts#Option#value (var9) on <var9:OptionBool> */
3511 var14
= var9
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var9:OptionBool> */
3513 RET_LABEL13
:(void)0;
3516 var15
= (short int)((long)(var12
)>>2);
3519 nit___nit__ToolContext___usage(self
); /* Direct call toolcontext#ToolContext#usage on <self:ToolContext>*/
3523 { /* Inline kernel#Sys#exit (var16,0l) on <var16:Sys> */
3525 RET_LABEL17
:(void)0;
3531 { /* Inline toolcontext#ToolContext#opt_version (self) on <self:ToolContext> */
3532 var20
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_version
].val
; /* _opt_version on <self:ToolContext> */
3533 if (unlikely(var20
== NULL
)) {
3534 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_version");
3535 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 356);
3539 RET_LABEL19
:(void)0;
3543 { /* Inline opts#Option#value (var18) on <var18:OptionBool> */
3544 var23
= var18
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var18:OptionBool> */
3546 RET_LABEL22
:(void)0;
3549 var24
= (short int)((long)(var21
)>>2);
3553 var26
= nit___nit__ToolContext___version(self
);
3556 standard__file___Sys___print(var25
, var26
); /* Direct call file#Sys#print on <var25:Sys>*/
3560 { /* Inline kernel#Sys#exit (var27,0l) on <var27:Sys> */
3562 RET_LABEL28
:(void)0;
3568 { /* Inline toolcontext#ToolContext#opt_bash_completion (self) on <self:ToolContext> */
3569 var31
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_bash_completion
].val
; /* _opt_bash_completion on <self:ToolContext> */
3570 if (unlikely(var31
== NULL
)) {
3571 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_bash_completion");
3572 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 374);
3576 RET_LABEL30
:(void)0;
3580 { /* Inline opts#Option#value (var29) on <var29:OptionBool> */
3581 var34
= var29
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var29:OptionBool> */
3583 RET_LABEL33
:(void)0;
3586 var35
= (short int)((long)(var32
)>>2);
3588 var36
= NEW_nit__BashCompletion(&type_nit__BashCompletion
);
3590 ((void(*)(val
* self
, val
* p0
))(var36
->class->vft
[COLOR_nit__toolcontext__BashCompletion__toolcontext_61d
]))(var36
, self
); /* toolcontext= on <var36:BashCompletion>*/
3593 ((void(*)(val
* self
))(var36
->class->vft
[COLOR_standard__kernel__Object__init
]))(var36
); /* init on <var36:BashCompletion>*/
3595 var_bash_completion
= var36
;
3597 { /* Inline kernel#Object#sys (self) on <self:ToolContext> */
3601 RET_LABEL38
:(void)0;
3605 var40
= standard__file___Sys___stdout(var37
);
3608 template___template__Template___standard__stream__Writable__write_to(var_bash_completion
, var40
); /* Direct call template#Template#write_to on <var_bash_completion:BashCompletion>*/
3612 { /* Inline kernel#Sys#exit (var41,0l) on <var41:Sys> */
3614 RET_LABEL42
:(void)0;
3620 { /* Inline toolcontext#ToolContext#opt_stub_man (self) on <self:ToolContext> */
3621 var45
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_stub_man
].val
; /* _opt_stub_man on <self:ToolContext> */
3622 if (unlikely(var45
== NULL
)) {
3623 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_stub_man");
3624 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 377);
3628 RET_LABEL44
:(void)0;
3632 { /* Inline opts#Option#value (var43) on <var43:OptionBool> */
3633 var48
= var43
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var43:OptionBool> */
3635 RET_LABEL47
:(void)0;
3638 var49
= (short int)((long)(var46
)>>2);
3641 if (unlikely(varonce
==NULL
)) {
3642 var51
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
3643 if (likely(varonce52
!=NULL
)) {
3647 var55
= standard___standard__NativeString___to_s_with_length(var54
, 2l);
3651 ((struct instance_standard__NativeArray
*)var51
)->values
[0]=var53
;
3652 if (likely(varonce56
!=NULL
)) {
3655 var58
= "(1)\n\n# NAME\n\n";
3656 var59
= standard___standard__NativeString___to_s_with_length(var58
, 13l);
3660 ((struct instance_standard__NativeArray
*)var51
)->values
[2]=var57
;
3661 if (likely(varonce60
!=NULL
)) {
3664 var62
= "\n\n# SYNOPSYS\n\n";
3665 var63
= standard___standard__NativeString___to_s_with_length(var62
, 14l);
3669 ((struct instance_standard__NativeArray
*)var51
)->values
[4]=var61
;
3670 if (likely(varonce64
!=NULL
)) {
3673 var66
= " [*options*]...\n\n# OPTIONS\n";
3674 var67
= standard___standard__NativeString___to_s_with_length(var66
, 27l);
3678 ((struct instance_standard__NativeArray
*)var51
)->values
[6]=var65
;
3684 var68
= nit___nit__ToolContext___toolname(self
);
3687 var69
= ((val
*(*)(val
* self
))(var68
->class->vft
[COLOR_standard__string__String__to_upper
]))(var68
); /* to_upper on <var68:String>*/
3689 ((struct instance_standard__NativeArray
*)var51
)->values
[1]=var69
;
3691 { /* Inline toolcontext#ToolContext#tooldescription (self) on <self:ToolContext> */
3692 var72
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___tooldescription
].val
; /* _tooldescription on <self:ToolContext> */
3693 if (unlikely(var72
== NULL
)) {
3694 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _tooldescription");
3695 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 393);
3699 RET_LABEL71
:(void)0;
3702 if (likely(varonce73
!=NULL
)) {
3706 var76
= standard___standard__NativeString___to_s_with_length(var75
, 1l);
3711 var77
= standard__string_search___Text___split(var70
, var74
);
3714 var78
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var77
, 1l);
3716 ((struct instance_standard__NativeArray
*)var51
)->values
[3]=var78
;
3718 var79
= nit___nit__ToolContext___toolname(self
);
3720 ((struct instance_standard__NativeArray
*)var51
)->values
[5]=var79
;
3722 var80
= ((val
*(*)(val
* self
))(var51
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var51
); /* native_to_s on <var51:NativeArray[String]>*/
3726 standard__file___Sys___print(var50
, var80
); /* Direct call file#Sys#print on <var50:Sys>*/
3729 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
3730 var83
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
3731 if (unlikely(var83
== NULL
)) {
3732 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
3733 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
3737 RET_LABEL82
:(void)0;
3741 { /* Inline opts#OptionContext#options (var81) on <var81:OptionContext> */
3742 var86
= var81
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <var81:OptionContext> */
3743 if (unlikely(var86
== NULL
)) {
3744 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
3745 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 264);
3749 RET_LABEL85
:(void)0;
3754 var87
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
3759 var89
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_88
);
3763 var90
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_88
);
3768 { /* Inline opts#Option#names (var_o) on <var_o:Option> */
3769 var93
= var_o
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <var_o:Option> */
3770 if (unlikely(var93
== NULL
)) {
3771 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
3772 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 19);
3776 RET_LABEL92
:(void)0;
3781 var95
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_94
);
3786 var97
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_96
);
3790 var98
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_96
);
3797 if (likely(varonce100
!=NULL
)) {
3798 var101
= varonce100
;
3801 var103
= standard___standard__NativeString___to_s_with_length(var102
, 2l);
3803 varonce100
= var101
;
3805 var104
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3806 { /* var104 = array_instance Array[Object] */
3807 var105
= NEW_standard__NativeArray(1l, &type_standard__NativeArray__standard__Object
);
3808 ((struct instance_standard__NativeArray
*)var105
)->values
[0] = (val
*) var101
;
3810 ((void(*)(val
* self
, val
* p0
, long p1
))(var104
->class->vft
[COLOR_standard__array__Array__with_native
]))(var104
, var105
, 1l); /* with_native on <var104:Array[Object]>*/
3814 standard__file___Sys___printn(var99
, var104
); /* Direct call file#Sys#printn on <var99:Sys>*/
3818 if (unlikely(varonce107
==NULL
)) {
3819 var108
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
3820 if (likely(varonce109
!=NULL
)) {
3821 var110
= varonce109
;
3824 var112
= standard___standard__NativeString___to_s_with_length(var111
, 1l);
3826 varonce109
= var110
;
3828 ((struct instance_standard__NativeArray
*)var108
)->values
[0]=var110
;
3829 if (likely(varonce113
!=NULL
)) {
3830 var114
= varonce113
;
3833 var116
= standard___standard__NativeString___to_s_with_length(var115
, 1l);
3835 varonce113
= var114
;
3837 ((struct instance_standard__NativeArray
*)var108
)->values
[2]=var114
;
3839 var108
= varonce107
;
3842 ((struct instance_standard__NativeArray
*)var108
)->values
[1]=var_n
;
3844 var117
= ((val
*(*)(val
* self
))(var108
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var108
); /* native_to_s on <var108:NativeArray[String]>*/
3846 varonce107
= var108
;
3847 var118
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3848 { /* var118 = array_instance Array[Object] */
3849 var119
= NEW_standard__NativeArray(1l, &type_standard__NativeArray__standard__Object
);
3850 ((struct instance_standard__NativeArray
*)var119
)->values
[0] = (val
*) var117
;
3852 ((void(*)(val
* self
, val
* p0
, long p1
))(var118
->class->vft
[COLOR_standard__array__Array__with_native
]))(var118
, var119
, 1l); /* with_native on <var118:Array[Object]>*/
3856 standard__file___Sys___printn(var106
, var118
); /* Direct call file#Sys#printn on <var106:Sys>*/
3859 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_96
); /* Direct call array#ArrayIterator#next on <var_96:ArrayIterator[String]>*/
3865 BREAK_label
: (void)0;
3867 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_96
); /* Direct call array#ArrayIterator#finish on <var_96:ArrayIterator[String]>*/
3870 if (likely(varonce121
!=NULL
)) {
3871 var122
= varonce121
;
3874 var124
= standard___standard__NativeString___to_s_with_length(var123
, 0l);
3876 varonce121
= var122
;
3879 standard__file___Sys___print(var120
, var122
); /* Direct call file#Sys#print on <var120:Sys>*/
3882 if (unlikely(varonce126
==NULL
)) {
3883 var127
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3884 if (likely(varonce128
!=NULL
)) {
3885 var129
= varonce128
;
3888 var131
= standard___standard__NativeString___to_s_with_length(var130
, 4l);
3890 varonce128
= var129
;
3892 ((struct instance_standard__NativeArray
*)var127
)->values
[0]=var129
;
3894 var127
= varonce126
;
3898 { /* Inline opts#Option#helptext (var_o) on <var_o:Option> */
3899 var134
= var_o
->attrs
[COLOR_opts__Option___helptext
].val
; /* _helptext on <var_o:Option> */
3900 if (unlikely(var134
== NULL
)) {
3901 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _helptext");
3902 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 25);
3906 RET_LABEL133
:(void)0;
3909 ((struct instance_standard__NativeArray
*)var127
)->values
[1]=var132
;
3911 var135
= ((val
*(*)(val
* self
))(var127
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var127
); /* native_to_s on <var127:NativeArray[String]>*/
3913 varonce126
= var127
;
3915 standard__file___Sys___print(var125
, var135
); /* Direct call file#Sys#print on <var125:Sys>*/
3918 if (likely(varonce137
!=NULL
)) {
3919 var138
= varonce137
;
3922 var140
= standard___standard__NativeString___to_s_with_length(var139
, 0l);
3924 varonce137
= var138
;
3927 standard__file___Sys___print(var136
, var138
); /* Direct call file#Sys#print on <var136:Sys>*/
3930 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_88
); /* Direct call array#ArrayIterator#next on <var_88:ArrayIterator[Option]>*/
3933 goto BREAK_label141
;
3936 BREAK_label141
: (void)0;
3938 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_88
); /* Direct call array#ArrayIterator#finish on <var_88:ArrayIterator[Option]>*/
3941 if (likely(varonce143
!=NULL
)) {
3942 var144
= varonce143
;
3944 var145
= "# SEE ALSO\n\nThe Nit language documentation and the source code of its tools and libraries may be downloaded from <http://nitlanguage.org>";
3945 var146
= standard___standard__NativeString___to_s_with_length(var145
, 137l);
3947 varonce143
= var144
;
3950 standard__file___Sys___print(var142
, var144
); /* Direct call file#Sys#print on <var142:Sys>*/
3954 { /* Inline kernel#Sys#exit (var147,0l) on <var147:Sys> */
3956 RET_LABEL148
:(void)0;
3962 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
3963 var151
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
3964 if (unlikely(var151
== NULL
)) {
3965 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
3966 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
3970 RET_LABEL150
:(void)0;
3974 var152
= opts___opts__OptionContext___get_errors(var149
);
3976 var_errors
= var152
;
3978 var153
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_errors
);
3982 var_155
= var_errors
;
3984 var156
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_155
);
3989 var158
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_157
);
3993 var159
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_157
);
3997 if (unlikely(varonce161
==NULL
)) {
3998 var162
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3999 if (likely(varonce163
!=NULL
)) {
4000 var164
= varonce163
;
4003 var166
= standard___standard__NativeString___to_s_with_length(var165
, 7l);
4005 varonce163
= var164
;
4007 ((struct instance_standard__NativeArray
*)var162
)->values
[0]=var164
;
4009 var162
= varonce161
;
4012 ((struct instance_standard__NativeArray
*)var162
)->values
[1]=var_e
;
4014 var167
= ((val
*(*)(val
* self
))(var162
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var162
); /* native_to_s on <var162:NativeArray[String]>*/
4016 varonce161
= var162
;
4018 standard__file___Sys___print(var160
, var167
); /* Direct call file#Sys#print on <var160:Sys>*/
4021 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_157
); /* Direct call array#ArrayIterator#next on <var_157:ArrayIterator[String]>*/
4024 goto BREAK_label168
;
4027 BREAK_label168
: (void)0;
4029 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_157
); /* Direct call array#ArrayIterator#finish on <var_157:ArrayIterator[String]>*/
4033 { /* Inline toolcontext#ToolContext#tooldescription (self) on <self:ToolContext> */
4034 var172
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___tooldescription
].val
; /* _tooldescription on <self:ToolContext> */
4035 if (unlikely(var172
== NULL
)) {
4036 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _tooldescription");
4037 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 393);
4041 RET_LABEL171
:(void)0;
4045 standard__file___Sys___print(var169
, var170
); /* Direct call file#Sys#print on <var169:Sys>*/
4048 if (likely(varonce174
!=NULL
)) {
4049 var175
= varonce174
;
4051 var176
= "Use --help for help";
4052 var177
= standard___standard__NativeString___to_s_with_length(var176
, 19l);
4054 varonce174
= var175
;
4057 standard__file___Sys___print(var173
, var175
); /* Direct call file#Sys#print on <var173:Sys>*/
4061 { /* Inline kernel#Sys#exit (var178,1l) on <var178:Sys> */
4063 RET_LABEL179
:(void)0;
4069 var180
= nit___nit__ToolContext___compute_nit_dir(self
);
4072 { /* Inline toolcontext#ToolContext#nit_dir= (self,var180) on <self:ToolContext> */
4073 self
->attrs
[COLOR_nit__toolcontext__ToolContext___nit_dir
].val
= var180
; /* _nit_dir on <self:ToolContext> */
4074 RET_LABEL181
:(void)0;
4078 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
4079 var185
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
4080 if (unlikely(var185
== NULL
)) {
4081 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
4082 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
4086 RET_LABEL184
:(void)0;
4090 { /* Inline opts#OptionContext#rest (var183) on <var183:OptionContext> */
4091 var188
= var183
->attrs
[COLOR_opts__OptionContext___rest
].val
; /* _rest on <var183:OptionContext> */
4092 if (unlikely(var188
== NULL
)) {
4093 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _rest");
4094 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 267);
4098 RET_LABEL187
:(void)0;
4102 var189
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var186
);
4107 { /* Inline toolcontext#ToolContext#accept_no_arguments (self) on <self:ToolContext> */
4108 var193
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___accept_no_arguments
].s
; /* _accept_no_arguments on <self:ToolContext> */
4110 RET_LABEL192
:(void)0;
4121 { /* Inline toolcontext#ToolContext#tooldescription (self) on <self:ToolContext> */
4122 var198
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___tooldescription
].val
; /* _tooldescription on <self:ToolContext> */
4123 if (unlikely(var198
== NULL
)) {
4124 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _tooldescription");
4125 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 393);
4129 RET_LABEL197
:(void)0;
4133 standard__file___Sys___print(var195
, var196
); /* Direct call file#Sys#print on <var195:Sys>*/
4136 if (likely(varonce200
!=NULL
)) {
4137 var201
= varonce200
;
4139 var202
= "Use --help for help";
4140 var203
= standard___standard__NativeString___to_s_with_length(var202
, 19l);
4142 varonce200
= var201
;
4145 standard__file___Sys___print(var199
, var201
); /* Direct call file#Sys#print on <var199:Sys>*/
4149 { /* Inline kernel#Sys#exit (var204,1l) on <var204:Sys> */
4151 RET_LABEL205
:(void)0;
4157 { /* Inline toolcontext#ToolContext#opt_verbose (self) on <self:ToolContext> */
4158 var208
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_verbose
].val
; /* _opt_verbose on <self:ToolContext> */
4159 if (unlikely(var208
== NULL
)) {
4160 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_verbose");
4161 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 362);
4165 RET_LABEL207
:(void)0;
4169 { /* Inline opts#Option#value (var206) on <var206:OptionCount> */
4170 var211
= var206
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var206:OptionCount> */
4172 RET_LABEL210
:(void)0;
4176 { /* Inline toolcontext#ToolContext#verbose_level= (self,var209) on <self:ToolContext> */
4177 var213
= (long)(var209
)>>2;
4178 self
->attrs
[COLOR_nit__toolcontext__ToolContext___verbose_level
].l
= var213
; /* _verbose_level on <self:ToolContext> */
4179 RET_LABEL212
:(void)0;
4183 { /* Inline toolcontext#ToolContext#opt_keep_going (self) on <self:ToolContext> */
4184 var216
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_keep_going
].val
; /* _opt_keep_going on <self:ToolContext> */
4185 if (unlikely(var216
== NULL
)) {
4186 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_keep_going");
4187 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 368);
4191 RET_LABEL215
:(void)0;
4195 { /* Inline opts#Option#value (var214) on <var214:OptionBool> */
4196 var219
= var214
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var214:OptionBool> */
4198 RET_LABEL218
:(void)0;
4201 var220
= (short int)((long)(var217
)>>2);
4204 { /* Inline toolcontext#ToolContext#keep_going= (self,1) on <self:ToolContext> */
4205 self
->attrs
[COLOR_nit__toolcontext__ToolContext___keep_going
].s
= 1; /* _keep_going on <self:ToolContext> */
4206 RET_LABEL221
:(void)0;
4212 { /* Inline toolcontext#ToolContext#opt_quiet (self) on <self:ToolContext> */
4213 var224
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_quiet
].val
; /* _opt_quiet on <self:ToolContext> */
4214 if (unlikely(var224
== NULL
)) {
4215 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_quiet");
4216 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 341);
4220 RET_LABEL223
:(void)0;
4224 { /* Inline opts#Option#value (var222) on <var222:OptionBool> */
4225 var227
= var222
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var222:OptionBool> */
4227 RET_LABEL226
:(void)0;
4230 var228
= (short int)((long)(var225
)>>2);
4233 { /* Inline toolcontext#ToolContext#opt_warn (self) on <self:ToolContext> */
4234 var231
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_warn
].val
; /* _opt_warn on <self:ToolContext> */
4235 if (unlikely(var231
== NULL
)) {
4236 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_warn");
4237 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 335);
4241 RET_LABEL230
:(void)0;
4245 { /* Inline opts#Option#value= (var229,0l) on <var229:OptionCount> */
4246 /* Covariant cast for argument 0 (value) <0l:Int> isa VALUE */
4247 /* <0l:Int> isa VALUE */
4248 type_struct236
= var229
->type
->resolution_table
->types
[COLOR_opts__Option__VALUE
];
4249 cltype234
= type_struct236
->color
;
4250 idtype235
= type_struct236
->id
;
4251 if(cltype234
>= (&type_standard__Int
)->table_size
) {
4254 var233
= (&type_standard__Int
)->type_table
[cltype234
] == idtype235
;
4256 if (unlikely(!var233
)) {
4257 var_class_name237
= type_standard__Int
.name
;
4258 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name237
);
4259 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 40);
4262 var238
= (val
*)(0l<<2|1);
4263 var229
->attrs
[COLOR_opts__Option___value
].val
= var238
; /* _value on <var229:OptionCount> */
4264 RET_LABEL232
:(void)0;
4270 { /* Inline toolcontext#ToolContext#opt_log_dir (self) on <self:ToolContext> */
4271 var241
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_log_dir
].val
; /* _opt_log_dir on <self:ToolContext> */
4272 if (unlikely(var241
== NULL
)) {
4273 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_log_dir");
4274 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 347);
4278 RET_LABEL240
:(void)0;
4282 { /* Inline opts#Option#value (var239) on <var239:OptionString> */
4283 var244
= var239
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var239:OptionString> */
4285 RET_LABEL243
:(void)0;
4288 if (var242
== NULL
) {
4289 var245
= 0; /* is null */
4291 var245
= 1; /* arg is null and recv is not */
4294 { /* Inline kernel#Object#!= (var242,((val*)NULL)) on <var242:nullable Object(nullable String)> */
4295 var_other
= ((val
*)NULL
);
4297 var248
= ((short int(*)(val
* self
, val
* p0
))(var242
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var242
, var_other
); /* == on <var242:nullable String(String)>*/
4302 RET_LABEL247
:(void)0;
4308 { /* Inline toolcontext#ToolContext#opt_log_dir (self) on <self:ToolContext> */
4309 var252
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_log_dir
].val
; /* _opt_log_dir on <self:ToolContext> */
4310 if (unlikely(var252
== NULL
)) {
4311 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_log_dir");
4312 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 347);
4316 RET_LABEL251
:(void)0;
4320 { /* Inline opts#Option#value (var250) on <var250:OptionString> */
4321 var255
= var250
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var250:OptionString> */
4323 RET_LABEL254
:(void)0;
4326 if (unlikely(var253
== NULL
)) {
4327 PRINT_ERROR("Runtime error: %s", "Cast failed");
4328 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 495);
4332 { /* Inline toolcontext#ToolContext#log_directory= (self,var253) on <self:ToolContext> */
4333 self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_directory
].val
= var253
; /* _log_directory on <self:ToolContext> */
4334 RET_LABEL256
:(void)0;
4340 { /* Inline toolcontext#ToolContext#opt_log (self) on <self:ToolContext> */
4341 var259
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_log
].val
; /* _opt_log on <self:ToolContext> */
4342 if (unlikely(var259
== NULL
)) {
4343 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_log");
4344 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 344);
4348 RET_LABEL258
:(void)0;
4352 { /* Inline opts#Option#value (var257) on <var257:OptionBool> */
4353 var262
= var257
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var257:OptionBool> */
4355 RET_LABEL261
:(void)0;
4358 var263
= (short int)((long)(var260
)>>2);
4361 { /* Inline toolcontext#ToolContext#log_directory (self) on <self:ToolContext> */
4362 var266
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_directory
].val
; /* _log_directory on <self:ToolContext> */
4363 if (unlikely(var266
== NULL
)) {
4364 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _log_directory");
4365 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 137);
4369 RET_LABEL265
:(void)0;
4373 var267
= standard__file___String___mkdir(var264
);
4376 { /* Inline toolcontext#ToolContext#log_directory (self) on <self:ToolContext> */
4377 var270
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_directory
].val
; /* _log_directory on <self:ToolContext> */
4378 if (unlikely(var270
== NULL
)) {
4379 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _log_directory");
4380 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 137);
4384 RET_LABEL269
:(void)0;
4387 if (likely(varonce271
!=NULL
)) {
4388 var272
= varonce271
;
4390 var273
= "info.txt";
4391 var274
= standard___standard__NativeString___to_s_with_length(var273
, 8l);
4393 varonce271
= var272
;
4396 var275
= standard__file___String____47d(var268
, var272
);
4399 var276
= standard__file___Text___to_path(var275
);
4402 var277
= standard___standard__Path___open_wo(var276
);
4405 { /* Inline toolcontext#ToolContext#log_info= (self,var277) on <self:ToolContext> */
4406 self
->attrs
[COLOR_nit__toolcontext__ToolContext___log_info
].val
= var277
; /* _log_info on <self:ToolContext> */
4407 RET_LABEL278
:(void)0;
4414 /* method toolcontext#ToolContext#version for (self: ToolContext): String */
4415 val
* nit___nit__ToolContext___version(val
* self
) {
4416 val
* var
/* : String */;
4417 val
* var1
/* : OptionBool */;
4418 val
* var3
/* : OptionBool */;
4419 val
* var4
/* : nullable Object */;
4420 val
* var6
/* : nullable Object */;
4421 short int var7
/* : Bool */;
4422 static val
* varonce
;
4423 val
* var8
/* : String */;
4424 char* var9
/* : NativeString */;
4425 val
* var10
/* : FlatString */;
4426 val
* var11
/* : Sys */;
4427 val
* var12
/* : String */;
4429 { /* Inline toolcontext#ToolContext#opt_set_dummy_tool (self) on <self:ToolContext> */
4430 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_set_dummy_tool
].val
; /* _opt_set_dummy_tool on <self:ToolContext> */
4431 if (unlikely(var3
== NULL
)) {
4432 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_set_dummy_tool");
4433 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 359);
4441 { /* Inline opts#Option#value (var1) on <var1:OptionBool> */
4442 var6
= var1
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var1:OptionBool> */
4447 var7
= (short int)((long)(var4
)>>2);
4449 if (likely(varonce
!=NULL
)) {
4452 var9
= "DUMMY_VERSION";
4453 var10
= standard___standard__NativeString___to_s_with_length(var9
, 13l);
4463 var12
= nit__version___standard__Sys___nit_version(var11
);
4470 /* method toolcontext#ToolContext#toolname for (self: ToolContext): String */
4471 val
* nit___nit__ToolContext___toolname(val
* self
) {
4472 val
* var
/* : String */;
4473 val
* var1
/* : OptionBool */;
4474 val
* var3
/* : OptionBool */;
4475 val
* var4
/* : nullable Object */;
4476 val
* var6
/* : nullable Object */;
4477 short int var7
/* : Bool */;
4478 static val
* varonce
;
4479 val
* var8
/* : String */;
4480 char* var9
/* : NativeString */;
4481 val
* var10
/* : FlatString */;
4482 val
* var11
/* : Sys */;
4483 val
* var13
/* : Sys */;
4484 val
* var14
/* : String */;
4485 static val
* varonce15
;
4486 val
* var16
/* : String */;
4487 char* var17
/* : NativeString */;
4488 val
* var18
/* : FlatString */;
4489 val
* var19
/* : String */;
4491 { /* Inline toolcontext#ToolContext#opt_set_dummy_tool (self) on <self:ToolContext> */
4492 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_set_dummy_tool
].val
; /* _opt_set_dummy_tool on <self:ToolContext> */
4493 if (unlikely(var3
== NULL
)) {
4494 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_set_dummy_tool");
4495 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 359);
4503 { /* Inline opts#Option#value (var1) on <var1:OptionBool> */
4504 var6
= var1
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var1:OptionBool> */
4509 var7
= (short int)((long)(var4
)>>2);
4511 if (likely(varonce
!=NULL
)) {
4514 var9
= "DUMMY_TOOL";
4515 var10
= standard___standard__NativeString___to_s_with_length(var9
, 10l);
4524 { /* Inline kernel#Object#sys (self) on <self:ToolContext> */
4528 RET_LABEL12
:(void)0;
4532 var14
= standard__string___Sys___program_name(var11
);
4534 if (likely(varonce15
!=NULL
)) {
4538 var18
= standard___standard__NativeString___to_s_with_length(var17
, 0l);
4543 var19
= standard__file___String___basename(var14
, var16
);
4550 /* method toolcontext#ToolContext#nit_dir for (self: ToolContext): String */
4551 val
* nit___nit__ToolContext___nit_dir(val
* self
) {
4552 val
* var
/* : String */;
4553 val
* var1
/* : String */;
4554 var1
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___nit_dir
].val
; /* _nit_dir on <self:ToolContext> */
4555 if (unlikely(var1
== NULL
)) {
4556 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _nit_dir");
4557 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 521);
4564 /* method toolcontext#ToolContext#nit_dir= for (self: ToolContext, String) */
4565 void nit___nit__ToolContext___nit_dir_61d(val
* self
, val
* p0
) {
4566 self
->attrs
[COLOR_nit__toolcontext__ToolContext___nit_dir
].val
= p0
; /* _nit_dir on <self:ToolContext> */
4569 /* method toolcontext#ToolContext#compute_nit_dir for (self: ToolContext): String */
4570 val
* nit___nit__ToolContext___compute_nit_dir(val
* self
) {
4571 val
* var
/* : String */;
4572 val
* var1
/* : OptionString */;
4573 val
* var3
/* : OptionString */;
4574 val
* var4
/* : nullable Object */;
4575 val
* var6
/* : nullable Object */;
4576 val
* var_res
/* var res: nullable String */;
4577 short int var7
/* : Bool */;
4578 short int var8
/* : Bool */;
4579 val
* var_other
/* var other: nullable Object */;
4580 short int var10
/* : Bool */;
4581 short int var11
/* : Bool */;
4582 short int var12
/* : Bool */;
4583 short int var13
/* : Bool */;
4584 val
* var14
/* : NativeArray[String] */;
4585 static val
* varonce
;
4586 static val
* varonce15
;
4587 val
* var16
/* : String */;
4588 char* var17
/* : NativeString */;
4589 val
* var18
/* : FlatString */;
4590 static val
* varonce19
;
4591 val
* var20
/* : String */;
4592 char* var21
/* : NativeString */;
4593 val
* var22
/* : FlatString */;
4594 val
* var23
/* : String */;
4595 static val
* varonce24
;
4596 val
* var25
/* : String */;
4597 char* var26
/* : NativeString */;
4598 val
* var27
/* : FlatString */;
4599 val
* var28
/* : String */;
4600 short int var29
/* : Bool */;
4601 short int var30
/* : Bool */;
4602 short int var31
/* : Bool */;
4603 short int var32
/* : Bool */;
4604 val
* var34
/* : NativeArray[String] */;
4605 static val
* varonce33
;
4606 static val
* varonce35
;
4607 val
* var36
/* : String */;
4608 char* var37
/* : NativeString */;
4609 val
* var38
/* : FlatString */;
4610 static val
* varonce39
;
4611 val
* var40
/* : String */;
4612 char* var41
/* : NativeString */;
4613 val
* var42
/* : FlatString */;
4614 val
* var43
/* : String */;
4615 val
* var45
/* : NativeArray[String] */;
4616 static val
* varonce44
;
4617 static val
* varonce46
;
4618 val
* var47
/* : String */;
4619 char* var48
/* : NativeString */;
4620 val
* var49
/* : FlatString */;
4621 val
* var50
/* : Sys */;
4622 val
* var52
/* : Sys */;
4623 val
* var53
/* : String */;
4624 val
* var54
/* : String */;
4625 val
* var55
/* : String */;
4626 short int var56
/* : Bool */;
4627 val
* var57
/* : String */;
4628 static val
* varonce58
;
4629 val
* var59
/* : String */;
4630 char* var60
/* : NativeString */;
4631 val
* var61
/* : FlatString */;
4632 val
* var_exe
/* var exe: String */;
4633 short int var62
/* : Bool */;
4634 val
* var63
/* : String */;
4635 val
* var64
/* : String */;
4636 static val
* varonce65
;
4637 val
* var66
/* : String */;
4638 char* var67
/* : NativeString */;
4639 val
* var68
/* : FlatString */;
4640 val
* var69
/* : String */;
4641 short int var70
/* : Bool */;
4642 val
* var71
/* : String */;
4643 static val
* varonce72
;
4644 val
* var73
/* : String */;
4645 char* var74
/* : NativeString */;
4646 val
* var75
/* : FlatString */;
4647 val
* var76
/* : String */;
4648 static val
* varonce77
;
4649 val
* var78
/* : String */;
4650 char* var79
/* : NativeString */;
4651 val
* var80
/* : FlatString */;
4652 val
* var81
/* : Array[String] */;
4653 val
* var_ps
/* var ps: Array[String] */;
4654 val
* var_
/* var : Array[String] */;
4655 val
* var82
/* : ArrayIterator[nullable Object] */;
4656 val
* var_83
/* var : ArrayIterator[String] */;
4657 short int var84
/* : Bool */;
4658 val
* var85
/* : nullable Object */;
4659 val
* var_p
/* var p: String */;
4660 static val
* varonce86
;
4661 val
* var87
/* : String */;
4662 char* var88
/* : NativeString */;
4663 val
* var89
/* : FlatString */;
4664 val
* var90
/* : String */;
4665 short int var91
/* : Bool */;
4666 val
* var92
/* : String */;
4667 static val
* varonce93
;
4668 val
* var94
/* : String */;
4669 char* var95
/* : NativeString */;
4670 val
* var96
/* : FlatString */;
4672 { /* Inline toolcontext#ToolContext#opt_nit_dir (self) on <self:ToolContext> */
4673 var3
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___opt_nit_dir
].val
; /* _opt_nit_dir on <self:ToolContext> */
4674 if (unlikely(var3
== NULL
)) {
4675 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_nit_dir");
4676 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 350);
4684 { /* Inline opts#Option#value (var1) on <var1:OptionString> */
4685 var6
= var1
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var1:OptionString> */
4691 if (var_res
== NULL
) {
4692 var7
= 0; /* is null */
4694 var7
= 1; /* arg is null and recv is not */
4697 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable String> */
4698 var_other
= ((val
*)NULL
);
4700 var10
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable String(String)>*/
4711 var12
= nit___nit__ToolContext___check_nit_dir(self
, var_res
);
4715 if (unlikely(varonce
==NULL
)) {
4716 var14
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
4717 if (likely(varonce15
!=NULL
)) {
4720 var17
= "Fatal Error: the value of --nit-dir does not seem to be a valid base Nit directory: ";
4721 var18
= standard___standard__NativeString___to_s_with_length(var17
, 84l);
4725 ((struct instance_standard__NativeArray
*)var14
)->values
[0]=var16
;
4726 if (likely(varonce19
!=NULL
)) {
4730 var22
= standard___standard__NativeString___to_s_with_length(var21
, 1l);
4734 ((struct instance_standard__NativeArray
*)var14
)->values
[2]=var20
;
4739 ((struct instance_standard__NativeArray
*)var14
)->values
[1]=var_res
;
4741 var23
= ((val
*(*)(val
* self
))(var14
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var14
); /* native_to_s on <var14:NativeArray[String]>*/
4745 nit___nit__ToolContext___fatal_error(self
, ((val
*)NULL
), var23
); /* Direct call toolcontext#ToolContext#fatal_error on <self:ToolContext>*/
4753 if (likely(varonce24
!=NULL
)) {
4757 var27
= standard___standard__NativeString___to_s_with_length(var26
, 7l);
4762 var28
= standard__environ___String___environ(var25
);
4766 var29
= standard___standard__Text___is_empty(var_res
);
4771 var31
= nit___nit__ToolContext___check_nit_dir(self
, var_res
);
4775 if (unlikely(varonce33
==NULL
)) {
4776 var34
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
4777 if (likely(varonce35
!=NULL
)) {
4780 var37
= "Fatal Error: the value of NIT_DIR does not seem to be a valid base Nit directory: ";
4781 var38
= standard___standard__NativeString___to_s_with_length(var37
, 82l);
4785 ((struct instance_standard__NativeArray
*)var34
)->values
[0]=var36
;
4786 if (likely(varonce39
!=NULL
)) {
4790 var42
= standard___standard__NativeString___to_s_with_length(var41
, 1l);
4794 ((struct instance_standard__NativeArray
*)var34
)->values
[2]=var40
;
4799 ((struct instance_standard__NativeArray
*)var34
)->values
[1]=var_res
;
4801 var43
= ((val
*(*)(val
* self
))(var34
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var34
); /* native_to_s on <var34:NativeArray[String]>*/
4805 nit___nit__ToolContext___fatal_error(self
, ((val
*)NULL
), var43
); /* Direct call toolcontext#ToolContext#fatal_error on <self:ToolContext>*/
4813 if (unlikely(varonce44
==NULL
)) {
4814 var45
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
4815 if (likely(varonce46
!=NULL
)) {
4819 var49
= standard___standard__NativeString___to_s_with_length(var48
, 3l);
4823 ((struct instance_standard__NativeArray
*)var45
)->values
[1]=var47
;
4829 { /* Inline kernel#Object#sys (self) on <self:ToolContext> */
4833 RET_LABEL51
:(void)0;
4837 var53
= standard__string___Sys___program_name(var50
);
4840 var54
= standard__file___String___dirname(var53
);
4842 ((struct instance_standard__NativeArray
*)var45
)->values
[0]=var54
;
4844 var55
= ((val
*(*)(val
* self
))(var45
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var45
); /* native_to_s on <var45:NativeArray[String]>*/
4849 var56
= nit___nit__ToolContext___check_nit_dir(self
, var_res
);
4853 var57
= standard__file___String___simplify_path(var_res
);
4859 if (likely(varonce58
!=NULL
)) {
4862 var60
= "/proc/self/exe";
4863 var61
= standard___standard__NativeString___to_s_with_length(var60
, 14l);
4869 var62
= standard__file___String___file_exists(var_exe
);
4873 var63
= standard__file___String___realpath(var_exe
);
4877 var64
= standard__file___String___dirname(var_res
);
4879 if (likely(varonce65
!=NULL
)) {
4883 var68
= standard___standard__NativeString___to_s_with_length(var67
, 2l);
4888 var69
= standard__file___String___join_path(var64
, var66
);
4892 var70
= nit___nit__ToolContext___check_nit_dir(self
, var_res
);
4896 var71
= standard__file___String___simplify_path(var_res
);
4904 if (likely(varonce72
!=NULL
)) {
4908 var75
= standard___standard__NativeString___to_s_with_length(var74
, 4l);
4913 var76
= standard__environ___String___environ(var73
);
4915 if (likely(varonce77
!=NULL
)) {
4919 var80
= standard___standard__NativeString___to_s_with_length(var79
, 1l);
4924 var81
= standard__string_search___Text___split(var76
, var78
);
4929 var82
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
4934 var84
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_83
);
4938 var85
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_83
);
4941 if (likely(varonce86
!=NULL
)) {
4945 var89
= standard___standard__NativeString___to_s_with_length(var88
, 2l);
4950 var90
= standard__file___String____47d(var_p
, var87
);
4954 var91
= nit___nit__ToolContext___check_nit_dir(self
, var_res
);
4958 var92
= standard__file___String___simplify_path(var_res
);
4965 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_83
); /* Direct call array#ArrayIterator#next on <var_83:ArrayIterator[String]>*/
4971 BREAK_label
: (void)0;
4973 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_83
); /* Direct call array#ArrayIterator#finish on <var_83:ArrayIterator[String]>*/
4975 if (likely(varonce93
!=NULL
)) {
4978 var95
= "Fatal Error: cannot locate a valid base Nit directory. It is quite unexpected. Try to set the environment variable `NIT_DIR` or to use the `--nit-dir` option.";
4979 var96
= standard___standard__NativeString___to_s_with_length(var95
, 158l);
4984 nit___nit__ToolContext___fatal_error(self
, ((val
*)NULL
), var94
); /* Direct call toolcontext#ToolContext#fatal_error on <self:ToolContext>*/
4986 PRINT_ERROR("Runtime error: %s", "Aborted");
4987 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 564);
4992 /* method toolcontext#ToolContext#check_nit_dir for (self: ToolContext, String): Bool */
4993 short int nit___nit__ToolContext___check_nit_dir(val
* self
, val
* p0
) {
4994 short int var
/* : Bool */;
4995 val
* var_res
/* var res: String */;
4996 short int var1
/* : Bool */;
4997 short int var2
/* : Bool */;
4998 short int var_
/* var : Bool */;
4999 val
* var3
/* : NativeArray[String] */;
5000 static val
* varonce
;
5001 static val
* varonce4
;
5002 val
* var5
/* : String */;
5003 char* var6
/* : NativeString */;
5004 val
* var7
/* : FlatString */;
5005 val
* var8
/* : String */;
5006 short int var9
/* : Bool */;
5009 var2
= standard__file___String___file_exists(var_res
);
5013 if (unlikely(varonce
==NULL
)) {
5014 var3
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
5015 if (likely(varonce4
!=NULL
)) {
5018 var6
= "/src/nit.nit";
5019 var7
= standard___standard__NativeString___to_s_with_length(var6
, 12l);
5023 ((struct instance_standard__NativeArray
*)var3
)->values
[1]=var5
;
5028 ((struct instance_standard__NativeArray
*)var3
)->values
[0]=var_res
;
5030 var8
= ((val
*(*)(val
* self
))(var3
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var3
); /* native_to_s on <var3:NativeArray[String]>*/
5034 var9
= standard__file___String___file_exists(var8
);
5045 /* method toolcontext#BashCompletion#toolcontext for (self: BashCompletion): ToolContext */
5046 val
* nit___nit__BashCompletion___toolcontext(val
* self
) {
5047 val
* var
/* : ToolContext */;
5048 val
* var1
/* : ToolContext */;
5049 var1
= self
->attrs
[COLOR_nit__toolcontext__BashCompletion___toolcontext
].val
; /* _toolcontext on <self:BashCompletion> */
5050 if (unlikely(var1
== NULL
)) {
5051 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
5052 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 593);
5059 /* method toolcontext#BashCompletion#toolcontext= for (self: BashCompletion, ToolContext) */
5060 void nit___nit__BashCompletion___toolcontext_61d(val
* self
, val
* p0
) {
5061 self
->attrs
[COLOR_nit__toolcontext__BashCompletion___toolcontext
].val
= p0
; /* _toolcontext on <self:BashCompletion> */
5064 /* method toolcontext#BashCompletion#extract_options_names for (self: BashCompletion): Array[String] */
5065 val
* nit___nit__BashCompletion___extract_options_names(val
* self
) {
5066 val
* var
/* : Array[String] */;
5067 val
* var1
/* : Array[String] */;
5068 val
* var_names
/* var names: Array[String] */;
5069 val
* var2
/* : ToolContext */;
5070 val
* var4
/* : ToolContext */;
5071 val
* var5
/* : OptionContext */;
5072 val
* var7
/* : OptionContext */;
5073 val
* var8
/* : Array[Option] */;
5074 val
* var10
/* : Array[Option] */;
5075 val
* var_
/* var : Array[Option] */;
5076 val
* var11
/* : ArrayIterator[nullable Object] */;
5077 val
* var_12
/* var : ArrayIterator[Option] */;
5078 short int var13
/* : Bool */;
5079 val
* var14
/* : nullable Object */;
5080 val
* var_option
/* var option: Option */;
5081 val
* var15
/* : Array[String] */;
5082 val
* var17
/* : Array[String] */;
5083 val
* var_18
/* var : Array[String] */;
5084 val
* var19
/* : ArrayIterator[nullable Object] */;
5085 val
* var_20
/* var : ArrayIterator[String] */;
5086 short int var21
/* : Bool */;
5087 val
* var22
/* : nullable Object */;
5088 val
* var_name
/* var name: String */;
5089 static val
* varonce
;
5090 val
* var23
/* : String */;
5091 char* var24
/* : NativeString */;
5092 val
* var25
/* : FlatString */;
5093 short int var26
/* : Bool */;
5094 var1
= NEW_standard__Array(&type_standard__Array__standard__String
);
5096 standard___standard__Array___standard__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[String]>*/
5100 { /* Inline toolcontext#BashCompletion#toolcontext (self) on <self:BashCompletion> */
5101 var4
= self
->attrs
[COLOR_nit__toolcontext__BashCompletion___toolcontext
].val
; /* _toolcontext on <self:BashCompletion> */
5102 if (unlikely(var4
== NULL
)) {
5103 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
5104 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 593);
5112 { /* Inline toolcontext#ToolContext#option_context (var2) on <var2:ToolContext> */
5113 var7
= var2
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <var2:ToolContext> */
5114 if (unlikely(var7
== NULL
)) {
5115 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
5116 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
5124 { /* Inline opts#OptionContext#options (var5) on <var5:OptionContext> */
5125 var10
= var5
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <var5:OptionContext> */
5126 if (unlikely(var10
== NULL
)) {
5127 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
5128 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 264);
5137 var11
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
5142 var13
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_12
);
5146 var14
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_12
);
5150 { /* Inline opts#Option#names (var_option) on <var_option:Option> */
5151 var17
= var_option
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <var_option:Option> */
5152 if (unlikely(var17
== NULL
)) {
5153 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
5154 PRINT_ERROR(" (%s:%d)\n", FILE_opts
, 19);
5158 RET_LABEL16
:(void)0;
5163 var19
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_18
);
5168 var21
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_20
);
5172 var22
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_20
);
5175 if (likely(varonce
!=NULL
)) {
5179 var25
= standard___standard__NativeString___to_s_with_length(var24
, 2l);
5184 var26
= standard___standard__Text___has_prefix(var_name
, var23
);
5188 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_names
, var_name
); /* Direct call array#Array#add on <var_names:Array[String]>*/
5193 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_20
); /* Direct call array#ArrayIterator#next on <var_20:ArrayIterator[String]>*/
5199 BREAK_label
: (void)0;
5201 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_20
); /* Direct call array#ArrayIterator#finish on <var_20:ArrayIterator[String]>*/
5204 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_12
); /* Direct call array#ArrayIterator#next on <var_12:ArrayIterator[Option]>*/
5210 BREAK_label27
: (void)0;
5212 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_12
); /* Direct call array#ArrayIterator#finish on <var_12:ArrayIterator[Option]>*/
5219 /* method toolcontext#BashCompletion#rendering for (self: BashCompletion) */
5220 void nit___nit__BashCompletion___template__Template__rendering(val
* self
) {
5221 val
* var
/* : ToolContext */;
5222 val
* var2
/* : ToolContext */;
5223 val
* var3
/* : String */;
5224 val
* var_name
/* var name: String */;
5225 val
* var4
/* : Array[String] */;
5226 val
* var_option_names
/* var option_names: Array[String] */;
5227 val
* var5
/* : NativeArray[String] */;
5228 static val
* varonce
;
5229 static val
* varonce6
;
5230 val
* var7
/* : String */;
5231 char* var8
/* : NativeString */;
5232 val
* var9
/* : FlatString */;
5233 static val
* varonce10
;
5234 val
* var11
/* : String */;
5235 char* var12
/* : NativeString */;
5236 val
* var13
/* : FlatString */;
5237 val
* var14
/* : ToolContext */;
5238 val
* var16
/* : ToolContext */;
5239 val
* var17
/* : String */;
5240 val
* var18
/* : String */;
5241 val
* var20
/* : NativeArray[String] */;
5242 static val
* varonce19
;
5243 static val
* varonce21
;
5244 val
* var22
/* : String */;
5245 char* var23
/* : NativeString */;
5246 val
* var24
/* : FlatString */;
5247 static val
* varonce25
;
5248 val
* var26
/* : String */;
5249 char* var27
/* : NativeString */;
5250 val
* var28
/* : FlatString */;
5251 val
* var29
/* : String */;
5252 static val
* varonce30
;
5253 val
* var31
/* : String */;
5254 char* var32
/* : NativeString */;
5255 val
* var33
/* : FlatString */;
5256 static val
* varonce34
;
5257 val
* var35
/* : String */;
5258 char* var36
/* : NativeString */;
5259 val
* var37
/* : FlatString */;
5260 static val
* varonce38
;
5261 val
* var39
/* : String */;
5262 char* var40
/* : NativeString */;
5263 val
* var41
/* : FlatString */;
5264 static val
* varonce42
;
5265 val
* var43
/* : String */;
5266 char* var44
/* : NativeString */;
5267 val
* var45
/* : FlatString */;
5268 static val
* varonce46
;
5269 val
* var47
/* : String */;
5270 char* var48
/* : NativeString */;
5271 val
* var49
/* : FlatString */;
5272 short int var50
/* : Bool */;
5273 short int var51
/* : Bool */;
5274 val
* var53
/* : NativeArray[String] */;
5275 static val
* varonce52
;
5276 static val
* varonce54
;
5277 val
* var55
/* : String */;
5278 char* var56
/* : NativeString */;
5279 val
* var57
/* : FlatString */;
5280 static val
* varonce58
;
5281 val
* var59
/* : String */;
5282 char* var60
/* : NativeString */;
5283 val
* var61
/* : FlatString */;
5284 static val
* varonce62
;
5285 val
* var63
/* : String */;
5286 char* var64
/* : NativeString */;
5287 val
* var65
/* : FlatString */;
5288 val
* var66
/* : String */;
5289 val
* var67
/* : String */;
5290 static val
* varonce68
;
5291 val
* var69
/* : String */;
5292 char* var70
/* : NativeString */;
5293 val
* var71
/* : FlatString */;
5294 static val
* varonce72
;
5295 val
* var73
/* : String */;
5296 char* var74
/* : NativeString */;
5297 val
* var75
/* : FlatString */;
5298 static val
* varonce76
;
5299 val
* var77
/* : String */;
5300 char* var78
/* : NativeString */;
5301 val
* var79
/* : FlatString */;
5302 static val
* varonce80
;
5303 val
* var81
/* : String */;
5304 char* var82
/* : NativeString */;
5305 val
* var83
/* : FlatString */;
5306 static val
* varonce84
;
5307 val
* var85
/* : String */;
5308 char* var86
/* : NativeString */;
5309 val
* var87
/* : FlatString */;
5310 val
* var89
/* : NativeArray[String] */;
5311 static val
* varonce88
;
5312 static val
* varonce90
;
5313 val
* var91
/* : String */;
5314 char* var92
/* : NativeString */;
5315 val
* var93
/* : FlatString */;
5316 static val
* varonce94
;
5317 val
* var95
/* : String */;
5318 char* var96
/* : NativeString */;
5319 val
* var97
/* : FlatString */;
5320 val
* var98
/* : String */;
5322 { /* Inline toolcontext#BashCompletion#toolcontext (self) on <self:BashCompletion> */
5323 var2
= self
->attrs
[COLOR_nit__toolcontext__BashCompletion___toolcontext
].val
; /* _toolcontext on <self:BashCompletion> */
5324 if (unlikely(var2
== NULL
)) {
5325 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
5326 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 593);
5334 var3
= nit___nit__ToolContext___toolname(var
);
5338 var4
= nit___nit__BashCompletion___extract_options_names(self
);
5340 var_option_names
= var4
;
5341 if (unlikely(varonce
==NULL
)) {
5342 var5
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
5343 if (likely(varonce6
!=NULL
)) {
5346 var8
= "# generated bash completion file for ";
5347 var9
= standard___standard__NativeString___to_s_with_length(var8
, 37l);
5351 ((struct instance_standard__NativeArray
*)var5
)->values
[0]=var7
;
5352 if (likely(varonce10
!=NULL
)) {
5356 var13
= standard___standard__NativeString___to_s_with_length(var12
, 1l);
5360 ((struct instance_standard__NativeArray
*)var5
)->values
[2]=var11
;
5365 ((struct instance_standard__NativeArray
*)var5
)->values
[1]=var_name
;
5367 { /* Inline toolcontext#BashCompletion#toolcontext (self) on <self:BashCompletion> */
5368 var16
= self
->attrs
[COLOR_nit__toolcontext__BashCompletion___toolcontext
].val
; /* _toolcontext on <self:BashCompletion> */
5369 if (unlikely(var16
== NULL
)) {
5370 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
5371 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 593);
5375 RET_LABEL15
:(void)0;
5379 var17
= nit___nit__ToolContext___version(var14
);
5381 ((struct instance_standard__NativeArray
*)var5
)->values
[3]=var17
;
5383 var18
= ((val
*(*)(val
* self
))(var5
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var5
); /* native_to_s on <var5:NativeArray[String]>*/
5387 template___template__Template___addn(self
, var18
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5389 if (unlikely(varonce19
==NULL
)) {
5390 var20
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
5391 if (likely(varonce21
!=NULL
)) {
5395 var24
= standard___standard__NativeString___to_s_with_length(var23
, 1l);
5399 ((struct instance_standard__NativeArray
*)var20
)->values
[0]=var22
;
5400 if (likely(varonce25
!=NULL
)) {
5404 var28
= standard___standard__NativeString___to_s_with_length(var27
, 2l);
5408 ((struct instance_standard__NativeArray
*)var20
)->values
[2]=var26
;
5413 ((struct instance_standard__NativeArray
*)var20
)->values
[1]=var_name
;
5415 var29
= ((val
*(*)(val
* self
))(var20
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var20
); /* native_to_s on <var20:NativeArray[String]>*/
5419 template___template__Template___addn(self
, var29
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5421 if (likely(varonce30
!=NULL
)) {
5425 var33
= standard___standard__NativeString___to_s_with_length(var32
, 1l);
5430 template___template__Template___addn(self
, var31
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5432 if (likely(varonce34
!=NULL
)) {
5435 var36
= "\tlocal cur prev opts";
5436 var37
= standard___standard__NativeString___to_s_with_length(var36
, 20l);
5441 template___template__Template___addn(self
, var35
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5443 if (likely(varonce38
!=NULL
)) {
5446 var40
= "\tCOMPREPLY=()";
5447 var41
= standard___standard__NativeString___to_s_with_length(var40
, 13l);
5452 template___template__Template___addn(self
, var39
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5454 if (likely(varonce42
!=NULL
)) {
5457 var44
= "\tcur=\"${COMP_WORDS[COMP_CWORD]}\"";
5458 var45
= standard___standard__NativeString___to_s_with_length(var44
, 32l);
5463 template___template__Template___addn(self
, var43
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5465 if (likely(varonce46
!=NULL
)) {
5468 var48
= "\tprev=\"${COMP_WORDS[COMP_CWORD-1]}\"";
5469 var49
= standard___standard__NativeString___to_s_with_length(var48
, 35l);
5474 template___template__Template___addn(self
, var47
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5477 var50
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_option_names
);
5481 if (unlikely(varonce52
==NULL
)) {
5482 var53
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
5483 if (likely(varonce54
!=NULL
)) {
5486 var56
= "\topts=\"";
5487 var57
= standard___standard__NativeString___to_s_with_length(var56
, 7l);
5491 ((struct instance_standard__NativeArray
*)var53
)->values
[0]=var55
;
5492 if (likely(varonce58
!=NULL
)) {
5496 var61
= standard___standard__NativeString___to_s_with_length(var60
, 1l);
5500 ((struct instance_standard__NativeArray
*)var53
)->values
[2]=var59
;
5505 if (likely(varonce62
!=NULL
)) {
5509 var65
= standard___standard__NativeString___to_s_with_length(var64
, 1l);
5514 var66
= standard__string___Collection___join(var_option_names
, var63
);
5516 ((struct instance_standard__NativeArray
*)var53
)->values
[1]=var66
;
5518 var67
= ((val
*(*)(val
* self
))(var53
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var53
); /* native_to_s on <var53:NativeArray[String]>*/
5522 template___template__Template___addn(self
, var67
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5524 if (likely(varonce68
!=NULL
)) {
5527 var70
= "\tif [[ ${cur} == -* ]] ; then";
5528 var71
= standard___standard__NativeString___to_s_with_length(var70
, 29l);
5533 template___template__Template___addn(self
, var69
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5535 if (likely(varonce72
!=NULL
)) {
5538 var74
= "\t\tCOMPREPLY=( $(compgen -W \"${opts}\" -- ${cur}) )";
5539 var75
= standard___standard__NativeString___to_s_with_length(var74
, 49l);
5544 template___template__Template___addn(self
, var73
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5546 if (likely(varonce76
!=NULL
)) {
5549 var78
= "\t\treturn 0";
5550 var79
= standard___standard__NativeString___to_s_with_length(var78
, 10l);
5555 template___template__Template___addn(self
, var77
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5557 if (likely(varonce80
!=NULL
)) {
5561 var83
= standard___standard__NativeString___to_s_with_length(var82
, 3l);
5566 template___template__Template___addn(self
, var81
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5570 if (likely(varonce84
!=NULL
)) {
5574 var87
= standard___standard__NativeString___to_s_with_length(var86
, 4l);
5579 template___template__Template___addn(self
, var85
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5581 if (unlikely(varonce88
==NULL
)) {
5582 var89
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
5583 if (likely(varonce90
!=NULL
)) {
5586 var92
= "complete -o default -F _";
5587 var93
= standard___standard__NativeString___to_s_with_length(var92
, 24l);
5591 ((struct instance_standard__NativeArray
*)var89
)->values
[0]=var91
;
5592 if (likely(varonce94
!=NULL
)) {
5596 var97
= standard___standard__NativeString___to_s_with_length(var96
, 1l);
5600 ((struct instance_standard__NativeArray
*)var89
)->values
[2]=var95
;
5605 ((struct instance_standard__NativeArray
*)var89
)->values
[1]=var_name
;
5606 ((struct instance_standard__NativeArray
*)var89
)->values
[3]=var_name
;
5608 var98
= ((val
*(*)(val
* self
))(var89
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var89
); /* native_to_s on <var89:NativeArray[String]>*/
5612 template___template__Template___addn(self
, var98
); /* Direct call template#Template#addn on <self:BashCompletion>*/
5616 /* method toolcontext#BashCompletion#init for (self: BashCompletion) */
5617 void nit___nit__BashCompletion___standard__kernel__Object__init(val
* self
) {
5619 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit___nit__BashCompletion___standard__kernel__Object__init
]))(self
); /* init on <self:BashCompletion>*/