1 /* This C file is generated by NIT to compile module abstracttool. */
2 #include "abstracttool._sep.h"
3 void abstracttool___AbstractCompiler___init(val_t p0
, val_t p1
, int* init_table
){
4 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_abstracttool___AbstractCompiler
].i
;
5 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
7 if (init_table
[itpos0
]) return;
8 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9 fra
.me
.file
= LOCATE_abstracttool
;
11 fra
.me
.meth
= LOCATE_abstracttool___AbstractCompiler___init
;
14 fra
.me
.REG
[0] = NIT_NULL
;
15 fra
.me
.REG
[1] = NIT_NULL
;
16 fra
.me
.REG
[2] = NIT_NULL
;
19 /* ./abstracttool.nit:29 */
20 fra
.me
.REG
[2] = fra
.me
.REG
[0];
21 /* ./abstracttool.nit:31 */
22 ATTR_abstracttool___AbstractCompiler____tool_name(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
23 /* ./abstracttool.nit:32 */
24 CALL_mmloader___ToolContext___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
25 /* ./abstracttool.nit:33 */
26 fra
.me
.REG
[0] = NEW_SrcModuleLoader_syntax___SrcModuleLoader___init();
27 CALL_mmloader___ToolContext___register_loader(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
28 stack_frame_head
= fra
.me
.prev
;
29 init_table
[itpos0
] = 1;
32 val_t
abstracttool___AbstractCompiler___tool_name(val_t p0
){
33 struct {struct stack_frame_t me
;} fra
;
36 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
37 fra
.me
.file
= LOCATE_abstracttool
;
39 fra
.me
.meth
= LOCATE_abstracttool___AbstractCompiler___tool_name
;
42 fra
.me
.REG
[0] = NIT_NULL
;
44 /* ./abstracttool.nit:36 */
45 REGB0
= TAG_Bool(ATTR_abstracttool___AbstractCompiler____tool_name(fra
.me
.REG
[0])!=NIT_NULL
);
46 if (UNTAG_Bool(REGB0
)) {
48 nit_abort("Uninitialized attribute %s", "_tool_name", LOCATE_abstracttool
, 36);
50 fra
.me
.REG
[0] = ATTR_abstracttool___AbstractCompiler____tool_name(fra
.me
.REG
[0]);
51 stack_frame_head
= fra
.me
.prev
;
54 void abstracttool___AbstractCompiler___exec_cmd_line(val_t p0
){
55 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
62 static val_t once_value_1
; /* Once value */
63 static val_t once_value_2
; /* Once value */
64 static val_t once_value_3
; /* Once value */
65 static val_t once_value_4
; /* Once value */
66 static val_t once_value_5
; /* Once value */
67 static val_t once_value_6
; /* Once value */
68 static val_t once_value_7
; /* Once value */
69 static val_t once_value_8
; /* Once value */
70 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
71 fra
.me
.file
= LOCATE_abstracttool
;
73 fra
.me
.meth
= LOCATE_abstracttool___AbstractCompiler___exec_cmd_line
;
76 fra
.me
.REG
[0] = NIT_NULL
;
77 fra
.me
.REG
[1] = NIT_NULL
;
78 fra
.me
.REG
[2] = NIT_NULL
;
79 fra
.me
.REG
[3] = NIT_NULL
;
81 /* ./abstracttool.nit:42 */
82 CALL_mmloader___ToolContext___process_options(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
83 /* ./abstracttool.nit:44 */
84 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___opt_version(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
85 fra
.me
.REG
[1] = CALL_opts___Option___value(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
86 if (UNTAG_Bool(fra
.me
.REG
[1])) {
87 /* ./abstracttool.nit:45 */
89 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
91 fra
.me
.REG
[2] = BOX_NativeString("");
93 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
94 once_value_1
= fra
.me
.REG
[2];
95 register_static_object(&once_value_1
);
96 } else fra
.me
.REG
[2] = once_value_1
;
97 fra
.me
.REG
[2] = fra
.me
.REG
[2];
98 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
99 fra
.me
.REG
[2] = CALL_abstracttool___AbstractCompiler___tool_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
100 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
102 fra
.me
.REG
[2] = BOX_NativeString(" version ");
104 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
105 once_value_2
= fra
.me
.REG
[2];
106 register_static_object(&once_value_2
);
107 } else fra
.me
.REG
[2] = once_value_2
;
108 fra
.me
.REG
[2] = fra
.me
.REG
[2];
109 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
110 fra
.me
.REG
[2] = CALL_nit_version___Object___nit_version(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
111 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
113 fra
.me
.REG
[2] = BOX_NativeString("");
115 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
116 once_value_3
= fra
.me
.REG
[2];
117 register_static_object(&once_value_3
);
118 } else fra
.me
.REG
[2] = once_value_3
;
119 fra
.me
.REG
[2] = fra
.me
.REG
[2];
120 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
121 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
122 CALL_standard___file___Object___print(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
123 /* ./abstracttool.nit:46 */
125 CALL_standard___kernel___Object___exit(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
127 /* ./abstracttool.nit:49 */
128 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___opt_help(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
129 fra
.me
.REG
[1] = CALL_opts___Option___value(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
130 if (UNTAG_Bool(fra
.me
.REG
[1])) {
131 /* ./abstracttool.nit:50 */
133 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
135 fra
.me
.REG
[2] = BOX_NativeString("usage: ");
137 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
138 once_value_4
= fra
.me
.REG
[2];
139 register_static_object(&once_value_4
);
140 } else fra
.me
.REG
[2] = once_value_4
;
141 fra
.me
.REG
[2] = fra
.me
.REG
[2];
142 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
143 fra
.me
.REG
[2] = CALL_abstracttool___AbstractCompiler___tool_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
144 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
146 fra
.me
.REG
[2] = BOX_NativeString(" [options] file...");
148 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
149 once_value_5
= fra
.me
.REG
[2];
150 register_static_object(&once_value_5
);
151 } else fra
.me
.REG
[2] = once_value_5
;
152 fra
.me
.REG
[2] = fra
.me
.REG
[2];
153 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
154 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
155 CALL_standard___file___Object___print(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
156 /* ./abstracttool.nit:51 */
157 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___option_context(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
158 CALL_opts___OptionContext___usage(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
159 /* ./abstracttool.nit:52 */
161 CALL_standard___kernel___Object___exit(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
163 /* ./abstracttool.nit:55 */
164 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___option_context(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
165 fra
.me
.REG
[1] = CALL_opts___OptionContext___rest(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
166 /* ./../lib/standard//collection//array.nit:24 */
167 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
168 if (UNTAG_Bool(REGB0
)) {
170 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
172 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
173 /* ./abstracttool.nit:55 */
175 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
176 if (UNTAG_Bool(REGB2
)) {
178 /* ./../lib/standard//kernel.nit:227 */
179 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
180 /* ./abstracttool.nit:55 */
183 if (UNTAG_Bool(REGB2
)) {
184 /* ./abstracttool.nit:56 */
186 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
188 fra
.me
.REG
[2] = BOX_NativeString("usage: ");
190 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB2
);
191 once_value_6
= fra
.me
.REG
[2];
192 register_static_object(&once_value_6
);
193 } else fra
.me
.REG
[2] = once_value_6
;
194 fra
.me
.REG
[2] = fra
.me
.REG
[2];
195 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
196 fra
.me
.REG
[2] = CALL_abstracttool___AbstractCompiler___tool_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
197 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
199 fra
.me
.REG
[2] = BOX_NativeString(" [options] file...");
201 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB2
);
202 once_value_7
= fra
.me
.REG
[2];
203 register_static_object(&once_value_7
);
204 } else fra
.me
.REG
[2] = once_value_7
;
205 fra
.me
.REG
[2] = fra
.me
.REG
[2];
206 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
207 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
208 CALL_standard___file___Object___print(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
209 /* ./abstracttool.nit:57 */
210 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___option_context(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
211 CALL_opts___OptionContext___usage(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
212 /* ./abstracttool.nit:58 */
214 CALL_standard___kernel___Object___exit(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
216 /* ./abstracttool.nit:61 */
217 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___option_context(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
218 fra
.me
.REG
[1] = CALL_opts___OptionContext___rest(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
219 /* ./abstracttool.nit:62 */
220 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___init();
221 /* ./abstracttool.nit:63 */
223 fra
.me
.REG
[3] = BOX_NativeString("Syntax analysis");
225 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
226 once_value_8
= fra
.me
.REG
[3];
227 register_static_object(&once_value_8
);
228 } else fra
.me
.REG
[3] = once_value_8
;
229 fra
.me
.REG
[3] = fra
.me
.REG
[3];
231 CALL_mmloader___ToolContext___info(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], REGB2
);
232 /* ./abstracttool.nit:64 */
234 /* ./../lib/standard//collection//array.nit:24 */
235 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
236 if (UNTAG_Bool(REGB1
)) {
238 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
240 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
241 /* ./../lib/standard//kernel.nit:352 */
243 REGB0
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
244 if (UNTAG_Bool(REGB0
)) {
246 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
248 /* ./../lib/standard//kernel.nit:232 */
249 REGB0
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
250 /* ./../lib/standard//kernel.nit:352 */
251 if (UNTAG_Bool(REGB0
)) {
252 /* ./abstracttool.nit:64 */
254 /* ./../lib/standard//collection//array.nit:278 */
255 fra
.me
.REG
[3] = fra
.me
.REG
[1];
256 /* ./../lib/standard//collection//array.nit:280 */
258 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
259 if (UNTAG_Bool(REGB4
)) {
261 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
263 /* ./../lib/standard//kernel.nit:233 */
264 REGB3
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB3
));
265 /* ./../lib/standard//collection//array.nit:280 */
266 if (UNTAG_Bool(REGB3
)) {
267 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
268 if (UNTAG_Bool(REGB3
)) {
270 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
272 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
273 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
274 if (UNTAG_Bool(REGB4
)) {
276 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
278 /* ./../lib/standard//kernel.nit:232 */
279 REGB3
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB3
));
281 /* ./../lib/standard//collection//array.nit:280 */
282 REGB4
= TAG_Bool(false);
285 if (UNTAG_Bool(REGB3
)) {
287 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
289 /* ./../lib/standard//collection//array.nit:281 */
290 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
291 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
292 if (UNTAG_Bool(REGB3
)) {
293 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
295 /* ./../lib/standard//collection//array.nit:718 */
296 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
297 /* ./../lib/standard//collection//array.nit:281 */
300 /* ./abstracttool.nit:65 */
301 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___get_module_from_filename(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
302 /* ./abstracttool.nit:66 */
303 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
304 /* ./../lib/standard//kernel.nit:354 */
306 /* ./../lib/standard//kernel.nit:235 */
307 REGB0
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB0
));
308 /* ./../lib/standard//kernel.nit:354 */
311 /* ./../lib/standard//kernel.nit:352 */
316 /* ./abstracttool.nit:68 */
317 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___opt_log(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
318 fra
.me
.REG
[1] = CALL_opts___Option___value(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
319 if (UNTAG_Bool(fra
.me
.REG
[1])) {
320 /* ./abstracttool.nit:69 */
321 CALL_abstracttool___AbstractCompiler___dump_context_info(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
323 /* ./abstracttool.nit:72 */
324 REGB2
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
325 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
326 if (UNTAG_Bool(REGB2
)) {
327 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___opt_only_metamodel(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
328 fra
.me
.REG
[1] = CALL_opts___Option___value(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
329 REGB2
= TAG_Bool(!UNTAG_Bool(fra
.me
.REG
[1]));
331 REGB1
= TAG_Bool(false);
334 if (UNTAG_Bool(REGB2
)) {
335 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___opt_only_parse(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
336 fra
.me
.REG
[1] = CALL_opts___Option___value(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
337 REGB2
= TAG_Bool(!UNTAG_Bool(fra
.me
.REG
[1]));
339 REGB1
= TAG_Bool(false);
342 if (UNTAG_Bool(REGB2
)) {
343 /* ./abstracttool.nit:73 */
344 CALL_abstracttool___AbstractCompiler___perform_work(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
346 stack_frame_head
= fra
.me
.prev
;
349 void abstracttool___AbstractCompiler___perform_work(val_t p0
, val_t p1
){
350 struct {struct stack_frame_t me
;} fra
;
352 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
353 fra
.me
.file
= LOCATE_abstracttool
;
355 fra
.me
.meth
= LOCATE_abstracttool___AbstractCompiler___perform_work
;
356 fra
.me
.has_broke
= 0;
358 /* ./abstracttool.nit:77 */
359 nit_abort("Deferred method called", NULL
, LOCATE_abstracttool
, 77);
360 stack_frame_head
= fra
.me
.prev
;
363 void abstracttool___AbstractCompiler___dump_context_info(val_t p0
){
364 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
367 static val_t once_value_2
; /* Once value */
368 static val_t once_value_3
; /* Once value */
369 static val_t once_value_4
; /* Once value */
370 static val_t once_value_5
; /* Once value */
371 static val_t once_value_6
; /* Once value */
372 static val_t once_value_7
; /* Once value */
373 static val_t once_value_8
; /* Once value */
374 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
375 fra
.me
.file
= LOCATE_abstracttool
;
377 fra
.me
.meth
= LOCATE_abstracttool___AbstractCompiler___dump_context_info
;
378 fra
.me
.has_broke
= 0;
380 fra
.me
.REG
[0] = NIT_NULL
;
381 fra
.me
.REG
[1] = NIT_NULL
;
382 fra
.me
.REG
[2] = NIT_NULL
;
383 fra
.me
.REG
[3] = NIT_NULL
;
384 fra
.me
.REG
[4] = NIT_NULL
;
386 /* ./abstracttool.nit:81 */
387 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMContext___module_hierarchy(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
388 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[1])(fra
.me
.REG
[1], (&(fra
.me
)), ((fun_t
)OC_abstracttool___AbstractCompiler___dump_context_info_1
));
389 /* ./abstracttool.nit:84 */
390 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
391 /* ./abstracttool.nit:85 */
392 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMContext___module_hierarchy(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
393 CALL_standard___collection___abstract_collection___SimpleCollection___add_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
394 /* ./abstracttool.nit:86 */
395 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMContext___module_hierarchy(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
396 fra
.me
.REG
[1] = CALL_metamodel___partial_order___PartialOrder___select_smallests(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
398 fra
.me
.REG
[2] = BOX_NativeString("-");
400 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
401 once_value_2
= fra
.me
.REG
[2];
402 register_static_object(&once_value_2
);
403 } else fra
.me
.REG
[2] = once_value_2
;
404 fra
.me
.REG
[2] = fra
.me
.REG
[2];
405 fra
.me
.REG
[2] = CALL_standard___string___Collection___join(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
406 /* ./abstracttool.nit:88 */
408 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
410 fra
.me
.REG
[3] = BOX_NativeString("");
412 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
413 once_value_3
= fra
.me
.REG
[3];
414 register_static_object(&once_value_3
);
415 } else fra
.me
.REG
[3] = once_value_3
;
416 fra
.me
.REG
[3] = fra
.me
.REG
[3];
417 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
418 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___log_directory(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
419 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
421 fra
.me
.REG
[3] = BOX_NativeString("/");
423 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
424 once_value_4
= fra
.me
.REG
[3];
425 register_static_object(&once_value_4
);
426 } else fra
.me
.REG
[3] = once_value_4
;
427 fra
.me
.REG
[3] = fra
.me
.REG
[3];
428 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
429 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
431 fra
.me
.REG
[3] = BOX_NativeString(".full_class_hierarchy.new.dot");
433 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
434 once_value_5
= fra
.me
.REG
[3];
435 register_static_object(&once_value_5
);
436 } else fra
.me
.REG
[3] = once_value_5
;
437 fra
.me
.REG
[3] = fra
.me
.REG
[3];
438 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
439 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
440 fra
.me
.REG
[1] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[1]);
441 /* ./abstracttool.nit:89 */
442 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMContext___class_hierarchy(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
443 fra
.me
.REG
[3] = CALL_metamodel___partial_order___PartialOrder___to_dot(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
444 CALL_standard___stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
445 /* ./abstracttool.nit:90 */
446 CALL_standard___stream___IOS___close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
447 /* ./abstracttool.nit:92 */
449 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
451 fra
.me
.REG
[4] = BOX_NativeString("");
453 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
454 once_value_6
= fra
.me
.REG
[4];
455 register_static_object(&once_value_6
);
456 } else fra
.me
.REG
[4] = once_value_6
;
457 fra
.me
.REG
[4] = fra
.me
.REG
[4];
458 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
459 fra
.me
.REG
[4] = CALL_mmloader___ToolContext___log_directory(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
460 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
462 fra
.me
.REG
[4] = BOX_NativeString("/");
464 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
465 once_value_7
= fra
.me
.REG
[4];
466 register_static_object(&once_value_7
);
467 } else fra
.me
.REG
[4] = once_value_7
;
468 fra
.me
.REG
[4] = fra
.me
.REG
[4];
469 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
470 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
472 fra
.me
.REG
[2] = BOX_NativeString(".module_hierarchy.new.dot");
474 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
475 once_value_8
= fra
.me
.REG
[2];
476 register_static_object(&once_value_8
);
477 } else fra
.me
.REG
[2] = once_value_8
;
478 fra
.me
.REG
[2] = fra
.me
.REG
[2];
479 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
480 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
481 fra
.me
.REG
[3] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[3]);
482 fra
.me
.REG
[1] = fra
.me
.REG
[3];
483 /* ./abstracttool.nit:93 */
484 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMContext___module_hierarchy(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
485 fra
.me
.REG
[0] = CALL_metamodel___partial_order___PartialOrder___to_dot(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
486 CALL_standard___stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
487 /* ./abstracttool.nit:94 */
488 CALL_standard___stream___IOS___close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
489 stack_frame_head
= fra
.me
.prev
;
492 void OC_abstracttool___AbstractCompiler___dump_context_info_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
493 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
496 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
497 fra
.me
.file
= LOCATE_abstracttool
;
499 fra
.me
.meth
= LOCATE_abstracttool___AbstractCompiler___dump_context_info
;
500 fra
.me
.has_broke
= 0;
502 fra
.me
.REG
[0] = NIT_NULL
;
503 fra
.me
.REG
[1] = NIT_NULL
;
504 fra
.me
.closure_ctx
= closctx_param
;
505 fra
.me
.closure_funs
= CREG
;
508 /* ./abstracttool.nit:82 */
509 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___log_directory(closctx
->REG
[0])(closctx
->REG
[0]);
510 CALL_abstracttool___MMModule___dump_module_info(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
511 stack_frame_head
= fra
.me
.prev
;
514 void abstracttool___MMModule___dump_module_info(val_t p0
, val_t p1
){
515 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
518 static val_t once_value_1
; /* Once value */
519 static val_t once_value_2
; /* Once value */
520 static val_t once_value_3
; /* Once value */
521 static val_t once_value_4
; /* Once value */
522 static val_t once_value_5
; /* Once value */
523 static val_t once_value_6
; /* Once value */
524 static val_t once_value_7
; /* Once value */
525 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
526 fra
.me
.file
= LOCATE_abstracttool
;
528 fra
.me
.meth
= LOCATE_abstracttool___MMModule___dump_module_info
;
529 fra
.me
.has_broke
= 0;
531 fra
.me
.REG
[0] = NIT_NULL
;
532 fra
.me
.REG
[1] = NIT_NULL
;
533 fra
.me
.REG
[2] = NIT_NULL
;
534 fra
.me
.REG
[3] = NIT_NULL
;
535 fra
.me
.REG
[4] = NIT_NULL
;
538 /* ./abstracttool.nit:101 */
540 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
542 fra
.me
.REG
[3] = BOX_NativeString("");
544 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
545 once_value_1
= fra
.me
.REG
[3];
546 register_static_object(&once_value_1
);
547 } else fra
.me
.REG
[3] = once_value_1
;
548 fra
.me
.REG
[3] = fra
.me
.REG
[3];
549 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
550 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
552 fra
.me
.REG
[1] = BOX_NativeString("/");
554 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
555 once_value_2
= fra
.me
.REG
[1];
556 register_static_object(&once_value_2
);
557 } else fra
.me
.REG
[1] = once_value_2
;
558 fra
.me
.REG
[1] = fra
.me
.REG
[1];
559 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
560 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
561 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
562 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
564 fra
.me
.REG
[1] = BOX_NativeString("");
566 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
567 once_value_3
= fra
.me
.REG
[1];
568 register_static_object(&once_value_3
);
569 } else fra
.me
.REG
[1] = once_value_3
;
570 fra
.me
.REG
[1] = fra
.me
.REG
[1];
571 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
572 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
573 /* ./abstracttool.nit:102 */
575 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
577 fra
.me
.REG
[3] = BOX_NativeString("");
579 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
580 once_value_4
= fra
.me
.REG
[3];
581 register_static_object(&once_value_4
);
582 } else fra
.me
.REG
[3] = once_value_4
;
583 fra
.me
.REG
[3] = fra
.me
.REG
[3];
584 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
585 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
587 fra
.me
.REG
[3] = BOX_NativeString(".class_hierarchy.new.dot");
589 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
590 once_value_5
= fra
.me
.REG
[3];
591 register_static_object(&once_value_5
);
592 } else fra
.me
.REG
[3] = once_value_5
;
593 fra
.me
.REG
[3] = fra
.me
.REG
[3];
594 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
595 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
596 fra
.me
.REG
[1] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[1]);
597 /* ./abstracttool.nit:103 */
598 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMModule___class_specialization_hierarchy(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
599 fra
.me
.REG
[3] = CALL_metamodel___partial_order___PartialOrder___to_dot(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
600 CALL_standard___stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
601 /* ./abstracttool.nit:104 */
602 CALL_standard___stream___IOS___close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
603 /* ./abstracttool.nit:106 */
605 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
607 fra
.me
.REG
[4] = BOX_NativeString("");
609 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
610 once_value_6
= fra
.me
.REG
[4];
611 register_static_object(&once_value_6
);
612 } else fra
.me
.REG
[4] = once_value_6
;
613 fra
.me
.REG
[4] = fra
.me
.REG
[4];
614 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
615 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
617 fra
.me
.REG
[2] = BOX_NativeString(".properties.log");
619 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
620 once_value_7
= fra
.me
.REG
[2];
621 register_static_object(&once_value_7
);
622 } else fra
.me
.REG
[2] = once_value_7
;
623 fra
.me
.REG
[2] = fra
.me
.REG
[2];
624 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
625 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
626 fra
.me
.REG
[3] = NEW_OFStream_standard___file___OFStream___open(fra
.me
.REG
[3]);
627 fra
.me
.REG
[1] = fra
.me
.REG
[3];
628 /* ./abstracttool.nit:107 */
629 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMModule___local_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
630 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_abstracttool___MMModule___dump_module_info_8
));
631 /* ./abstracttool.nit:111 */
632 CALL_standard___stream___IOS___close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
633 stack_frame_head
= fra
.me
.prev
;
636 void OC_abstracttool___MMModule___dump_module_info_8(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
637 struct {struct stack_frame_t me
;} fra
;
641 static val_t once_value_9
; /* Once value */
642 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
643 fra
.me
.file
= LOCATE_abstracttool
;
645 fra
.me
.meth
= LOCATE_abstracttool___MMModule___dump_module_info
;
646 fra
.me
.has_broke
= 0;
648 fra
.me
.REG
[0] = NIT_NULL
;
649 fra
.me
.closure_ctx
= closctx_param
;
650 fra
.me
.closure_funs
= CREG
;
653 /* ./abstracttool.nit:108 */
654 CALL_abstracttool___MMLocalClass___dump_properties(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
655 /* ./abstracttool.nit:109 */
657 fra
.me
.REG
[0] = BOX_NativeString("\n");
659 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
660 once_value_9
= fra
.me
.REG
[0];
661 register_static_object(&once_value_9
);
662 } else fra
.me
.REG
[0] = once_value_9
;
663 fra
.me
.REG
[0] = fra
.me
.REG
[0];
664 CALL_standard___stream___OStream___write(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[0]);
665 stack_frame_head
= fra
.me
.prev
;
668 void abstracttool___MMLocalClass___dump_properties(val_t p0
, val_t p1
){
669 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
674 static val_t once_value_1
; /* Once value */
675 static val_t once_value_2
; /* Once value */
676 static val_t once_value_3
; /* Once value */
677 static val_t once_value_4
; /* Once value */
678 static val_t once_value_9
; /* Once value */
679 static val_t once_value_10
; /* Once value */
680 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
681 fra
.me
.file
= LOCATE_abstracttool
;
683 fra
.me
.meth
= LOCATE_abstracttool___MMLocalClass___dump_properties
;
684 fra
.me
.has_broke
= 0;
686 fra
.me
.REG
[0] = NIT_NULL
;
687 fra
.me
.REG
[1] = NIT_NULL
;
688 fra
.me
.REG
[2] = NIT_NULL
;
689 fra
.me
.REG
[3] = NIT_NULL
;
692 /* ./abstracttool.nit:118 */
694 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
696 fra
.me
.REG
[3] = BOX_NativeString("class ");
698 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
699 once_value_1
= fra
.me
.REG
[3];
700 register_static_object(&once_value_1
);
701 } else fra
.me
.REG
[3] = once_value_1
;
702 fra
.me
.REG
[3] = fra
.me
.REG
[3];
703 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
704 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
705 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
707 fra
.me
.REG
[3] = BOX_NativeString("\n");
709 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
710 once_value_2
= fra
.me
.REG
[3];
711 register_static_object(&once_value_2
);
712 } else fra
.me
.REG
[3] = once_value_2
;
713 fra
.me
.REG
[3] = fra
.me
.REG
[3];
714 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
715 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
716 CALL_standard___stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
717 /* ./abstracttool.nit:119 */
718 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
719 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalClass___visibility_level(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
721 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
722 if (UNTAG_Bool(REGB2
)) {
724 /* ./../lib/standard//kernel.nit:227 */
725 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
726 /* ./abstracttool.nit:119 */
729 if (UNTAG_Bool(REGB2
)) {
730 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
731 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
732 REGB2
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[0],fra
.me
.REG
[2]));
733 if (UNTAG_Bool(REGB2
)) {
735 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
738 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
740 REGB1
= TAG_Bool(false);
743 if (UNTAG_Bool(REGB2
)) {
744 /* ./abstracttool.nit:120 */
746 fra
.me
.REG
[2] = BOX_NativeString("\tclass not visible in this module\n");
748 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB2
);
749 once_value_3
= fra
.me
.REG
[2];
750 register_static_object(&once_value_3
);
751 } else fra
.me
.REG
[2] = once_value_3
;
752 fra
.me
.REG
[2] = fra
.me
.REG
[2];
753 CALL_standard___stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
755 /* ./abstracttool.nit:121 */
756 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
757 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
758 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMGlobalClass___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
759 REGB2
= CALL_metamodel___abstractmetamodel___MMModule___visibility_for(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
761 REGB0
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB1
));
762 if (UNTAG_Bool(REGB0
)) {
764 /* ./../lib/standard//kernel.nit:227 */
765 REGB1
= TAG_Bool((REGB2
)==(REGB1
));
766 /* ./abstracttool.nit:121 */
769 if (UNTAG_Bool(REGB0
)) {
770 /* ./abstracttool.nit:122 */
772 fra
.me
.REG
[3] = BOX_NativeString("\tclass is defined later in the hierarchy\n");
774 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
775 once_value_4
= fra
.me
.REG
[3];
776 register_static_object(&once_value_4
);
777 } else fra
.me
.REG
[3] = once_value_4
;
778 fra
.me
.REG
[3] = fra
.me
.REG
[3];
779 CALL_standard___stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
781 /* ./abstracttool.nit:124 */
782 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___global_properties(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
783 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[3])(fra
.me
.REG
[3], (&(fra
.me
)), ((fun_t
)OC_abstracttool___MMLocalClass___dump_properties_5
));
786 /* ./abstracttool.nit:129 */
788 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
790 fra
.me
.REG
[2] = BOX_NativeString("end # ");
792 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
793 once_value_9
= fra
.me
.REG
[2];
794 register_static_object(&once_value_9
);
795 } else fra
.me
.REG
[2] = once_value_9
;
796 fra
.me
.REG
[2] = fra
.me
.REG
[2];
797 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
798 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
799 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
800 if (!once_value_10
) {
801 fra
.me
.REG
[0] = BOX_NativeString("\n");
803 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
804 once_value_10
= fra
.me
.REG
[0];
805 register_static_object(&once_value_10
);
806 } else fra
.me
.REG
[0] = once_value_10
;
807 fra
.me
.REG
[0] = fra
.me
.REG
[0];
808 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
809 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
810 CALL_standard___stream___OStream___write(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
811 stack_frame_head
= fra
.me
.prev
;
814 void OC_abstracttool___MMLocalClass___dump_properties_5(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
815 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
819 static val_t once_value_6
; /* Once value */
820 static val_t once_value_7
; /* Once value */
821 static val_t once_value_8
; /* Once value */
822 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
823 fra
.me
.file
= LOCATE_abstracttool
;
825 fra
.me
.meth
= LOCATE_abstracttool___MMLocalClass___dump_properties
;
826 fra
.me
.has_broke
= 0;
828 fra
.me
.REG
[0] = NIT_NULL
;
829 fra
.me
.REG
[1] = NIT_NULL
;
830 fra
.me
.REG
[2] = NIT_NULL
;
831 fra
.me
.closure_ctx
= closctx_param
;
832 fra
.me
.closure_funs
= CREG
;
835 /* ./abstracttool.nit:125 */
836 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalClass_____bra(closctx
->REG
[0])(closctx
->REG
[0], fra
.me
.REG
[0]);
837 /* ./abstracttool.nit:126 */
839 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
841 fra
.me
.REG
[2] = BOX_NativeString("\t");
843 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
844 once_value_6
= fra
.me
.REG
[2];
845 register_static_object(&once_value_6
);
846 } else fra
.me
.REG
[2] = once_value_6
;
847 fra
.me
.REG
[2] = fra
.me
.REG
[2];
848 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
849 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
850 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
852 fra
.me
.REG
[2] = BOX_NativeString("");
854 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
855 once_value_7
= fra
.me
.REG
[2];
856 register_static_object(&once_value_7
);
857 } else fra
.me
.REG
[2] = once_value_7
;
858 fra
.me
.REG
[2] = fra
.me
.REG
[2];
859 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
860 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMLocalClass___get_type(closctx
->REG
[0])(closctx
->REG
[0]);
861 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMLocalProperty___signature_for(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
862 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
863 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
865 fra
.me
.REG
[2] = BOX_NativeString("\n");
867 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
868 once_value_8
= fra
.me
.REG
[2];
869 register_static_object(&once_value_8
);
870 } else fra
.me
.REG
[2] = once_value_8
;
871 fra
.me
.REG
[2] = fra
.me
.REG
[2];
872 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
873 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
874 CALL_standard___stream___OStream___write(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[1]);
875 stack_frame_head
= fra
.me
.prev
;