1 #include "abstracttool._sep.h"
2 void abstracttool___AbstractCompiler___init(val_t self
, int* init_table
) {
3 struct trace_t trace
= {NULL
, "abstracttool::AbstractCompiler::init (src/abstracttool.nit:28,2--31:37)"};
5 trace
.prev
= tracehead
; tracehead
= &trace
;
6 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_AbstractCompiler
].i
]) return;
7 ((mmloader___ToolContext___init_t
)CALL( self
,COLOR_mmloader___ToolContext___init
))( self
, init_table
/*YYY*/) /*ToolContext::init*/;
8 variable0
= NEW_syntax___SrcModuleLoader___init(); /*new SrcModuleLoader*/
9 ((mmloader___ToolContext___register_loader_t
)CALL( self
,COLOR_mmloader___ToolContext___register_loader
))( self
, variable0
) /*AbstractCompiler::register_loader*/;
10 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_AbstractCompiler
].i
] = 1;
11 tracehead
= trace
.prev
;
14 void abstracttool___AbstractCompiler___exec_cmd_line(val_t self
) {
15 struct trace_t trace
= {NULL
, "abstracttool::AbstractCompiler::exec_cmd_line (src/abstracttool.nit:34,2--59:21)"};
24 trace
.prev
= tracehead
; tracehead
= &trace
;
25 ((mmloader___ToolContext___process_options_t
)CALL( self
,COLOR_mmloader___ToolContext___process_options
))( self
) /*AbstractCompiler::process_options*/;
26 variable0
= ((mmloader___ToolContext___opt_help_t
)CALL( self
,COLOR_mmloader___ToolContext___opt_help
))( self
) /*AbstractCompiler::opt_help*/;
27 variable0
= ((opts___Option___value_t
)CALL(variable0
,COLOR_opts___Option___value
))(variable0
) /*OptionBool::value*/;
28 if (UNTAG_Bool(variable0
)) { /*if*/
29 variable0
= ((mmloader___ToolContext___option_context_t
)CALL( self
,COLOR_mmloader___ToolContext___option_context
))( self
) /*AbstractCompiler::option_context*/;
30 ((opts___OptionContext___usage_t
)CALL(variable0
,COLOR_opts___OptionContext___usage
))(variable0
) /*OptionContext::usage*/;
31 exit(UNTAG_Int( TAG_Int(0)));
33 variable0
= ((mmloader___ToolContext___option_context_t
)CALL( self
,COLOR_mmloader___ToolContext___option_context
))( self
) /*AbstractCompiler::option_context*/;
34 variable0
= ((opts___OptionContext___rest_t
)CALL(variable0
,COLOR_opts___OptionContext___rest
))(variable0
) /*OptionContext::rest*/;
35 variable0
= ((array___AbstractArray___length_t
)CALL(variable0
,COLOR_abstract_collection___Collection___length
))(variable0
) /*Array::length*/;
36 variable0
= TAG_Bool((variable0
)==( TAG_Int(0)));
37 if (UNTAG_Bool(variable0
)) { /*if*/
38 variable0
= ((mmloader___ToolContext___option_context_t
)CALL( self
,COLOR_mmloader___ToolContext___option_context
))( self
) /*AbstractCompiler::option_context*/;
39 ((opts___OptionContext___usage_t
)CALL(variable0
,COLOR_opts___OptionContext___usage
))(variable0
) /*OptionContext::usage*/;
40 exit(UNTAG_Int( TAG_Int(1)));
42 variable1
= ((mmloader___ToolContext___option_context_t
)CALL( self
,COLOR_mmloader___ToolContext___option_context
))( self
) /*AbstractCompiler::option_context*/;
43 variable1
= ((opts___OptionContext___rest_t
)CALL(variable1
,COLOR_opts___OptionContext___rest
))(variable1
) /*OptionContext::rest*/;
44 variable0
= variable1
;
45 variable2
= NEW_array___Array___init(); /*new Array[MMModule]*/
46 variable1
= variable2
;
47 variable2
= ((array___AbstractArray___length_t
)CALL( variable0
/*rest*/,COLOR_abstract_collection___Collection___length
))( variable0
/*rest*/) /*Array::length*/;
48 variable3
= NEW_range___Range___without_last( TAG_Int(0), variable2
); /*new Range[Int]*/
49 variable2
= variable3
;
50 variable2
= ((range___Range___iterator_t
)CALL(variable2
,COLOR_abstract_collection___Collection___iterator
))(variable2
) /*Range::iterator*/;
51 while (true) { /*for*/
52 variable3
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___is_ok
))(variable2
) /*Iterator::is_ok*/;
53 if (!UNTAG_Bool(variable3
)) break; /*for*/
54 variable3
= ((abstract_collection___Iterator___item_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___item
))(variable2
) /*Iterator::item*/;
55 variable5
= variable3
/*i*/;
56 variable6
= TAG_Bool(UNTAG_Int( variable5
/*index*/)>=UNTAG_Int( TAG_Int(0)));
57 variable7
= variable6
;
58 if (UNTAG_Bool(variable7
)) { /* and */
59 variable7
= ATTR_array___AbstractArray____length( variable0
/*rest*/) /*Array::_length*/;
60 variable7
= TAG_Bool(UNTAG_Int( variable5
/*index*/)<UNTAG_Int(variable7
));
62 variable6
= variable7
;
63 if (!UNTAG_Bool(variable6
)) { fprintf(stderr
, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);}
64 variable6
= ATTR_array___Array____items( variable0
/*rest*/) /*Array::_items*/;
65 variable6
= UNBOX_NativeArray(variable6
)[UNTAG_Int( variable5
/*index*/)];
67 return_label3
: while(false);
68 variable5
= variable6
;
69 variable5
= ((mmloader___ToolContext___get_module_from_filename_t
)CALL( self
,COLOR_mmloader___ToolContext___get_module_from_filename
))( self
, variable5
) /*AbstractCompiler::get_module_from_filename*/;
70 variable4
= variable5
;
71 ((array___AbstractArray___add_t
)CALL( variable1
/*to_do*/,COLOR_abstract_collection___SimpleCollection___add
))( variable1
/*to_do*/, variable4
/*mod*/) /*Array::add*/;
73 ((abstract_collection___Iterator___next_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___next
))(variable2
) /*Iterator::next*/;
76 variable2
= ((mmloader___ToolContext___opt_log_t
)CALL( self
,COLOR_mmloader___ToolContext___opt_log
))( self
) /*AbstractCompiler::opt_log*/;
77 variable2
= ((opts___Option___value_t
)CALL(variable2
,COLOR_opts___Option___value
))(variable2
) /*OptionBool::value*/;
78 if (UNTAG_Bool(variable2
)) { /*if*/
79 ((abstracttool___AbstractCompiler___dump_context_info_t
)CALL( self
,COLOR_abstracttool___AbstractCompiler___dump_context_info
))( self
) /*AbstractCompiler::dump_context_info*/;
81 variable2
= ((array___AbstractArray___is_empty_t
)CALL( variable1
/*to_do*/,COLOR_abstract_collection___Collection___is_empty
))( variable1
/*to_do*/) /*Array::is_empty*/;
82 variable2
= TAG_Bool(!UNTAG_Bool(variable2
));
83 if (UNTAG_Bool(variable2
)) { /* and */
84 variable2
= ((mmloader___ToolContext___opt_only_metamodel_t
)CALL( self
,COLOR_mmloader___ToolContext___opt_only_metamodel
))( self
) /*AbstractCompiler::opt_only_metamodel*/;
85 variable2
= ((opts___Option___value_t
)CALL(variable2
,COLOR_opts___Option___value
))(variable2
) /*OptionBool::value*/;
86 variable2
= TAG_Bool(!UNTAG_Bool(variable2
));
88 if (UNTAG_Bool(variable2
)) { /*if*/
89 ((abstracttool___AbstractCompiler___perform_work_t
)CALL( self
,COLOR_abstracttool___AbstractCompiler___perform_work
))( self
, variable1
/*to_do*/) /*AbstractCompiler::perform_work*/;
91 tracehead
= trace
.prev
;
94 void abstracttool___AbstractCompiler___perform_work(val_t self
, val_t param0
) {
95 struct trace_t trace
= {NULL
, "abstracttool::AbstractCompiler::perform_work (src/abstracttool.nit:63,2--39)"};
96 trace
.prev
= tracehead
; tracehead
= &trace
;
97 fprintf(stderr
, "Deferred method perform_work called (src/abstracttool.nit:63,2)\n");
99 tracehead
= trace
.prev
;
102 void abstracttool___AbstractCompiler___dump_context_info(val_t self
) {
103 struct trace_t trace
= {NULL
, "abstracttool::AbstractCompiler::dump_context_info (src/abstracttool.nit:65,2--80:9)"};
113 trace
.prev
= tracehead
; tracehead
= &trace
;
114 variable0
= ((abstractmetamodel___MMContext___module_hierarchy_t
)CALL( self
,COLOR_abstractmetamodel___MMContext___module_hierarchy
))( self
) /*AbstractCompiler::module_hierarchy*/;
115 variable0
= ((partial_order___PartialOrder___iterator_t
)CALL(variable0
,COLOR_abstract_collection___Collection___iterator
))(variable0
) /*PartialOrder::iterator*/;
116 while (true) { /*for*/
117 variable1
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable0
,COLOR_abstract_collection___Iterator___is_ok
))(variable0
) /*Iterator::is_ok*/;
118 if (!UNTAG_Bool(variable1
)) break; /*for*/
119 variable1
= ((abstract_collection___Iterator___item_t
)CALL(variable0
,COLOR_abstract_collection___Iterator___item
))(variable0
) /*Iterator::item*/;
120 ((abstracttool___MMModule___dump_module_info_t
)CALL( variable1
/*mod*/,COLOR_abstracttool___MMModule___dump_module_info
))( variable1
/*mod*/) /*MMModule::dump_module_info*/;
121 continue_5
: while(0);
122 ((abstract_collection___Iterator___next_t
)CALL(variable0
,COLOR_abstract_collection___Iterator___next
))(variable0
) /*Iterator::next*/;
125 variable1
= NEW_array___Array___init(); /*new Array[MMModule]*/
126 variable0
= variable1
;
127 variable1
= ((abstractmetamodel___MMContext___module_hierarchy_t
)CALL( self
,COLOR_abstractmetamodel___MMContext___module_hierarchy
))( self
) /*AbstractCompiler::module_hierarchy*/;
128 ((abstract_collection___SimpleCollection___add_all_t
)CALL( variable0
/*tab*/,COLOR_abstract_collection___SimpleCollection___add_all
))( variable0
/*tab*/, variable1
) /*Array::add_all*/;
129 variable2
= ((abstractmetamodel___MMContext___module_hierarchy_t
)CALL( self
,COLOR_abstractmetamodel___MMContext___module_hierarchy
))( self
) /*AbstractCompiler::module_hierarchy*/;
130 variable2
= ((partial_order___PartialOrder___select_smallests_t
)CALL(variable2
,COLOR_partial_order___PartialOrder___select_smallests
))(variable2
, variable0
/*tab*/) /*PartialOrder::select_smallests*/;
131 variable3
= NEW_string___String___with_native(BOX_NativeString("-"), TAG_Int(1)); /*new String*/
132 variable2
= ((string___Collection___join_t
)CALL(variable2
,COLOR_string___Collection___join
))(variable2
, variable3
) /*Array::join*/;
133 variable1
= variable2
;
134 variable3
= NEW_string___String___init(); /*new String*/
135 variable4
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
136 variable5
= variable4
;
137 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
138 variable6
= variable1
/*name*/;
139 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable6
) /*String::append*/;
140 variable7
= NEW_string___String___with_native(BOX_NativeString(".full_class_hierarchy.new.dot"), TAG_Int(29)); /*new String*/
141 variable8
= variable7
;
142 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable8
) /*String::append*/;
143 variable4
= NEW_file___OFStream___open(variable3
); /*new OFStream*/
144 variable3
= variable4
;
145 variable2
= variable3
;
146 variable3
= ((abstractmetamodel___MMContext___class_hierarchy_t
)CALL( self
,COLOR_abstractmetamodel___MMContext___class_hierarchy
))( self
) /*AbstractCompiler::class_hierarchy*/;
147 variable3
= ((partial_order___PartialOrder___to_dot_t
)CALL(variable3
,COLOR_partial_order___PartialOrder___to_dot
))(variable3
) /*PartialOrder::to_dot*/;
148 ((file___OFStream___write_t
)CALL( variable2
/*f*/,COLOR_stream___OStream___write
))( variable2
/*f*/, variable3
) /*OFStream::write*/;
149 ((file___OFStream___close_t
)CALL( variable2
/*f*/,COLOR_stream___IOS___close
))( variable2
/*f*/) /*OFStream::close*/;
150 variable3
= NEW_string___String___init(); /*new String*/
151 variable4
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
152 variable5
= variable4
;
153 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
154 variable6
= variable1
/*name*/;
155 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable6
) /*String::append*/;
156 variable7
= NEW_string___String___with_native(BOX_NativeString(".module_hierarchy.new.dot"), TAG_Int(25)); /*new String*/
157 variable8
= variable7
;
158 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable8
) /*String::append*/;
159 variable4
= NEW_file___OFStream___open(variable3
); /*new OFStream*/
160 variable3
= variable4
;
161 variable2
= variable3
/*f=*/;
162 variable3
= ((abstractmetamodel___MMContext___module_hierarchy_t
)CALL( self
,COLOR_abstractmetamodel___MMContext___module_hierarchy
))( self
) /*AbstractCompiler::module_hierarchy*/;
163 variable3
= ((partial_order___PartialOrder___to_dot_t
)CALL(variable3
,COLOR_partial_order___PartialOrder___to_dot
))(variable3
) /*PartialOrder::to_dot*/;
164 ((file___OFStream___write_t
)CALL( variable2
/*f*/,COLOR_stream___OStream___write
))( variable2
/*f*/, variable3
) /*OFStream::write*/;
165 ((file___OFStream___close_t
)CALL( variable2
/*f*/,COLOR_stream___IOS___close
))( variable2
/*f*/) /*OFStream::close*/;
166 tracehead
= trace
.prev
;
169 void abstracttool___MMModule___dump_module_info(val_t self
) {
170 struct trace_t trace
= {NULL
, "abstracttool::MMModule::dump_module_info (src/abstracttool.nit:85,2--98:9)"};
183 trace
.prev
= tracehead
; tracehead
= &trace
;
184 variable1
= ((mmloader___MMModule___filename_t
)CALL( self
,COLOR_mmloader___MMModule___filename
))( self
) /*MMModule::filename*/;
185 variable1
= ((file___String___file_path_t
)CALL(variable1
,COLOR_file___String___file_path
))(variable1
) /*String::file_path*/;
186 variable0
= variable1
;
187 variable2
= NEW_string___String___init(); /*new String*/
188 variable3
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
189 variable4
= variable3
;
190 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable4
) /*String::append*/;
191 variable5
= variable0
/*p*/;
192 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable5
) /*String::append*/;
193 variable6
= NEW_string___String___with_native(BOX_NativeString("/"), TAG_Int(1)); /*new String*/
194 variable7
= variable6
;
195 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable7
) /*String::append*/;
196 variable8
= ((abstractmetamodel___MMModule___name_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___name
))( self
) /*MMModule::name*/;
197 variable9
= variable8
;
198 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
199 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable9
) /*String::append*/;
200 variable10
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
201 variable11
= variable10
;
202 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable11
) /*String::append*/;
203 variable1
= variable2
;
204 variable3
= NEW_string___String___init(); /*new String*/
205 variable4
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
206 variable5
= variable4
;
207 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
208 variable6
= variable1
/*fname*/;
209 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable6
) /*String::append*/;
210 variable7
= NEW_string___String___with_native(BOX_NativeString(".class_hierarchy.new.dot"), TAG_Int(24)); /*new String*/
211 variable8
= variable7
;
212 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable8
) /*String::append*/;
213 variable4
= NEW_file___OFStream___open(variable3
); /*new OFStream*/
214 variable3
= variable4
;
215 variable2
= variable3
;
216 variable3
= ((abstractmetamodel___MMModule___class_specialization_hierarchy_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___class_specialization_hierarchy
))( self
) /*MMModule::class_specialization_hierarchy*/;
217 variable3
= ((partial_order___PartialOrder___to_dot_t
)CALL(variable3
,COLOR_partial_order___PartialOrder___to_dot
))(variable3
) /*PartialOrder::to_dot*/;
218 ((file___OFStream___write_t
)CALL( variable2
/*f*/,COLOR_stream___OStream___write
))( variable2
/*f*/, variable3
) /*OFStream::write*/;
219 ((file___OFStream___close_t
)CALL( variable2
/*f*/,COLOR_stream___IOS___close
))( variable2
/*f*/) /*OFStream::close*/;
220 variable3
= NEW_string___String___init(); /*new String*/
221 variable4
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
222 variable5
= variable4
;
223 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
224 variable6
= variable1
/*fname*/;
225 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable6
) /*String::append*/;
226 variable7
= NEW_string___String___with_native(BOX_NativeString(".properties.log"), TAG_Int(15)); /*new String*/
227 variable8
= variable7
;
228 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable8
) /*String::append*/;
229 variable4
= NEW_file___OFStream___open(variable3
); /*new OFStream*/
230 variable3
= variable4
;
231 variable2
= variable3
/*f=*/;
232 variable3
= ((abstractmetamodel___MMModule___local_classes_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___local_classes
))( self
) /*MMModule::local_classes*/;
233 variable3
= ((array___AbstractArray___iterator_t
)CALL(variable3
,COLOR_abstract_collection___Collection___iterator
))(variable3
) /*Array::iterator*/;
234 while (true) { /*for*/
235 variable4
= ((array___ArrayIterator___is_ok_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___is_ok
))(variable3
) /*ArrayIterator::is_ok*/;
236 if (!UNTAG_Bool(variable4
)) break; /*for*/
237 variable4
= ((array___ArrayIterator___item_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___item
))(variable3
) /*ArrayIterator::item*/;
238 ((abstracttool___MMLocalClass___dump_properties_t
)CALL( variable4
/*cla*/,COLOR_abstracttool___MMLocalClass___dump_properties
))( variable4
/*cla*/, variable2
/*f*/) /*MMLocalClass::dump_properties*/;
239 variable5
= NEW_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)); /*new String*/
240 ((file___OFStream___write_t
)CALL( variable2
/*f*/,COLOR_stream___OStream___write
))( variable2
/*f*/, variable5
) /*OFStream::write*/;
241 continue_7
: while(0);
242 ((array___ArrayIterator___next_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___next
))(variable3
) /*ArrayIterator::next*/;
245 ((file___OFStream___close_t
)CALL( variable2
/*f*/,COLOR_stream___IOS___close
))( variable2
/*f*/) /*OFStream::close*/;
246 tracehead
= trace
.prev
;
249 void abstracttool___MMLocalClass___dump_properties(val_t self
, val_t param0
) {
250 struct trace_t trace
= {NULL
, "abstracttool::MMLocalClass::dump_properties (src/abstracttool.nit:103,2--110:29)"};
265 trace
.prev
= tracehead
; tracehead
= &trace
;
267 variable1
= NEW_string___String___init(); /*new String*/
268 variable2
= NEW_string___String___with_native(BOX_NativeString("class "), TAG_Int(6)); /*new String*/
269 variable3
= variable2
;
270 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable3
) /*String::append*/;
272 variable4
= ((string___String___to_s_t
)CALL(variable4
,COLOR_string___Object___to_s
))(variable4
) /*String::to_s*/;
273 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable4
) /*String::append*/;
274 variable5
= NEW_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)); /*new String*/
275 variable6
= variable5
;
276 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable6
) /*String::append*/;
277 ((stream___OStream___write_t
)CALL( variable0
/*file*/,COLOR_stream___OStream___write
))( variable0
/*file*/, variable1
) /*OStream::write*/;
278 variable1
= ((abstractmetamodel___MMLocalClass___global_properties_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalClass___global_properties
))( self
) /*MMLocalClass::global_properties*/;
279 variable1
= ((abstract_collection___Collection___iterator_t
)CALL(variable1
,COLOR_abstract_collection___Collection___iterator
))(variable1
) /*Set::iterator*/;
280 while (true) { /*for*/
281 variable2
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___is_ok
))(variable1
) /*Iterator::is_ok*/;
282 if (!UNTAG_Bool(variable2
)) break; /*for*/
283 variable2
= ((abstract_collection___Iterator___item_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___item
))(variable1
) /*Iterator::item*/;
284 variable4
= ((inheritance___MMLocalClass_____bra_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalClass_____bra
))( self
, variable2
/*p*/) /*MMLocalClass::[]*/;
285 variable3
= variable4
;
286 variable4
= NEW_string___String___init(); /*new String*/
287 variable5
= NEW_string___String___with_native(BOX_NativeString("\t"), TAG_Int(1)); /*new String*/
288 variable6
= variable5
;
289 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable6
) /*String::append*/;
290 variable7
= variable3
/*lp*/;
291 variable7
= ((string___String___to_s_t
)CALL(variable7
,COLOR_string___Object___to_s
))(variable7
) /*String::to_s*/;
292 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable7
) /*String::append*/;
293 variable8
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
294 variable9
= variable8
;
295 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable9
) /*String::append*/;
296 variable10
= ((genericity___MMLocalProperty___signature_t
)CALL( variable3
/*lp*/,COLOR_static_type___MMLocalProperty___signature
))( variable3
/*lp*/) /*MMLocalProperty::signature*/;
297 variable11
= variable10
;
298 variable11
= ((string___String___to_s_t
)CALL(variable11
,COLOR_string___Object___to_s
))(variable11
) /*String::to_s*/;
299 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable11
) /*String::append*/;
300 variable12
= NEW_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)); /*new String*/
301 variable13
= variable12
;
302 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable13
) /*String::append*/;
303 ((stream___OStream___write_t
)CALL( variable0
/*file*/,COLOR_stream___OStream___write
))( variable0
/*file*/, variable4
) /*OStream::write*/;
304 continue_9
: while(0);
305 ((abstract_collection___Iterator___next_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___next
))(variable1
) /*Iterator::next*/;
308 variable1
= NEW_string___String___init(); /*new String*/
309 variable2
= NEW_string___String___with_native(BOX_NativeString("end # "), TAG_Int(6)); /*new String*/
310 variable3
= variable2
;
311 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable3
) /*String::append*/;
313 variable4
= ((string___String___to_s_t
)CALL(variable4
,COLOR_string___Object___to_s
))(variable4
) /*String::to_s*/;
314 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable4
) /*String::append*/;
315 variable5
= NEW_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)); /*new String*/
316 variable6
= variable5
;
317 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable6
) /*String::append*/;
318 ((stream___OStream___write_t
)CALL( variable0
/*file*/,COLOR_stream___OStream___write
))( variable0
/*file*/, variable1
) /*OStream::write*/;
319 tracehead
= trace
.prev
;