c_src: update
[nit.git] / c_src / nitni_base.sep.1.c
diff --git a/c_src/nitni_base.sep.1.c b/c_src/nitni_base.sep.1.c
deleted file mode 100644 (file)
index 2fe7d17..0000000
+++ /dev/null
@@ -1,1800 +0,0 @@
-#include "nitni_base.sep.0.h"
-/* method nitni_base#MMethod#short_cname for (self: MMethod): String */
-val* nitni_base__MMethod__short_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-val* var_nit_name /* var nit_name: String */;
-static val* varonce;
-val* var2 /* : String */;
-char* var3 /* : NativeString */;
-long var4 /* : Int */;
-val* var5 /* : String */;
-short int var6 /* : Bool */;
-static val* varonce7;
-val* var8 /* : String */;
-char* var9 /* : NativeString */;
-long var10 /* : Int */;
-val* var11 /* : String */;
-static val* varonce12;
-val* var13 /* : String */;
-char* var14 /* : NativeString */;
-long var15 /* : Int */;
-val* var16 /* : String */;
-short int var17 /* : Bool */;
-static val* varonce18;
-val* var19 /* : String */;
-char* var20 /* : NativeString */;
-long var21 /* : Int */;
-val* var22 /* : String */;
-static val* varonce23;
-val* var24 /* : String */;
-char* var25 /* : NativeString */;
-long var26 /* : Int */;
-val* var27 /* : String */;
-short int var28 /* : Bool */;
-static val* varonce29;
-val* var30 /* : String */;
-char* var31 /* : NativeString */;
-long var32 /* : Int */;
-val* var33 /* : String */;
-static val* varonce34;
-val* var35 /* : String */;
-char* var36 /* : NativeString */;
-long var37 /* : Int */;
-val* var38 /* : String */;
-short int var39 /* : Bool */;
-static val* varonce40;
-val* var41 /* : String */;
-char* var42 /* : NativeString */;
-long var43 /* : Int */;
-val* var44 /* : String */;
-static val* varonce45;
-val* var46 /* : String */;
-char* var47 /* : NativeString */;
-long var48 /* : Int */;
-val* var49 /* : String */;
-short int var50 /* : Bool */;
-static val* varonce51;
-val* var52 /* : String */;
-char* var53 /* : NativeString */;
-long var54 /* : Int */;
-val* var55 /* : String */;
-static val* varonce56;
-val* var57 /* : String */;
-char* var58 /* : NativeString */;
-long var59 /* : Int */;
-val* var60 /* : String */;
-short int var61 /* : Bool */;
-static val* varonce62;
-val* var63 /* : String */;
-char* var64 /* : NativeString */;
-long var65 /* : Int */;
-val* var66 /* : String */;
-static val* varonce67;
-val* var68 /* : String */;
-char* var69 /* : NativeString */;
-long var70 /* : Int */;
-val* var71 /* : String */;
-short int var72 /* : Bool */;
-static val* varonce73;
-val* var74 /* : String */;
-char* var75 /* : NativeString */;
-long var76 /* : Int */;
-val* var77 /* : String */;
-static val* varonce78;
-val* var79 /* : String */;
-char* var80 /* : NativeString */;
-long var81 /* : Int */;
-val* var82 /* : String */;
-short int var83 /* : Bool */;
-static val* varonce84;
-val* var85 /* : String */;
-char* var86 /* : NativeString */;
-long var87 /* : Int */;
-val* var88 /* : String */;
-static val* varonce89;
-val* var90 /* : String */;
-char* var91 /* : NativeString */;
-long var92 /* : Int */;
-val* var93 /* : String */;
-short int var94 /* : Bool */;
-static val* varonce95;
-val* var96 /* : String */;
-char* var97 /* : NativeString */;
-long var98 /* : Int */;
-val* var99 /* : String */;
-static val* varonce100;
-val* var101 /* : String */;
-char* var102 /* : NativeString */;
-long var103 /* : Int */;
-val* var104 /* : String */;
-short int var105 /* : Bool */;
-static val* varonce106;
-val* var107 /* : String */;
-char* var108 /* : NativeString */;
-long var109 /* : Int */;
-val* var110 /* : String */;
-static val* varonce111;
-val* var112 /* : String */;
-char* var113 /* : NativeString */;
-long var114 /* : Int */;
-val* var115 /* : String */;
-short int var116 /* : Bool */;
-static val* varonce117;
-val* var118 /* : String */;
-char* var119 /* : NativeString */;
-long var120 /* : Int */;
-val* var121 /* : String */;
-static val* varonce122;
-val* var123 /* : String */;
-char* var124 /* : NativeString */;
-long var125 /* : Int */;
-val* var126 /* : String */;
-short int var127 /* : Bool */;
-static val* varonce128;
-val* var129 /* : String */;
-char* var130 /* : NativeString */;
-long var131 /* : Int */;
-val* var132 /* : String */;
-static val* varonce133;
-val* var134 /* : String */;
-char* var135 /* : NativeString */;
-long var136 /* : Int */;
-val* var137 /* : String */;
-short int var138 /* : Bool */;
-static val* varonce139;
-val* var140 /* : String */;
-char* var141 /* : NativeString */;
-long var142 /* : Int */;
-val* var143 /* : String */;
-static val* varonce144;
-val* var145 /* : String */;
-char* var146 /* : NativeString */;
-long var147 /* : Int */;
-val* var148 /* : String */;
-short int var149 /* : Bool */;
-static val* varonce150;
-val* var151 /* : String */;
-char* var152 /* : NativeString */;
-long var153 /* : Int */;
-val* var154 /* : String */;
-static val* varonce155;
-val* var156 /* : String */;
-char* var157 /* : NativeString */;
-long var158 /* : Int */;
-val* var159 /* : String */;
-short int var160 /* : Bool */;
-static val* varonce161;
-val* var162 /* : String */;
-char* var163 /* : NativeString */;
-long var164 /* : Int */;
-val* var165 /* : String */;
-static val* varonce166;
-val* var167 /* : String */;
-char* var168 /* : NativeString */;
-long var169 /* : Int */;
-val* var170 /* : String */;
-short int var171 /* : Bool */;
-static val* varonce172;
-val* var173 /* : String */;
-char* var174 /* : NativeString */;
-long var175 /* : Int */;
-val* var176 /* : String */;
-val* var177 /* : nullable Object */;
-char var178 /* : Char */;
-short int var179 /* : Bool */;
-short int var181 /* : Bool */;
-char var182 /* : Char */;
-val* var183 /* : Array[Object] */;
-long var184 /* : Int */;
-val* var_ /* var : Array[Object] */;
-static val* varonce185;
-val* var186 /* : String */;
-char* var187 /* : NativeString */;
-long var188 /* : Int */;
-val* var189 /* : String */;
-long var190 /* : Int */;
-long var191 /* : Int */;
-long var192 /* : Int */;
-long var193 /* : Int */;
-long var195 /* : Int */;
-val* var196 /* : String */;
-static val* varonce197;
-val* var198 /* : String */;
-char* var199 /* : NativeString */;
-long var200 /* : Int */;
-val* var201 /* : String */;
-val* var202 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_model__MProperty__name]))(self) /* name on <self:MMethod>*/;
-var_nit_name = var1;
-if (varonce) {
-var2 = varonce;
-} else {
-var3 = "+";
-var4 = 1;
-var5 = string__NativeString__to_s_with_length(var3, var4);
-var2 = var5;
-varonce = var2;
-}
-var6 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var2) /* == on <var_nit_name:String>*/;
-if (var6){
-if (varonce7) {
-var8 = varonce7;
-} else {
-var9 = "_plus";
-var10 = 5;
-var11 = string__NativeString__to_s_with_length(var9, var10);
-var8 = var11;
-varonce7 = var8;
-}
-var = var8;
-goto RET_LABEL;
-} else {
-}
-if (varonce12) {
-var13 = varonce12;
-} else {
-var14 = "-";
-var15 = 1;
-var16 = string__NativeString__to_s_with_length(var14, var15);
-var13 = var16;
-varonce12 = var13;
-}
-var17 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var13) /* == on <var_nit_name:String>*/;
-if (var17){
-if (varonce18) {
-var19 = varonce18;
-} else {
-var20 = "_minus";
-var21 = 6;
-var22 = string__NativeString__to_s_with_length(var20, var21);
-var19 = var22;
-varonce18 = var19;
-}
-var = var19;
-goto RET_LABEL;
-} else {
-}
-if (varonce23) {
-var24 = varonce23;
-} else {
-var25 = "*";
-var26 = 1;
-var27 = string__NativeString__to_s_with_length(var25, var26);
-var24 = var27;
-varonce23 = var24;
-}
-var28 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var24) /* == on <var_nit_name:String>*/;
-if (var28){
-if (varonce29) {
-var30 = varonce29;
-} else {
-var31 = "_star";
-var32 = 5;
-var33 = string__NativeString__to_s_with_length(var31, var32);
-var30 = var33;
-varonce29 = var30;
-}
-var = var30;
-goto RET_LABEL;
-} else {
-}
-if (varonce34) {
-var35 = varonce34;
-} else {
-var36 = "/";
-var37 = 1;
-var38 = string__NativeString__to_s_with_length(var36, var37);
-var35 = var38;
-varonce34 = var35;
-}
-var39 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var35) /* == on <var_nit_name:String>*/;
-if (var39){
-if (varonce40) {
-var41 = varonce40;
-} else {
-var42 = "_slash";
-var43 = 6;
-var44 = string__NativeString__to_s_with_length(var42, var43);
-var41 = var44;
-varonce40 = var41;
-}
-var = var41;
-goto RET_LABEL;
-} else {
-}
-if (varonce45) {
-var46 = varonce45;
-} else {
-var47 = "%";
-var48 = 1;
-var49 = string__NativeString__to_s_with_length(var47, var48);
-var46 = var49;
-varonce45 = var46;
-}
-var50 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var46) /* == on <var_nit_name:String>*/;
-if (var50){
-if (varonce51) {
-var52 = varonce51;
-} else {
-var53 = "_percent";
-var54 = 8;
-var55 = string__NativeString__to_s_with_length(var53, var54);
-var52 = var55;
-varonce51 = var52;
-}
-var = var52;
-goto RET_LABEL;
-} else {
-}
-if (varonce56) {
-var57 = varonce56;
-} else {
-var58 = "[]";
-var59 = 2;
-var60 = string__NativeString__to_s_with_length(var58, var59);
-var57 = var60;
-varonce56 = var57;
-}
-var61 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var57) /* == on <var_nit_name:String>*/;
-if (var61){
-if (varonce62) {
-var63 = varonce62;
-} else {
-var64 = "_index";
-var65 = 6;
-var66 = string__NativeString__to_s_with_length(var64, var65);
-var63 = var66;
-varonce62 = var63;
-}
-var = var63;
-goto RET_LABEL;
-} else {
-}
-if (varonce67) {
-var68 = varonce67;
-} else {
-var69 = "[]=";
-var70 = 3;
-var71 = string__NativeString__to_s_with_length(var69, var70);
-var68 = var71;
-varonce67 = var68;
-}
-var72 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var68) /* == on <var_nit_name:String>*/;
-if (var72){
-if (varonce73) {
-var74 = varonce73;
-} else {
-var75 = "_index_assign";
-var76 = 13;
-var77 = string__NativeString__to_s_with_length(var75, var76);
-var74 = var77;
-varonce73 = var74;
-}
-var = var74;
-goto RET_LABEL;
-} else {
-}
-if (varonce78) {
-var79 = varonce78;
-} else {
-var80 = "==";
-var81 = 2;
-var82 = string__NativeString__to_s_with_length(var80, var81);
-var79 = var82;
-varonce78 = var79;
-}
-var83 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var79) /* == on <var_nit_name:String>*/;
-if (var83){
-if (varonce84) {
-var85 = varonce84;
-} else {
-var86 = "_equal";
-var87 = 6;
-var88 = string__NativeString__to_s_with_length(var86, var87);
-var85 = var88;
-varonce84 = var85;
-}
-var = var85;
-goto RET_LABEL;
-} else {
-}
-if (varonce89) {
-var90 = varonce89;
-} else {
-var91 = "<";
-var92 = 1;
-var93 = string__NativeString__to_s_with_length(var91, var92);
-var90 = var93;
-varonce89 = var90;
-}
-var94 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var90) /* == on <var_nit_name:String>*/;
-if (var94){
-if (varonce95) {
-var96 = varonce95;
-} else {
-var97 = "_less";
-var98 = 5;
-var99 = string__NativeString__to_s_with_length(var97, var98);
-var96 = var99;
-varonce95 = var96;
-}
-var = var96;
-goto RET_LABEL;
-} else {
-}
-if (varonce100) {
-var101 = varonce100;
-} else {
-var102 = ">";
-var103 = 1;
-var104 = string__NativeString__to_s_with_length(var102, var103);
-var101 = var104;
-varonce100 = var101;
-}
-var105 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var101) /* == on <var_nit_name:String>*/;
-if (var105){
-if (varonce106) {
-var107 = varonce106;
-} else {
-var108 = "_geater";
-var109 = 7;
-var110 = string__NativeString__to_s_with_length(var108, var109);
-var107 = var110;
-varonce106 = var107;
-}
-var = var107;
-goto RET_LABEL;
-} else {
-}
-if (varonce111) {
-var112 = varonce111;
-} else {
-var113 = "<=";
-var114 = 2;
-var115 = string__NativeString__to_s_with_length(var113, var114);
-var112 = var115;
-varonce111 = var112;
-}
-var116 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var112) /* == on <var_nit_name:String>*/;
-if (var116){
-if (varonce117) {
-var118 = varonce117;
-} else {
-var119 = "_less_or_equal";
-var120 = 14;
-var121 = string__NativeString__to_s_with_length(var119, var120);
-var118 = var121;
-varonce117 = var118;
-}
-var = var118;
-goto RET_LABEL;
-} else {
-}
-if (varonce122) {
-var123 = varonce122;
-} else {
-var124 = ">=";
-var125 = 2;
-var126 = string__NativeString__to_s_with_length(var124, var125);
-var123 = var126;
-varonce122 = var123;
-}
-var127 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var123) /* == on <var_nit_name:String>*/;
-if (var127){
-if (varonce128) {
-var129 = varonce128;
-} else {
-var130 = "_greater_or_equal";
-var131 = 17;
-var132 = string__NativeString__to_s_with_length(var130, var131);
-var129 = var132;
-varonce128 = var129;
-}
-var = var129;
-goto RET_LABEL;
-} else {
-}
-if (varonce133) {
-var134 = varonce133;
-} else {
-var135 = "!=";
-var136 = 2;
-var137 = string__NativeString__to_s_with_length(var135, var136);
-var134 = var137;
-varonce133 = var134;
-}
-var138 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var134) /* == on <var_nit_name:String>*/;
-if (var138){
-if (varonce139) {
-var140 = varonce139;
-} else {
-var141 = "_not_equal";
-var142 = 10;
-var143 = string__NativeString__to_s_with_length(var141, var142);
-var140 = var143;
-varonce139 = var140;
-}
-var = var140;
-goto RET_LABEL;
-} else {
-}
-if (varonce144) {
-var145 = varonce144;
-} else {
-var146 = "<<";
-var147 = 2;
-var148 = string__NativeString__to_s_with_length(var146, var147);
-var145 = var148;
-varonce144 = var145;
-}
-var149 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var145) /* == on <var_nit_name:String>*/;
-if (var149){
-if (varonce150) {
-var151 = varonce150;
-} else {
-var152 = "_left";
-var153 = 5;
-var154 = string__NativeString__to_s_with_length(var152, var153);
-var151 = var154;
-varonce150 = var151;
-}
-var = var151;
-goto RET_LABEL;
-} else {
-}
-if (varonce155) {
-var156 = varonce155;
-} else {
-var157 = ">>";
-var158 = 2;
-var159 = string__NativeString__to_s_with_length(var157, var158);
-var156 = var159;
-varonce155 = var156;
-}
-var160 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var156) /* == on <var_nit_name:String>*/;
-if (var160){
-if (varonce161) {
-var162 = varonce161;
-} else {
-var163 = "_right";
-var164 = 6;
-var165 = string__NativeString__to_s_with_length(var163, var164);
-var162 = var165;
-varonce161 = var162;
-}
-var = var162;
-goto RET_LABEL;
-} else {
-}
-if (varonce166) {
-var167 = varonce166;
-} else {
-var168 = "<=>";
-var169 = 3;
-var170 = string__NativeString__to_s_with_length(var168, var169);
-var167 = var170;
-varonce166 = var167;
-}
-var171 = ((short int (*)(val*, val*))(var_nit_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_nit_name, var167) /* == on <var_nit_name:String>*/;
-if (var171){
-if (varonce172) {
-var173 = varonce172;
-} else {
-var174 = "_starship";
-var175 = 9;
-var176 = string__NativeString__to_s_with_length(var174, var175);
-var173 = var176;
-varonce172 = var173;
-}
-var = var173;
-goto RET_LABEL;
-} else {
-}
-var177 = ((val* (*)(val*))(var_nit_name->class->vft[COLOR_abstract_collection__SequenceRead__last]))(var_nit_name) /* last on <var_nit_name:String>*/;
-var178 = '=';
-{ /* Inline kernel#Char#== (var177,var178) */
-var181 = (var177 != NULL) && (var177->class == &class_kernel__Char);
-if (var181) {
-var182 = ((struct instance_kernel__Char*)var177)->value; /* autounbox from nullable Object to Char */;
-var181 = (var182 == var178);
-}
-var179 = var181;
-goto RET_LABEL180;
-RET_LABEL180:(void)0;
-}
-if (var179){
-var183 = NEW_array__Array(&type_array__Arraykernel__Object);
-var184 = 3;
-((void (*)(val*, long))(var183->class->vft[COLOR_array__Array__with_capacity]))(var183, var184) /* with_capacity on <var183:Array[Object]>*/;
-var_ = var183;
-if (varonce185) {
-var186 = varonce185;
-} else {
-var187 = "";
-var188 = 0;
-var189 = string__NativeString__to_s_with_length(var187, var188);
-var186 = var189;
-varonce185 = var186;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var186) /* add on <var_:Array[Object]>*/;
-var190 = 0;
-var191 = ((long (*)(val*))(var_nit_name->class->vft[COLOR_abstract_collection__Collection__length]))(var_nit_name) /* length on <var_nit_name:String>*/;
-var192 = 1;
-{ /* Inline kernel#Int#- (var191,var192) */
-var195 = var191 - var192;
-var193 = var195;
-goto RET_LABEL194;
-RET_LABEL194:(void)0;
-}
-var196 = ((val* (*)(val*, long, long))(var_nit_name->class->vft[COLOR_string__AbstractString__substring]))(var_nit_name, var190, var193) /* substring on <var_nit_name:String>*/;
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var196) /* add on <var_:Array[Object]>*/;
-if (varonce197) {
-var198 = varonce197;
-} else {
-var199 = "__assign";
-var200 = 8;
-var201 = string__NativeString__to_s_with_length(var199, var200);
-var198 = var201;
-varonce197 = var198;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var198) /* add on <var_:Array[Object]>*/;
-var202 = ((val* (*)(val*))(var_->class->vft[COLOR_string__Object__to_s]))(var_) /* to_s on <var_:Array[Object]>*/;
-var = var202;
-goto RET_LABEL;
-} else {
-}
-var = var_nit_name;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MMethod#short_cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MMethod__short_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MMethod__short_cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#AModule#cname for (self: AModule): String */
-val* nitni_base__AModule__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : nullable MModule */;
-val* var2 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_modelbuilder__AModule__mmodule]))(self) /* mmodule on <self:AModule>*/;
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Receiver is null");
-fprintf(stderr, " (%s:%d)\n", "src/nitni/nitni_base.nit", 55);
-show_backtrace(1);
-} else {
-var2 = ((val* (*)(val*))(var1->class->vft[COLOR_mmodule__MModule__name]))(var1) /* name on <var1:nullable MModule>*/;
-}
-var = var2;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#AModule#cname for (self: Object): String */
-val* VIRTUAL_nitni_base__AModule__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__AModule__cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MMethodDef#cname for (self: MMethodDef): String */
-val* nitni_base__MMethodDef__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : Array[Object] */;
-long var2 /* : Int */;
-val* var_ /* var : Array[Object] */;
-static val* varonce;
-val* var3 /* : String */;
-char* var4 /* : NativeString */;
-long var5 /* : Int */;
-val* var6 /* : String */;
-val* var7 /* : MClassDef */;
-val* var8 /* : MClass */;
-val* var9 /* : String */;
-static val* varonce10;
-val* var11 /* : String */;
-char* var12 /* : NativeString */;
-long var13 /* : Int */;
-val* var14 /* : String */;
-val* var15 /* : MProperty */;
-val* var16 /* : String */;
-static val* varonce17;
-val* var18 /* : String */;
-char* var19 /* : NativeString */;
-long var20 /* : Int */;
-val* var21 /* : String */;
-val* var22 /* : String */;
-var1 = NEW_array__Array(&type_array__Arraykernel__Object);
-var2 = 5;
-((void (*)(val*, long))(var1->class->vft[COLOR_array__Array__with_capacity]))(var1, var2) /* with_capacity on <var1:Array[Object]>*/;
-var_ = var1;
-if (varonce) {
-var3 = varonce;
-} else {
-var4 = "";
-var5 = 0;
-var6 = string__NativeString__to_s_with_length(var4, var5);
-var3 = var6;
-varonce = var3;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var3) /* add on <var_:Array[Object]>*/;
-var7 = ((val* (*)(val*))(self->class->vft[COLOR_model__MPropDef__mclassdef]))(self) /* mclassdef on <self:MMethodDef>*/;
-var8 = ((val* (*)(val*))(var7->class->vft[COLOR_model__MClassDef__mclass]))(var7) /* mclass on <var7:MClassDef>*/;
-var9 = ((val* (*)(val*))(var8->class->vft[COLOR_model__MClass__name]))(var8) /* name on <var8:MClass>*/;
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var9) /* add on <var_:Array[Object]>*/;
-if (varonce10) {
-var11 = varonce10;
-} else {
-var12 = "_";
-var13 = 1;
-var14 = string__NativeString__to_s_with_length(var12, var13);
-var11 = var14;
-varonce10 = var11;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var11) /* add on <var_:Array[Object]>*/;
-var15 = ((val* (*)(val*))(self->class->vft[COLOR_model__MPropDef__mproperty]))(self) /* mproperty on <self:MMethodDef>*/;
-var16 = ((val* (*)(val*))(var15->class->vft[COLOR_nitni_base__MMethod__short_cname]))(var15) /* short_cname on <var15:MProperty(MMethod)>*/;
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var16) /* add on <var_:Array[Object]>*/;
-if (varonce17) {
-var18 = varonce17;
-} else {
-var19 = "";
-var20 = 0;
-var21 = string__NativeString__to_s_with_length(var19, var20);
-var18 = var21;
-varonce17 = var18;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var18) /* add on <var_:Array[Object]>*/;
-var22 = ((val* (*)(val*))(var_->class->vft[COLOR_string__Object__to_s]))(var_) /* to_s on <var_:Array[Object]>*/;
-var = var22;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MMethodDef#cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MMethodDef__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MMethodDef__cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#cname for (self: MType): String */
-val* nitni_base__MType__cname(val* self) {
-val* var /* : String */;
-const char* var_class_name;
-var_class_name = self == NULL ? "null" : self->type->name;
-fprintf(stderr, "Runtime error: Abstract method `%s` called on `%s`", "cname", var_class_name);
-fprintf(stderr, " (%s:%d)\n", "src/nitni/nitni_base.nit", 65);
-show_backtrace(1);
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MType__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MType__cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#cname_blind for (self: MType): String */
-val* nitni_base__MType__cname_blind(val* self) {
-val* var /* : String */;
-const char* var_class_name;
-var_class_name = self == NULL ? "null" : self->type->name;
-fprintf(stderr, "Runtime error: Abstract method `%s` called on `%s`", "cname_blind", var_class_name);
-fprintf(stderr, " (%s:%d)\n", "src/nitni/nitni_base.nit", 70);
-show_backtrace(1);
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#cname_blind for (self: Object): String */
-val* VIRTUAL_nitni_base__MType__cname_blind(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MType__cname_blind(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#mangled_cname for (self: MType): String */
-val* nitni_base__MType__mangled_cname(val* self) {
-val* var /* : String */;
-const char* var_class_name;
-var_class_name = self == NULL ? "null" : self->type->name;
-fprintf(stderr, "Runtime error: Abstract method `%s` called on `%s`", "mangled_cname", var_class_name);
-fprintf(stderr, " (%s:%d)\n", "src/nitni/nitni_base.nit", 74);
-show_backtrace(1);
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#mangled_cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MType__mangled_cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#is_cprimitive for (self: MType): Bool */
-short int nitni_base__MType__is_cprimitive(val* self) {
-short int var /* : Bool */;
-const char* var_class_name;
-var_class_name = self == NULL ? "null" : self->type->name;
-fprintf(stderr, "Runtime error: Abstract method `%s` called on `%s`", "is_cprimitive", var_class_name);
-fprintf(stderr, " (%s:%d)\n", "src/nitni/nitni_base.nit", 79);
-show_backtrace(1);
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MType#is_cprimitive for (self: Object): Bool */
-short int VIRTUAL_nitni_base__MType__is_cprimitive(val* self) {
-short int var /* : Bool */;
-short int var1 /* : Bool */;
-var1 = nitni_base__MType__is_cprimitive(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#cname for (self: MClassType): String */
-val* nitni_base__MClassType__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : MClass */;
-val* var2 /* : String */;
-val* var_name /* var name: String */;
-static val* varonce;
-val* var3 /* : String */;
-char* var4 /* : NativeString */;
-long var5 /* : Int */;
-val* var6 /* : String */;
-short int var7 /* : Bool */;
-static val* varonce8;
-val* var9 /* : String */;
-char* var10 /* : NativeString */;
-long var11 /* : Int */;
-val* var12 /* : String */;
-static val* varonce13;
-val* var14 /* : String */;
-char* var15 /* : NativeString */;
-long var16 /* : Int */;
-val* var17 /* : String */;
-short int var18 /* : Bool */;
-static val* varonce19;
-val* var20 /* : String */;
-char* var21 /* : NativeString */;
-long var22 /* : Int */;
-val* var23 /* : String */;
-static val* varonce24;
-val* var25 /* : String */;
-char* var26 /* : NativeString */;
-long var27 /* : Int */;
-val* var28 /* : String */;
-short int var29 /* : Bool */;
-static val* varonce30;
-val* var31 /* : String */;
-char* var32 /* : NativeString */;
-long var33 /* : Int */;
-val* var34 /* : String */;
-static val* varonce35;
-val* var36 /* : String */;
-char* var37 /* : NativeString */;
-long var38 /* : Int */;
-val* var39 /* : String */;
-short int var40 /* : Bool */;
-static val* varonce41;
-val* var42 /* : String */;
-char* var43 /* : NativeString */;
-long var44 /* : Int */;
-val* var45 /* : String */;
-static val* varonce46;
-val* var47 /* : String */;
-char* var48 /* : NativeString */;
-long var49 /* : Int */;
-val* var50 /* : String */;
-short int var51 /* : Bool */;
-static val* varonce52;
-val* var53 /* : String */;
-char* var54 /* : NativeString */;
-long var55 /* : Int */;
-val* var56 /* : String */;
-val* var57 /* : MClass */;
-val* var58 /* : MClassKind */;
-val* var59 /* : MClassKind */;
-short int var60 /* : Bool */;
-val* var61 /* : MClass */;
-val* var62 /* : nullable String */;
-val* var_ctype /* var ctype: nullable String */;
-val* var63 /* : null */;
-short int var64 /* : Bool */;
-val* var65 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var2 = ((val* (*)(val*))(var1->class->vft[COLOR_model__MClass__name]))(var1) /* name on <var1:MClass>*/;
-var_name = var2;
-if (varonce) {
-var3 = varonce;
-} else {
-var4 = "Bool";
-var5 = 4;
-var6 = string__NativeString__to_s_with_length(var4, var5);
-var3 = var6;
-varonce = var3;
-}
-var7 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var3) /* == on <var_name:String>*/;
-if (var7){
-if (varonce8) {
-var9 = varonce8;
-} else {
-var10 = "int";
-var11 = 3;
-var12 = string__NativeString__to_s_with_length(var10, var11);
-var9 = var12;
-varonce8 = var9;
-}
-var = var9;
-goto RET_LABEL;
-} else {
-}
-if (varonce13) {
-var14 = varonce13;
-} else {
-var15 = "Char";
-var16 = 4;
-var17 = string__NativeString__to_s_with_length(var15, var16);
-var14 = var17;
-varonce13 = var14;
-}
-var18 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var14) /* == on <var_name:String>*/;
-if (var18){
-if (varonce19) {
-var20 = varonce19;
-} else {
-var21 = "char";
-var22 = 4;
-var23 = string__NativeString__to_s_with_length(var21, var22);
-var20 = var23;
-varonce19 = var20;
-}
-var = var20;
-goto RET_LABEL;
-} else {
-}
-if (varonce24) {
-var25 = varonce24;
-} else {
-var26 = "Float";
-var27 = 5;
-var28 = string__NativeString__to_s_with_length(var26, var27);
-var25 = var28;
-varonce24 = var25;
-}
-var29 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var25) /* == on <var_name:String>*/;
-if (var29){
-if (varonce30) {
-var31 = varonce30;
-} else {
-var32 = "double";
-var33 = 6;
-var34 = string__NativeString__to_s_with_length(var32, var33);
-var31 = var34;
-varonce30 = var31;
-}
-var = var31;
-goto RET_LABEL;
-} else {
-}
-if (varonce35) {
-var36 = varonce35;
-} else {
-var37 = "Int";
-var38 = 3;
-var39 = string__NativeString__to_s_with_length(var37, var38);
-var36 = var39;
-varonce35 = var36;
-}
-var40 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var36) /* == on <var_name:String>*/;
-if (var40){
-if (varonce41) {
-var42 = varonce41;
-} else {
-var43 = "int";
-var44 = 3;
-var45 = string__NativeString__to_s_with_length(var43, var44);
-var42 = var45;
-varonce41 = var42;
-}
-var = var42;
-goto RET_LABEL;
-} else {
-}
-if (varonce46) {
-var47 = varonce46;
-} else {
-var48 = "NativeString";
-var49 = 12;
-var50 = string__NativeString__to_s_with_length(var48, var49);
-var47 = var50;
-varonce46 = var47;
-}
-var51 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var47) /* == on <var_name:String>*/;
-if (var51){
-if (varonce52) {
-var53 = varonce52;
-} else {
-var54 = "char*";
-var55 = 5;
-var56 = string__NativeString__to_s_with_length(var54, var55);
-var53 = var56;
-varonce52 = var53;
-}
-var = var53;
-goto RET_LABEL;
-} else {
-}
-var57 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var58 = ((val* (*)(val*))(var57->class->vft[COLOR_model__MClass__kind]))(var57) /* kind on <var57:MClass>*/;
-var59 = ((val* (*)(val*))(self->class->vft[COLOR_model__Object__extern_kind]))(self) /* extern_kind on <self:MClassType>*/;
-var60 = ((short int (*)(val*, val*))(var58->class->vft[COLOR_kernel__Object___61d_61d]))(var58, var59) /* == on <var58:MClassKind>*/;
-if (var60){
-var61 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var62 = ((val* (*)(val*))(var61->class->vft[COLOR_nitni_base__MClass__ctype]))(var61) /* ctype on <var61:MClass>*/;
-var_ctype = var62;
-var63 = NULL;
-if (var_ctype == NULL) {
-var64 = 0; /* is null */
-} else {
-var64 = 1; /* arg is null and recv is not */
-}
-if (!var64) {
-fprintf(stderr, "Runtime error: %s", "Assert failed");
-fprintf(stderr, " (%s:%d)\n", "src/nitni/nitni_base.nit", 96);
-show_backtrace(1);
-}
-var = var_ctype;
-goto RET_LABEL;
-} else {
-}
-var65 = ((val* (*)(val*))(self->class->vft[COLOR_nitni_base__MType__mangled_cname]))(self) /* mangled_cname on <self:MClassType>*/;
-var = var65;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MClassType__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MClassType__cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#cname_blind for (self: MClassType): String */
-val* nitni_base__MClassType__cname_blind(val* self) {
-val* var /* : String */;
-val* var1 /* : MClass */;
-val* var2 /* : String */;
-val* var_name /* var name: String */;
-static val* varonce;
-val* var3 /* : String */;
-char* var4 /* : NativeString */;
-long var5 /* : Int */;
-val* var6 /* : String */;
-short int var7 /* : Bool */;
-static val* varonce8;
-val* var9 /* : String */;
-char* var10 /* : NativeString */;
-long var11 /* : Int */;
-val* var12 /* : String */;
-static val* varonce13;
-val* var14 /* : String */;
-char* var15 /* : NativeString */;
-long var16 /* : Int */;
-val* var17 /* : String */;
-short int var18 /* : Bool */;
-static val* varonce19;
-val* var20 /* : String */;
-char* var21 /* : NativeString */;
-long var22 /* : Int */;
-val* var23 /* : String */;
-static val* varonce24;
-val* var25 /* : String */;
-char* var26 /* : NativeString */;
-long var27 /* : Int */;
-val* var28 /* : String */;
-short int var29 /* : Bool */;
-static val* varonce30;
-val* var31 /* : String */;
-char* var32 /* : NativeString */;
-long var33 /* : Int */;
-val* var34 /* : String */;
-static val* varonce35;
-val* var36 /* : String */;
-char* var37 /* : NativeString */;
-long var38 /* : Int */;
-val* var39 /* : String */;
-short int var40 /* : Bool */;
-static val* varonce41;
-val* var42 /* : String */;
-char* var43 /* : NativeString */;
-long var44 /* : Int */;
-val* var45 /* : String */;
-static val* varonce46;
-val* var47 /* : String */;
-char* var48 /* : NativeString */;
-long var49 /* : Int */;
-val* var50 /* : String */;
-short int var51 /* : Bool */;
-static val* varonce52;
-val* var53 /* : String */;
-char* var54 /* : NativeString */;
-long var55 /* : Int */;
-val* var56 /* : String */;
-val* var57 /* : MClass */;
-val* var58 /* : MClassKind */;
-val* var59 /* : MClassKind */;
-short int var60 /* : Bool */;
-static val* varonce61;
-val* var62 /* : String */;
-char* var63 /* : NativeString */;
-long var64 /* : Int */;
-val* var65 /* : String */;
-static val* varonce66;
-val* var67 /* : String */;
-char* var68 /* : NativeString */;
-long var69 /* : Int */;
-val* var70 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var2 = ((val* (*)(val*))(var1->class->vft[COLOR_model__MClass__name]))(var1) /* name on <var1:MClass>*/;
-var_name = var2;
-if (varonce) {
-var3 = varonce;
-} else {
-var4 = "Bool";
-var5 = 4;
-var6 = string__NativeString__to_s_with_length(var4, var5);
-var3 = var6;
-varonce = var3;
-}
-var7 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var3) /* == on <var_name:String>*/;
-if (var7){
-if (varonce8) {
-var9 = varonce8;
-} else {
-var10 = "int";
-var11 = 3;
-var12 = string__NativeString__to_s_with_length(var10, var11);
-var9 = var12;
-varonce8 = var9;
-}
-var = var9;
-goto RET_LABEL;
-} else {
-}
-if (varonce13) {
-var14 = varonce13;
-} else {
-var15 = "Char";
-var16 = 4;
-var17 = string__NativeString__to_s_with_length(var15, var16);
-var14 = var17;
-varonce13 = var14;
-}
-var18 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var14) /* == on <var_name:String>*/;
-if (var18){
-if (varonce19) {
-var20 = varonce19;
-} else {
-var21 = "char";
-var22 = 4;
-var23 = string__NativeString__to_s_with_length(var21, var22);
-var20 = var23;
-varonce19 = var20;
-}
-var = var20;
-goto RET_LABEL;
-} else {
-}
-if (varonce24) {
-var25 = varonce24;
-} else {
-var26 = "Float";
-var27 = 5;
-var28 = string__NativeString__to_s_with_length(var26, var27);
-var25 = var28;
-varonce24 = var25;
-}
-var29 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var25) /* == on <var_name:String>*/;
-if (var29){
-if (varonce30) {
-var31 = varonce30;
-} else {
-var32 = "double";
-var33 = 6;
-var34 = string__NativeString__to_s_with_length(var32, var33);
-var31 = var34;
-varonce30 = var31;
-}
-var = var31;
-goto RET_LABEL;
-} else {
-}
-if (varonce35) {
-var36 = varonce35;
-} else {
-var37 = "Int";
-var38 = 3;
-var39 = string__NativeString__to_s_with_length(var37, var38);
-var36 = var39;
-varonce35 = var36;
-}
-var40 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var36) /* == on <var_name:String>*/;
-if (var40){
-if (varonce41) {
-var42 = varonce41;
-} else {
-var43 = "int";
-var44 = 3;
-var45 = string__NativeString__to_s_with_length(var43, var44);
-var42 = var45;
-varonce41 = var42;
-}
-var = var42;
-goto RET_LABEL;
-} else {
-}
-if (varonce46) {
-var47 = varonce46;
-} else {
-var48 = "NativeString";
-var49 = 12;
-var50 = string__NativeString__to_s_with_length(var48, var49);
-var47 = var50;
-varonce46 = var47;
-}
-var51 = ((short int (*)(val*, val*))(var_name->class->vft[COLOR_kernel__Object___61d_61d]))(var_name, var47) /* == on <var_name:String>*/;
-if (var51){
-if (varonce52) {
-var53 = varonce52;
-} else {
-var54 = "char*";
-var55 = 5;
-var56 = string__NativeString__to_s_with_length(var54, var55);
-var53 = var56;
-varonce52 = var53;
-}
-var = var53;
-goto RET_LABEL;
-} else {
-}
-var57 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var58 = ((val* (*)(val*))(var57->class->vft[COLOR_model__MClass__kind]))(var57) /* kind on <var57:MClass>*/;
-var59 = ((val* (*)(val*))(self->class->vft[COLOR_model__Object__extern_kind]))(self) /* extern_kind on <self:MClassType>*/;
-var60 = ((short int (*)(val*, val*))(var58->class->vft[COLOR_kernel__Object___61d_61d]))(var58, var59) /* == on <var58:MClassKind>*/;
-if (var60){
-if (varonce61) {
-var62 = varonce61;
-} else {
-var63 = "void*";
-var64 = 5;
-var65 = string__NativeString__to_s_with_length(var63, var64);
-var62 = var65;
-varonce61 = var62;
-}
-var = var62;
-goto RET_LABEL;
-} else {
-}
-if (varonce66) {
-var67 = varonce66;
-} else {
-var68 = "struct nitni_instance *";
-var69 = 23;
-var70 = string__NativeString__to_s_with_length(var68, var69);
-var67 = var70;
-varonce66 = var67;
-}
-var = var67;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#cname_blind for (self: Object): String */
-val* VIRTUAL_nitni_base__MClassType__cname_blind(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MClassType__cname_blind(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#mangled_cname for (self: MClassType): String */
-val* nitni_base__MClassType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : MClass */;
-val* var2 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var2 = ((val* (*)(val*))(var1->class->vft[COLOR_model__MClass__name]))(var1) /* name on <var1:MClass>*/;
-var = var2;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#mangled_cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MClassType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MClassType__mangled_cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#is_cprimitive for (self: MClassType): Bool */
-short int nitni_base__MClassType__is_cprimitive(val* self) {
-short int var /* : Bool */;
-short int var1 /* : Bool */;
-val* var2 /* : MClass */;
-val* var3 /* : MClassKind */;
-val* var4 /* : MClassKind */;
-short int var5 /* : Bool */;
-short int var_ /* var : Bool */;
-static val* varonce;
-static int varonce_guard;
-val* var6 /* : Array[String] */;
-val* var7 /* : Array[String] */;
-long var8 /* : Int */;
-val* var_9 /* var : Array[String] */;
-static val* varonce10;
-val* var11 /* : String */;
-char* var12 /* : NativeString */;
-long var13 /* : Int */;
-val* var14 /* : String */;
-static val* varonce15;
-val* var16 /* : String */;
-char* var17 /* : NativeString */;
-long var18 /* : Int */;
-val* var19 /* : String */;
-static val* varonce20;
-val* var21 /* : String */;
-char* var22 /* : NativeString */;
-long var23 /* : Int */;
-val* var24 /* : String */;
-static val* varonce25;
-val* var26 /* : String */;
-char* var27 /* : NativeString */;
-long var28 /* : Int */;
-val* var29 /* : String */;
-static val* varonce30;
-val* var31 /* : String */;
-char* var32 /* : NativeString */;
-long var33 /* : Int */;
-val* var34 /* : String */;
-val* var35 /* : MClass */;
-val* var36 /* : String */;
-short int var37 /* : Bool */;
-var2 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var3 = ((val* (*)(val*))(var2->class->vft[COLOR_model__MClass__kind]))(var2) /* kind on <var2:MClass>*/;
-var4 = ((val* (*)(val*))(self->class->vft[COLOR_model__Object__extern_kind]))(self) /* extern_kind on <self:MClassType>*/;
-var5 = ((short int (*)(val*, val*))(var3->class->vft[COLOR_kernel__Object___61d_61d]))(var3, var4) /* == on <var3:MClassKind>*/;
-var_ = var5;
-if (var5){
-var1 = var_;
-} else {
-if (varonce_guard) {
-var6 = varonce;
-} else {
-var7 = NEW_array__Array(&type_array__Arraystring__String);
-var8 = 5;
-((void (*)(val*, long))(var7->class->vft[COLOR_array__Array__with_capacity]))(var7, var8) /* with_capacity on <var7:Array[String]>*/;
-var_9 = var7;
-if (varonce10) {
-var11 = varonce10;
-} else {
-var12 = "Bool";
-var13 = 4;
-var14 = string__NativeString__to_s_with_length(var12, var13);
-var11 = var14;
-varonce10 = var11;
-}
-((void (*)(val*, val*))(var_9->class->vft[COLOR_abstract_collection__Sequence__push]))(var_9, var11) /* push on <var_9:Array[String]>*/;
-if (varonce15) {
-var16 = varonce15;
-} else {
-var17 = "Char";
-var18 = 4;
-var19 = string__NativeString__to_s_with_length(var17, var18);
-var16 = var19;
-varonce15 = var16;
-}
-((void (*)(val*, val*))(var_9->class->vft[COLOR_abstract_collection__Sequence__push]))(var_9, var16) /* push on <var_9:Array[String]>*/;
-if (varonce20) {
-var21 = varonce20;
-} else {
-var22 = "Float";
-var23 = 5;
-var24 = string__NativeString__to_s_with_length(var22, var23);
-var21 = var24;
-varonce20 = var21;
-}
-((void (*)(val*, val*))(var_9->class->vft[COLOR_abstract_collection__Sequence__push]))(var_9, var21) /* push on <var_9:Array[String]>*/;
-if (varonce25) {
-var26 = varonce25;
-} else {
-var27 = "Int";
-var28 = 3;
-var29 = string__NativeString__to_s_with_length(var27, var28);
-var26 = var29;
-varonce25 = var26;
-}
-((void (*)(val*, val*))(var_9->class->vft[COLOR_abstract_collection__Sequence__push]))(var_9, var26) /* push on <var_9:Array[String]>*/;
-if (varonce30) {
-var31 = varonce30;
-} else {
-var32 = "NativeString";
-var33 = 12;
-var34 = string__NativeString__to_s_with_length(var32, var33);
-var31 = var34;
-varonce30 = var31;
-}
-((void (*)(val*, val*))(var_9->class->vft[COLOR_abstract_collection__Sequence__push]))(var_9, var31) /* push on <var_9:Array[String]>*/;
-var6 = var_9;
-varonce = var6;
-varonce_guard = 1;
-}
-var35 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__mclass]))(self) /* mclass on <self:MClassType>*/;
-var36 = ((val* (*)(val*))(var35->class->vft[COLOR_model__MClass__name]))(var35) /* name on <var35:MClass>*/;
-var37 = ((short int (*)(val*, val*))(var6->class->vft[COLOR_abstract_collection__Collection__has]))(var6, var36) /* has on <var6:Array[String]>*/;
-var1 = var37;
-}
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClassType#is_cprimitive for (self: Object): Bool */
-short int VIRTUAL_nitni_base__MClassType__is_cprimitive(val* self) {
-short int var /* : Bool */;
-short int var1 /* : Bool */;
-var1 = nitni_base__MClassType__is_cprimitive(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#cname for (self: MNullableType): String */
-val* nitni_base__MNullableType__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_nitni_base__MType__mangled_cname]))(self) /* mangled_cname on <self:MNullableType>*/;
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MNullableType__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MNullableType__cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#cname_blind for (self: MNullableType): String */
-val* nitni_base__MNullableType__cname_blind(val* self) {
-val* var /* : String */;
-static val* varonce;
-val* var1 /* : String */;
-char* var2 /* : NativeString */;
-long var3 /* : Int */;
-val* var4 /* : String */;
-if (varonce) {
-var1 = varonce;
-} else {
-var2 = "struct nitni_instance *";
-var3 = 23;
-var4 = string__NativeString__to_s_with_length(var2, var3);
-var1 = var4;
-varonce = var1;
-}
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#cname_blind for (self: Object): String */
-val* VIRTUAL_nitni_base__MNullableType__cname_blind(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MNullableType__cname_blind(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#mangled_cname for (self: MNullableType): String */
-val* nitni_base__MNullableType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : Array[Object] */;
-long var2 /* : Int */;
-val* var_ /* var : Array[Object] */;
-static val* varonce;
-val* var3 /* : String */;
-char* var4 /* : NativeString */;
-long var5 /* : Int */;
-val* var6 /* : String */;
-val* var7 /* : MType */;
-val* var8 /* : String */;
-static val* varonce9;
-val* var10 /* : String */;
-char* var11 /* : NativeString */;
-long var12 /* : Int */;
-val* var13 /* : String */;
-val* var14 /* : String */;
-var1 = NEW_array__Array(&type_array__Arraykernel__Object);
-var2 = 3;
-((void (*)(val*, long))(var1->class->vft[COLOR_array__Array__with_capacity]))(var1, var2) /* with_capacity on <var1:Array[Object]>*/;
-var_ = var1;
-if (varonce) {
-var3 = varonce;
-} else {
-var4 = "nullable_";
-var5 = 9;
-var6 = string__NativeString__to_s_with_length(var4, var5);
-var3 = var6;
-varonce = var3;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var3) /* add on <var_:Array[Object]>*/;
-var7 = ((val* (*)(val*))(self->class->vft[COLOR_model__MNullableType__mtype]))(self) /* mtype on <self:MNullableType>*/;
-var8 = ((val* (*)(val*))(var7->class->vft[COLOR_nitni_base__MType__mangled_cname]))(var7) /* mangled_cname on <var7:MType>*/;
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var8) /* add on <var_:Array[Object]>*/;
-if (varonce9) {
-var10 = varonce9;
-} else {
-var11 = "";
-var12 = 0;
-var13 = string__NativeString__to_s_with_length(var11, var12);
-var10 = var13;
-varonce9 = var10;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var10) /* add on <var_:Array[Object]>*/;
-var14 = ((val* (*)(val*))(var_->class->vft[COLOR_string__Object__to_s]))(var_) /* to_s on <var_:Array[Object]>*/;
-var = var14;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#mangled_cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MNullableType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MNullableType__mangled_cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#is_cprimitive for (self: MNullableType): Bool */
-short int nitni_base__MNullableType__is_cprimitive(val* self) {
-short int var /* : Bool */;
-short int var1 /* : Bool */;
-var1 = 0;
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MNullableType#is_cprimitive for (self: Object): Bool */
-short int VIRTUAL_nitni_base__MNullableType__is_cprimitive(val* self) {
-short int var /* : Bool */;
-short int var1 /* : Bool */;
-var1 = nitni_base__MNullableType__is_cprimitive(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MVirtualType#mangled_cname for (self: MVirtualType): String */
-val* nitni_base__MVirtualType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_string__Object__to_s]))(self) /* to_s on <self:MVirtualType>*/;
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MVirtualType#mangled_cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MVirtualType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MVirtualType__mangled_cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MGenericType#cname for (self: MGenericType): String */
-val* nitni_base__MGenericType__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_nitni_base__MType__mangled_cname]))(self) /* mangled_cname on <self:MGenericType>*/;
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MGenericType#cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MGenericType__cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MGenericType__cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MGenericType#mangled_cname for (self: MGenericType): String */
-val* nitni_base__MGenericType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-val* var_base /* var base: String */;
-val* var2 /* : Array[String] */;
-val* var_params /* var params: Array[String] */;
-val* var3 /* : Array[MType] */;
-val* var4 /* : Iterator[nullable Object] */;
-short int var5 /* : Bool */;
-val* var6 /* : nullable Object */;
-val* var_arg /* var arg: MType */;
-val* var7 /* : String */;
-val* var8 /* : Array[Object] */;
-long var9 /* : Int */;
-val* var_ /* var : Array[Object] */;
-static val* varonce;
-val* var10 /* : String */;
-char* var11 /* : NativeString */;
-long var12 /* : Int */;
-val* var13 /* : String */;
-static val* varonce14;
-val* var15 /* : String */;
-char* var16 /* : NativeString */;
-long var17 /* : Int */;
-val* var18 /* : String */;
-static val* varonce19;
-val* var20 /* : String */;
-char* var21 /* : NativeString */;
-long var22 /* : Int */;
-val* var23 /* : String */;
-val* var24 /* : String */;
-static val* varonce25;
-val* var26 /* : String */;
-char* var27 /* : NativeString */;
-long var28 /* : Int */;
-val* var29 /* : String */;
-val* var30 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_nitni_base__MGenericType__mangled_cname]))(self) /* mangled_cname on <self:MGenericType>*/;
-var_base = var1;
-var2 = NEW_array__Array(&type_array__Arraystring__String);
-((void (*)(val*))(var2->class->vft[COLOR_array__Array__init]))(var2) /* init on <var2:Array[String]>*/;
-var_params = var2;
-var3 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClassType__arguments]))(self) /* arguments on <self:MGenericType>*/;
-var4 = ((val* (*)(val*))(var3->class->vft[COLOR_abstract_collection__Collection__iterator]))(var3) /* iterator on <var3:Array[MType]>*/;
-for(;;) {
-var5 = ((short int (*)(val*))(var4->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var4) /* is_ok on <var4:Iterator[nullable Object]>*/;
-if(!var5) break;
-var6 = ((val* (*)(val*))(var4->class->vft[COLOR_abstract_collection__Iterator__item]))(var4) /* item on <var4:Iterator[nullable Object]>*/;
-var_arg = var6;
-var7 = ((val* (*)(val*))(var_arg->class->vft[COLOR_nitni_base__MType__mangled_cname]))(var_arg) /* mangled_cname on <var_arg:MType>*/;
-((void (*)(val*, val*))(var_params->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_params, var7) /* add on <var_params:Array[String]>*/;
-CONTINUE_label: (void)0;
-((void (*)(val*))(var4->class->vft[COLOR_abstract_collection__Iterator__next]))(var4) /* next on <var4:Iterator[nullable Object]>*/;
-}
-BREAK_label: (void)0;
-var8 = NEW_array__Array(&type_array__Arraykernel__Object);
-var9 = 5;
-((void (*)(val*, long))(var8->class->vft[COLOR_array__Array__with_capacity]))(var8, var9) /* with_capacity on <var8:Array[Object]>*/;
-var_ = var8;
-if (varonce) {
-var10 = varonce;
-} else {
-var11 = "";
-var12 = 0;
-var13 = string__NativeString__to_s_with_length(var11, var12);
-var10 = var13;
-varonce = var10;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var10) /* add on <var_:Array[Object]>*/;
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var_base) /* add on <var_:Array[Object]>*/;
-if (varonce14) {
-var15 = varonce14;
-} else {
-var16 = "_of_";
-var17 = 4;
-var18 = string__NativeString__to_s_with_length(var16, var17);
-var15 = var18;
-varonce14 = var15;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var15) /* add on <var_:Array[Object]>*/;
-if (varonce19) {
-var20 = varonce19;
-} else {
-var21 = "_";
-var22 = 1;
-var23 = string__NativeString__to_s_with_length(var21, var22);
-var20 = var23;
-varonce19 = var20;
-}
-var24 = ((val* (*)(val*, val*))(var_params->class->vft[COLOR_string__Collection__join]))(var_params, var20) /* join on <var_params:Array[String]>*/;
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var24) /* add on <var_:Array[Object]>*/;
-if (varonce25) {
-var26 = varonce25;
-} else {
-var27 = "";
-var28 = 0;
-var29 = string__NativeString__to_s_with_length(var27, var28);
-var26 = var29;
-varonce25 = var26;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var26) /* add on <var_:Array[Object]>*/;
-var30 = ((val* (*)(val*))(var_->class->vft[COLOR_string__Object__to_s]))(var_) /* to_s on <var_:Array[Object]>*/;
-var = var30;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MGenericType#mangled_cname for (self: Object): String */
-val* VIRTUAL_nitni_base__MGenericType__mangled_cname(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = nitni_base__MGenericType__mangled_cname(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClass#ctype for (self: MClass): nullable String */
-val* nitni_base__MClass__ctype(val* self) {
-val* var /* : nullable String */;
-val* var1 /* : MClassKind */;
-val* var2 /* : MClassKind */;
-short int var3 /* : Bool */;
-static val* varonce;
-val* var4 /* : String */;
-char* var5 /* : NativeString */;
-long var6 /* : Int */;
-val* var7 /* : String */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_model__MClass__kind]))(self) /* kind on <self:MClass>*/;
-var2 = ((val* (*)(val*))(self->class->vft[COLOR_model__Object__extern_kind]))(self) /* extern_kind on <self:MClass>*/;
-var3 = ((short int (*)(val*, val*))(var1->class->vft[COLOR_kernel__Object___61d_61d]))(var1, var2) /* == on <var1:MClassKind>*/;
-if (!var3) {
-fprintf(stderr, "Runtime error: %s", "Assert failed");
-fprintf(stderr, " (%s:%d)\n", "src/nitni/nitni_base.nit", 146);
-show_backtrace(1);
-}
-if (varonce) {
-var4 = varonce;
-} else {
-var5 = "void*";
-var6 = 5;
-var7 = string__NativeString__to_s_with_length(var5, var6);
-var4 = var7;
-varonce = var4;
-}
-var = var4;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method nitni_base#MClass#ctype for (self: Object): nullable String */
-val* VIRTUAL_nitni_base__MClass__ctype(val* self) {
-val* var /* : nullable String */;
-val* var1 /* : nullable String */;
-var1 = nitni_base__MClass__ctype(self);
-var = var1;
-RET_LABEL:;
-return var;
-}