+var23 = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+var24 = var23->attrs[COLOR_string__AbstractString___items].str; /* _items on <var23:AbstractString(Buffer)> */
+{ /* Inline string#NativeString#[]= (var24,var_index,var_item) */
+var24[var_index]=var_item;
+RET_LABEL25:(void)0;
+}
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#[]= for (self: Object, Int, nullable Object) */
+void VIRTUAL_string__FlatBufferCharView___91d_93d_61d(val* self, long p0, val* p1) {
+char var /* : Char */;
+var = ((struct instance_kernel__Char*)p1)->value; /* autounbox from nullable Object to Char */;
+string__FlatBufferCharView___91d_93d_61d(self, p0, var);
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#push for (self: FlatBufferCharView, Char) */
+void string__FlatBufferCharView__push(val* self, char p0) {
+short int var /* : Bool */;
+int cltype;
+int idtype;
+const char* var_class_name;
+char var_c /* var c: Char */;
+val* var1 /* : AbstractString */;
+val* var2 /* : nullable Object */;
+/* Covariant cast for argument 0 (c) <p0:Char> isa Sequence#0 */
+/* <p0:Char> isa Sequence#0 */
+var = 1; /* easy <p0:Char> isa Sequence#0*/
+if (!var) {
+var_class_name = type_kernel__Char.name;
+fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "Sequence#0", var_class_name);
+fprintf(stderr, " (%s:%d)\n", "lib/standard/string.nit", 899);
+show_backtrace(1);
+}
+var_c = p0;
+var1 = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+var2 = BOX_kernel__Char(var_c); /* autobox from Char to nullable Object */
+((void (*)(val*, val*))(var1->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var1, var2) /* add on <var1:AbstractString(Buffer)>*/;
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#push for (self: Object, nullable Object) */
+void VIRTUAL_string__FlatBufferCharView__push(val* self, val* p0) {
+char var /* : Char */;
+var = ((struct instance_kernel__Char*)p0)->value; /* autounbox from nullable Object to Char */;
+string__FlatBufferCharView__push(self, var);
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#add for (self: FlatBufferCharView, Char) */
+void string__FlatBufferCharView__add(val* self, char p0) {
+short int var /* : Bool */;
+int cltype;
+int idtype;
+const char* var_class_name;
+char var_c /* var c: Char */;
+val* var1 /* : AbstractString */;
+val* var2 /* : nullable Object */;
+/* Covariant cast for argument 0 (c) <p0:Char> isa SimpleCollection#0 */
+/* <p0:Char> isa SimpleCollection#0 */
+var = 1; /* easy <p0:Char> isa SimpleCollection#0*/
+if (!var) {
+var_class_name = type_kernel__Char.name;
+fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "SimpleCollection#0", var_class_name);
+fprintf(stderr, " (%s:%d)\n", "lib/standard/string.nit", 904);
+show_backtrace(1);
+}
+var_c = p0;
+var1 = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+var2 = BOX_kernel__Char(var_c); /* autobox from Char to nullable Object */
+((void (*)(val*, val*))(var1->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var1, var2) /* add on <var1:AbstractString(Buffer)>*/;
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#add for (self: Object, nullable Object) */
+void VIRTUAL_string__FlatBufferCharView__add(val* self, val* p0) {
+char var /* : Char */;
+var = ((struct instance_kernel__Char*)p0)->value; /* autounbox from nullable Object to Char */;
+string__FlatBufferCharView__add(self, var);
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#enlarge for (self: FlatBufferCharView, Int) */
+void string__FlatBufferCharView__enlarge(val* self, long p0) {
+long var_cap /* var cap: Int */;
+val* var /* : AbstractString */;
+var_cap = p0;
+var = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+((void (*)(val*, long))(var->class->vft[COLOR_array__AbstractArray__enlarge]))(var, var_cap) /* enlarge on <var:AbstractString(Buffer)>*/;
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#enlarge for (self: Object, Int) */
+void VIRTUAL_string__FlatBufferCharView__enlarge(val* self, long p0) {
+string__FlatBufferCharView__enlarge(self, p0);
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#append for (self: FlatBufferCharView, Collection[Char]) */
+void string__FlatBufferCharView__append(val* self, val* p0) {
+short int var /* : Bool */;
+int cltype;
+int idtype;
+const char* var_class_name;
+val* var_s /* var s: Collection[Char] */;
+val* var1 /* : AbstractString */;
+char* var2 /* : NativeString */;
+char* var_my_items /* var my_items: NativeString */;
+long var3 /* : Int */;
+long var_s_length /* var s_length: Int */;
+val* var4 /* : AbstractString */;
+long var5 /* : Int */;
+long var6 /* : Int */;
+short int var7 /* : Bool */;
+short int var9 /* : Bool */;
+int cltype10;
+int idtype11;
+const char* var_class_name12;
+short int var13 /* : Bool */;
+val* var14 /* : AbstractString */;
+long var15 /* : Int */;
+long var16 /* : Int */;
+long var18 /* : Int */;
+/* Covariant cast for argument 0 (s) <p0:Collection[Char]> isa Collection[Sequence#0] */
+/* <p0:Collection[Char]> isa Collection[Sequence#0] */
+var = 1; /* easy <p0:Collection[Char]> isa Collection[Sequence#0]*/
+if (!var) {
+var_class_name = p0 == NULL ? "null" : p0->type->name;
+fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[Sequence#0]", var_class_name);
+fprintf(stderr, " (%s:%d)\n", "lib/standard/string.nit", 914);
+show_backtrace(1);
+}
+var_s = p0;
+var1 = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+var2 = ((char* (*)(val*))(var1->class->vft[COLOR_string__AbstractString__items]))(var1) /* items on <var1:AbstractString(Buffer)>*/;
+var_my_items = var2;
+var3 = ((long (*)(val*))(var_s->class->vft[COLOR_abstract_collection__Collection__length]))(var_s) /* length on <var_s:Collection[Char]>*/;
+var_s_length = var3;
+var4 = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+var5 = ((long (*)(val*))(var4->class->vft[COLOR_string__Buffer__capacity]))(var4) /* capacity on <var4:AbstractString(Buffer)>*/;
+var6 = ((long (*)(val*))(var_s->class->vft[COLOR_abstract_collection__Collection__length]))(var_s) /* length on <var_s:Collection[Char]>*/;
+{ /* Inline kernel#Int#< (var5,var6) */
+/* Covariant cast for argument 0 (i) <var6:Int> isa OTHER */
+/* <var6:Int> isa OTHER */
+var9 = 1; /* easy <var6:Int> isa OTHER*/
+if (!var9) {
+var_class_name12 = type_kernel__Int.name;
+fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name12);
+fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 265);
+show_backtrace(1);
+}
+var13 = var5 < var6;
+var7 = var13;
+goto RET_LABEL8;
+RET_LABEL8:(void)0;
+}
+if (var7){
+var14 = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+var15 = ((long (*)(val*))(var14->class->vft[COLOR_abstract_collection__Collection__length]))(var14) /* length on <var14:AbstractString(Buffer)>*/;
+{ /* Inline kernel#Int#+ (var_s_length,var15) */
+var18 = var_s_length + var15;
+var16 = var18;
+goto RET_LABEL17;
+RET_LABEL17:(void)0;
+}
+((void (*)(val*, long))(self->class->vft[COLOR_string__FlatBufferCharView__enlarge]))(self, var16) /* enlarge on <self:FlatBufferCharView>*/;
+} else {
+}
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#append for (self: Object, Collection[nullable Object]) */
+void VIRTUAL_string__FlatBufferCharView__append(val* self, val* p0) {
+string__FlatBufferCharView__append(self, p0);
+RET_LABEL:;
+}
+/* method string#FlatBufferCharView#iterator for (self: FlatBufferCharView): IndexedIterator[Char] */
+val* string__FlatBufferCharView__iterator(val* self) {
+val* var /* : IndexedIterator[Char] */;
+val* var1 /* : FlatBufferIterator */;
+val* var2 /* : AbstractString */;
+long var3 /* : Int */;
+var1 = NEW_string__FlatBufferIterator(&type_string__FlatBufferIterator);
+var2 = ((val* (*)(val*))(self->class->vft[COLOR_string__StringCharView__target]))(self) /* target on <self:FlatBufferCharView>*/;
+var3 = 0;
+((void (*)(val*, val*, long))(var1->class->vft[COLOR_string__FlatBufferIterator__with_pos]))(var1, var2, var3) /* with_pos on <var1:FlatBufferIterator>*/;
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method string#FlatBufferCharView#iterator for (self: Object): Iterator[nullable Object] */
+val* VIRTUAL_string__FlatBufferCharView__iterator(val* self) {
+val* var /* : Iterator[nullable Object] */;
+val* var1 /* : IndexedIterator[Char] */;
+var1 = string__FlatBufferCharView__iterator(self);
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method string#FlatBufferIterator#target for (self: FlatBufferIterator): Buffer */
+val* string__FlatBufferIterator__target(val* self) {
+val* var /* : Buffer */;
+val* var1 /* : Buffer */;
+var1 = self->attrs[COLOR_string__FlatBufferIterator___64dtarget].val; /* @target on <self:FlatBufferIterator> */
+if (var1 == NULL) {
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @target");
+fprintf(stderr, " (%s:%d)\n", "lib/standard/string.nit", 928);
+show_backtrace(1);
+}
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method string#FlatBufferIterator#target for (self: Object): Buffer */
+val* VIRTUAL_string__FlatBufferIterator__target(val* self) {
+val* var /* : Buffer */;
+val* var1 /* : Buffer */;
+var1 = string__FlatBufferIterator__target(self);
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method string#FlatBufferIterator#target= for (self: FlatBufferIterator, Buffer) */
+void string__FlatBufferIterator__target_61d(val* self, val* p0) {
+self->attrs[COLOR_string__FlatBufferIterator___64dtarget].val = p0; /* @target on <self:FlatBufferIterator> */
+RET_LABEL:;
+}
+/* method string#FlatBufferIterator#target= for (self: Object, Buffer) */
+void VIRTUAL_string__FlatBufferIterator__target_61d(val* self, val* p0) {
+string__FlatBufferIterator__target_61d(self, p0);
+RET_LABEL:;
+}
+/* method string#FlatBufferIterator#target_items for (self: FlatBufferIterator): NativeString */
+char* string__FlatBufferIterator__target_items(val* self) {
+char* var /* : NativeString */;
+char* var1 /* : NativeString */;
+var1 = self->attrs[COLOR_string__FlatBufferIterator___64dtarget_items].str; /* @target_items on <self:FlatBufferIterator> */
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method string#FlatBufferIterator#target_items for (self: Object): NativeString */
+char* VIRTUAL_string__FlatBufferIterator__target_items(val* self) {
+char* var /* : NativeString */;
+char* var1 /* : NativeString */;
+var1 = string__FlatBufferIterator__target_items(self);
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method string#FlatBufferIterator#target_items= for (self: FlatBufferIterator, NativeString) */
+void string__FlatBufferIterator__target_items_61d(val* self, char* p0) {
+self->attrs[COLOR_string__FlatBufferIterator___64dtarget_items].str = p0; /* @target_items on <self:FlatBufferIterator> */
+RET_LABEL:;