1 #include "opts.sep.0.h"
2 /* method opts#Option#names for (self: Option): Array[String] */
3 val
* opts__Option__names(val
* self
) {
4 val
* var
/* : Array[String] */;
5 val
* var1
/* : Array[String] */;
6 var1
= self
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <self:Option> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
9 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 19);
16 /* method opts#Option#names for (self: Object): Array[String] */
17 val
* VIRTUAL_opts__Option__names(val
* self
) {
18 val
* var
/* : Array[String] */;
19 val
* var1
/* : Array[String] */;
20 val
* var3
/* : Array[String] */;
21 { /* Inline opts#Option#names (self) on <self:Object(Option)> */
22 var3
= self
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <self:Object(Option)> */
23 if (unlikely(var3
== NULL
)) {
24 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
25 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 19);
35 /* method opts#Option#names= for (self: Option, Array[String]) */
36 void opts__Option__names_61d(val
* self
, val
* p0
) {
37 self
->attrs
[COLOR_opts__Option___names
].val
= p0
; /* _names on <self:Option> */
40 /* method opts#Option#names= for (self: Object, Array[String]) */
41 void VIRTUAL_opts__Option__names_61d(val
* self
, val
* p0
) {
42 { /* Inline opts#Option#names= (self,p0) on <self:Object(Option)> */
43 self
->attrs
[COLOR_opts__Option___names
].val
= p0
; /* _names on <self:Object(Option)> */
48 /* method opts#Option#helptext for (self: Option): String */
49 val
* opts__Option__helptext(val
* self
) {
50 val
* var
/* : String */;
51 val
* var1
/* : String */;
52 var1
= self
->attrs
[COLOR_opts__Option___helptext
].val
; /* _helptext on <self:Option> */
53 if (unlikely(var1
== NULL
)) {
54 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _helptext");
55 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 25);
62 /* method opts#Option#helptext for (self: Object): String */
63 val
* VIRTUAL_opts__Option__helptext(val
* self
) {
64 val
* var
/* : String */;
65 val
* var1
/* : String */;
66 val
* var3
/* : String */;
67 { /* Inline opts#Option#helptext (self) on <self:Object(Option)> */
68 var3
= self
->attrs
[COLOR_opts__Option___helptext
].val
; /* _helptext on <self:Object(Option)> */
69 if (unlikely(var3
== NULL
)) {
70 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _helptext");
71 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 25);
81 /* method opts#Option#helptext= for (self: Option, String) */
82 void opts__Option__helptext_61d(val
* self
, val
* p0
) {
83 self
->attrs
[COLOR_opts__Option___helptext
].val
= p0
; /* _helptext on <self:Option> */
86 /* method opts#Option#helptext= for (self: Object, String) */
87 void VIRTUAL_opts__Option__helptext_61d(val
* self
, val
* p0
) {
88 { /* Inline opts#Option#helptext= (self,p0) on <self:Object(Option)> */
89 self
->attrs
[COLOR_opts__Option___helptext
].val
= p0
; /* _helptext on <self:Object(Option)> */
94 /* method opts#Option#errors for (self: Option): Array[String] */
95 val
* opts__Option__errors(val
* self
) {
96 val
* var
/* : Array[String] */;
97 val
* var1
/* : Array[String] */;
98 var1
= self
->attrs
[COLOR_opts__Option___errors
].val
; /* _errors on <self:Option> */
99 if (unlikely(var1
== NULL
)) {
100 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors");
101 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 28);
108 /* method opts#Option#errors for (self: Object): Array[String] */
109 val
* VIRTUAL_opts__Option__errors(val
* self
) {
110 val
* var
/* : Array[String] */;
111 val
* var1
/* : Array[String] */;
112 val
* var3
/* : Array[String] */;
113 { /* Inline opts#Option#errors (self) on <self:Object(Option)> */
114 var3
= self
->attrs
[COLOR_opts__Option___errors
].val
; /* _errors on <self:Object(Option)> */
115 if (unlikely(var3
== NULL
)) {
116 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors");
117 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 28);
127 /* method opts#Option#mandatory for (self: Option): Bool */
128 short int opts__Option__mandatory(val
* self
) {
129 short int var
/* : Bool */;
130 short int var1
/* : Bool */;
131 var1
= self
->attrs
[COLOR_opts__Option___mandatory
].s
; /* _mandatory on <self:Option> */
136 /* method opts#Option#mandatory for (self: Object): Bool */
137 short int VIRTUAL_opts__Option__mandatory(val
* self
) {
138 short int var
/* : Bool */;
139 short int var1
/* : Bool */;
140 short int var3
/* : Bool */;
141 { /* Inline opts#Option#mandatory (self) on <self:Object(Option)> */
142 var3
= self
->attrs
[COLOR_opts__Option___mandatory
].s
; /* _mandatory on <self:Object(Option)> */
150 /* method opts#Option#hidden for (self: Option): Bool */
151 short int opts__Option__hidden(val
* self
) {
152 short int var
/* : Bool */;
153 short int var1
/* : Bool */;
154 var1
= self
->attrs
[COLOR_opts__Option___hidden
].s
; /* _hidden on <self:Option> */
159 /* method opts#Option#hidden for (self: Object): Bool */
160 short int VIRTUAL_opts__Option__hidden(val
* self
) {
161 short int var
/* : Bool */;
162 short int var1
/* : Bool */;
163 short int var3
/* : Bool */;
164 { /* Inline opts#Option#hidden (self) on <self:Object(Option)> */
165 var3
= self
->attrs
[COLOR_opts__Option___hidden
].s
; /* _hidden on <self:Object(Option)> */
173 /* method opts#Option#read for (self: Option): Bool */
174 short int opts__Option__read(val
* self
) {
175 short int var
/* : Bool */;
176 short int var1
/* : Bool */;
177 var1
= self
->attrs
[COLOR_opts__Option___read
].s
; /* _read on <self:Option> */
182 /* method opts#Option#read for (self: Object): Bool */
183 short int VIRTUAL_opts__Option__read(val
* self
) {
184 short int var
/* : Bool */;
185 short int var1
/* : Bool */;
186 short int var3
/* : Bool */;
187 { /* Inline opts#Option#read (self) on <self:Object(Option)> */
188 var3
= self
->attrs
[COLOR_opts__Option___read
].s
; /* _read on <self:Object(Option)> */
196 /* method opts#Option#read= for (self: Option, Bool) */
197 void opts__Option__read_61d(val
* self
, short int p0
) {
198 self
->attrs
[COLOR_opts__Option___read
].s
= p0
; /* _read on <self:Option> */
201 /* method opts#Option#read= for (self: Object, Bool) */
202 void VIRTUAL_opts__Option__read_61d(val
* self
, short int p0
) {
203 { /* Inline opts#Option#read= (self,p0) on <self:Object(Option)> */
204 self
->attrs
[COLOR_opts__Option___read
].s
= p0
; /* _read on <self:Object(Option)> */
209 /* method opts#Option#value for (self: Option): nullable Object */
210 val
* opts__Option__value(val
* self
) {
211 val
* var
/* : nullable Object */;
212 val
* var1
/* : nullable Object */;
213 var1
= self
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <self:Option> */
218 /* method opts#Option#value for (self: Object): nullable Object */
219 val
* VIRTUAL_opts__Option__value(val
* self
) {
220 val
* var
/* : nullable Object */;
221 val
* var1
/* : nullable Object */;
222 val
* var3
/* : nullable Object */;
223 { /* Inline opts#Option#value (self) on <self:Object(Option)> */
224 var3
= self
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <self:Object(Option)> */
232 /* method opts#Option#value= for (self: Option, nullable Object) */
233 void opts__Option__value_61d(val
* self
, val
* p0
) {
234 short int var
/* : Bool */;
237 const struct type
* type_struct
;
238 short int is_nullable
;
239 const char* var_class_name
;
240 /* Covariant cast for argument 0 (value) <p0:nullable Object> isa VALUE */
241 /* <p0:nullable Object> isa VALUE */
242 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
243 cltype
= type_struct
->color
;
244 idtype
= type_struct
->id
;
245 is_nullable
= type_struct
->is_nullable
;
249 if(cltype
>= p0
->type
->table_size
) {
252 var
= p0
->type
->type_table
[cltype
] == idtype
;
255 if (unlikely(!var
)) {
256 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
257 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
258 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 40);
261 self
->attrs
[COLOR_opts__Option___value
].val
= p0
; /* _value on <self:Option> */
264 /* method opts#Option#value= for (self: Object, nullable Object) */
265 void VIRTUAL_opts__Option__value_61d(val
* self
, val
* p0
) {
266 short int var
/* : Bool */;
269 const struct type
* type_struct
;
270 short int is_nullable
;
271 const char* var_class_name
;
272 { /* Inline opts#Option#value= (self,p0) on <self:Object(Option)> */
273 /* Covariant cast for argument 0 (value) <p0:nullable Object> isa VALUE */
274 /* <p0:nullable Object> isa VALUE */
275 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
276 cltype
= type_struct
->color
;
277 idtype
= type_struct
->id
;
278 is_nullable
= type_struct
->is_nullable
;
282 if(cltype
>= p0
->type
->table_size
) {
285 var
= p0
->type
->type_table
[cltype
] == idtype
;
288 if (unlikely(!var
)) {
289 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
290 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
291 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 40);
294 self
->attrs
[COLOR_opts__Option___value
].val
= p0
; /* _value on <self:Object(Option)> */
299 /* method opts#Option#default_value= for (self: Option, nullable Object) */
300 void opts__Option__default_value_61d(val
* self
, val
* p0
) {
301 short int var
/* : Bool */;
304 const struct type
* type_struct
;
305 short int is_nullable
;
306 const char* var_class_name
;
307 /* Covariant cast for argument 0 (default_value) <p0:nullable Object> isa VALUE */
308 /* <p0:nullable Object> isa VALUE */
309 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
310 cltype
= type_struct
->color
;
311 idtype
= type_struct
->id
;
312 is_nullable
= type_struct
->is_nullable
;
316 if(cltype
>= p0
->type
->table_size
) {
319 var
= p0
->type
->type_table
[cltype
] == idtype
;
322 if (unlikely(!var
)) {
323 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
324 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
325 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 43);
328 self
->attrs
[COLOR_opts__Option___default_value
].val
= p0
; /* _default_value on <self:Option> */
331 /* method opts#Option#default_value= for (self: Object, nullable Object) */
332 void VIRTUAL_opts__Option__default_value_61d(val
* self
, val
* p0
) {
333 short int var
/* : Bool */;
336 const struct type
* type_struct
;
337 short int is_nullable
;
338 const char* var_class_name
;
339 { /* Inline opts#Option#default_value= (self,p0) on <self:Object(Option)> */
340 /* Covariant cast for argument 0 (default_value) <p0:nullable Object> isa VALUE */
341 /* <p0:nullable Object> isa VALUE */
342 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
343 cltype
= type_struct
->color
;
344 idtype
= type_struct
->id
;
345 is_nullable
= type_struct
->is_nullable
;
349 if(cltype
>= p0
->type
->table_size
) {
352 var
= p0
->type
->type_table
[cltype
] == idtype
;
355 if (unlikely(!var
)) {
356 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
357 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
358 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 43);
361 self
->attrs
[COLOR_opts__Option___default_value
].val
= p0
; /* _default_value on <self:Object(Option)> */
366 /* method opts#Option#init for (self: Option, String, nullable Object, nullable Array[String]) */
367 void opts__Option__init(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
368 short int var
/* : Bool */;
371 const struct type
* type_struct
;
372 short int is_nullable
;
373 const char* var_class_name
;
374 val
* var_help
/* var help: String */;
375 val
* var_default
/* var default: nullable Object */;
376 val
* var_names
/* var names: nullable Array[String] */;
377 /* Covariant cast for argument 1 (default) <p1:nullable Object> isa VALUE */
378 /* <p1:nullable Object> isa VALUE */
379 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
380 cltype
= type_struct
->color
;
381 idtype
= type_struct
->id
;
382 is_nullable
= type_struct
->is_nullable
;
386 if(cltype
>= p1
->type
->table_size
) {
389 var
= p1
->type
->type_table
[cltype
] == idtype
;
392 if (unlikely(!var
)) {
393 var_class_name
= p1
== NULL ?
"null" : p1
->type
->name
;
394 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
395 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 46);
402 opts__Option__init_opt(self
, var_help
, var_default
, var_names
); /* Direct call opts#Option#init_opt on <self:Option>*/
406 /* method opts#Option#init for (self: Object, String, nullable Object, nullable Array[String]) */
407 void VIRTUAL_opts__Option__init(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
408 opts__Option__init(self
, p0
, p1
, p2
); /* Direct call opts#Option#init on <self:Object(Option)>*/
411 /* method opts#Option#init_opt for (self: Option, String, nullable Object, nullable Array[String]) */
412 void opts__Option__init_opt(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
413 short int var
/* : Bool */;
416 const struct type
* type_struct
;
417 short int is_nullable
;
418 const char* var_class_name
;
419 val
* var_help
/* var help: String */;
420 val
* var_default
/* var default: nullable Object */;
421 val
* var_names
/* var names: nullable Array[String] */;
422 val
* var1
/* : null */;
423 short int var2
/* : Bool */;
424 short int var3
/* : Bool */;
425 val
* var4
/* : Array[String] */;
426 val
* var6
/* : Array[nullable Object] */;
427 short int var10
/* : Bool */;
430 const struct type
* type_struct13
;
431 short int is_nullable14
;
432 const char* var_class_name15
;
433 short int var17
/* : Bool */;
436 const struct type
* type_struct20
;
437 short int is_nullable21
;
438 const char* var_class_name22
;
439 /* Covariant cast for argument 1 (default) <p1:nullable Object> isa VALUE */
440 /* <p1:nullable Object> isa VALUE */
441 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
442 cltype
= type_struct
->color
;
443 idtype
= type_struct
->id
;
444 is_nullable
= type_struct
->is_nullable
;
448 if(cltype
>= p1
->type
->table_size
) {
451 var
= p1
->type
->type_table
[cltype
] == idtype
;
454 if (unlikely(!var
)) {
455 var_class_name
= p1
== NULL ?
"null" : p1
->type
->name
;
456 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
457 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 52);
464 if (var_names
== NULL
) {
465 var2
= 1; /* is null */
467 var2
= 0; /* arg is null but recv is not */
470 var3
= array__Array___61d_61d(var_names
, var1
);
474 var4
= NEW_array__Array(&type_array__Arraystring__String
);
476 ((void (*)(val
*))(var4
->class->vft
[COLOR_kernel__Object__init
]))(var4
) /* init on <var4:Array[String]>*/;
479 { /* Inline opts#Option#names= (self,var4) on <self:Option> */
480 self
->attrs
[COLOR_opts__Option___names
].val
= var4
; /* _names on <self:Option> */
486 var6
= array__Collection__to_a(var_names
);
489 { /* Inline opts#Option#names= (self,var6) on <self:Option> */
490 self
->attrs
[COLOR_opts__Option___names
].val
= var6
; /* _names on <self:Option> */
496 { /* Inline opts#Option#helptext= (self,var_help) on <self:Option> */
497 self
->attrs
[COLOR_opts__Option___helptext
].val
= var_help
; /* _helptext on <self:Option> */
502 { /* Inline opts#Option#default_value= (self,var_default) on <self:Option> */
503 /* Covariant cast for argument 0 (default_value) <var_default:nullable Object> isa VALUE */
504 /* <var_default:nullable Object> isa VALUE */
505 type_struct13
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
506 cltype11
= type_struct13
->color
;
507 idtype12
= type_struct13
->id
;
508 is_nullable14
= type_struct13
->is_nullable
;
509 if(var_default
== NULL
) {
510 var10
= is_nullable14
;
512 if(cltype11
>= var_default
->type
->table_size
) {
515 var10
= var_default
->type
->type_table
[cltype11
] == idtype12
;
518 if (unlikely(!var10
)) {
519 var_class_name15
= var_default
== NULL ?
"null" : var_default
->type
->name
;
520 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name15
);
521 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 43);
524 self
->attrs
[COLOR_opts__Option___default_value
].val
= var_default
; /* _default_value on <self:Option> */
529 { /* Inline opts#Option#value= (self,var_default) on <self:Option> */
530 /* Covariant cast for argument 0 (value) <var_default:nullable Object> isa VALUE */
531 /* <var_default:nullable Object> isa VALUE */
532 type_struct20
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
533 cltype18
= type_struct20
->color
;
534 idtype19
= type_struct20
->id
;
535 is_nullable21
= type_struct20
->is_nullable
;
536 if(var_default
== NULL
) {
537 var17
= is_nullable21
;
539 if(cltype18
>= var_default
->type
->table_size
) {
542 var17
= var_default
->type
->type_table
[cltype18
] == idtype19
;
545 if (unlikely(!var17
)) {
546 var_class_name22
= var_default
== NULL ?
"null" : var_default
->type
->name
;
547 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name22
);
548 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 40);
551 self
->attrs
[COLOR_opts__Option___value
].val
= var_default
; /* _value on <self:Option> */
557 /* method opts#Option#init_opt for (self: Object, String, nullable Object, nullable Array[String]) */
558 void VIRTUAL_opts__Option__init_opt(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
559 opts__Option__init_opt(self
, p0
, p1
, p2
); /* Direct call opts#Option#init_opt on <self:Object(Option)>*/
562 /* method opts#Option#to_s for (self: Option): String */
563 val
* opts__Option__to_s(val
* self
) {
564 val
* var
/* : String */;
565 long var1
/* : Int */;
566 val
* var2
/* : String */;
569 var2
= opts__Option__pretty(self
, var1
);
576 /* method opts#Option#to_s for (self: Object): String */
577 val
* VIRTUAL_opts__Option__to_s(val
* self
) {
578 val
* var
/* : String */;
579 val
* var1
/* : String */;
580 var1
= opts__Option__to_s(self
);
585 /* method opts#Option#pretty for (self: Option, Int): String */
586 val
* opts__Option__pretty(val
* self
, long p0
) {
587 val
* var
/* : String */;
588 long var_off
/* var off: Int */;
589 val
* var1
/* : FlatBuffer */;
591 val
* var2
/* : String */;
592 char* var3
/* : NativeString */;
593 long var4
/* : Int */;
594 val
* var5
/* : FlatString */;
595 val
* var_text
/* var text: FlatBuffer */;
596 val
* var6
/* : Array[String] */;
597 val
* var8
/* : Array[String] */;
598 static val
* varonce9
;
599 val
* var10
/* : String */;
600 char* var11
/* : NativeString */;
601 long var12
/* : Int */;
602 val
* var13
/* : FlatString */;
603 val
* var14
/* : String */;
604 static val
* varonce15
;
605 val
* var16
/* : String */;
606 char* var17
/* : NativeString */;
607 long var18
/* : Int */;
608 val
* var19
/* : FlatString */;
609 long var20
/* : Int */;
610 long var22
/* : Int */;
611 long var23
/* : Int */;
612 short int var25
/* : Bool */;
615 const char* var_class_name
;
616 long var26
/* : Int */;
617 long var_rest
/* var rest: Int */;
618 long var27
/* : Int */;
619 short int var28
/* : Bool */;
620 short int var30
/* : Bool */;
623 const char* var_class_name33
;
624 short int var34
/* : Bool */;
625 static val
* varonce35
;
626 val
* var36
/* : String */;
627 char* var37
/* : NativeString */;
628 long var38
/* : Int */;
629 val
* var39
/* : FlatString */;
630 val
* var40
/* : String */;
631 val
* var41
/* : String */;
632 val
* var43
/* : String */;
633 val
* var44
/* : String */;
635 var1
= NEW_string__FlatBuffer(&type_string__FlatBuffer
);
641 var5
= string__NativeString__to_s_with_length(var3
, var4
);
646 string__FlatBuffer__from(var1
, var2
); /* Direct call string#FlatBuffer#from on <var1:FlatBuffer>*/
650 { /* Inline opts#Option#names (self) on <self:Option> */
651 var8
= self
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <self:Option> */
652 if (unlikely(var8
== NULL
)) {
653 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
654 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 19);
666 var13
= string__NativeString__to_s_with_length(var11
, var12
);
671 var14
= string__Collection__join(var6
, var10
);
674 string__FlatBuffer__append(var_text
, var14
); /* Direct call string#FlatBuffer#append on <var_text:FlatBuffer>*/
681 var19
= string__NativeString__to_s_with_length(var17
, var18
);
686 string__FlatBuffer__append(var_text
, var16
); /* Direct call string#FlatBuffer#append on <var_text:FlatBuffer>*/
689 { /* Inline string#FlatText#length (var_text) on <var_text:FlatBuffer> */
690 var22
= var_text
->attrs
[COLOR_string__FlatText___length
].l
; /* _length on <var_text:FlatBuffer> */
696 { /* Inline kernel#Int#- (var_off,var20) on <var_off:Int> */
697 /* Covariant cast for argument 0 (i) <var20:Int> isa OTHER */
698 /* <var20:Int> isa OTHER */
699 var25
= 1; /* easy <var20:Int> isa OTHER*/
700 if (unlikely(!var25
)) {
701 var_class_name
= type_kernel__Int
.name
;
702 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
703 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 377);
706 var26
= var_off
- var20
;
715 { /* Inline kernel#Int#> (var_rest,var27) on <var_rest:Int> */
716 /* Covariant cast for argument 0 (i) <var27:Int> isa OTHER */
717 /* <var27:Int> isa OTHER */
718 var30
= 1; /* easy <var27:Int> isa OTHER*/
719 if (unlikely(!var30
)) {
720 var_class_name33
= type_kernel__Int
.name
;
721 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name33
);
722 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 373);
725 var34
= var_rest
> var27
;
737 var39
= string__NativeString__to_s_with_length(var37
, var38
);
742 var40
= string__FlatString___42d(var36
, var_rest
);
745 string__FlatBuffer__append(var_text
, var40
); /* Direct call string#FlatBuffer#append on <var_text:FlatBuffer>*/
750 { /* Inline opts#Option#helptext (self) on <self:Option> */
751 var43
= self
->attrs
[COLOR_opts__Option___helptext
].val
; /* _helptext on <self:Option> */
752 if (unlikely(var43
== NULL
)) {
753 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _helptext");
754 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 25);
762 string__FlatBuffer__append(var_text
, var41
); /* Direct call string#FlatBuffer#append on <var_text:FlatBuffer>*/
765 var44
= string__FlatBuffer__to_s(var_text
);
772 /* method opts#Option#pretty for (self: Object, Int): String */
773 val
* VIRTUAL_opts__Option__pretty(val
* self
, long p0
) {
774 val
* var
/* : String */;
775 val
* var1
/* : String */;
776 var1
= opts__Option__pretty(self
, p0
);
781 /* method opts#Option#read_param for (self: Option, Iterator[String]) */
782 void opts__Option__read_param(val
* self
, val
* p0
) {
783 val
* var_it
/* var it: Iterator[String] */;
784 short int var
/* : Bool */;
788 { /* Inline opts#Option#read= (self,var) on <self:Option> */
789 self
->attrs
[COLOR_opts__Option___read
].s
= var
; /* _read on <self:Option> */
795 /* method opts#Option#read_param for (self: Object, Iterator[String]) */
796 void VIRTUAL_opts__Option__read_param(val
* self
, val
* p0
) {
797 opts__Option__read_param(self
, p0
); /* Direct call opts#Option#read_param on <self:Object(Option)>*/
800 /* method opts#OptionBool#init for (self: OptionBool, String, Array[String]) */
801 void opts__OptionBool__init(val
* self
, val
* p0
, val
* p1
) {
802 val
* var_help
/* var help: String */;
803 val
* var_names
/* var names: Array[String] */;
804 short int var
/* : Bool */;
805 val
* var1
/* : nullable Object */;
810 var1
= BOX_kernel__Bool(var
); /* autobox from Bool to nullable Object */
811 opts__Option__init(self
, var_help
, var1
, var_names
); /* Direct call opts#Option#init on <self:OptionBool>*/
815 /* method opts#OptionBool#init for (self: Object, String, Array[String]) */
816 void VIRTUAL_opts__OptionBool__init(val
* self
, val
* p0
, val
* p1
) {
817 opts__OptionBool__init(self
, p0
, p1
); /* Direct call opts#OptionBool#init on <self:Object(OptionBool)>*/
820 /* method opts#OptionBool#read_param for (self: OptionBool, Iterator[String]) */
821 void opts__OptionBool__read_param(val
* self
, val
* p0
) {
822 val
* var_it
/* var it: Iterator[String] */;
823 short int var
/* : Bool */;
824 short int var2
/* : Bool */;
827 const struct type
* type_struct
;
828 const char* var_class_name
;
829 val
* var3
/* : nullable Object */;
832 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_opts__OptionBool__read_param
]))(self
, p0
) /* read_param on <self:OptionBool>*/;
836 { /* Inline opts#Option#value= (self,var) on <self:OptionBool> */
837 /* Covariant cast for argument 0 (value) <var:Bool> isa VALUE */
838 /* <var:Bool> isa VALUE */
839 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
840 cltype
= type_struct
->color
;
841 idtype
= type_struct
->id
;
842 if(cltype
>= (&type_kernel__Bool
)->table_size
) {
845 var2
= (&type_kernel__Bool
)->type_table
[cltype
] == idtype
;
847 if (unlikely(!var2
)) {
848 var_class_name
= type_kernel__Bool
.name
;
849 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
850 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 40);
853 var3
= BOX_kernel__Bool(var
); /* autobox from Bool to nullable Object */
854 self
->attrs
[COLOR_opts__Option___value
].val
= var3
; /* _value on <self:OptionBool> */
860 /* method opts#OptionBool#read_param for (self: Object, Iterator[String]) */
861 void VIRTUAL_opts__OptionBool__read_param(val
* self
, val
* p0
) {
862 opts__OptionBool__read_param(self
, p0
); /* Direct call opts#OptionBool#read_param on <self:Object(OptionBool)>*/
865 /* method opts#OptionCount#init for (self: OptionCount, String, Array[String]) */
866 void opts__OptionCount__init(val
* self
, val
* p0
, val
* p1
) {
867 val
* var_help
/* var help: String */;
868 val
* var_names
/* var names: Array[String] */;
869 long var
/* : Int */;
870 val
* var1
/* : nullable Object */;
875 var1
= BOX_kernel__Int(var
); /* autobox from Int to nullable Object */
876 opts__Option__init(self
, var_help
, var1
, var_names
); /* Direct call opts#Option#init on <self:OptionCount>*/
880 /* method opts#OptionCount#init for (self: Object, String, Array[String]) */
881 void VIRTUAL_opts__OptionCount__init(val
* self
, val
* p0
, val
* p1
) {
882 opts__OptionCount__init(self
, p0
, p1
); /* Direct call opts#OptionCount#init on <self:Object(OptionCount)>*/
885 /* method opts#OptionCount#read_param for (self: OptionCount, Iterator[String]) */
886 void opts__OptionCount__read_param(val
* self
, val
* p0
) {
887 val
* var_it
/* var it: Iterator[String] */;
888 val
* var_
/* var : OptionCount */;
889 val
* var
/* : nullable Object */;
890 val
* var2
/* : nullable Object */;
891 long var3
/* : Int */;
892 long var4
/* : Int */;
893 short int var6
/* : Bool */;
896 const char* var_class_name
;
897 long var7
/* : Int */;
898 long var8
/* : Int */;
899 short int var10
/* : Bool */;
902 const struct type
* type_struct
;
903 const char* var_class_name13
;
904 val
* var14
/* : nullable Object */;
907 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_opts__OptionCount__read_param
]))(self
, p0
) /* read_param on <self:OptionCount>*/;
911 { /* Inline opts#Option#value (var_) on <var_:OptionCount> */
912 var2
= var_
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var_:OptionCount> */
919 { /* Inline kernel#Int#+ (var,var3) on <var:nullable Object(Int)> */
920 /* Covariant cast for argument 0 (i) <var3:Int> isa OTHER */
921 /* <var3:Int> isa OTHER */
922 var6
= 1; /* easy <var3:Int> isa OTHER*/
923 if (unlikely(!var6
)) {
924 var_class_name
= type_kernel__Int
.name
;
925 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
926 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 374);
929 var7
= ((struct instance_kernel__Int
*)var
)->value
; /* autounbox from nullable Object to Int */;
937 { /* Inline opts#Option#value= (var_,var4) on <var_:OptionCount> */
938 /* Covariant cast for argument 0 (value) <var4:Int> isa VALUE */
939 /* <var4:Int> isa VALUE */
940 type_struct
= var_
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
941 cltype11
= type_struct
->color
;
942 idtype12
= type_struct
->id
;
943 if(cltype11
>= (&type_kernel__Int
)->table_size
) {
946 var10
= (&type_kernel__Int
)->type_table
[cltype11
] == idtype12
;
948 if (unlikely(!var10
)) {
949 var_class_name13
= type_kernel__Int
.name
;
950 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name13
);
951 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 40);
954 var14
= BOX_kernel__Int(var4
); /* autobox from Int to nullable Object */
955 var_
->attrs
[COLOR_opts__Option___value
].val
= var14
; /* _value on <var_:OptionCount> */
961 /* method opts#OptionCount#read_param for (self: Object, Iterator[String]) */
962 void VIRTUAL_opts__OptionCount__read_param(val
* self
, val
* p0
) {
963 opts__OptionCount__read_param(self
, p0
); /* Direct call opts#OptionCount#read_param on <self:Object(OptionCount)>*/
966 /* method opts#OptionParameter#parameter_mandatory for (self: OptionParameter): Bool */
967 short int opts__OptionParameter__parameter_mandatory(val
* self
) {
968 short int var
/* : Bool */;
969 short int var1
/* : Bool */;
970 var1
= self
->attrs
[COLOR_opts__OptionParameter___parameter_mandatory
].s
; /* _parameter_mandatory on <self:OptionParameter> */
975 /* method opts#OptionParameter#parameter_mandatory for (self: Object): Bool */
976 short int VIRTUAL_opts__OptionParameter__parameter_mandatory(val
* self
) {
977 short int var
/* : Bool */;
978 short int var1
/* : Bool */;
979 short int var3
/* : Bool */;
980 { /* Inline opts#OptionParameter#parameter_mandatory (self) on <self:Object(OptionParameter)> */
981 var3
= self
->attrs
[COLOR_opts__OptionParameter___parameter_mandatory
].s
; /* _parameter_mandatory on <self:Object(OptionParameter)> */
989 /* method opts#OptionParameter#read_param for (self: OptionParameter, Iterator[String]) */
990 void opts__OptionParameter__read_param(val
* self
, val
* p0
) {
991 val
* var_it
/* var it: Iterator[String] */;
992 short int var
/* : Bool */;
993 short int var1
/* : Bool */;
994 short int var_
/* var : Bool */;
995 val
* var2
/* : nullable Object */;
996 val
* var3
/* : SequenceRead[Char] */;
997 val
* var5
/* : SequenceRead[Char] */;
998 val
* var6
/* : nullable Object */;
999 char var7
/* : Char */;
1000 short int var8
/* : Bool */;
1001 short int var9
/* : Bool */;
1002 short int var11
/* : Bool */;
1003 char var12
/* : Char */;
1004 short int var13
/* : Bool */;
1005 val
* var14
/* : nullable Object */;
1006 val
* var15
/* : nullable Object */;
1007 short int var17
/* : Bool */;
1010 const struct type
* type_struct
;
1011 short int is_nullable
;
1012 const char* var_class_name
;
1013 short int var18
/* : Bool */;
1014 short int var20
/* : Bool */;
1015 val
* var21
/* : Array[String] */;
1016 val
* var23
/* : Array[String] */;
1017 static val
* varonce
;
1018 val
* var24
/* : String */;
1019 char* var25
/* : NativeString */;
1020 long var26
/* : Int */;
1021 val
* var27
/* : FlatString */;
1022 val
* var28
/* : Array[String] */;
1023 val
* var30
/* : Array[String] */;
1024 val
* var31
/* : nullable Object */;
1025 static val
* varonce32
;
1026 val
* var33
/* : String */;
1027 char* var34
/* : NativeString */;
1028 long var35
/* : Int */;
1029 val
* var36
/* : FlatString */;
1030 val
* var37
/* : Array[Object] */;
1031 long var38
/* : Int */;
1032 val
* var39
/* : NativeArray[Object] */;
1033 val
* var40
/* : String */;
1036 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_opts__OptionParameter__read_param
]))(self
, p0
) /* read_param on <self:OptionParameter>*/;
1039 var1
= ((short int (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var_it
) /* is_ok on <var_it:Iterator[String]>*/;
1044 var2
= ((val
* (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var_it
) /* item on <var_it:Iterator[String]>*/;
1047 { /* Inline string#FlatString#chars (var2) on <var2:nullable Object(String)> */
1048 var5
= var2
->attrs
[COLOR_string__FlatString___chars
].val
; /* _chars on <var2:nullable Object(String)> */
1049 if (unlikely(var5
== NULL
)) {
1050 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _chars");
1051 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/string.nit", 939);
1059 var6
= ((val
* (*)(val
*))(var3
->class->vft
[COLOR_abstract_collection__Collection__first
]))(var3
) /* first on <var3:SequenceRead[Char]>*/;
1063 { /* Inline kernel#Char#!= (var6,var7) on <var6:nullable Object(Char)> */
1064 var11
= (var6
!= NULL
) && (var6
->class == &class_kernel__Char
);
1066 var12
= ((struct instance_kernel__Char
*)var6
)->value
; /* autounbox from nullable Object to Char */;
1067 var11
= (var12
== var7
);
1072 RET_LABEL10
:(void)0;
1082 var14
= ((val
* (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var_it
) /* item on <var_it:Iterator[String]>*/;
1085 var15
= ((val
* (*)(val
*, val
*))(self
->class->vft
[COLOR_opts__OptionParameter__convert
]))(self
, var14
) /* convert on <self:OptionParameter>*/;
1088 { /* Inline opts#Option#value= (self,var15) on <self:OptionParameter> */
1089 /* Covariant cast for argument 0 (value) <var15:nullable Object> isa VALUE */
1090 /* <var15:nullable Object> isa VALUE */
1091 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
1092 cltype
= type_struct
->color
;
1093 idtype
= type_struct
->id
;
1094 is_nullable
= type_struct
->is_nullable
;
1096 var17
= is_nullable
;
1098 if(cltype
>= var15
->type
->table_size
) {
1101 var17
= var15
->type
->type_table
[cltype
] == idtype
;
1104 if (unlikely(!var17
)) {
1105 var_class_name
= var15
== NULL ?
"null" : var15
->type
->name
;
1106 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
1107 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 40);
1110 self
->attrs
[COLOR_opts__Option___value
].val
= var15
; /* _value on <self:OptionParameter> */
1111 RET_LABEL16
:(void)0;
1115 ((void (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var_it
) /* next on <var_it:Iterator[String]>*/;
1119 { /* Inline opts#OptionParameter#parameter_mandatory (self) on <self:OptionParameter> */
1120 var20
= self
->attrs
[COLOR_opts__OptionParameter___parameter_mandatory
].s
; /* _parameter_mandatory on <self:OptionParameter> */
1122 RET_LABEL19
:(void)0;
1127 { /* Inline opts#Option#errors (self) on <self:OptionParameter> */
1128 var23
= self
->attrs
[COLOR_opts__Option___errors
].val
; /* _errors on <self:OptionParameter> */
1129 if (unlikely(var23
== NULL
)) {
1130 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors");
1131 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 28);
1135 RET_LABEL22
:(void)0;
1141 var25
= "Parameter expected for option ";
1143 var27
= string__NativeString__to_s_with_length(var25
, var26
);
1148 { /* Inline opts#Option#names (self) on <self:OptionParameter> */
1149 var30
= self
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <self:OptionParameter> */
1150 if (unlikely(var30
== NULL
)) {
1151 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
1152 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 19);
1156 RET_LABEL29
:(void)0;
1160 var31
= abstract_collection__SequenceRead__first(var28
);
1167 var36
= string__NativeString__to_s_with_length(var34
, var35
);
1171 var37
= NEW_array__Array(&type_array__Arraykernel__Object
);
1172 { /* var37 = array_instance Array[Object] */
1174 var39
= NEW_array__NativeArray(var38
, &type_array__NativeArraykernel__Object
);
1175 ((struct instance_array__NativeArray
*)var39
)->values
[0] = (val
*) var24
;
1176 ((struct instance_array__NativeArray
*)var39
)->values
[1] = (val
*) var31
;
1177 ((struct instance_array__NativeArray
*)var39
)->values
[2] = (val
*) var33
;
1179 ((void (*)(val
*, val
*, long))(var37
->class->vft
[COLOR_array__Array__with_native
]))(var37
, var39
, var38
) /* with_native on <var37:Array[Object]>*/;
1183 var40
= ((val
* (*)(val
*))(var37
->class->vft
[COLOR_string__Object__to_s
]))(var37
) /* to_s on <var37:Array[Object]>*/;
1186 array__Array__add(var21
, var40
); /* Direct call array#Array#add on <var21:Array[String]>*/
1193 /* method opts#OptionParameter#read_param for (self: Object, Iterator[String]) */
1194 void VIRTUAL_opts__OptionParameter__read_param(val
* self
, val
* p0
) {
1195 opts__OptionParameter__read_param(self
, p0
); /* Direct call opts#OptionParameter#read_param on <self:Object(OptionParameter)>*/
1198 /* method opts#OptionString#init for (self: OptionString, String, Array[String]) */
1199 void opts__OptionString__init(val
* self
, val
* p0
, val
* p1
) {
1200 val
* var_help
/* var help: String */;
1201 val
* var_names
/* var names: Array[String] */;
1202 val
* var
/* : null */;
1203 short int var1
/* : Bool */;
1206 const struct type
* type_struct
;
1207 short int is_nullable
;
1208 const char* var_class_name
;
1212 /* <var:null> isa VALUE */
1213 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
1214 cltype
= type_struct
->color
;
1215 idtype
= type_struct
->id
;
1216 is_nullable
= type_struct
->is_nullable
;
1220 if(cltype
>= var
->type
->table_size
) {
1223 var1
= var
->type
->type_table
[cltype
] == idtype
;
1226 if (unlikely(!var1
)) {
1227 var_class_name
= var
== NULL ?
"null" : var
->type
->name
;
1228 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
1229 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 162);
1233 opts__Option__init(self
, var_help
, var
, var_names
); /* Direct call opts#Option#init on <self:OptionString>*/
1237 /* method opts#OptionString#init for (self: Object, String, Array[String]) */
1238 void VIRTUAL_opts__OptionString__init(val
* self
, val
* p0
, val
* p1
) {
1239 opts__OptionString__init(self
, p0
, p1
); /* Direct call opts#OptionString#init on <self:Object(OptionString)>*/
1242 /* method opts#OptionString#convert for (self: OptionString, String): nullable String */
1243 val
* opts__OptionString__convert(val
* self
, val
* p0
) {
1244 val
* var
/* : nullable String */;
1245 val
* var_str
/* var str: String */;
1246 short int var1
/* : Bool */;
1249 const struct type
* type_struct
;
1250 const char* var_class_name
;
1252 /* <var_str:String> isa VALUE */
1253 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
1254 cltype
= type_struct
->color
;
1255 idtype
= type_struct
->id
;
1256 if(cltype
>= var_str
->type
->table_size
) {
1259 var1
= var_str
->type
->type_table
[cltype
] == idtype
;
1261 if (unlikely(!var1
)) {
1262 var_class_name
= var_str
== NULL ?
"null" : var_str
->type
->name
;
1263 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
1264 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 164);
1272 /* method opts#OptionString#convert for (self: Object, String): nullable Object */
1273 val
* VIRTUAL_opts__OptionString__convert(val
* self
, val
* p0
) {
1274 val
* var
/* : nullable Object */;
1275 val
* var1
/* : nullable String */;
1276 var1
= opts__OptionString__convert(self
, p0
);
1281 /* method opts#OptionInt#init for (self: OptionInt, String, Int, Array[String]) */
1282 void opts__OptionInt__init(val
* self
, val
* p0
, long p1
, val
* p2
) {
1283 val
* var_help
/* var help: String */;
1284 long var_default
/* var default: Int */;
1285 val
* var_names
/* var names: Array[String] */;
1286 val
* var
/* : nullable Object */;
1291 var
= BOX_kernel__Int(var_default
); /* autobox from Int to nullable Object */
1292 opts__Option__init(self
, var_help
, var
, var_names
); /* Direct call opts#Option#init on <self:OptionInt>*/
1296 /* method opts#OptionInt#init for (self: Object, String, Int, Array[String]) */
1297 void VIRTUAL_opts__OptionInt__init(val
* self
, val
* p0
, long p1
, val
* p2
) {
1298 opts__OptionInt__init(self
, p0
, p1
, p2
); /* Direct call opts#OptionInt#init on <self:Object(OptionInt)>*/
1301 /* method opts#OptionInt#convert for (self: OptionInt, String): Int */
1302 long opts__OptionInt__convert(val
* self
, val
* p0
) {
1303 long var
/* : Int */;
1304 val
* var_str
/* var str: String */;
1305 long var1
/* : Int */;
1308 var1
= string__Text__to_i(var_str
);
1315 /* method opts#OptionInt#convert for (self: Object, String): nullable Object */
1316 val
* VIRTUAL_opts__OptionInt__convert(val
* self
, val
* p0
) {
1317 val
* var
/* : nullable Object */;
1318 long var1
/* : Int */;
1319 val
* var2
/* : nullable Object */;
1320 var1
= opts__OptionInt__convert(self
, p0
);
1321 var2
= BOX_kernel__Int(var1
); /* autobox from Int to nullable Object */
1326 /* method opts#OptionArray#init for (self: OptionArray, String, Array[String]) */
1327 void opts__OptionArray__init(val
* self
, val
* p0
, val
* p1
) {
1328 val
* var_help
/* var help: String */;
1329 val
* var_names
/* var names: Array[String] */;
1330 val
* var
/* : Array[String] */;
1331 val
* var2
/* : Array[String] */;
1332 val
* var4
/* : Array[String] */;
1333 short int var5
/* : Bool */;
1336 const struct type
* type_struct
;
1337 const char* var_class_name
;
1340 var
= NEW_array__Array(&type_array__Arraystring__String
);
1342 ((void (*)(val
*))(var
->class->vft
[COLOR_kernel__Object__init
]))(var
) /* init on <var:Array[String]>*/;
1345 { /* Inline opts#OptionArray#values= (self,var) on <self:OptionArray> */
1346 self
->attrs
[COLOR_opts__OptionArray___values
].val
= var
; /* _values on <self:OptionArray> */
1351 { /* Inline opts#OptionArray#values (self) on <self:OptionArray> */
1352 var4
= self
->attrs
[COLOR_opts__OptionArray___values
].val
; /* _values on <self:OptionArray> */
1353 if (unlikely(var4
== NULL
)) {
1354 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values");
1355 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 233);
1362 /* <var2:Array[String]> isa VALUE */
1363 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
1364 cltype
= type_struct
->color
;
1365 idtype
= type_struct
->id
;
1366 if(cltype
>= var2
->type
->table_size
) {
1369 var5
= var2
->type
->type_table
[cltype
] == idtype
;
1371 if (unlikely(!var5
)) {
1372 var_class_name
= var2
== NULL ?
"null" : var2
->type
->name
;
1373 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
1374 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 230);
1378 opts__Option__init(self
, var_help
, var2
, var_names
); /* Direct call opts#Option#init on <self:OptionArray>*/
1382 /* method opts#OptionArray#init for (self: Object, String, Array[String]) */
1383 void VIRTUAL_opts__OptionArray__init(val
* self
, val
* p0
, val
* p1
) {
1384 opts__OptionArray__init(self
, p0
, p1
); /* Direct call opts#OptionArray#init on <self:Object(OptionArray)>*/
1387 /* method opts#OptionArray#values for (self: OptionArray): Array[String] */
1388 val
* opts__OptionArray__values(val
* self
) {
1389 val
* var
/* : Array[String] */;
1390 val
* var1
/* : Array[String] */;
1391 var1
= self
->attrs
[COLOR_opts__OptionArray___values
].val
; /* _values on <self:OptionArray> */
1392 if (unlikely(var1
== NULL
)) {
1393 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values");
1394 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 233);
1401 /* method opts#OptionArray#values for (self: Object): Array[String] */
1402 val
* VIRTUAL_opts__OptionArray__values(val
* self
) {
1403 val
* var
/* : Array[String] */;
1404 val
* var1
/* : Array[String] */;
1405 val
* var3
/* : Array[String] */;
1406 { /* Inline opts#OptionArray#values (self) on <self:Object(OptionArray)> */
1407 var3
= self
->attrs
[COLOR_opts__OptionArray___values
].val
; /* _values on <self:Object(OptionArray)> */
1408 if (unlikely(var3
== NULL
)) {
1409 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values");
1410 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 233);
1420 /* method opts#OptionArray#values= for (self: OptionArray, Array[String]) */
1421 void opts__OptionArray__values_61d(val
* self
, val
* p0
) {
1422 self
->attrs
[COLOR_opts__OptionArray___values
].val
= p0
; /* _values on <self:OptionArray> */
1425 /* method opts#OptionArray#values= for (self: Object, Array[String]) */
1426 void VIRTUAL_opts__OptionArray__values_61d(val
* self
, val
* p0
) {
1427 { /* Inline opts#OptionArray#values= (self,p0) on <self:Object(OptionArray)> */
1428 self
->attrs
[COLOR_opts__OptionArray___values
].val
= p0
; /* _values on <self:Object(OptionArray)> */
1433 /* method opts#OptionArray#convert for (self: OptionArray, String): Array[String] */
1434 val
* opts__OptionArray__convert(val
* self
, val
* p0
) {
1435 val
* var
/* : Array[String] */;
1436 val
* var_str
/* var str: String */;
1437 val
* var1
/* : Array[String] */;
1438 val
* var3
/* : Array[String] */;
1439 val
* var4
/* : Array[String] */;
1440 val
* var6
/* : Array[String] */;
1441 short int var7
/* : Bool */;
1444 const struct type
* type_struct
;
1445 const char* var_class_name
;
1448 { /* Inline opts#OptionArray#values (self) on <self:OptionArray> */
1449 var3
= self
->attrs
[COLOR_opts__OptionArray___values
].val
; /* _values on <self:OptionArray> */
1450 if (unlikely(var3
== NULL
)) {
1451 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values");
1452 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 233);
1460 array__Array__add(var1
, var_str
); /* Direct call array#Array#add on <var1:Array[String]>*/
1463 { /* Inline opts#OptionArray#values (self) on <self:OptionArray> */
1464 var6
= self
->attrs
[COLOR_opts__OptionArray___values
].val
; /* _values on <self:OptionArray> */
1465 if (unlikely(var6
== NULL
)) {
1466 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values");
1467 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 233);
1474 /* <var4:Array[String]> isa VALUE */
1475 type_struct
= self
->type
->resolution_table
->types
[COLOR_opts__Option_VTVALUE
];
1476 cltype
= type_struct
->color
;
1477 idtype
= type_struct
->id
;
1478 if(cltype
>= var4
->type
->table_size
) {
1481 var7
= var4
->type
->type_table
[cltype
] == idtype
;
1483 if (unlikely(!var7
)) {
1484 var_class_name
= var4
== NULL ?
"null" : var4
->type
->name
;
1485 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name
);
1486 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 237);
1494 /* method opts#OptionArray#convert for (self: Object, String): nullable Object */
1495 val
* VIRTUAL_opts__OptionArray__convert(val
* self
, val
* p0
) {
1496 val
* var
/* : nullable Object */;
1497 val
* var1
/* : Array[String] */;
1498 var1
= opts__OptionArray__convert(self
, p0
);
1503 /* method opts#OptionContext#options for (self: OptionContext): Array[Option] */
1504 val
* opts__OptionContext__options(val
* self
) {
1505 val
* var
/* : Array[Option] */;
1506 val
* var1
/* : Array[Option] */;
1507 var1
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:OptionContext> */
1508 if (unlikely(var1
== NULL
)) {
1509 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
1510 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
1517 /* method opts#OptionContext#options for (self: Object): Array[Option] */
1518 val
* VIRTUAL_opts__OptionContext__options(val
* self
) {
1519 val
* var
/* : Array[Option] */;
1520 val
* var1
/* : Array[Option] */;
1521 val
* var3
/* : Array[Option] */;
1522 { /* Inline opts#OptionContext#options (self) on <self:Object(OptionContext)> */
1523 var3
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:Object(OptionContext)> */
1524 if (unlikely(var3
== NULL
)) {
1525 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
1526 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
1536 /* method opts#OptionContext#rest for (self: OptionContext): Array[String] */
1537 val
* opts__OptionContext__rest(val
* self
) {
1538 val
* var
/* : Array[String] */;
1539 val
* var1
/* : Array[String] */;
1540 var1
= self
->attrs
[COLOR_opts__OptionContext___rest
].val
; /* _rest on <self:OptionContext> */
1541 if (unlikely(var1
== NULL
)) {
1542 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _rest");
1543 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 246);
1550 /* method opts#OptionContext#rest for (self: Object): Array[String] */
1551 val
* VIRTUAL_opts__OptionContext__rest(val
* self
) {
1552 val
* var
/* : Array[String] */;
1553 val
* var1
/* : Array[String] */;
1554 val
* var3
/* : Array[String] */;
1555 { /* Inline opts#OptionContext#rest (self) on <self:Object(OptionContext)> */
1556 var3
= self
->attrs
[COLOR_opts__OptionContext___rest
].val
; /* _rest on <self:Object(OptionContext)> */
1557 if (unlikely(var3
== NULL
)) {
1558 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _rest");
1559 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 246);
1569 /* method opts#OptionContext#errors for (self: OptionContext): Array[String] */
1570 val
* opts__OptionContext__errors(val
* self
) {
1571 val
* var
/* : Array[String] */;
1572 val
* var1
/* : Array[String] */;
1573 var1
= self
->attrs
[COLOR_opts__OptionContext___errors
].val
; /* _errors on <self:OptionContext> */
1574 if (unlikely(var1
== NULL
)) {
1575 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors");
1576 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 249);
1583 /* method opts#OptionContext#errors for (self: Object): Array[String] */
1584 val
* VIRTUAL_opts__OptionContext__errors(val
* self
) {
1585 val
* var
/* : Array[String] */;
1586 val
* var1
/* : Array[String] */;
1587 val
* var3
/* : Array[String] */;
1588 { /* Inline opts#OptionContext#errors (self) on <self:Object(OptionContext)> */
1589 var3
= self
->attrs
[COLOR_opts__OptionContext___errors
].val
; /* _errors on <self:Object(OptionContext)> */
1590 if (unlikely(var3
== NULL
)) {
1591 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors");
1592 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 249);
1602 /* method opts#OptionContext#optmap for (self: OptionContext): HashMap[String, Option] */
1603 val
* opts__OptionContext__optmap(val
* self
) {
1604 val
* var
/* : HashMap[String, Option] */;
1605 val
* var1
/* : HashMap[String, Option] */;
1606 var1
= self
->attrs
[COLOR_opts__OptionContext___optmap
].val
; /* _optmap on <self:OptionContext> */
1607 if (unlikely(var1
== NULL
)) {
1608 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap");
1609 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 252);
1616 /* method opts#OptionContext#optmap for (self: Object): HashMap[String, Option] */
1617 val
* VIRTUAL_opts__OptionContext__optmap(val
* self
) {
1618 val
* var
/* : HashMap[String, Option] */;
1619 val
* var1
/* : HashMap[String, Option] */;
1620 val
* var3
/* : HashMap[String, Option] */;
1621 { /* Inline opts#OptionContext#optmap (self) on <self:Object(OptionContext)> */
1622 var3
= self
->attrs
[COLOR_opts__OptionContext___optmap
].val
; /* _optmap on <self:Object(OptionContext)> */
1623 if (unlikely(var3
== NULL
)) {
1624 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap");
1625 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 252);
1635 /* method opts#OptionContext#add_option for (self: OptionContext, Array[Option]) */
1636 void opts__OptionContext__add_option(val
* self
, val
* p0
) {
1637 val
* var_opts
/* var opts: Array[Option] */;
1638 val
* var
/* : Array[Option] */;
1639 val
* var2
/* : Array[Option] */;
1642 { /* Inline opts#OptionContext#options (self) on <self:OptionContext> */
1643 var2
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:OptionContext> */
1644 if (unlikely(var2
== NULL
)) {
1645 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
1646 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
1654 abstract_collection__SimpleCollection__add_all(var
, var_opts
); /* Direct call abstract_collection#SimpleCollection#add_all on <var:Array[Option]>*/
1658 /* method opts#OptionContext#add_option for (self: Object, Array[Option]) */
1659 void VIRTUAL_opts__OptionContext__add_option(val
* self
, val
* p0
) {
1660 opts__OptionContext__add_option(self
, p0
); /* Direct call opts#OptionContext#add_option on <self:Object(OptionContext)>*/
1663 /* method opts#OptionContext#usage for (self: OptionContext) */
1664 void opts__OptionContext__usage(val
* self
) {
1665 long var
/* : Int */;
1666 long var_lmax
/* var lmax: Int */;
1667 val
* var1
/* : Array[Option] */;
1668 val
* var3
/* : Array[Option] */;
1669 val
* var_
/* var : Array[Option] */;
1670 val
* var4
/* : ArrayIterator[nullable Object] */;
1671 val
* var_5
/* var : ArrayIterator[Option] */;
1672 short int var6
/* : Bool */;
1673 val
* var7
/* : nullable Object */;
1674 val
* var_i
/* var i: Option */;
1675 long var8
/* : Int */;
1676 long var_l
/* var l: Int */;
1677 val
* var9
/* : Array[String] */;
1678 val
* var11
/* : Array[String] */;
1679 val
* var_12
/* var : Array[String] */;
1680 val
* var13
/* : ArrayIterator[nullable Object] */;
1681 val
* var_14
/* var : ArrayIterator[String] */;
1682 short int var15
/* : Bool */;
1683 val
* var16
/* : nullable Object */;
1684 val
* var_n
/* var n: String */;
1685 long var17
/* : Int */;
1686 long var19
/* : Int */;
1687 long var20
/* : Int */;
1688 long var21
/* : Int */;
1689 short int var23
/* : Bool */;
1692 const char* var_class_name
;
1693 long var24
/* : Int */;
1694 long var25
/* : Int */;
1695 short int var27
/* : Bool */;
1698 const char* var_class_name30
;
1699 long var31
/* : Int */;
1700 short int var33
/* : Bool */;
1701 short int var35
/* : Bool */;
1704 const char* var_class_name38
;
1705 short int var39
/* : Bool */;
1706 val
* var42
/* : Array[Option] */;
1707 val
* var44
/* : Array[Option] */;
1708 val
* var_45
/* var : Array[Option] */;
1709 val
* var46
/* : ArrayIterator[nullable Object] */;
1710 val
* var_47
/* var : ArrayIterator[Option] */;
1711 short int var48
/* : Bool */;
1712 val
* var49
/* : nullable Object */;
1713 val
* var_i50
/* var i: Option */;
1714 short int var51
/* : Bool */;
1715 short int var53
/* : Bool */;
1716 short int var54
/* : Bool */;
1717 val
* var55
/* : String */;
1721 { /* Inline opts#OptionContext#options (self) on <self:OptionContext> */
1722 var3
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:OptionContext> */
1723 if (unlikely(var3
== NULL
)) {
1724 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
1725 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
1734 var4
= array__AbstractArrayRead__iterator(var_
);
1739 var6
= array__ArrayIterator__is_ok(var_5
);
1743 var7
= array__ArrayIterator__item(var_5
);
1749 { /* Inline opts#Option#names (var_i) on <var_i:Option> */
1750 var11
= var_i
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <var_i:Option> */
1751 if (unlikely(var11
== NULL
)) {
1752 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
1753 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 19);
1757 RET_LABEL10
:(void)0;
1762 var13
= array__AbstractArrayRead__iterator(var_12
);
1767 var15
= array__ArrayIterator__is_ok(var_14
);
1771 var16
= array__ArrayIterator__item(var_14
);
1775 { /* Inline string#FlatText#length (var_n) on <var_n:String> */
1776 var19
= var_n
->attrs
[COLOR_string__FlatText___length
].l
; /* _length on <var_n:String> */
1778 RET_LABEL18
:(void)0;
1783 { /* Inline kernel#Int#+ (var17,var20) on <var17:Int> */
1784 /* Covariant cast for argument 0 (i) <var20:Int> isa OTHER */
1785 /* <var20:Int> isa OTHER */
1786 var23
= 1; /* easy <var20:Int> isa OTHER*/
1787 if (unlikely(!var23
)) {
1788 var_class_name
= type_kernel__Int
.name
;
1789 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1790 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 374);
1793 var24
= var17
+ var20
;
1796 RET_LABEL22
:(void)0;
1800 { /* Inline kernel#Int#+ (var_l,var21) on <var_l:Int> */
1801 /* Covariant cast for argument 0 (i) <var21:Int> isa OTHER */
1802 /* <var21:Int> isa OTHER */
1803 var27
= 1; /* easy <var21:Int> isa OTHER*/
1804 if (unlikely(!var27
)) {
1805 var_class_name30
= type_kernel__Int
.name
;
1806 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name30
);
1807 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 374);
1810 var31
= var_l
+ var21
;
1813 RET_LABEL26
:(void)0;
1818 array__ArrayIterator__next(var_14
); /* Direct call array#ArrayIterator#next on <var_14:ArrayIterator[String]>*/
1824 BREAK_label
: (void)0;
1826 { /* Inline abstract_collection#Iterator#finish (var_14) on <var_14:ArrayIterator[String]> */
1827 RET_LABEL32
:(void)0;
1831 { /* Inline kernel#Int#< (var_lmax,var_l) on <var_lmax:Int> */
1832 /* Covariant cast for argument 0 (i) <var_l:Int> isa OTHER */
1833 /* <var_l:Int> isa OTHER */
1834 var35
= 1; /* easy <var_l:Int> isa OTHER*/
1835 if (unlikely(!var35
)) {
1836 var_class_name38
= type_kernel__Int
.name
;
1837 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name38
);
1838 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 371);
1841 var39
= var_lmax
< var_l
;
1844 RET_LABEL34
:(void)0;
1852 array__ArrayIterator__next(var_5
); /* Direct call array#ArrayIterator#next on <var_5:ArrayIterator[Option]>*/
1858 BREAK_label40
: (void)0;
1860 { /* Inline abstract_collection#Iterator#finish (var_5) on <var_5:ArrayIterator[Option]> */
1861 RET_LABEL41
:(void)0;
1865 { /* Inline opts#OptionContext#options (self) on <self:OptionContext> */
1866 var44
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:OptionContext> */
1867 if (unlikely(var44
== NULL
)) {
1868 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
1869 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
1873 RET_LABEL43
:(void)0;
1878 var46
= array__AbstractArrayRead__iterator(var_45
);
1883 var48
= array__ArrayIterator__is_ok(var_47
);
1887 var49
= array__ArrayIterator__item(var_47
);
1891 { /* Inline opts#Option#hidden (var_i50) on <var_i50:Option> */
1892 var53
= var_i50
->attrs
[COLOR_opts__Option___hidden
].s
; /* _hidden on <var_i50:Option> */
1894 RET_LABEL52
:(void)0;
1900 var55
= opts__Option__pretty(var_i50
, var_lmax
);
1903 file__Object__print(self
, var55
); /* Direct call file#Object#print on <self:OptionContext>*/
1908 array__ArrayIterator__next(var_47
); /* Direct call array#ArrayIterator#next on <var_47:ArrayIterator[Option]>*/
1914 BREAK_label56
: (void)0;
1916 { /* Inline abstract_collection#Iterator#finish (var_47) on <var_47:ArrayIterator[Option]> */
1917 RET_LABEL57
:(void)0;
1922 /* method opts#OptionContext#usage for (self: Object) */
1923 void VIRTUAL_opts__OptionContext__usage(val
* self
) {
1924 opts__OptionContext__usage(self
); /* Direct call opts#OptionContext#usage on <self:Object(OptionContext)>*/
1927 /* method opts#OptionContext#parse for (self: OptionContext, Collection[String]) */
1928 void opts__OptionContext__parse(val
* self
, val
* p0
) {
1929 val
* var_argv
/* var argv: Collection[String] */;
1930 val
* var
/* : Iterator[nullable Object] */;
1931 val
* var_it
/* var it: Iterator[String] */;
1934 var
= ((val
* (*)(val
*))(var_argv
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_argv
) /* iterator on <var_argv:Collection[String]>*/;
1938 opts__OptionContext__parse_intern(self
, var_it
); /* Direct call opts#OptionContext#parse_intern on <self:OptionContext>*/
1942 /* method opts#OptionContext#parse for (self: Object, Collection[String]) */
1943 void VIRTUAL_opts__OptionContext__parse(val
* self
, val
* p0
) {
1944 opts__OptionContext__parse(self
, p0
); /* Direct call opts#OptionContext#parse on <self:Object(OptionContext)>*/
1947 /* method opts#OptionContext#parse_intern for (self: OptionContext, Iterator[String]) */
1948 void opts__OptionContext__parse_intern(val
* self
, val
* p0
) {
1949 val
* var_it
/* var it: Iterator[String] */;
1950 short int var
/* : Bool */;
1951 short int var_parseargs
/* var parseargs: Bool */;
1952 val
* var1
/* : Array[String] */;
1953 val
* var3
/* : Array[String] */;
1954 val
* var_rest
/* var rest: Array[String] */;
1955 short int var4
/* : Bool */;
1956 short int var_
/* var : Bool */;
1957 short int var5
/* : Bool */;
1958 val
* var6
/* : nullable Object */;
1959 val
* var_str
/* var str: String */;
1960 static val
* varonce
;
1961 val
* var7
/* : String */;
1962 char* var8
/* : NativeString */;
1963 long var9
/* : Int */;
1964 val
* var10
/* : FlatString */;
1965 short int var11
/* : Bool */;
1966 short int var12
/* : Bool */;
1967 val
* var13
/* : Array[nullable Object] */;
1968 short int var14
/* : Bool */;
1969 short int var15
/* : Bool */;
1970 val
* var16
/* : SequenceRead[Char] */;
1971 val
* var18
/* : SequenceRead[Char] */;
1972 char var19
/* : Char */;
1973 long var20
/* : Int */;
1974 val
* var21
/* : nullable Object */;
1975 long var22
/* : Int */;
1976 short int var23
/* : Bool */;
1977 short int var24
/* : Bool */;
1978 short int var26
/* : Bool */;
1979 short int var_27
/* var : Bool */;
1980 long var28
/* : Int */;
1981 long var30
/* : Int */;
1982 long var31
/* : Int */;
1983 short int var32
/* : Bool */;
1984 short int var34
/* : Bool */;
1987 const char* var_class_name
;
1988 short int var35
/* : Bool */;
1989 short int var36
/* : Bool */;
1990 short int var_next_called
/* var next_called: Bool */;
1991 long var37
/* : Int */;
1992 long var_i
/* var i: Int */;
1993 long var38
/* : Int */;
1994 long var40
/* : Int */;
1995 long var_41
/* var : Int */;
1996 short int var42
/* : Bool */;
1997 short int var44
/* : Bool */;
2000 const char* var_class_name47
;
2001 short int var48
/* : Bool */;
2002 static val
* varonce49
;
2003 val
* var50
/* : String */;
2004 char* var51
/* : NativeString */;
2005 long var52
/* : Int */;
2006 val
* var53
/* : FlatString */;
2007 val
* var54
/* : SequenceRead[Char] */;
2008 val
* var56
/* : SequenceRead[Char] */;
2009 val
* var57
/* : nullable Object */;
2010 val
* var58
/* : String */;
2011 char var59
/* : Char */;
2012 val
* var60
/* : String */;
2013 val
* var_short_opt
/* var short_opt: String */;
2014 val
* var61
/* : HashMap[String, Option] */;
2015 val
* var63
/* : HashMap[String, Option] */;
2016 short int var64
/* : Bool */;
2017 val
* var65
/* : HashMap[String, Option] */;
2018 val
* var67
/* : HashMap[String, Option] */;
2019 val
* var68
/* : nullable Object */;
2020 val
* var_option
/* var option: Option */;
2021 short int var69
/* : Bool */;
2024 short int var72
/* : Bool */;
2025 long var73
/* : Int */;
2026 long var74
/* : Int */;
2027 short int var75
/* : Bool */;
2028 val
* var76
/* : HashMap[String, Option] */;
2029 val
* var78
/* : HashMap[String, Option] */;
2030 short int var79
/* : Bool */;
2031 val
* var80
/* : HashMap[String, Option] */;
2032 val
* var82
/* : HashMap[String, Option] */;
2033 val
* var83
/* : nullable Object */;
2034 val
* var_opt
/* var opt: Option */;
2035 val
* var84
/* : nullable Object */;
2036 val
* var86
/* : Array[Option] */;
2037 val
* var88
/* : Array[Option] */;
2038 val
* var_89
/* var : Array[Option] */;
2039 val
* var90
/* : ArrayIterator[nullable Object] */;
2040 val
* var_91
/* var : ArrayIterator[Option] */;
2041 short int var92
/* : Bool */;
2042 val
* var93
/* : nullable Object */;
2043 val
* var_opt94
/* var opt: Option */;
2044 short int var95
/* : Bool */;
2045 short int var96
/* : Bool */;
2046 short int var98
/* : Bool */;
2047 short int var_99
/* var : Bool */;
2048 short int var100
/* : Bool */;
2049 short int var102
/* : Bool */;
2050 short int var103
/* : Bool */;
2051 val
* var104
/* : Array[String] */;
2052 val
* var106
/* : Array[String] */;
2053 static val
* varonce107
;
2054 val
* var108
/* : String */;
2055 char* var109
/* : NativeString */;
2056 long var110
/* : Int */;
2057 val
* var111
/* : FlatString */;
2058 val
* var112
/* : Array[String] */;
2059 val
* var114
/* : Array[String] */;
2060 static val
* varonce115
;
2061 val
* var116
/* : String */;
2062 char* var117
/* : NativeString */;
2063 long var118
/* : Int */;
2064 val
* var119
/* : FlatString */;
2065 val
* var120
/* : String */;
2066 static val
* varonce121
;
2067 val
* var122
/* : String */;
2068 char* var123
/* : NativeString */;
2069 long var124
/* : Int */;
2070 val
* var125
/* : FlatString */;
2071 val
* var126
/* : Array[Object] */;
2072 long var127
/* : Int */;
2073 val
* var128
/* : NativeArray[Object] */;
2074 val
* var129
/* : String */;
2077 var_parseargs
= var
;
2079 opts__OptionContext__build(self
); /* Direct call opts#OptionContext#build on <self:OptionContext>*/
2082 { /* Inline opts#OptionContext#rest (self) on <self:OptionContext> */
2083 var3
= self
->attrs
[COLOR_opts__OptionContext___rest
].val
; /* _rest on <self:OptionContext> */
2084 if (unlikely(var3
== NULL
)) {
2085 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _rest");
2086 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 246);
2095 var_
= var_parseargs
;
2098 var5
= ((short int (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var_it
) /* is_ok on <var_it:Iterator[String]>*/;
2106 var6
= ((val
* (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var_it
) /* item on <var_it:Iterator[String]>*/;
2114 var10
= string__NativeString__to_s_with_length(var8
, var9
);
2119 var12
= string__FlatString___61d_61d(var_str
, var7
);
2124 ((void (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var_it
) /* next on <var_it:Iterator[String]>*/;
2127 var13
= array__Iterator__to_a(var_it
);
2130 abstract_collection__SimpleCollection__add_all(var_rest
, var13
); /* Direct call abstract_collection#SimpleCollection#add_all on <var_rest:Array[String]>*/
2133 var_parseargs
= var14
;
2136 { /* Inline string#FlatString#chars (var_str) on <var_str:String> */
2137 var18
= var_str
->attrs
[COLOR_string__FlatString___chars
].val
; /* _chars on <var_str:String> */
2138 if (unlikely(var18
== NULL
)) {
2139 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _chars");
2140 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/string.nit", 939);
2144 RET_LABEL17
:(void)0;
2149 var21
= BOX_kernel__Char(var19
); /* autobox from Char to nullable Object */
2150 var20
= ((long (*)(val
*, val
*))(var16
->class->vft
[COLOR_abstract_collection__SequenceRead__last_index_of
]))(var16
, var21
) /* last_index_of on <var16:SequenceRead[Char]>*/;
2154 { /* Inline kernel#Int#== (var20,var22) on <var20:Int> */
2155 var26
= var20
== var22
;
2158 RET_LABEL25
:(void)0;
2165 { /* Inline string#FlatText#length (var_str) on <var_str:String> */
2166 var30
= var_str
->attrs
[COLOR_string__FlatText___length
].l
; /* _length on <var_str:String> */
2168 RET_LABEL29
:(void)0;
2173 { /* Inline kernel#Int#> (var28,var31) on <var28:Int> */
2174 /* Covariant cast for argument 0 (i) <var31:Int> isa OTHER */
2175 /* <var31:Int> isa OTHER */
2176 var34
= 1; /* easy <var31:Int> isa OTHER*/
2177 if (unlikely(!var34
)) {
2178 var_class_name
= type_kernel__Int
.name
;
2179 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2180 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 373);
2183 var35
= var28
> var31
;
2186 RET_LABEL33
:(void)0;
2195 var_next_called
= var36
;
2199 { /* Inline string#FlatText#length (var_str) on <var_str:String> */
2200 var40
= var_str
->attrs
[COLOR_string__FlatText___length
].l
; /* _length on <var_str:String> */
2202 RET_LABEL39
:(void)0;
2208 { /* Inline kernel#Int#< (var_i,var_41) on <var_i:Int> */
2209 /* Covariant cast for argument 0 (i) <var_41:Int> isa OTHER */
2210 /* <var_41:Int> isa OTHER */
2211 var44
= 1; /* easy <var_41:Int> isa OTHER*/
2212 if (unlikely(!var44
)) {
2213 var_class_name47
= type_kernel__Int
.name
;
2214 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name47
);
2215 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/kernel.nit", 371);
2218 var48
= var_i
< var_41
;
2221 RET_LABEL43
:(void)0;
2230 var53
= string__NativeString__to_s_with_length(var51
, var52
);
2235 { /* Inline string#FlatString#chars (var_str) on <var_str:String> */
2236 var56
= var_str
->attrs
[COLOR_string__FlatString___chars
].val
; /* _chars on <var_str:String> */
2237 if (unlikely(var56
== NULL
)) {
2238 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _chars");
2239 PRINT_ERROR(" (%s:%d)\n", "../lib/standard/string.nit", 939);
2243 RET_LABEL55
:(void)0;
2247 var57
= ((val
* (*)(val
*, long))(var54
->class->vft
[COLOR_abstract_collection__SequenceRead___91d_93d
]))(var54
, var_i
) /* [] on <var54:SequenceRead[Char]>*/;
2250 var59
= ((struct instance_kernel__Char
*)var57
)->value
; /* autounbox from nullable Object to Char */;
2251 var58
= string__Char__to_s(var59
);
2254 var60
= string__FlatString___43d(var50
, var58
);
2256 var_short_opt
= var60
;
2258 { /* Inline opts#OptionContext#optmap (self) on <self:OptionContext> */
2259 var63
= self
->attrs
[COLOR_opts__OptionContext___optmap
].val
; /* _optmap on <self:OptionContext> */
2260 if (unlikely(var63
== NULL
)) {
2261 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap");
2262 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 252);
2266 RET_LABEL62
:(void)0;
2270 var64
= abstract_collection__MapRead__has_key(var61
, var_short_opt
);
2274 { /* Inline opts#OptionContext#optmap (self) on <self:OptionContext> */
2275 var67
= self
->attrs
[COLOR_opts__OptionContext___optmap
].val
; /* _optmap on <self:OptionContext> */
2276 if (unlikely(var67
== NULL
)) {
2277 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap");
2278 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 252);
2282 RET_LABEL66
:(void)0;
2286 var68
= hash_collection__HashMap___91d_93d(var65
, var_short_opt
);
2289 /* <var_option:Option> isa OptionParameter */
2290 cltype70
= type_opts__OptionParameter
.color
;
2291 idtype71
= type_opts__OptionParameter
.id
;
2292 if(cltype70
>= var_option
->type
->table_size
) {
2295 var69
= var_option
->type
->type_table
[cltype70
] == idtype71
;
2299 ((void (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var_it
) /* next on <var_it:Iterator[String]>*/;
2302 var_next_called
= var72
;
2306 ((void (*)(val
*, val
*))(var_option
->class->vft
[COLOR_opts__Option__read_param
]))(var_option
, var_it
) /* read_param on <var_option:Option>*/;
2312 var74
= kernel__Int__successor(var_i
, var73
);
2319 BREAK_label
: (void)0;
2320 var75
= !var_next_called
;
2323 ((void (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var_it
) /* next on <var_it:Iterator[String]>*/;
2329 { /* Inline opts#OptionContext#optmap (self) on <self:OptionContext> */
2330 var78
= self
->attrs
[COLOR_opts__OptionContext___optmap
].val
; /* _optmap on <self:OptionContext> */
2331 if (unlikely(var78
== NULL
)) {
2332 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap");
2333 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 252);
2337 RET_LABEL77
:(void)0;
2341 var79
= abstract_collection__MapRead__has_key(var76
, var_str
);
2345 { /* Inline opts#OptionContext#optmap (self) on <self:OptionContext> */
2346 var82
= self
->attrs
[COLOR_opts__OptionContext___optmap
].val
; /* _optmap on <self:OptionContext> */
2347 if (unlikely(var82
== NULL
)) {
2348 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap");
2349 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 252);
2353 RET_LABEL81
:(void)0;
2357 var83
= hash_collection__HashMap___91d_93d(var80
, var_str
);
2361 ((void (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var_it
) /* next on <var_it:Iterator[String]>*/;
2364 ((void (*)(val
*, val
*))(var_opt
->class->vft
[COLOR_opts__Option__read_param
]))(var_opt
, var_it
) /* read_param on <var_opt:Option>*/;
2368 var84
= ((val
* (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var_it
) /* item on <var_it:Iterator[String]>*/;
2371 array__Array__add(var_rest
, var84
); /* Direct call array#Array#add on <var_rest:Array[String]>*/
2374 ((void (*)(val
*))(var_it
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var_it
) /* next on <var_it:Iterator[String]>*/;
2383 BREAK_label85
: (void)0;
2385 { /* Inline opts#OptionContext#options (self) on <self:OptionContext> */
2386 var88
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:OptionContext> */
2387 if (unlikely(var88
== NULL
)) {
2388 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
2389 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
2393 RET_LABEL87
:(void)0;
2398 var90
= array__AbstractArrayRead__iterator(var_89
);
2403 var92
= array__ArrayIterator__is_ok(var_91
);
2407 var93
= array__ArrayIterator__item(var_91
);
2411 { /* Inline opts#Option#mandatory (var_opt94) on <var_opt94:Option> */
2412 var98
= var_opt94
->attrs
[COLOR_opts__Option___mandatory
].s
; /* _mandatory on <var_opt94:Option> */
2414 RET_LABEL97
:(void)0;
2420 { /* Inline opts#Option#read (var_opt94) on <var_opt94:Option> */
2421 var102
= var_opt94
->attrs
[COLOR_opts__Option___read
].s
; /* _read on <var_opt94:Option> */
2423 RET_LABEL101
:(void)0;
2433 { /* Inline opts#OptionContext#errors (self) on <self:OptionContext> */
2434 var106
= self
->attrs
[COLOR_opts__OptionContext___errors
].val
; /* _errors on <self:OptionContext> */
2435 if (unlikely(var106
== NULL
)) {
2436 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors");
2437 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 249);
2441 RET_LABEL105
:(void)0;
2445 var108
= varonce107
;
2447 var109
= "Mandatory option ";
2449 var111
= string__NativeString__to_s_with_length(var109
, var110
);
2451 varonce107
= var108
;
2454 { /* Inline opts#Option#names (var_opt94) on <var_opt94:Option> */
2455 var114
= var_opt94
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <var_opt94:Option> */
2456 if (unlikely(var114
== NULL
)) {
2457 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
2458 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 19);
2462 RET_LABEL113
:(void)0;
2466 var116
= varonce115
;
2470 var119
= string__NativeString__to_s_with_length(var117
, var118
);
2472 varonce115
= var116
;
2475 var120
= string__Collection__join(var112
, var116
);
2478 var122
= varonce121
;
2480 var123
= " not found.";
2482 var125
= string__NativeString__to_s_with_length(var123
, var124
);
2484 varonce121
= var122
;
2486 var126
= NEW_array__Array(&type_array__Arraykernel__Object
);
2487 { /* var126 = array_instance Array[Object] */
2489 var128
= NEW_array__NativeArray(var127
, &type_array__NativeArraykernel__Object
);
2490 ((struct instance_array__NativeArray
*)var128
)->values
[0] = (val
*) var108
;
2491 ((struct instance_array__NativeArray
*)var128
)->values
[1] = (val
*) var120
;
2492 ((struct instance_array__NativeArray
*)var128
)->values
[2] = (val
*) var122
;
2494 ((void (*)(val
*, val
*, long))(var126
->class->vft
[COLOR_array__Array__with_native
]))(var126
, var128
, var127
) /* with_native on <var126:Array[Object]>*/;
2498 var129
= ((val
* (*)(val
*))(var126
->class->vft
[COLOR_string__Object__to_s
]))(var126
) /* to_s on <var126:Array[Object]>*/;
2501 array__Array__add(var104
, var129
); /* Direct call array#Array#add on <var104:Array[String]>*/
2506 array__ArrayIterator__next(var_91
); /* Direct call array#ArrayIterator#next on <var_91:ArrayIterator[Option]>*/
2509 goto BREAK_label130
;
2512 BREAK_label130
: (void)0;
2514 { /* Inline abstract_collection#Iterator#finish (var_91) on <var_91:ArrayIterator[Option]> */
2515 RET_LABEL131
:(void)0;
2520 /* method opts#OptionContext#parse_intern for (self: Object, Iterator[String]) */
2521 void VIRTUAL_opts__OptionContext__parse_intern(val
* self
, val
* p0
) {
2522 opts__OptionContext__parse_intern(self
, p0
); /* Direct call opts#OptionContext#parse_intern on <self:Object(OptionContext)>*/
2525 /* method opts#OptionContext#build for (self: OptionContext) */
2526 void opts__OptionContext__build(val
* self
) {
2527 val
* var
/* : Array[Option] */;
2528 val
* var2
/* : Array[Option] */;
2529 val
* var_
/* var : Array[Option] */;
2530 val
* var3
/* : ArrayIterator[nullable Object] */;
2531 val
* var_4
/* var : ArrayIterator[Option] */;
2532 short int var5
/* : Bool */;
2533 val
* var6
/* : nullable Object */;
2534 val
* var_o
/* var o: Option */;
2535 val
* var7
/* : Array[String] */;
2536 val
* var9
/* : Array[String] */;
2537 val
* var_10
/* var : Array[String] */;
2538 val
* var11
/* : ArrayIterator[nullable Object] */;
2539 val
* var_12
/* var : ArrayIterator[String] */;
2540 short int var13
/* : Bool */;
2541 val
* var14
/* : nullable Object */;
2542 val
* var_n
/* var n: String */;
2543 val
* var15
/* : HashMap[String, Option] */;
2544 val
* var17
/* : HashMap[String, Option] */;
2546 { /* Inline opts#OptionContext#options (self) on <self:OptionContext> */
2547 var2
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:OptionContext> */
2548 if (unlikely(var2
== NULL
)) {
2549 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
2550 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
2559 var3
= array__AbstractArrayRead__iterator(var_
);
2564 var5
= array__ArrayIterator__is_ok(var_4
);
2568 var6
= array__ArrayIterator__item(var_4
);
2572 { /* Inline opts#Option#names (var_o) on <var_o:Option> */
2573 var9
= var_o
->attrs
[COLOR_opts__Option___names
].val
; /* _names on <var_o:Option> */
2574 if (unlikely(var9
== NULL
)) {
2575 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
2576 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 19);
2585 var11
= array__AbstractArrayRead__iterator(var_10
);
2590 var13
= array__ArrayIterator__is_ok(var_12
);
2594 var14
= array__ArrayIterator__item(var_12
);
2598 { /* Inline opts#OptionContext#optmap (self) on <self:OptionContext> */
2599 var17
= self
->attrs
[COLOR_opts__OptionContext___optmap
].val
; /* _optmap on <self:OptionContext> */
2600 if (unlikely(var17
== NULL
)) {
2601 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap");
2602 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 252);
2606 RET_LABEL16
:(void)0;
2610 hash_collection__HashMap___91d_93d_61d(var15
, var_n
, var_o
); /* Direct call hash_collection#HashMap#[]= on <var15:HashMap[String, Option]>*/
2613 array__ArrayIterator__next(var_12
); /* Direct call array#ArrayIterator#next on <var_12:ArrayIterator[String]>*/
2619 BREAK_label
: (void)0;
2621 { /* Inline abstract_collection#Iterator#finish (var_12) on <var_12:ArrayIterator[String]> */
2622 RET_LABEL18
:(void)0;
2626 array__ArrayIterator__next(var_4
); /* Direct call array#ArrayIterator#next on <var_4:ArrayIterator[Option]>*/
2632 BREAK_label19
: (void)0;
2634 { /* Inline abstract_collection#Iterator#finish (var_4) on <var_4:ArrayIterator[Option]> */
2635 RET_LABEL20
:(void)0;
2640 /* method opts#OptionContext#build for (self: Object) */
2641 void VIRTUAL_opts__OptionContext__build(val
* self
) {
2642 opts__OptionContext__build(self
); /* Direct call opts#OptionContext#build on <self:Object(OptionContext)>*/
2645 /* method opts#OptionContext#get_errors for (self: OptionContext): Array[String] */
2646 val
* opts__OptionContext__get_errors(val
* self
) {
2647 val
* var
/* : Array[String] */;
2648 val
* var1
/* : Array[String] */;
2649 val
* var_errors
/* var errors: Array[String] */;
2650 val
* var2
/* : Array[Option] */;
2651 val
* var4
/* : Array[Option] */;
2652 val
* var_
/* var : Array[Option] */;
2653 val
* var5
/* : ArrayIterator[nullable Object] */;
2654 val
* var_6
/* var : ArrayIterator[Option] */;
2655 short int var7
/* : Bool */;
2656 val
* var8
/* : nullable Object */;
2657 val
* var_o
/* var o: Option */;
2658 val
* var9
/* : Array[String] */;
2659 val
* var11
/* : Array[String] */;
2660 val
* var_12
/* var : Array[String] */;
2661 val
* var13
/* : ArrayIterator[nullable Object] */;
2662 val
* var_14
/* var : ArrayIterator[String] */;
2663 short int var15
/* : Bool */;
2664 val
* var16
/* : nullable Object */;
2665 val
* var_e
/* var e: String */;
2666 var1
= NEW_array__Array(&type_array__Arraystring__String
);
2668 ((void (*)(val
*))(var1
->class->vft
[COLOR_kernel__Object__init
]))(var1
) /* init on <var1:Array[String]>*/;
2672 abstract_collection__SimpleCollection__add_all(var_errors
, var_errors
); /* Direct call abstract_collection#SimpleCollection#add_all on <var_errors:Array[String]>*/
2675 { /* Inline opts#OptionContext#options (self) on <self:OptionContext> */
2676 var4
= self
->attrs
[COLOR_opts__OptionContext___options
].val
; /* _options on <self:OptionContext> */
2677 if (unlikely(var4
== NULL
)) {
2678 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options");
2679 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 243);
2688 var5
= array__AbstractArrayRead__iterator(var_
);
2693 var7
= array__ArrayIterator__is_ok(var_6
);
2697 var8
= array__ArrayIterator__item(var_6
);
2701 { /* Inline opts#Option#errors (var_o) on <var_o:Option> */
2702 var11
= var_o
->attrs
[COLOR_opts__Option___errors
].val
; /* _errors on <var_o:Option> */
2703 if (unlikely(var11
== NULL
)) {
2704 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors");
2705 PRINT_ERROR(" (%s:%d)\n", "../lib/opts.nit", 28);
2709 RET_LABEL10
:(void)0;
2714 var13
= array__AbstractArrayRead__iterator(var_12
);
2719 var15
= array__ArrayIterator__is_ok(var_14
);
2723 var16
= array__ArrayIterator__item(var_14
);
2727 array__Array__add(var_errors
, var_e
); /* Direct call array#Array#add on <var_errors:Array[String]>*/
2730 array__ArrayIterator__next(var_14
); /* Direct call array#ArrayIterator#next on <var_14:ArrayIterator[String]>*/
2736 BREAK_label
: (void)0;
2738 { /* Inline abstract_collection#Iterator#finish (var_14) on <var_14:ArrayIterator[String]> */
2739 RET_LABEL17
:(void)0;
2743 array__ArrayIterator__next(var_6
); /* Direct call array#ArrayIterator#next on <var_6:ArrayIterator[Option]>*/
2749 BREAK_label18
: (void)0;
2751 { /* Inline abstract_collection#Iterator#finish (var_6) on <var_6:ArrayIterator[Option]> */
2752 RET_LABEL19
:(void)0;
2760 /* method opts#OptionContext#get_errors for (self: Object): Array[String] */
2761 val
* VIRTUAL_opts__OptionContext__get_errors(val
* self
) {
2762 val
* var
/* : Array[String] */;
2763 val
* var1
/* : Array[String] */;
2764 var1
= opts__OptionContext__get_errors(self
);