X-Git-Url: http://nitlanguage.org diff --git a/c_src/nitc__literal.sep.1.c b/c_src/nitc__literal.sep.1.c new file mode 100644 index 0000000..631f055 --- /dev/null +++ b/c_src/nitc__literal.sep.1.c @@ -0,0 +1,685 @@ +#include "nitc__literal.sep.0.h" +/* method literal#LiteralPhase#process_nmodule for (self: LiteralPhase, AModule) */ +void nitc__literal___nitc__literal__LiteralPhase___nitc__phase__Phase__process_nmodule(val* self, val* p0) { +val* var_nmodule /* var nmodule: AModule */; +val* var /* : ToolContext */; +val* var2 /* : ToolContext */; +var_nmodule = p0; +{ +{ /* Inline phase#Phase#toolcontext (self) on */ +var2 = self->attrs[COLOR_nitc__phase__Phase___toolcontext].val; /* _toolcontext on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase, 200); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +nitc__literal___AModule___do_literal(var_nmodule, var); /* Direct call literal#AModule#do_literal on */ +} +RET_LABEL:; +} +/* method literal#AModule#do_literal for (self: AModule, ToolContext) */ +void nitc__literal___AModule___do_literal(val* self, val* p0) { +val* var_toolcontext /* var toolcontext: ToolContext */; +val* var /* : LiteralVisitor */; +val* var_v /* var v: LiteralVisitor */; +var_toolcontext = p0; +var = NEW_nitc__literal__LiteralVisitor(&type_nitc__literal__LiteralVisitor); +{ +((void(*)(val* self, val* p0))(var->class->vft[COLOR_nitc__literal__LiteralVisitor__toolcontext_61d]))(var, var_toolcontext); /* toolcontext= on */ +} +{ +((void(*)(val* self))(var->class->vft[COLOR_core__kernel__Object__init]))(var); /* init on */ +} +var_v = var; +{ +nitc___nitc__Visitor___enter_visit(var_v, self); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method literal#LiteralVisitor#toolcontext for (self: LiteralVisitor): ToolContext */ +val* nitc__literal___nitc__literal__LiteralVisitor___toolcontext(val* self) { +val* var /* : ToolContext */; +val* var1 /* : ToolContext */; +var1 = self->attrs[COLOR_nitc__literal__LiteralVisitor___toolcontext].val; /* _toolcontext on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__literal, 46); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method literal#LiteralVisitor#toolcontext= for (self: LiteralVisitor, ToolContext) */ +void nitc__literal___nitc__literal__LiteralVisitor___toolcontext_61d(val* self, val* p0) { +self->attrs[COLOR_nitc__literal__LiteralVisitor___toolcontext].val = p0; /* _toolcontext on */ +RET_LABEL:; +} +/* method literal#LiteralVisitor#visit for (self: LiteralVisitor, ANode) */ +void nitc__literal___nitc__literal__LiteralVisitor___nitc__parser_nodes__Visitor__visit(val* self, val* p0) { +val* var_n /* var n: ANode */; +var_n = p0; +{ +((void(*)(val* self, val* p0))(var_n->class->vft[COLOR_nitc__literal__ANode__accept_literal]))(var_n, self); /* accept_literal on */ +} +{ +((void(*)(val* self, val* p0))(var_n->class->vft[COLOR_nitc__parser_nodes__ANode__visit_all]))(var_n, self); /* visit_all on */ +} +RET_LABEL:; +} +/* method literal#LiteralVisitor#init for (self: LiteralVisitor) */ +void nitc__literal___nitc__literal__LiteralVisitor___core__kernel__Object__init(val* self) { +{ +((void(*)(val* self))(self->class->vft[COLOR_nitc__literal___nitc__literal__LiteralVisitor___core__kernel__Object__init]))(self); /* init on */ +} +RET_LABEL:; +} +/* method literal#ANode#accept_literal for (self: ANode, LiteralVisitor) */ +void nitc__literal___ANode___accept_literal(val* self, val* p0) { +val* var_v /* var v: LiteralVisitor */; +var_v = p0; +RET_LABEL:; +} +/* method literal#AExpr#as_string for (self: AExpr): nullable String */ +val* nitc__literal___AExpr___as_string(val* self) { +val* var /* : nullable String */; +short int var1 /* : Bool */; +int cltype; +int idtype; +short int var2 /* : Bool */; +val* var3 /* : nullable String */; +val* var5 /* : nullable String */; +/* isa AStringFormExpr */ +cltype = type_nitc__AStringFormExpr.color; +idtype = type_nitc__AStringFormExpr.id; +if(cltype >= self->type->table_size) { +var1 = 0; +} else { +var1 = self->type->type_table[cltype] == idtype; +} +var2 = !var1; +if (var2){ +var = ((val*)NULL); +goto RET_LABEL; +} else { +} +{ +{ /* Inline literal#AStringFormExpr#value (self) on */ +var5 = self->attrs[COLOR_nitc__literal__AStringFormExpr___value].val; /* _value on */ +var3 = var5; +RET_LABEL4:(void)0; +} +} +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__literal, 65); +fatal_exit(1); +} +var = var3; +goto RET_LABEL; +RET_LABEL:; +return var; +} +/* method literal#AIntegerExpr#value for (self: AIntegerExpr): nullable Numeric */ +val* nitc__literal___AIntegerExpr___value(val* self) { +val* var /* : nullable Numeric */; +val* var1 /* : nullable Numeric */; +var1 = self->attrs[COLOR_nitc__literal__AIntegerExpr___value].val; /* _value on */ +var = var1; +RET_LABEL:; +return var; +} +/* method literal#AIntegerExpr#value= for (self: AIntegerExpr, nullable Numeric) */ +void nitc__literal___AIntegerExpr___value_61d(val* self, val* p0) { +self->attrs[COLOR_nitc__literal__AIntegerExpr___value].val = p0; /* _value on */ +RET_LABEL:; +} +/* method literal#AIntegerExpr#accept_literal for (self: AIntegerExpr, LiteralVisitor) */ +void nitc__literal___AIntegerExpr___ANode__accept_literal(val* self, val* p0) { +val* var_v /* var v: LiteralVisitor */; +val* var /* : TInteger */; +val* var2 /* : TInteger */; +val* var3 /* : String */; +val* var4 /* : nullable Numeric */; +val* var6 /* : nullable Numeric */; +val* var8 /* : nullable Numeric */; +short int var9 /* : Bool */; +short int var10 /* : Bool */; +val* var11 /* : ToolContext */; +val* var13 /* : ToolContext */; +val* var14 /* : Location */; +val* var15 /* : NativeArray[String] */; +static val* varonce; +static val* varonce16; +val* var17 /* : String */; +char* var18 /* : NativeString */; +val* var19 /* : String */; +static val* varonce20; +val* var21 /* : String */; +char* var22 /* : NativeString */; +val* var23 /* : String */; +val* var24 /* : TInteger */; +val* var26 /* : TInteger */; +val* var27 /* : String */; +val* var28 /* : String */; +val* var29 /* : Message */; +var_v = p0; +{ +{ /* Inline parser_nodes#AIntegerExpr#n_integer (self) on */ +var2 = self->attrs[COLOR_nitc__parser_nodes__AIntegerExpr___n_integer].val; /* _n_integer on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_integer"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2511); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +var3 = nitc__lexer_work___Token___text(var); +} +{ +var4 = core__fixed_ints___Text___to_num(var3); +} +{ +{ /* Inline literal#AIntegerExpr#value= (self,var4) on */ +self->attrs[COLOR_nitc__literal__AIntegerExpr___value].val = var4; /* _value on */ +RET_LABEL5:(void)0; +} +} +{ +{ /* Inline literal#AIntegerExpr#value (self) on */ +var8 = self->attrs[COLOR_nitc__literal__AIntegerExpr___value].val; /* _value on */ +var6 = var8; +RET_LABEL7:(void)0; +} +} +if (var6 == NULL) { +var9 = 1; /* is null */ +} else { +var9 = 0; /* arg is null but recv is not */ +} +if (0) { +var10 = ((short int(*)(val* self, val* p0))((((long)var6&3)?class_info[((long)var6&3)]:var6->class)->vft[COLOR_core__kernel__Object___61d_61d]))(var6, ((val*)NULL)); /* == on */ +var9 = var10; +} +if (var9){ +{ +{ /* Inline literal#LiteralVisitor#toolcontext (var_v) on */ +var13 = var_v->attrs[COLOR_nitc__literal__LiteralVisitor___toolcontext].val; /* _toolcontext on */ +if (unlikely(var13 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__literal, 46); +fatal_exit(1); +} +var11 = var13; +RET_LABEL12:(void)0; +} +} +{ +var14 = nitc___nitc__ANode___hot_location(self); +} +if (unlikely(varonce==NULL)) { +var15 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); +if (likely(varonce16!=NULL)) { +var17 = varonce16; +} else { +var18 = "Error: invalid literal `"; +var19 = core__flat___NativeString___to_s_full(var18, 24l, 24l); +var17 = var19; +varonce16 = var17; +} +((struct instance_core__NativeArray*)var15)->values[0]=var17; +if (likely(varonce20!=NULL)) { +var21 = varonce20; +} else { +var22 = "`"; +var23 = core__flat___NativeString___to_s_full(var22, 1l, 1l); +var21 = var23; +varonce20 = var21; +} +((struct instance_core__NativeArray*)var15)->values[2]=var21; +} else { +var15 = varonce; +varonce = NULL; +} +{ +{ /* Inline parser_nodes#AIntegerExpr#n_integer (self) on */ +var26 = self->attrs[COLOR_nitc__parser_nodes__AIntegerExpr___n_integer].val; /* _n_integer on */ +if (unlikely(var26 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_integer"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2511); +fatal_exit(1); +} +var24 = var26; +RET_LABEL25:(void)0; +} +} +{ +var27 = nitc__lexer_work___Token___text(var24); +} +((struct instance_core__NativeArray*)var15)->values[1]=var27; +{ +var28 = ((val*(*)(val* self))(var15->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var15); /* native_to_s on */ +} +varonce = var15; +{ +var29 = nitc___nitc__ToolContext___error(var11, var14, var28); +} +} else { +} +RET_LABEL:; +} +/* method literal#AFloatExpr#value= for (self: AFloatExpr, nullable Float) */ +void nitc__literal___AFloatExpr___value_61d(val* self, val* p0) { +self->attrs[COLOR_nitc__literal__AFloatExpr___value].val = p0; /* _value on */ +RET_LABEL:; +} +/* method literal#AFloatExpr#accept_literal for (self: AFloatExpr, LiteralVisitor) */ +void nitc__literal___AFloatExpr___ANode__accept_literal(val* self, val* p0) { +val* var_v /* var v: LiteralVisitor */; +val* var /* : TFloat */; +val* var2 /* : TFloat */; +val* var3 /* : String */; +double var4 /* : Float */; +val* var6 /* : nullable Float */; +var_v = p0; +{ +{ /* Inline parser_nodes#AFloatExpr#n_float (self) on */ +var2 = self->attrs[COLOR_nitc__parser_nodes__AFloatExpr___n_float].val; /* _n_float on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_float"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2519); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +var3 = nitc__lexer_work___Token___text(var); +} +{ +var4 = core___core__Text___to_f(var3); +} +{ +{ /* Inline literal#AFloatExpr#value= (self,var4) on */ +var6 = BOX_core__Float(var4); /* autobox from Float to nullable Float */ +self->attrs[COLOR_nitc__literal__AFloatExpr___value].val = var6; /* _value on */ +RET_LABEL5:(void)0; +} +} +RET_LABEL:; +} +/* method literal#ACharExpr#value for (self: ACharExpr): nullable Char */ +val* nitc__literal___ACharExpr___value(val* self) { +val* var /* : nullable Char */; +val* var1 /* : nullable Char */; +var1 = self->attrs[COLOR_nitc__literal__ACharExpr___value].val; /* _value on */ +var = var1; +RET_LABEL:; +return var; +} +/* method literal#ACharExpr#value= for (self: ACharExpr, nullable Char) */ +void nitc__literal___ACharExpr___value_61d(val* self, val* p0) { +self->attrs[COLOR_nitc__literal__ACharExpr___value].val = p0; /* _value on */ +RET_LABEL:; +} +/* method literal#ACharExpr#accept_literal for (self: ACharExpr, LiteralVisitor) */ +void nitc__literal___ACharExpr___ANode__accept_literal(val* self, val* p0) { +val* var_v /* var v: LiteralVisitor */; +val* var /* : TChar */; +val* var2 /* : TChar */; +val* var3 /* : String */; +val* var4 /* : String */; +val* var_txt /* var txt: String */; +long var5 /* : Int */; +short int var6 /* : Bool */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; +val* var10 /* : ToolContext */; +val* var12 /* : ToolContext */; +val* var13 /* : Location */; +val* var14 /* : NativeArray[String] */; +static val* varonce; +static val* varonce15; +val* var16 /* : String */; +char* var17 /* : NativeString */; +val* var18 /* : String */; +static val* varonce19; +val* var20 /* : String */; +char* var21 /* : NativeString */; +val* var22 /* : String */; +val* var23 /* : String */; +val* var24 /* : Message */; +val* var25 /* : SequenceRead[Char] */; +val* var26 /* : nullable Object */; +var_v = p0; +{ +{ /* Inline parser_nodes#ACharExpr#n_char (self) on */ +var2 = self->attrs[COLOR_nitc__parser_nodes__ACharExpr___n_char].val; /* _n_char on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_char"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2527); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +var3 = nitc__lexer_work___Token___text(var); +} +{ +var4 = core___core__Text___unescape_nit(var3); +} +var_txt = var4; +{ +var5 = ((long(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__length]))(var_txt); /* length on */ +} +{ +{ /* Inline kernel#Int#!= (var5,3l) on */ +var8 = var5 == 3l; +var9 = !var8; +var6 = var9; +goto RET_LABEL7; +RET_LABEL7:(void)0; +} +} +if (var6){ +{ +{ /* Inline literal#LiteralVisitor#toolcontext (var_v) on */ +var12 = var_v->attrs[COLOR_nitc__literal__LiteralVisitor___toolcontext].val; /* _toolcontext on */ +if (unlikely(var12 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__literal, 46); +fatal_exit(1); +} +var10 = var12; +RET_LABEL11:(void)0; +} +} +{ +var13 = nitc___nitc__ANode___hot_location(self); +} +if (unlikely(varonce==NULL)) { +var14 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); +if (likely(varonce15!=NULL)) { +var16 = varonce15; +} else { +var17 = "Syntax Error: invalid character literal `"; +var18 = core__flat___NativeString___to_s_full(var17, 41l, 41l); +var16 = var18; +varonce15 = var16; +} +((struct instance_core__NativeArray*)var14)->values[0]=var16; +if (likely(varonce19!=NULL)) { +var20 = varonce19; +} else { +var21 = "`."; +var22 = core__flat___NativeString___to_s_full(var21, 2l, 2l); +var20 = var22; +varonce19 = var20; +} +((struct instance_core__NativeArray*)var14)->values[2]=var20; +} else { +var14 = varonce; +varonce = NULL; +} +((struct instance_core__NativeArray*)var14)->values[1]=var_txt; +{ +var23 = ((val*(*)(val* self))(var14->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var14); /* native_to_s on */ +} +varonce = var14; +{ +var24 = nitc___nitc__ToolContext___error(var10, var13, var23); +} +goto RET_LABEL; +} else { +} +{ +var25 = ((val*(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__chars]))(var_txt); /* chars on */ +} +{ +var26 = ((val*(*)(val* self, long p0))((((long)var25&3)?class_info[((long)var25&3)]:var25->class)->vft[COLOR_core__abstract_collection__SequenceRead___91d_93d]))(var25, 1l); /* [] on */ +} +{ +{ /* Inline literal#ACharExpr#value= (self,var26) on */ +self->attrs[COLOR_nitc__literal__ACharExpr___value].val = var26; /* _value on */ +RET_LABEL27:(void)0; +} +} +RET_LABEL:; +} +/* method literal#AStringFormExpr#value for (self: AStringFormExpr): nullable String */ +val* nitc__literal___AStringFormExpr___value(val* self) { +val* var /* : nullable String */; +val* var1 /* : nullable String */; +var1 = self->attrs[COLOR_nitc__literal__AStringFormExpr___value].val; /* _value on */ +var = var1; +RET_LABEL:; +return var; +} +/* method literal#AStringFormExpr#value= for (self: AStringFormExpr, nullable String) */ +void nitc__literal___AStringFormExpr___value_61d(val* self, val* p0) { +self->attrs[COLOR_nitc__literal__AStringFormExpr___value].val = p0; /* _value on */ +RET_LABEL:; +} +/* method literal#AStringFormExpr#accept_literal for (self: AStringFormExpr, LiteralVisitor) */ +void nitc__literal___AStringFormExpr___ANode__accept_literal(val* self, val* p0) { +val* var_v /* var v: LiteralVisitor */; +val* var /* : Token */; +val* var2 /* : Token */; +val* var3 /* : String */; +val* var_txt /* var txt: String */; +long var_behead /* var behead: Int */; +long var_betail /* var betail: Int */; +short int var4 /* : Bool */; +val* var5 /* : SequenceRead[Char] */; +val* var6 /* : nullable Object */; +val* var7 /* : SequenceRead[Char] */; +val* var8 /* : nullable Object */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; +short int var_ /* var : Bool */; +long var12 /* : Int */; +short int var13 /* : Bool */; +short int var15 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +val* var18 /* : SequenceRead[Char] */; +val* var19 /* : nullable Object */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +uint32_t var23 /* : Char */; +short int var_24 /* var : Bool */; +val* var25 /* : SequenceRead[Char] */; +val* var26 /* : nullable Object */; +short int var27 /* : Bool */; +short int var29 /* : Bool */; +uint32_t var30 /* : Char */; +long var31 /* : Int */; +long var32 /* : Int */; +short int var34 /* : Bool */; +int cltype35; +int idtype36; +const char* var_class_name37; +long var38 /* : Int */; +long var39 /* : Int */; +short int var41 /* : Bool */; +int cltype42; +int idtype43; +const char* var_class_name44; +long var45 /* : Int */; +val* var46 /* : Text */; +val* var47 /* : String */; +var_v = p0; +{ +{ /* Inline parser_nodes#AStringFormExpr#n_string (self) on */ +var2 = self->attrs[COLOR_nitc__parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2535); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +var3 = nitc__lexer_work___Token___text(var); +} +var_txt = var3; +var_behead = 1l; +var_betail = 1l; +{ +var5 = ((val*(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__chars]))(var_txt); /* chars on */ +} +{ +var6 = ((val*(*)(val* self, long p0))((((long)var5&3)?class_info[((long)var5&3)]:var5->class)->vft[COLOR_core__abstract_collection__SequenceRead___91d_93d]))(var5, 0l); /* [] on */ +} +{ +var7 = ((val*(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__chars]))(var_txt); /* chars on */ +} +{ +var8 = ((val*(*)(val* self, long p0))((((long)var7&3)?class_info[((long)var7&3)]:var7->class)->vft[COLOR_core__abstract_collection__SequenceRead___91d_93d]))(var7, 1l); /* [] on */ +} +{ +{ /* Inline kernel#Char#== (var6,var8) on */ +var11 = var6 == var8; +var9 = var11; +goto RET_LABEL10; +RET_LABEL10:(void)0; +} +} +var_ = var9; +if (var9){ +{ +var12 = ((long(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__length]))(var_txt); /* length on */ +} +{ +{ /* Inline kernel#Int#>= (var12,6l) on */ +/* Covariant cast for argument 0 (i) <6l:Int> isa OTHER */ +/* <6l:Int> isa OTHER */ +var15 = 1; /* easy <6l:Int> isa OTHER*/ +if (unlikely(!var15)) { +var_class_name = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729); +fatal_exit(1); +} +var16 = var12 >= 6l; +var13 = var16; +goto RET_LABEL14; +RET_LABEL14:(void)0; +} +} +var4 = var13; +} else { +var4 = var_; +} +if (var4){ +var_behead = 3l; +var_betail = 3l; +{ +var18 = ((val*(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__chars]))(var_txt); /* chars on */ +} +{ +var19 = ((val*(*)(val* self, long p0))((((long)var18&3)?class_info[((long)var18&3)]:var18->class)->vft[COLOR_core__abstract_collection__SequenceRead___91d_93d]))(var18, 0l); /* [] on */ +} +{ +{ /* Inline kernel#Char#== (var19,'\"') on */ +var23 = (uint32_t)((long)(var19)>>2); +var22 = var23 == '\"'; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var_24 = var20; +if (var20){ +{ +var25 = ((val*(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__chars]))(var_txt); /* chars on */ +} +{ +var26 = ((val*(*)(val* self, long p0))((((long)var25&3)?class_info[((long)var25&3)]:var25->class)->vft[COLOR_core__abstract_collection__SequenceRead___91d_93d]))(var25, 3l); /* [] on */ +} +{ +{ /* Inline kernel#Char#== (var26,'\n') on */ +var30 = (uint32_t)((long)(var26)>>2); +var29 = var30 == '\n'; +var27 = var29; +goto RET_LABEL28; +RET_LABEL28:(void)0; +} +} +var17 = var27; +} else { +var17 = var_24; +} +if (var17){ +var_behead = 4l; +} else { +} +} else { +} +{ +var31 = ((long(*)(val* self))(var_txt->class->vft[COLOR_core__abstract_text__Text__length]))(var_txt); /* length on */ +} +{ +{ /* Inline kernel#Int#- (var31,var_behead) on */ +/* Covariant cast for argument 0 (i) isa OTHER */ +/* isa OTHER */ +var34 = 1; /* easy isa OTHER*/ +if (unlikely(!var34)) { +var_class_name37 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name37); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 734); +fatal_exit(1); +} +var38 = var31 - var_behead; +var32 = var38; +goto RET_LABEL33; +RET_LABEL33:(void)0; +} +} +{ +{ /* Inline kernel#Int#- (var32,var_betail) on */ +/* Covariant cast for argument 0 (i) isa OTHER */ +/* isa OTHER */ +var41 = 1; /* easy isa OTHER*/ +if (unlikely(!var41)) { +var_class_name44 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name44); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 734); +fatal_exit(1); +} +var45 = var32 - var_betail; +var39 = var45; +goto RET_LABEL40; +RET_LABEL40:(void)0; +} +} +{ +var46 = ((val*(*)(val* self, long p0, long p1))(var_txt->class->vft[COLOR_core__abstract_text__Text__substring]))(var_txt, var_behead, var39); /* substring on */ +} +{ +var47 = core___core__Text___unescape_nit(var46); +} +{ +{ /* Inline literal#AStringFormExpr#value= (self,var47) on */ +self->attrs[COLOR_nitc__literal__AStringFormExpr___value].val = var47; /* _value on */ +RET_LABEL48:(void)0; +} +} +RET_LABEL:; +}