regern c_src
[nit.git] / c_src / template.sep.1.c
index 60df9c4..b352d51 100644 (file)
@@ -1,12 +1,16 @@
 #include "template.sep.0.h"
-/* method template#Template#add for (self: Template, Streamable) */
+/* method template#Template#rendering for (self: Template) */
+void template___template__Template___rendering(val* self) {
+RET_LABEL:;
+}
+/* method template#Template#add for (self: Template, Writable) */
 void template___template__Template___add(val* self, val* p0) {
-val* var_element /* var element: Streamable */;
+val* var_element /* var element: Writable */;
 short int var /* : Bool */;
 short int var2 /* : Bool */;
 short int var3 /* : Bool */;
-val* var4 /* : Array[Streamable] */;
-val* var6 /* : Array[Streamable] */;
+val* var4 /* : Array[Writable] */;
+val* var6 /* : Array[Writable] */;
 var_element = p0;
 {
 { /* Inline template#Template#is_frozen (self) on <self:Template> */
@@ -19,7 +23,7 @@ var3 = !var;
 if (unlikely(!var3)) {
 PRINT_ERROR("Runtime error: %s", "Assert failed");
 PRINT_ERROR(" (%s:%d)\n", FILE_template, 110);
-show_backtrace(1);
+fatal_exit(1);
 }
 {
 { /* Inline template#Template#content (self) on <self:Template> */
@@ -27,36 +31,34 @@ var6 = self->attrs[COLOR_template__Template___content].val; /* _content on <self
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _content");
 PRINT_ERROR(" (%s:%d)\n", FILE_template, 183);
-show_backtrace(1);
+fatal_exit(1);
 }
 var4 = var6;
 RET_LABEL5:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var4, var_element); /* Direct call array#Array#add on <var4:Array[Streamable]>*/
+standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var4, var_element); /* Direct call array#Array#add on <var4:Array[Writable]>*/
 }
 RET_LABEL:;
 }
-/* method template#Template#addn for (self: Template, Streamable) */
+/* method template#Template#addn for (self: Template, Writable) */
 void template___template__Template___addn(val* self, val* p0) {
-val* var_element /* var element: Streamable */;
+val* var_element /* var element: Writable */;
 static val* varonce;
 val* var /* : String */;
 char* var1 /* : NativeString */;
-long var2 /* : Int */;
-val* var3 /* : FlatString */;
+val* var2 /* : FlatString */;
 var_element = p0;
 {
 template___template__Template___add(self, var_element); /* Direct call template#Template#add on <self:Template>*/
 }
-if (varonce) {
+if (likely(varonce!=NULL)) {
 var = varonce;
 } else {
 var1 = "\n";
-var2 = 1;
-var3 = standard___standard__NativeString___to_s_with_length(var1, var2);
-var = var3;
+var2 = standard___standard__NativeString___to_s_with_length(var1, 1l);
+var = var2;
 varonce = var;
 }
 {
@@ -82,7 +84,6 @@ RET_LABEL:;
 void template___template__Template___freeze(val* self) {
 short int var /* : Bool */;
 short int var2 /* : Bool */;
-short int var3 /* : Bool */;
 {
 { /* Inline template#Template#is_frozen (self) on <self:Template> */
 var2 = self->attrs[COLOR_template__Template___is_frozen].s; /* _is_frozen on <self:Template> */
@@ -94,24 +95,23 @@ if (var){
 goto RET_LABEL;
 } else {
 }
-var3 = 1;
 {
-{ /* Inline template#Template#is_frozen= (self,var3) on <self:Template> */
-self->attrs[COLOR_template__Template___is_frozen].s = var3; /* _is_frozen on <self:Template> */
-RET_LABEL4:(void)0;
+{ /* Inline template#Template#is_frozen= (self,1) on <self:Template> */
+self->attrs[COLOR_template__Template___is_frozen].s = 1; /* _is_frozen on <self:Template> */
+RET_LABEL3:(void)0;
 }
 }
 RET_LABEL:;
 }
-/* method template#Template#content for (self: Template): Array[Streamable] */
+/* method template#Template#content for (self: Template): Array[Writable] */
 val* template___template__Template___content(val* self) {
-val* var /* : Array[Streamable] */;
-val* var1 /* : Array[Streamable] */;
+val* var /* : Array[Writable] */;
+val* var1 /* : Array[Writable] */;
 var1 = self->attrs[COLOR_template__Template___content].val; /* _content on <self:Template> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _content");
 PRINT_ERROR(" (%s:%d)\n", FILE_template, 183);
-show_backtrace(1);
+fatal_exit(1);
 }
 var = var1;
 RET_LABEL:;
@@ -135,7 +135,6 @@ RET_LABEL:;
 void template___template__Template___force_render(val* self) {
 short int var /* : Bool */;
 short int var2 /* : Bool */;
-short int var3 /* : Bool */;
 {
 { /* Inline template#Template#render_done (self) on <self:Template> */
 var2 = self->attrs[COLOR_template__Template___render_done].s; /* _render_done on <self:Template> */
@@ -147,37 +146,34 @@ if (var){
 goto RET_LABEL;
 } else {
 }
-var3 = 1;
 {
-{ /* Inline template#Template#render_done= (self,var3) on <self:Template> */
-self->attrs[COLOR_template__Template___render_done].s = var3; /* _render_done on <self:Template> */
-RET_LABEL4:(void)0;
+{ /* Inline template#Template#render_done= (self,1) on <self:Template> */
+self->attrs[COLOR_template__Template___render_done].s = 1; /* _render_done on <self:Template> */
+RET_LABEL3:(void)0;
 }
 }
 {
-nit___nit__BashCompletion___template__Template__rendering(self); /* Direct call toolcontext#BashCompletion#rendering on <self:Template>*/
+((void(*)(val* self))(self->class->vft[COLOR_template__Template__rendering]))(self); /* rendering on <self:Template>*/
 }
 {
 template___template__Template___freeze(self); /* Direct call template#Template#freeze on <self:Template>*/
 }
 RET_LABEL:;
 }
-/* method template#Template#write_to for (self: Template, OStream) */
-void template___template__Template___standard__stream__Streamable__write_to(val* self, val* p0) {
-val* var_stream /* var stream: OStream */;
+/* method template#Template#write_to for (self: Template, Writer) */
+void template___template__Template___standard__stream__Writable__write_to(val* self, val* p0) {
+val* var_stream /* var stream: Writer */;
 short int var /* : Bool */;
 short int var2 /* : Bool */;
 short int var3 /* : Bool */;
-short int var4 /* : Bool */;
-val* var6 /* : Array[Streamable] */;
-val* var8 /* : Array[Streamable] */;
-val* var_ /* var : Array[Streamable] */;
-val* var9 /* : ArrayIterator[nullable Object] */;
-val* var_10 /* var : ArrayIterator[Streamable] */;
-short int var11 /* : Bool */;
-val* var12 /* : nullable Object */;
-val* var_e /* var e: Streamable */;
-short int var14 /* : Bool */;
+val* var5 /* : Array[Writable] */;
+val* var7 /* : Array[Writable] */;
+val* var_ /* var : Array[Writable] */;
+val* var8 /* : ArrayIterator[nullable Object] */;
+val* var_9 /* var : ArrayIterator[Writable] */;
+short int var10 /* : Bool */;
+val* var11 /* : nullable Object */;
+val* var_e /* var e: Writable */;
 var_stream = p0;
 {
 { /* Inline template#Template#is_writing (self) on <self:Template> */
@@ -190,13 +186,12 @@ var3 = !var;
 if (unlikely(!var3)) {
 PRINT_ERROR("Runtime error: %s", "Assert failed");
 PRINT_ERROR(" (%s:%d)\n", FILE_template, 205);
-show_backtrace(1);
+fatal_exit(1);
 }
-var4 = 1;
 {
-{ /* Inline template#Template#is_writing= (self,var4) on <self:Template> */
-self->attrs[COLOR_template__Template___is_writing].s = var4; /* _is_writing on <self:Template> */
-RET_LABEL5:(void)0;
+{ /* Inline template#Template#is_writing= (self,1) on <self:Template> */
+self->attrs[COLOR_template__Template___is_writing].s = 1; /* _is_writing on <self:Template> */
+RET_LABEL4:(void)0;
 }
 }
 {
@@ -204,35 +199,35 @@ template___template__Template___force_render(self); /* Direct call template#Temp
 }
 {
 { /* Inline template#Template#content (self) on <self:Template> */
-var8 = self->attrs[COLOR_template__Template___content].val; /* _content on <self:Template> */
-if (unlikely(var8 == NULL)) {
+var7 = self->attrs[COLOR_template__Template___content].val; /* _content on <self:Template> */
+if (unlikely(var7 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _content");
 PRINT_ERROR(" (%s:%d)\n", FILE_template, 183);
-show_backtrace(1);
+fatal_exit(1);
 }
-var6 = var8;
-RET_LABEL7:(void)0;
+var5 = var7;
+RET_LABEL6:(void)0;
 }
 }
-var_ = var6;
+var_ = var5;
 {
-var9 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_);
+var8 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_);
 }
-var_10 = var9;
+var_9 = var8;
 for(;;) {
 {
-var11 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_10);
+var10 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_9);
 }
-if (var11){
+if (var10){
 {
-var12 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_10);
+var11 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_9);
 }
-var_e = var12;
+var_e = var11;
 {
-((void (*)(val* self, val* p0))(var_e->class->vft[COLOR_standard__stream__Streamable__write_to]))(var_e, var_stream) /* write_to on <var_e:Streamable>*/;
+((void(*)(val* self, val* p0))((((long)var_e&3)?class_info[((long)var_e&3)]:var_e->class)->vft[COLOR_standard__stream__Writable__write_to]))(var_e, var_stream); /* write_to on <var_e:Writable>*/
 }
 {
-standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_10); /* Direct call array#ArrayIterator#next on <var_10:ArrayIterator[Streamable]>*/
+standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_9); /* Direct call array#ArrayIterator#next on <var_9:ArrayIterator[Writable]>*/
 }
 } else {
 goto BREAK_label;
@@ -240,15 +235,12 @@ goto BREAK_label;
 }
 BREAK_label: (void)0;
 {
-{ /* Inline abstract_collection#Iterator#finish (var_10) on <var_10:ArrayIterator[Streamable]> */
-RET_LABEL13:(void)0;
-}
+standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_9); /* Direct call array#ArrayIterator#finish on <var_9:ArrayIterator[Writable]>*/
 }
-var14 = 0;
 {
-{ /* Inline template#Template#is_writing= (self,var14) on <self:Template> */
-self->attrs[COLOR_template__Template___is_writing].s = var14; /* _is_writing on <self:Template> */
-RET_LABEL15:(void)0;
+{ /* Inline template#Template#is_writing= (self,0) on <self:Template> */
+self->attrs[COLOR_template__Template___is_writing].s = 0; /* _is_writing on <self:Template> */
+RET_LABEL12:(void)0;
 }
 }
 RET_LABEL:;