1 /* This C file is generated by NIT to compile module compiling_base. */
2 #include "compiling_base._sep.h"
3 val_t
compiling_base___ToolContext___global(val_t self
) {
4 struct trace_t trace
= {NULL
, NULL
, 24, LOCATE_compiling_base___ToolContext___global
};
5 val_t
*variable
= NULL
;
6 struct WBT_
**closurevariable
= NULL
;
7 trace
.prev
= tracehead
; tracehead
= &trace
;
8 trace
.file
= LOCATE_compiling_base
;
9 tracehead
= trace
.prev
;
10 return ATTR_compiling_base___ToolContext____global( self
) /*ToolContext::_global*/;
12 void compiling_base___ToolContext___global__eq(val_t self
, val_t param0
) {
13 struct trace_t trace
= {NULL
, NULL
, 24, LOCATE_compiling_base___ToolContext___global__eq
};
14 val_t
*variable
= NULL
;
15 struct WBT_
**closurevariable
= NULL
;
16 trace
.prev
= tracehead
; tracehead
= &trace
;
17 trace
.file
= LOCATE_compiling_base
;
18 ATTR_compiling_base___ToolContext____global( self
) /*ToolContext::_global*/ = param0
;
19 tracehead
= trace
.prev
;
22 val_t
compiling_base___ToolContext___compdir(val_t self
) {
23 struct trace_t trace
= {NULL
, NULL
, 25, LOCATE_compiling_base___ToolContext___compdir
};
24 val_t
*variable
= NULL
;
25 struct WBT_
**closurevariable
= NULL
;
26 trace
.prev
= tracehead
; tracehead
= &trace
;
27 trace
.file
= LOCATE_compiling_base
;
28 tracehead
= trace
.prev
;
29 return ATTR_compiling_base___ToolContext____compdir( self
) /*ToolContext::_compdir*/;
31 void compiling_base___ToolContext___compdir__eq(val_t self
, val_t param0
) {
32 struct trace_t trace
= {NULL
, NULL
, 25, LOCATE_compiling_base___ToolContext___compdir__eq
};
33 val_t
*variable
= NULL
;
34 struct WBT_
**closurevariable
= NULL
;
35 trace
.prev
= tracehead
; tracehead
= &trace
;
36 trace
.file
= LOCATE_compiling_base
;
37 ATTR_compiling_base___ToolContext____compdir( self
) /*ToolContext::_compdir*/ = param0
;
38 tracehead
= trace
.prev
;
41 val_t
compiling_base___ToolContext___clibdir(val_t self
) {
42 struct trace_t trace
= {NULL
, NULL
, 26, LOCATE_compiling_base___ToolContext___clibdir
};
43 val_t
*variable
= NULL
;
44 struct WBT_
**closurevariable
= NULL
;
45 trace
.prev
= tracehead
; tracehead
= &trace
;
46 trace
.file
= LOCATE_compiling_base
;
47 tracehead
= trace
.prev
;
48 return ATTR_compiling_base___ToolContext____clibdir( self
) /*ToolContext::_clibdir*/;
50 void compiling_base___ToolContext___clibdir__eq(val_t self
, val_t param0
) {
51 struct trace_t trace
= {NULL
, NULL
, 26, LOCATE_compiling_base___ToolContext___clibdir__eq
};
52 val_t
*variable
= NULL
;
53 struct WBT_
**closurevariable
= NULL
;
54 trace
.prev
= tracehead
; tracehead
= &trace
;
55 trace
.file
= LOCATE_compiling_base
;
56 ATTR_compiling_base___ToolContext____clibdir( self
) /*ToolContext::_clibdir*/ = param0
;
57 tracehead
= trace
.prev
;
60 val_t
compiling_base___ToolContext___bindir(val_t self
) {
61 struct trace_t trace
= {NULL
, NULL
, 27, LOCATE_compiling_base___ToolContext___bindir
};
62 val_t
*variable
= NULL
;
63 struct WBT_
**closurevariable
= NULL
;
64 trace
.prev
= tracehead
; tracehead
= &trace
;
65 trace
.file
= LOCATE_compiling_base
;
66 tracehead
= trace
.prev
;
67 return ATTR_compiling_base___ToolContext____bindir( self
) /*ToolContext::_bindir*/;
69 void compiling_base___ToolContext___bindir__eq(val_t self
, val_t param0
) {
70 struct trace_t trace
= {NULL
, NULL
, 27, LOCATE_compiling_base___ToolContext___bindir__eq
};
71 val_t
*variable
= NULL
;
72 struct WBT_
**closurevariable
= NULL
;
73 trace
.prev
= tracehead
; tracehead
= &trace
;
74 trace
.file
= LOCATE_compiling_base
;
75 ATTR_compiling_base___ToolContext____bindir( self
) /*ToolContext::_bindir*/ = param0
;
76 tracehead
= trace
.prev
;
79 val_t
compiling_base___ToolContext___output_file(val_t self
) {
80 struct trace_t trace
= {NULL
, NULL
, 28, LOCATE_compiling_base___ToolContext___output_file
};
81 val_t
*variable
= NULL
;
82 struct WBT_
**closurevariable
= NULL
;
83 trace
.prev
= tracehead
; tracehead
= &trace
;
84 trace
.file
= LOCATE_compiling_base
;
85 tracehead
= trace
.prev
;
86 return ATTR_compiling_base___ToolContext____output_file( self
) /*ToolContext::_output_file*/;
88 void compiling_base___ToolContext___output_file__eq(val_t self
, val_t param0
) {
89 struct trace_t trace
= {NULL
, NULL
, 28, LOCATE_compiling_base___ToolContext___output_file__eq
};
90 val_t
*variable
= NULL
;
91 struct WBT_
**closurevariable
= NULL
;
92 trace
.prev
= tracehead
; tracehead
= &trace
;
93 trace
.file
= LOCATE_compiling_base
;
94 ATTR_compiling_base___ToolContext____output_file( self
) /*ToolContext::_output_file*/ = param0
;
95 tracehead
= trace
.prev
;
98 val_t
compiling_base___ToolContext___boost(val_t self
) {
99 struct trace_t trace
= {NULL
, NULL
, 29, LOCATE_compiling_base___ToolContext___boost
};
100 val_t
*variable
= NULL
;
101 struct WBT_
**closurevariable
= NULL
;
102 trace
.prev
= tracehead
; tracehead
= &trace
;
103 trace
.file
= LOCATE_compiling_base
;
104 tracehead
= trace
.prev
;
105 return ATTR_compiling_base___ToolContext____boost( self
) /*ToolContext::_boost*/;
107 void compiling_base___ToolContext___boost__eq(val_t self
, val_t param0
) {
108 struct trace_t trace
= {NULL
, NULL
, 29, LOCATE_compiling_base___ToolContext___boost__eq
};
109 val_t
*variable
= NULL
;
110 struct WBT_
**closurevariable
= NULL
;
111 trace
.prev
= tracehead
; tracehead
= &trace
;
112 trace
.file
= LOCATE_compiling_base
;
113 ATTR_compiling_base___ToolContext____boost( self
) /*ToolContext::_boost*/ = param0
;
114 tracehead
= trace
.prev
;
117 val_t
compiling_base___ToolContext___no_cc(val_t self
) {
118 struct trace_t trace
= {NULL
, NULL
, 30, LOCATE_compiling_base___ToolContext___no_cc
};
119 val_t
*variable
= NULL
;
120 struct WBT_
**closurevariable
= NULL
;
121 trace
.prev
= tracehead
; tracehead
= &trace
;
122 trace
.file
= LOCATE_compiling_base
;
123 tracehead
= trace
.prev
;
124 return ATTR_compiling_base___ToolContext____no_cc( self
) /*ToolContext::_no_cc*/;
126 void compiling_base___ToolContext___no_cc__eq(val_t self
, val_t param0
) {
127 struct trace_t trace
= {NULL
, NULL
, 30, LOCATE_compiling_base___ToolContext___no_cc__eq
};
128 val_t
*variable
= NULL
;
129 struct WBT_
**closurevariable
= NULL
;
130 trace
.prev
= tracehead
; tracehead
= &trace
;
131 trace
.file
= LOCATE_compiling_base
;
132 ATTR_compiling_base___ToolContext____no_cc( self
) /*ToolContext::_no_cc*/ = param0
;
133 tracehead
= trace
.prev
;
136 val_t
compiling_base___ToolContext___ext_prefix(val_t self
) {
137 struct trace_t trace
= {NULL
, NULL
, 31, LOCATE_compiling_base___ToolContext___ext_prefix
};
138 val_t
*variable
= NULL
;
139 struct WBT_
**closurevariable
= NULL
;
140 trace
.prev
= tracehead
; tracehead
= &trace
;
141 trace
.file
= LOCATE_compiling_base
;
142 tracehead
= trace
.prev
;
143 return ATTR_compiling_base___ToolContext____ext_prefix( self
) /*ToolContext::_ext_prefix*/;
145 void compiling_base___ToolContext___ext_prefix__eq(val_t self
, val_t param0
) {
146 struct trace_t trace
= {NULL
, NULL
, 31, LOCATE_compiling_base___ToolContext___ext_prefix__eq
};
147 val_t
*variable
= NULL
;
148 struct WBT_
**closurevariable
= NULL
;
149 trace
.prev
= tracehead
; tracehead
= &trace
;
150 trace
.file
= LOCATE_compiling_base
;
151 ATTR_compiling_base___ToolContext____ext_prefix( self
) /*ToolContext::_ext_prefix*/ = param0
;
152 tracehead
= trace
.prev
;
155 val_t
compiling_base___CompilerVisitor___to_s(val_t self
) {
156 struct trace_t trace
= {NULL
, NULL
, 79, LOCATE_compiling_base___CompilerVisitor___to_s
};
157 static val_t once_value_1
= NIT_NULL
; /* Once value for string variable[3]*/
158 static val_t once_value_2
= NIT_NULL
; /* Once value for string variable[3]*/
160 struct WBT_
**closurevariable
= NULL
;
161 trace
.prev
= tracehead
; tracehead
= &trace
;
162 trace
.file
= LOCATE_compiling_base
;
163 /* Register variable[0]: Local variable */
165 /* Register variable[1]: Method return value and escape marker */
166 /* Register variable[2]: Local variable */
167 /* Register variable[3]: Result */
168 variable
[3] = NEW_Array_array___Array___init() /*new Array[String]*/;
169 variable
[2] = variable
[3];
170 /* Register variable[3]: Result */
171 variable
[3] = ATTR_compiling_base___CompilerVisitor____ctx(variable
[0]) /*CompilerVisitor::_ctx*/;
172 /* Register variable[3]: Result */
173 variable
[3] = CALL_compiling_base___CContext___decls(variable
[3])(variable
[3]) /*CContext::decls*/;
174 CALL_abstract_collection___IndexedCollection___append( variable
[2] /*out*/)( variable
[2] /*out*/, variable
[3]) /*IndexedCollection::append*/;
175 /* Register variable[3]: Result */
176 variable
[3] = ATTR_compiling_base___CompilerVisitor____ctx(variable
[0]) /*CompilerVisitor::_ctx*/;
177 /* Register variable[3]: Result */
178 variable
[3] = CALL_compiling_base___CContext___instrs(variable
[3])(variable
[3]) /*CContext::instrs*/;
179 CALL_abstract_collection___IndexedCollection___append( variable
[2] /*out*/)( variable
[2] /*out*/, variable
[3]) /*IndexedCollection::append*/;
180 /* Register variable[3]: Once String constant */
181 if (once_value_1
!= NIT_NULL
) variable
[3] = once_value_1
;
183 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
184 once_value_1
= variable
[3];
186 /* Register variable[3]: Result */
187 CALL_abstract_collection___SimpleCollection___add( variable
[2] /*out*/)( variable
[2] /*out*/, variable
[3]) /*AbstractArray::add*/;
188 /* Register variable[3]: Once String constant */
189 if (once_value_2
!= NIT_NULL
) variable
[3] = once_value_2
;
191 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)) /*new String*/;
192 once_value_2
= variable
[3];
194 /* Register variable[3]: Result */
195 /* Register variable[3]: Result */
196 variable
[3] = CALL_string___Collection___join( variable
[2] /*out*/)( variable
[2] /*out*/, variable
[3]) /*Collection::join*/;
197 variable
[1] = variable
[3];
199 return_label0
: while(false);
200 tracehead
= trace
.prev
;
203 void compiling_base___CompilerVisitor___add_decl(val_t self
, val_t param0
) {
204 struct trace_t trace
= {NULL
, NULL
, 38, LOCATE_compiling_base___CompilerVisitor___add_decl
};
205 static val_t once_value_4
= NIT_NULL
; /* Once value for string variable[4]*/
206 static val_t once_value_5
= NIT_NULL
; /* Once value for string variable[4]*/
208 struct WBT_
**closurevariable
= NULL
;
209 trace
.prev
= tracehead
; tracehead
= &trace
;
210 trace
.file
= LOCATE_compiling_base
;
211 /* Register variable[0]: Local variable */
213 /* Register variable[1]: Local variable */
214 variable
[1] = param0
;
215 /* Register variable[2]: Method return value and escape marker */
216 /* Register variable[3]: Result */
217 variable
[3] = ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/;
218 /* Register variable[3]: Result */
219 variable
[3] = TAG_Bool(UNTAG_Int(variable
[3])>=UNTAG_Int( TAG_Int(8)));
220 if (UNTAG_Bool(variable
[3])) { /*if*/
221 /* Register variable[3]: Result */
222 variable
[3] = ATTR_compiling_base___CompilerVisitor____ctx(variable
[0]) /*CompilerVisitor::_ctx*/;
223 /* Register variable[3]: Result */
224 variable
[3] = CALL_compiling_base___CContext___decls(variable
[3])(variable
[3]) /*CContext::decls*/;
225 /* Register variable[4]: Once String constant */
226 if (once_value_4
!= NIT_NULL
) variable
[4] = once_value_4
;
228 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("\t\t"), TAG_Int(2)) /*new String*/;
229 once_value_4
= variable
[4];
231 /* Register variable[4]: Result */
232 /* Register variable[4]: Result */
233 variable
[4] = CALL_string___String_____plus(variable
[4])(variable
[4], variable
[1] /*s*/) /*String::+*/;
234 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
236 /* Register variable[3]: Result */
237 variable
[3] = ATTR_compiling_base___CompilerVisitor____ctx(variable
[0]) /*CompilerVisitor::_ctx*/;
238 /* Register variable[3]: Result */
239 variable
[3] = CALL_compiling_base___CContext___decls(variable
[3])(variable
[3]) /*CContext::decls*/;
240 /* Register variable[4]: Once String constant */
241 if (once_value_5
!= NIT_NULL
) variable
[4] = once_value_5
;
243 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString(" "), TAG_Int(2)) /*new String*/;
244 once_value_5
= variable
[4];
246 /* Register variable[4]: Result */
247 /* Register variable[5]: Result */
248 variable
[5] = ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/;
249 /* Register variable[4]: Result */
250 variable
[4] = CALL_string___String_____star(variable
[4])(variable
[4], variable
[5]) /*String::**/;
251 /* Register variable[4]: Result */
252 variable
[4] = CALL_string___String_____plus(variable
[4])(variable
[4], variable
[1] /*s*/) /*String::+*/;
253 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
255 return_label3
: while(false);
256 tracehead
= trace
.prev
;
259 void compiling_base___CompilerVisitor___add_instr(val_t self
, val_t param0
) {
260 struct trace_t trace
= {NULL
, NULL
, 48, LOCATE_compiling_base___CompilerVisitor___add_instr
};
261 static val_t once_value_7
= NIT_NULL
; /* Once value for string variable[4]*/
262 static val_t once_value_8
= NIT_NULL
; /* Once value for string variable[4]*/
264 struct WBT_
**closurevariable
= NULL
;
265 trace
.prev
= tracehead
; tracehead
= &trace
;
266 trace
.file
= LOCATE_compiling_base
;
267 /* Register variable[0]: Local variable */
269 /* Register variable[1]: Local variable */
270 variable
[1] = param0
;
271 /* Register variable[2]: Method return value and escape marker */
272 /* Register variable[3]: Result */
273 variable
[3] = ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/;
274 /* Register variable[3]: Result */
275 variable
[3] = TAG_Bool(UNTAG_Int(variable
[3])>=UNTAG_Int( TAG_Int(8)));
276 if (UNTAG_Bool(variable
[3])) { /*if*/
277 /* Register variable[3]: Result */
278 variable
[3] = ATTR_compiling_base___CompilerVisitor____ctx(variable
[0]) /*CompilerVisitor::_ctx*/;
279 /* Register variable[3]: Result */
280 variable
[3] = CALL_compiling_base___CContext___instrs(variable
[3])(variable
[3]) /*CContext::instrs*/;
281 /* Register variable[4]: Once String constant */
282 if (once_value_7
!= NIT_NULL
) variable
[4] = once_value_7
;
284 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("\t\t"), TAG_Int(2)) /*new String*/;
285 once_value_7
= variable
[4];
287 /* Register variable[4]: Result */
288 /* Register variable[4]: Result */
289 variable
[4] = CALL_string___String_____plus(variable
[4])(variable
[4], variable
[1] /*s*/) /*String::+*/;
290 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
292 /* Register variable[3]: Result */
293 variable
[3] = ATTR_compiling_base___CompilerVisitor____ctx(variable
[0]) /*CompilerVisitor::_ctx*/;
294 /* Register variable[3]: Result */
295 variable
[3] = CALL_compiling_base___CContext___instrs(variable
[3])(variable
[3]) /*CContext::instrs*/;
296 /* Register variable[4]: Once String constant */
297 if (once_value_8
!= NIT_NULL
) variable
[4] = once_value_8
;
299 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString(" "), TAG_Int(2)) /*new String*/;
300 once_value_8
= variable
[4];
302 /* Register variable[4]: Result */
303 /* Register variable[5]: Result */
304 variable
[5] = ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/;
305 /* Register variable[4]: Result */
306 variable
[4] = CALL_string___String_____star(variable
[4])(variable
[4], variable
[5]) /*String::**/;
307 /* Register variable[4]: Result */
308 variable
[4] = CALL_string___String_____plus(variable
[4])(variable
[4], variable
[1] /*s*/) /*String::+*/;
309 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
311 return_label6
: while(false);
312 tracehead
= trace
.prev
;
315 val_t
compiling_base___CompilerVisitor___new_number(val_t self
) {
316 struct trace_t trace
= {NULL
, NULL
, 58, LOCATE_compiling_base___CompilerVisitor___new_number
};
318 struct WBT_
**closurevariable
= NULL
;
319 trace
.prev
= tracehead
; tracehead
= &trace
;
320 trace
.file
= LOCATE_compiling_base
;
321 /* Register variable[0]: Local variable */
323 /* Register variable[1]: Method return value and escape marker */
324 /* Register variable[2]: Local variable */
325 /* Register variable[3]: Result */
326 variable
[3] = ATTR_compiling_base___CompilerVisitor____number_cpt(variable
[0]) /*CompilerVisitor::_number_cpt*/;
327 variable
[2] = variable
[3];
328 /* Register variable[3]: Result */
329 variable
[3] = TAG_Int(UNTAG_Int( variable
[2] /*res*/)+UNTAG_Int( TAG_Int(1)));
330 ATTR_compiling_base___CompilerVisitor____number_cpt(variable
[0]) /*CompilerVisitor::_number_cpt*/ = variable
[3];
331 variable
[1] = variable
[2] /*res*/;
333 return_label9
: while(false);
334 tracehead
= trace
.prev
;
337 void compiling_base___CompilerVisitor___indent(val_t self
) {
338 struct trace_t trace
= {NULL
, NULL
, 68, LOCATE_compiling_base___CompilerVisitor___indent
};
340 struct WBT_
**closurevariable
= NULL
;
341 trace
.prev
= tracehead
; tracehead
= &trace
;
342 trace
.file
= LOCATE_compiling_base
;
343 /* Register variable[0]: Local variable */
345 /* Register variable[1]: Method return value and escape marker */
346 ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/ = TAG_Int(UNTAG_Int(ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/)+UNTAG_Int( TAG_Int(1)));
347 return_label10
: while(false);
348 tracehead
= trace
.prev
;
351 void compiling_base___CompilerVisitor___unindent(val_t self
) {
352 struct trace_t trace
= {NULL
, NULL
, 72, LOCATE_compiling_base___CompilerVisitor___unindent
};
354 struct WBT_
**closurevariable
= NULL
;
355 trace
.prev
= tracehead
; tracehead
= &trace
;
356 trace
.file
= LOCATE_compiling_base
;
357 /* Register variable[0]: Local variable */
359 /* Register variable[1]: Method return value and escape marker */
360 ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/ = TAG_Int(UNTAG_Int(ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/)-UNTAG_Int( TAG_Int(1)));
361 /* Register variable[2]: Result */
362 variable
[2] = ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/;
363 /* Register variable[2]: Result */
364 variable
[2] = TAG_Bool(UNTAG_Int(variable
[2])<UNTAG_Int( TAG_Int(0)));
365 if (UNTAG_Bool(variable
[2])) { /*if*/
366 ATTR_compiling_base___CompilerVisitor____indent_level(variable
[0]) /*CompilerVisitor::_indent_level*/ = TAG_Int(0);
368 return_label11
: while(false);
369 tracehead
= trace
.prev
;
372 val_t
compiling_base___CompilerVisitor___module(val_t self
) {
373 struct trace_t trace
= {NULL
, NULL
, 89, LOCATE_compiling_base___CompilerVisitor___module
};
374 val_t
*variable
= NULL
;
375 struct WBT_
**closurevariable
= NULL
;
376 trace
.prev
= tracehead
; tracehead
= &trace
;
377 trace
.file
= LOCATE_compiling_base
;
378 tracehead
= trace
.prev
;
379 return ATTR_compiling_base___CompilerVisitor____module( self
) /*CompilerVisitor::_module*/;
381 val_t
compiling_base___CompilerVisitor___ctx(val_t self
) {
382 struct trace_t trace
= {NULL
, NULL
, 92, LOCATE_compiling_base___CompilerVisitor___ctx
};
383 val_t
*variable
= NULL
;
384 struct WBT_
**closurevariable
= NULL
;
385 trace
.prev
= tracehead
; tracehead
= &trace
;
386 trace
.file
= LOCATE_compiling_base
;
387 tracehead
= trace
.prev
;
388 return ATTR_compiling_base___CompilerVisitor____ctx( self
) /*CompilerVisitor::_ctx*/;
390 void compiling_base___CompilerVisitor___ctx__eq(val_t self
, val_t param0
) {
391 struct trace_t trace
= {NULL
, NULL
, 92, LOCATE_compiling_base___CompilerVisitor___ctx__eq
};
392 val_t
*variable
= NULL
;
393 struct WBT_
**closurevariable
= NULL
;
394 trace
.prev
= tracehead
; tracehead
= &trace
;
395 trace
.file
= LOCATE_compiling_base
;
396 ATTR_compiling_base___CompilerVisitor____ctx( self
) /*CompilerVisitor::_ctx*/ = param0
;
397 tracehead
= trace
.prev
;
400 val_t
compiling_base___CompilerVisitor___indent_level(val_t self
) {
401 struct trace_t trace
= {NULL
, NULL
, 95, LOCATE_compiling_base___CompilerVisitor___indent_level
};
402 val_t
*variable
= NULL
;
403 struct WBT_
**closurevariable
= NULL
;
404 trace
.prev
= tracehead
; tracehead
= &trace
;
405 trace
.file
= LOCATE_compiling_base
;
406 tracehead
= trace
.prev
;
407 return ATTR_compiling_base___CompilerVisitor____indent_level( self
) /*CompilerVisitor::_indent_level*/;
409 void compiling_base___CompilerVisitor___indent_level__eq(val_t self
, val_t param0
) {
410 struct trace_t trace
= {NULL
, NULL
, 95, LOCATE_compiling_base___CompilerVisitor___indent_level__eq
};
411 val_t
*variable
= NULL
;
412 struct WBT_
**closurevariable
= NULL
;
413 trace
.prev
= tracehead
; tracehead
= &trace
;
414 trace
.file
= LOCATE_compiling_base
;
415 ATTR_compiling_base___CompilerVisitor____indent_level( self
) /*CompilerVisitor::_indent_level*/ = param0
;
416 tracehead
= trace
.prev
;
419 val_t
compiling_base___CompilerVisitor___tc(val_t self
) {
420 struct trace_t trace
= {NULL
, NULL
, 98, LOCATE_compiling_base___CompilerVisitor___tc
};
421 val_t
*variable
= NULL
;
422 struct WBT_
**closurevariable
= NULL
;
423 trace
.prev
= tracehead
; tracehead
= &trace
;
424 trace
.file
= LOCATE_compiling_base
;
425 tracehead
= trace
.prev
;
426 return ATTR_compiling_base___CompilerVisitor____tc( self
) /*CompilerVisitor::_tc*/;
428 void compiling_base___CompilerVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
429 struct trace_t trace
= {NULL
, NULL
, 101, LOCATE_compiling_base___CompilerVisitor___init
};
431 struct WBT_
**closurevariable
= NULL
;
432 trace
.prev
= tracehead
; tracehead
= &trace
;
433 trace
.file
= LOCATE_compiling_base
;
434 /* Register variable[0]: Local variable */
436 /* Register variable[1]: Local variable */
437 variable
[1] = param0
;
438 /* Register variable[2]: Local variable */
439 variable
[2] = param1
;
440 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_CompilerVisitor
].i
]) return;
441 /* Register variable[3]: Method return value and escape marker */
442 ATTR_compiling_base___CompilerVisitor____module(variable
[0]) /*CompilerVisitor::_module*/ = variable
[1] /*module*/;
443 ATTR_compiling_base___CompilerVisitor____tc(variable
[0]) /*CompilerVisitor::_tc*/ = variable
[2] /*tc*/;
444 return_label12
: while(false);
445 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_CompilerVisitor
].i
] = 1;
446 tracehead
= trace
.prev
;
449 val_t
compiling_base___CContext___decls(val_t self
) {
450 struct trace_t trace
= {NULL
, NULL
, 112, LOCATE_compiling_base___CContext___decls
};
451 val_t
*variable
= NULL
;
452 struct WBT_
**closurevariable
= NULL
;
453 trace
.prev
= tracehead
; tracehead
= &trace
;
454 trace
.file
= LOCATE_compiling_base
;
455 tracehead
= trace
.prev
;
456 return ATTR_compiling_base___CContext____decls( self
) /*CContext::_decls*/;
458 val_t
compiling_base___CContext___instrs(val_t self
) {
459 struct trace_t trace
= {NULL
, NULL
, 113, LOCATE_compiling_base___CContext___instrs
};
460 val_t
*variable
= NULL
;
461 struct WBT_
**closurevariable
= NULL
;
462 trace
.prev
= tracehead
; tracehead
= &trace
;
463 trace
.file
= LOCATE_compiling_base
;
464 tracehead
= trace
.prev
;
465 return ATTR_compiling_base___CContext____instrs( self
) /*CContext::_instrs*/;
467 void compiling_base___CContext___append(val_t self
, val_t param0
) {
468 struct trace_t trace
= {NULL
, NULL
, 115, LOCATE_compiling_base___CContext___append
};
470 struct WBT_
**closurevariable
= NULL
;
471 trace
.prev
= tracehead
; tracehead
= &trace
;
472 trace
.file
= LOCATE_compiling_base
;
473 /* Register variable[0]: Local variable */
475 /* Register variable[1]: Local variable */
476 variable
[1] = param0
;
477 /* Register variable[2]: Method return value and escape marker */
478 /* Register variable[3]: Result */
479 variable
[3] = ATTR_compiling_base___CContext____instrs(variable
[0]) /*CContext::_instrs*/;
480 /* Register variable[4]: Result */
481 variable
[4] = CALL_compiling_base___CContext___decls( variable
[1] /*c*/)( variable
[1] /*c*/) /*CContext::decls*/;
482 CALL_abstract_collection___IndexedCollection___append(variable
[3])(variable
[3], variable
[4]) /*IndexedCollection::append*/;
483 /* Register variable[3]: Result */
484 variable
[3] = ATTR_compiling_base___CContext____instrs(variable
[0]) /*CContext::_instrs*/;
485 /* Register variable[4]: Result */
486 variable
[4] = CALL_compiling_base___CContext___instrs( variable
[1] /*c*/)( variable
[1] /*c*/) /*CContext::instrs*/;
487 CALL_abstract_collection___IndexedCollection___append(variable
[3])(variable
[3], variable
[4]) /*IndexedCollection::append*/;
488 return_label13
: while(false);
489 tracehead
= trace
.prev
;
492 void compiling_base___CContext___merge(val_t self
, val_t param0
) {
493 struct trace_t trace
= {NULL
, NULL
, 121, LOCATE_compiling_base___CContext___merge
};
495 struct WBT_
**closurevariable
= NULL
;
496 trace
.prev
= tracehead
; tracehead
= &trace
;
497 trace
.file
= LOCATE_compiling_base
;
498 /* Register variable[0]: Local variable */
500 /* Register variable[1]: Local variable */
501 variable
[1] = param0
;
502 /* Register variable[2]: Method return value and escape marker */
503 /* Register variable[3]: Result */
504 variable
[3] = ATTR_compiling_base___CContext____decls(variable
[0]) /*CContext::_decls*/;
505 /* Register variable[4]: Result */
506 variable
[4] = CALL_compiling_base___CContext___decls( variable
[1] /*c*/)( variable
[1] /*c*/) /*CContext::decls*/;
507 CALL_abstract_collection___IndexedCollection___append(variable
[3])(variable
[3], variable
[4]) /*IndexedCollection::append*/;
508 /* Register variable[3]: Result */
509 variable
[3] = ATTR_compiling_base___CContext____instrs(variable
[0]) /*CContext::_instrs*/;
510 /* Register variable[4]: Result */
511 variable
[4] = CALL_compiling_base___CContext___instrs( variable
[1] /*c*/)( variable
[1] /*c*/) /*CContext::instrs*/;
512 CALL_abstract_collection___IndexedCollection___append(variable
[3])(variable
[3], variable
[4]) /*IndexedCollection::append*/;
513 return_label14
: while(false);
514 tracehead
= trace
.prev
;
517 void compiling_base___CContext___init(val_t self
, int* init_table
) {
518 struct trace_t trace
= {NULL
, NULL
, 127, LOCATE_compiling_base___CContext___init
};
520 struct WBT_
**closurevariable
= NULL
;
521 trace
.prev
= tracehead
; tracehead
= &trace
;
522 trace
.file
= LOCATE_compiling_base
;
523 /* Register variable[0]: Local variable */
525 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_CContext
].i
]) return;
526 /* Register variable[1]: Method return value and escape marker */
527 return_label15
: while(false);
528 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_CContext
].i
] = 1;
529 tracehead
= trace
.prev
;
532 val_t
compiling_base___MMGlobalProperty___meth_call(val_t self
) {
533 struct trace_t trace
= {NULL
, NULL
, 131, LOCATE_compiling_base___MMGlobalProperty___meth_call
};
534 static val_t once_value_17
= NIT_NULL
; /* Once value for string variable[3]*/
535 static val_t once_value_18
= NIT_NULL
; /* Once value for string variable[3]*/
537 struct WBT_
**closurevariable
= NULL
;
538 trace
.prev
= tracehead
; tracehead
= &trace
;
539 trace
.file
= LOCATE_compiling_base
;
540 /* Register variable[0]: Local variable */
542 /* Register variable[1]: Method return value and escape marker */
543 variable
[2] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
544 /* Register variable[3]: Once String constant */
545 if (once_value_17
!= NIT_NULL
) variable
[3] = once_value_17
;
547 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("CALL_"), TAG_Int(5)) /*new String*/;
548 once_value_17
= variable
[3];
550 /* Register variable[3]: Result */
551 /* Ensure var variable[3]: super-string element*/
552 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
553 /* Register variable[3]: Result */
554 variable
[3] = CALL_abstractmetamodel___MMGlobalProperty___intro(variable
[0])(variable
[0]) /*MMGlobalProperty::intro*/;
555 /* Register variable[3]: Result */
556 variable
[3] = CALL_compiling_base___MMLocalProperty___cname(variable
[3])(variable
[3]) /*MMLocalProperty::cname*/;
557 /* Ensure var variable[3]: super-string element*/
558 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
559 /* Register variable[3]: Once String constant */
560 if (once_value_18
!= NIT_NULL
) variable
[3] = once_value_18
;
562 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
563 once_value_18
= variable
[3];
565 /* Register variable[3]: Result */
566 /* Ensure var variable[3]: super-string element*/
567 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
568 /* Register variable[2]: Result */
569 variable
[2] = CALL_string___Object___to_s(variable
[2])(variable
[2]) /*Object::to_s*/;
570 variable
[1] = variable
[2];
572 return_label16
: while(false);
573 tracehead
= trace
.prev
;
576 val_t
compiling_base___MMGlobalProperty___attr_access(val_t self
) {
577 struct trace_t trace
= {NULL
, NULL
, 137, LOCATE_compiling_base___MMGlobalProperty___attr_access
};
578 static val_t once_value_20
= NIT_NULL
; /* Once value for string variable[3]*/
579 static val_t once_value_21
= NIT_NULL
; /* Once value for string variable[3]*/
581 struct WBT_
**closurevariable
= NULL
;
582 trace
.prev
= tracehead
; tracehead
= &trace
;
583 trace
.file
= LOCATE_compiling_base
;
584 /* Register variable[0]: Local variable */
586 /* Register variable[1]: Method return value and escape marker */
587 variable
[2] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
588 /* Register variable[3]: Once String constant */
589 if (once_value_20
!= NIT_NULL
) variable
[3] = once_value_20
;
591 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("ATTR_"), TAG_Int(5)) /*new String*/;
592 once_value_20
= variable
[3];
594 /* Register variable[3]: Result */
595 /* Ensure var variable[3]: super-string element*/
596 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
597 /* Register variable[3]: Result */
598 variable
[3] = CALL_abstractmetamodel___MMGlobalProperty___intro(variable
[0])(variable
[0]) /*MMGlobalProperty::intro*/;
599 /* Register variable[3]: Result */
600 variable
[3] = CALL_compiling_base___MMLocalProperty___cname(variable
[3])(variable
[3]) /*MMLocalProperty::cname*/;
601 /* Ensure var variable[3]: super-string element*/
602 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
603 /* Register variable[3]: Once String constant */
604 if (once_value_21
!= NIT_NULL
) variable
[3] = once_value_21
;
606 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
607 once_value_21
= variable
[3];
609 /* Register variable[3]: Result */
610 /* Ensure var variable[3]: super-string element*/
611 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
612 /* Register variable[2]: Result */
613 variable
[2] = CALL_string___Object___to_s(variable
[2])(variable
[2]) /*Object::to_s*/;
614 variable
[1] = variable
[2];
616 return_label19
: while(false);
617 tracehead
= trace
.prev
;
620 val_t
compiling_base___MMGlobalClass___id_id(val_t self
) {
621 struct trace_t trace
= {NULL
, NULL
, 145, LOCATE_compiling_base___MMGlobalClass___id_id
};
622 static val_t once_value_23
= NIT_NULL
; /* Once value for string variable[3]*/
623 static val_t once_value_24
= NIT_NULL
; /* Once value for string variable[3]*/
625 struct WBT_
**closurevariable
= NULL
;
626 trace
.prev
= tracehead
; tracehead
= &trace
;
627 trace
.file
= LOCATE_compiling_base
;
628 /* Register variable[0]: Local variable */
630 /* Register variable[1]: Method return value and escape marker */
631 variable
[2] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
632 /* Register variable[3]: Once String constant */
633 if (once_value_23
!= NIT_NULL
) variable
[3] = once_value_23
;
635 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("ID_"), TAG_Int(3)) /*new String*/;
636 once_value_23
= variable
[3];
638 /* Register variable[3]: Result */
639 /* Ensure var variable[3]: super-string element*/
640 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
641 /* Register variable[3]: Result */
642 variable
[3] = CALL_abstractmetamodel___MMGlobalClass___intro(variable
[0])(variable
[0]) /*MMGlobalClass::intro*/;
643 /* Register variable[3]: Result */
644 variable
[3] = CALL_abstractmetamodel___MMLocalClass___name(variable
[3])(variable
[3]) /*MMLocalClass::name*/;
645 /* Ensure var variable[3]: super-string element*/
646 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], CALL_string___Object___to_s(variable
[3])(variable
[3]) /*Object::to_s*/) /*AbstractArray::add*/;
647 /* Register variable[3]: Once String constant */
648 if (once_value_24
!= NIT_NULL
) variable
[3] = once_value_24
;
650 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
651 once_value_24
= variable
[3];
653 /* Register variable[3]: Result */
654 /* Ensure var variable[3]: super-string element*/
655 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
656 /* Register variable[2]: Result */
657 variable
[2] = CALL_string___Object___to_s(variable
[2])(variable
[2]) /*Object::to_s*/;
658 variable
[1] = variable
[2];
660 return_label22
: while(false);
661 tracehead
= trace
.prev
;
664 val_t
compiling_base___MMGlobalClass___color_id(val_t self
) {
665 struct trace_t trace
= {NULL
, NULL
, 151, LOCATE_compiling_base___MMGlobalClass___color_id
};
666 static val_t once_value_26
= NIT_NULL
; /* Once value for string variable[3]*/
667 static val_t once_value_27
= NIT_NULL
; /* Once value for string variable[3]*/
669 struct WBT_
**closurevariable
= NULL
;
670 trace
.prev
= tracehead
; tracehead
= &trace
;
671 trace
.file
= LOCATE_compiling_base
;
672 /* Register variable[0]: Local variable */
674 /* Register variable[1]: Method return value and escape marker */
675 variable
[2] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
676 /* Register variable[3]: Once String constant */
677 if (once_value_26
!= NIT_NULL
) variable
[3] = once_value_26
;
679 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("COLOR_"), TAG_Int(6)) /*new String*/;
680 once_value_26
= variable
[3];
682 /* Register variable[3]: Result */
683 /* Ensure var variable[3]: super-string element*/
684 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
685 /* Register variable[3]: Result */
686 variable
[3] = CALL_abstractmetamodel___MMGlobalClass___intro(variable
[0])(variable
[0]) /*MMGlobalClass::intro*/;
687 /* Register variable[3]: Result */
688 variable
[3] = CALL_abstractmetamodel___MMLocalClass___name(variable
[3])(variable
[3]) /*MMLocalClass::name*/;
689 /* Ensure var variable[3]: super-string element*/
690 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], CALL_string___Object___to_s(variable
[3])(variable
[3]) /*Object::to_s*/) /*AbstractArray::add*/;
691 /* Register variable[3]: Once String constant */
692 if (once_value_27
!= NIT_NULL
) variable
[3] = once_value_27
;
694 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
695 once_value_27
= variable
[3];
697 /* Register variable[3]: Result */
698 /* Ensure var variable[3]: super-string element*/
699 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
700 /* Register variable[2]: Result */
701 variable
[2] = CALL_string___Object___to_s(variable
[2])(variable
[2]) /*Object::to_s*/;
702 variable
[1] = variable
[2];
704 return_label25
: while(false);
705 tracehead
= trace
.prev
;
708 val_t
compiling_base___MMGlobalClass___init_table_pos_id(val_t self
) {
709 struct trace_t trace
= {NULL
, NULL
, 157, LOCATE_compiling_base___MMGlobalClass___init_table_pos_id
};
710 static val_t once_value_29
= NIT_NULL
; /* Once value for string variable[3]*/
711 static val_t once_value_30
= NIT_NULL
; /* Once value for string variable[3]*/
713 struct WBT_
**closurevariable
= NULL
;
714 trace
.prev
= tracehead
; tracehead
= &trace
;
715 trace
.file
= LOCATE_compiling_base
;
716 /* Register variable[0]: Local variable */
718 /* Register variable[1]: Method return value and escape marker */
719 variable
[2] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
720 /* Register variable[3]: Once String constant */
721 if (once_value_29
!= NIT_NULL
) variable
[3] = once_value_29
;
723 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("INIT_TABLE_POS_"), TAG_Int(15)) /*new String*/;
724 once_value_29
= variable
[3];
726 /* Register variable[3]: Result */
727 /* Ensure var variable[3]: super-string element*/
728 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
729 /* Register variable[3]: Result */
730 variable
[3] = CALL_abstractmetamodel___MMGlobalClass___intro(variable
[0])(variable
[0]) /*MMGlobalClass::intro*/;
731 /* Register variable[3]: Result */
732 variable
[3] = CALL_abstractmetamodel___MMLocalClass___name(variable
[3])(variable
[3]) /*MMLocalClass::name*/;
733 /* Ensure var variable[3]: super-string element*/
734 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], CALL_string___Object___to_s(variable
[3])(variable
[3]) /*Object::to_s*/) /*AbstractArray::add*/;
735 /* Register variable[3]: Once String constant */
736 if (once_value_30
!= NIT_NULL
) variable
[3] = once_value_30
;
738 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
739 once_value_30
= variable
[3];
741 /* Register variable[3]: Result */
742 /* Ensure var variable[3]: super-string element*/
743 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
744 /* Register variable[2]: Result */
745 variable
[2] = CALL_string___Object___to_s(variable
[2])(variable
[2]) /*Object::to_s*/;
746 variable
[1] = variable
[2];
748 return_label28
: while(false);
749 tracehead
= trace
.prev
;
752 val_t
compiling_base___MMLocalClass___primitive_info(val_t self
) {
753 struct trace_t trace
= {NULL
, NULL
, 171, LOCATE_compiling_base___MMLocalClass___primitive_info
};
754 static val_t once_value_32
; static int once_bool_32
; /* Once value for variable[3]*/
756 struct WBT_
**closurevariable
= NULL
;
757 trace
.prev
= tracehead
; tracehead
= &trace
;
758 trace
.file
= LOCATE_compiling_base
;
759 /* Register variable[0]: Local variable */
761 /* Register variable[1]: Method return value and escape marker */
762 /* Register variable[2]: Result */
763 variable
[2] = ATTR_compiling_base___MMLocalClass____primitive_info_b(variable
[0]) /*MMLocalClass::_primitive_info_b*/;
764 /* Register variable[2]: Result */
765 variable
[2] = TAG_Bool((variable
[2])==( TAG_Bool(true)));
766 if (UNTAG_Bool(variable
[2])) { /*if*/
767 /* Register variable[2]: Result */
768 variable
[2] = ATTR_compiling_base___MMLocalClass____primitive_info_cache(variable
[0]) /*MMLocalClass::_primitive_info_cache*/;
769 variable
[1] = variable
[2];
772 /* Register variable[2]: Local variable */
773 /* Register variable[3]: Once expression result */
774 if (once_bool_32
) variable
[3] = once_value_32
;
776 /* Register variable[3]: Result */
777 variable
[3] = CALL_compiling_base___MMLocalClass___primitive_ctypes(variable
[0])(variable
[0]) /*MMLocalClass::primitive_ctypes*/;
778 once_value_32
= variable
[3];
781 /* Register variable[3]: Result */
782 variable
[2] = variable
[3];
783 /* Register variable[3]: Result */
784 variable
[3] = CALL_abstractmetamodel___MMLocalClass___name(variable
[0])(variable
[0]) /*MMLocalClass::name*/;
785 /* Register variable[3]: Result */
786 variable
[3] = CALL_abstract_collection___MapRead___has_key( variable
[2] /*ctypes*/)( variable
[2] /*ctypes*/, variable
[3]) /*CoupleMap::has_key*/;
787 if (UNTAG_Bool(variable
[3])) { /*if*/
788 /* Register variable[3]: Result */
789 variable
[3] = CALL_abstractmetamodel___MMLocalClass___name(variable
[0])(variable
[0]) /*MMLocalClass::name*/;
790 /* Register variable[3]: Result */
791 variable
[3] = CALL_abstract_collection___MapRead_____bra( variable
[2] /*ctypes*/)( variable
[2] /*ctypes*/, variable
[3]) /*CoupleMap::[]*/;
792 ATTR_compiling_base___MMLocalClass____primitive_info_cache(variable
[0]) /*MMLocalClass::_primitive_info_cache*/ = variable
[3];
793 ATTR_compiling_base___MMLocalClass____primitive_info_b(variable
[0]) /*MMLocalClass::_primitive_info_b*/ = TAG_Bool(true);
794 /* Register variable[3]: Result */
795 variable
[3] = ATTR_compiling_base___MMLocalClass____primitive_info_cache(variable
[0]) /*MMLocalClass::_primitive_info_cache*/;
796 variable
[1] = variable
[3];
799 /* Register variable[3]: Local variable */
800 /* Register variable[4]: Result */
801 variable
[4] = CALL_abstract_collection___Collection___iterator( variable
[2] /*ctypes*/)( variable
[2] /*ctypes*/) /*HashMap::iterator*/;
802 variable
[3] = variable
[4];
803 while (true) { /*while*/
804 /* Register variable[4]: Result */
805 variable
[4] = CALL_abstract_collection___Iterator___is_ok( variable
[3] /*i*/)( variable
[3] /*i*/) /*HashMapIterator::is_ok*/;
806 if (!UNTAG_Bool(variable
[4])) break; /* while*/
807 /* Register variable[4]: Local variable */
808 /* Register variable[5]: Result */
809 variable
[5] = CALL_abstract_collection___MapIterator___key( variable
[3] /*i*/)( variable
[3] /*i*/) /*HashMapIterator::key*/;
810 variable
[4] = variable
[5];
811 /* Register variable[5]: Result */
812 variable
[5] = CALL_abstractmetamodel___MMLocalClass___module(variable
[0])(variable
[0]) /*MMLocalClass::module*/;
813 /* Register variable[5]: Result */
814 variable
[5] = CALL_abstractmetamodel___MMModule___has_global_class_named(variable
[5])(variable
[5], variable
[4] /*n*/) /*MMModule::has_global_class_named*/;
815 if (UNTAG_Bool(variable
[5])) { /*if*/
816 /* Register variable[5]: Local variable */
817 /* Register variable[6]: Result */
818 variable
[6] = CALL_abstractmetamodel___MMLocalClass___module(variable
[0])(variable
[0]) /*MMLocalClass::module*/;
819 /* Register variable[6]: Result */
820 variable
[6] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[6])(variable
[6], variable
[4] /*n*/) /*MMModule::class_by_name*/;
821 variable
[5] = variable
[6];
822 /* Register variable[6]: Result */
823 variable
[6] = CALL_abstractmetamodel___MMLocalClass___cshe(variable
[0])(variable
[0]) /*MMLocalClass::cshe*/;
824 /* Register variable[6]: Result */
825 variable
[6] = CALL_partial_order___PartialOrderElement_____l(variable
[6])(variable
[6], variable
[5] /*c*/) /*PartialOrderElement::<*/;
826 if (UNTAG_Bool(variable
[6])) { /*if*/
827 /* Register variable[6]: Result */
828 variable
[6] = CALL_abstract_collection___Iterator___item( variable
[3] /*i*/)( variable
[3] /*i*/) /*HashMapIterator::item*/;
829 ATTR_compiling_base___MMLocalClass____primitive_info_cache(variable
[0]) /*MMLocalClass::_primitive_info_cache*/ = variable
[6];
830 ATTR_compiling_base___MMLocalClass____primitive_info_b(variable
[0]) /*MMLocalClass::_primitive_info_b*/ = TAG_Bool(true);
831 /* Register variable[6]: Result */
832 variable
[6] = ATTR_compiling_base___MMLocalClass____primitive_info_cache(variable
[0]) /*MMLocalClass::_primitive_info_cache*/;
833 variable
[1] = variable
[6];
837 CALL_abstract_collection___Iterator___next( variable
[3] /*i*/)( variable
[3] /*i*/) /*HashMapIterator::next*/;
838 continue_33
: while(0);
841 ATTR_compiling_base___MMLocalClass____primitive_info_b(variable
[0]) /*MMLocalClass::_primitive_info_b*/ = TAG_Bool(true);
842 variable
[1] = NIT_NULL
/*null*/;
844 return_label31
: while(false);
845 tracehead
= trace
.prev
;
848 val_t
compiling_base___MMLocalClass___primitive_ctypes(val_t self
) {
849 struct trace_t trace
= {NULL
, NULL
, 201, LOCATE_compiling_base___MMLocalClass___primitive_ctypes
};
850 static val_t once_value_35
= NIT_NULL
; /* Once value for string variable[5]*/
851 static val_t once_value_36
= NIT_NULL
; /* Once value for string variable[6]*/
852 static val_t once_value_37
= NIT_NULL
; /* Once value for string variable[7]*/
853 static val_t once_value_38
= NIT_NULL
; /* Once value for string variable[8]*/
854 static val_t once_value_39
= NIT_NULL
; /* Once value for string variable[9]*/
855 static val_t once_value_40
= NIT_NULL
; /* Once value for string variable[10]*/
856 static val_t once_value_41
= NIT_NULL
; /* Once value for string variable[11]*/
857 static val_t once_value_42
= NIT_NULL
; /* Once value for string variable[7]*/
858 static val_t once_value_43
= NIT_NULL
; /* Once value for string variable[8]*/
859 static val_t once_value_44
= NIT_NULL
; /* Once value for string variable[9]*/
860 static val_t once_value_45
= NIT_NULL
; /* Once value for string variable[10]*/
861 static val_t once_value_46
= NIT_NULL
; /* Once value for string variable[11]*/
862 static val_t once_value_47
= NIT_NULL
; /* Once value for string variable[12]*/
863 static val_t once_value_48
= NIT_NULL
; /* Once value for string variable[13]*/
865 struct WBT_
**closurevariable
= NULL
;
866 trace
.prev
= tracehead
; tracehead
= &trace
;
867 trace
.file
= LOCATE_compiling_base
;
868 /* Register variable[0]: Local variable */
870 /* Register variable[1]: Method return value and escape marker */
871 /* Register variable[2]: Local variable */
872 /* Register variable[3]: Result */
873 variable
[3] = NEW_HashMap_hash___HashMap___init() /*new HashMap[Symbol, PrimitiveInfo]*/;
874 variable
[2] = variable
[3];
875 /* Register variable[3]: Local variable */
876 variable
[4] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[String]*/ /* Ensure var: Literal array*/;
877 /* Register variable[5]: Once String constant */
878 if (once_value_35
!= NIT_NULL
) variable
[5] = once_value_35
;
880 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("Int"), TAG_Int(3)) /*new String*/;
881 once_value_35
= variable
[5];
883 /* Register variable[5]: Result */
884 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
885 /* Register variable[6]: Once String constant */
886 if (once_value_36
!= NIT_NULL
) variable
[6] = once_value_36
;
888 variable
[6] = NEW_String_string___String___with_native(BOX_NativeString("Char"), TAG_Int(4)) /*new String*/;
889 once_value_36
= variable
[6];
891 /* Register variable[6]: Result */
892 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[6]) /*AbstractArray::add*/;
893 /* Register variable[7]: Once String constant */
894 if (once_value_37
!= NIT_NULL
) variable
[7] = once_value_37
;
896 variable
[7] = NEW_String_string___String___with_native(BOX_NativeString("Bool"), TAG_Int(4)) /*new String*/;
897 once_value_37
= variable
[7];
899 /* Register variable[7]: Result */
900 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[7]) /*AbstractArray::add*/;
901 /* Register variable[8]: Once String constant */
902 if (once_value_38
!= NIT_NULL
) variable
[8] = once_value_38
;
904 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("Float"), TAG_Int(5)) /*new String*/;
905 once_value_38
= variable
[8];
907 /* Register variable[8]: Result */
908 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[8]) /*AbstractArray::add*/;
909 /* Register variable[9]: Once String constant */
910 if (once_value_39
!= NIT_NULL
) variable
[9] = once_value_39
;
912 variable
[9] = NEW_String_string___String___with_native(BOX_NativeString("NativeString"), TAG_Int(12)) /*new String*/;
913 once_value_39
= variable
[9];
915 /* Register variable[9]: Result */
916 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[9]) /*AbstractArray::add*/;
917 /* Register variable[10]: Once String constant */
918 if (once_value_40
!= NIT_NULL
) variable
[10] = once_value_40
;
920 variable
[10] = NEW_String_string___String___with_native(BOX_NativeString("NativeArray"), TAG_Int(11)) /*new String*/;
921 once_value_40
= variable
[10];
923 /* Register variable[10]: Result */
924 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[10]) /*AbstractArray::add*/;
925 /* Register variable[11]: Once String constant */
926 if (once_value_41
!= NIT_NULL
) variable
[11] = once_value_41
;
928 variable
[11] = NEW_String_string___String___with_native(BOX_NativeString("Pointer"), TAG_Int(7)) /*new String*/;
929 once_value_41
= variable
[11];
931 /* Register variable[11]: Result */
932 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[11]) /*AbstractArray::add*/;
933 /* Register variable[4]: Result */
934 variable
[3] = variable
[4];
935 /* Register variable[4]: Local variable */
936 variable
[5] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[Bool]*/ /* Ensure var: Literal array*/;
937 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], TAG_Bool(true)) /*AbstractArray::add*/;
938 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], TAG_Bool(true)) /*AbstractArray::add*/;
939 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], TAG_Bool(true)) /*AbstractArray::add*/;
940 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], TAG_Bool(false)) /*AbstractArray::add*/;
941 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], TAG_Bool(false)) /*AbstractArray::add*/;
942 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], TAG_Bool(false)) /*AbstractArray::add*/;
943 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], TAG_Bool(false)) /*AbstractArray::add*/;
944 /* Register variable[5]: Result */
945 variable
[4] = variable
[5];
946 /* Register variable[5]: Local variable */
947 variable
[6] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[String]*/ /* Ensure var: Literal array*/;
948 /* Register variable[7]: Once String constant */
949 if (once_value_42
!= NIT_NULL
) variable
[7] = once_value_42
;
951 variable
[7] = NEW_String_string___String___with_native(BOX_NativeString("bigint"), TAG_Int(6)) /*new String*/;
952 once_value_42
= variable
[7];
954 /* Register variable[7]: Result */
955 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[7]) /*AbstractArray::add*/;
956 /* Register variable[8]: Once String constant */
957 if (once_value_43
!= NIT_NULL
) variable
[8] = once_value_43
;
959 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("char"), TAG_Int(4)) /*new String*/;
960 once_value_43
= variable
[8];
962 /* Register variable[8]: Result */
963 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[8]) /*AbstractArray::add*/;
964 /* Register variable[9]: Once String constant */
965 if (once_value_44
!= NIT_NULL
) variable
[9] = once_value_44
;
967 variable
[9] = NEW_String_string___String___with_native(BOX_NativeString("int"), TAG_Int(3)) /*new String*/;
968 once_value_44
= variable
[9];
970 /* Register variable[9]: Result */
971 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[9]) /*AbstractArray::add*/;
972 /* Register variable[10]: Once String constant */
973 if (once_value_45
!= NIT_NULL
) variable
[10] = once_value_45
;
975 variable
[10] = NEW_String_string___String___with_native(BOX_NativeString("float"), TAG_Int(5)) /*new String*/;
976 once_value_45
= variable
[10];
978 /* Register variable[10]: Result */
979 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[10]) /*AbstractArray::add*/;
980 /* Register variable[11]: Once String constant */
981 if (once_value_46
!= NIT_NULL
) variable
[11] = once_value_46
;
983 variable
[11] = NEW_String_string___String___with_native(BOX_NativeString("char *"), TAG_Int(6)) /*new String*/;
984 once_value_46
= variable
[11];
986 /* Register variable[11]: Result */
987 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[11]) /*AbstractArray::add*/;
988 /* Register variable[12]: Once String constant */
989 if (once_value_47
!= NIT_NULL
) variable
[12] = once_value_47
;
991 variable
[12] = NEW_String_string___String___with_native(BOX_NativeString("val_t *"), TAG_Int(7)) /*new String*/;
992 once_value_47
= variable
[12];
994 /* Register variable[12]: Result */
995 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[12]) /*AbstractArray::add*/;
996 /* Register variable[13]: Once String constant */
997 if (once_value_48
!= NIT_NULL
) variable
[13] = once_value_48
;
999 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString("void *"), TAG_Int(6)) /*new String*/;
1000 once_value_48
= variable
[13];
1002 /* Register variable[13]: Result */
1003 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[13]) /*AbstractArray::add*/;
1004 /* Register variable[6]: Result */
1005 variable
[5] = variable
[6];
1006 /* Register variable[6]: Result */
1007 variable
[6] = CALL_abstract_collection___Collection___length( variable
[3] /*pnames*/)( variable
[3] /*pnames*/) /*AbstractArrayRead::length*/;
1008 /* Register variable[6]: Result */
1009 variable
[6] = NEW_Range_range___Range___without_last( TAG_Int(0), variable
[6]) /*new Range[Int]*/;
1010 /* Register variable[6]: For iterator */
1011 variable
[6] = CALL_abstract_collection___Collection___iterator(variable
[6])(variable
[6]) /*Range::iterator*/;
1012 while (true) { /*for*/
1013 /* Register variable[7]: For 'is_ok' result */
1014 variable
[7] = CALL_abstract_collection___Iterator___is_ok(variable
[6])(variable
[6]) /*Iterator::is_ok*/;
1015 if (!UNTAG_Bool(variable
[7])) break; /*for*/
1016 variable
[7] = CALL_abstract_collection___Iterator___item(variable
[6])(variable
[6]) /*Iterator::item*/ /* Ensure var: For item*/;
1017 /* Register variable[8]: Local variable */
1018 variable
[8] = variable
[7];
1019 /* Register variable[9]: Local variable */
1020 /* Register variable[10]: Local variable */
1021 variable
[10] = variable
[3] /*pnames*/;
1022 /* Register variable[11]: Local variable */
1023 variable
[11] = variable
[8] /*i*/;
1024 /* Register variable[12]: Method return value and escape marker */
1025 /* Register variable[13]: Result */
1026 variable
[13] = TAG_Bool(UNTAG_Int( variable
[11] /*index*/)>=UNTAG_Int( TAG_Int(0)));
1027 /* Ensure var variable[13]: Left 'and' operand*/
1028 if (UNTAG_Bool(variable
[13])) { /* and */
1029 /* Register variable[13]: Result */
1030 variable
[13] = ATTR_array___AbstractArrayRead____length(variable
[10]) /*AbstractArrayRead::_length*/;
1031 /* Register variable[13]: Result */
1032 variable
[13] = TAG_Bool(UNTAG_Int( variable
[11] /*index*/)<UNTAG_Int(variable
[13]));
1034 /* Register variable[13]: Result */
1035 if (!UNTAG_Bool(variable
[13])) { fprintf(stderr
, "Assert%s failed", " 'index' "); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_array___Array_____bra
, LOCATE_compiling_base
, 234); nit_exit(1);}
1036 /* Register variable[13]: Result */
1037 variable
[13] = ATTR_array___Array____items(variable
[10]) /*Array::_items*/;
1038 /* Register variable[13]: Result */
1039 variable
[13] = UNBOX_NativeArray(variable
[13])[UNTAG_Int( variable
[11] /*index*/)];
1040 variable
[12] = variable
[13];
1041 goto return_label50
;
1042 return_label50
: while(false);
1043 /* Register variable[10]: Result */
1044 variable
[10] = variable
[12];
1045 /* Register variable[10]: Result */
1046 variable
[10] = CALL_symbol___String___to_symbol(variable
[10])(variable
[10]) /*String::to_symbol*/;
1047 variable
[9] = variable
[10];
1048 /* Register variable[10]: Local variable */
1049 /* Register variable[11]: Local variable */
1050 variable
[11] = variable
[4] /*tagged*/;
1051 /* Register variable[12]: Local variable */
1052 variable
[12] = variable
[8] /*i*/;
1053 /* Register variable[13]: Method return value and escape marker */
1054 /* Register variable[14]: Result */
1055 variable
[14] = TAG_Bool(UNTAG_Int( variable
[12] /*index*/)>=UNTAG_Int( TAG_Int(0)));
1056 /* Ensure var variable[14]: Left 'and' operand*/
1057 if (UNTAG_Bool(variable
[14])) { /* and */
1058 /* Register variable[14]: Result */
1059 variable
[14] = ATTR_array___AbstractArrayRead____length(variable
[11]) /*AbstractArrayRead::_length*/;
1060 /* Register variable[14]: Result */
1061 variable
[14] = TAG_Bool(UNTAG_Int( variable
[12] /*index*/)<UNTAG_Int(variable
[14]));
1063 /* Register variable[14]: Result */
1064 if (!UNTAG_Bool(variable
[14])) { fprintf(stderr
, "Assert%s failed", " 'index' "); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_array___Array_____bra
, LOCATE_compiling_base
, 234); nit_exit(1);}
1065 /* Register variable[14]: Result */
1066 variable
[14] = ATTR_array___Array____items(variable
[11]) /*Array::_items*/;
1067 /* Register variable[14]: Result */
1068 variable
[14] = UNBOX_NativeArray(variable
[14])[UNTAG_Int( variable
[12] /*index*/)];
1069 variable
[13] = variable
[14];
1070 goto return_label51
;
1071 return_label51
: while(false);
1072 /* Register variable[11]: Result */
1073 variable
[11] = variable
[13];
1074 /* Register variable[12]: Local variable */
1075 variable
[12] = variable
[5] /*cnames*/;
1076 /* Register variable[13]: Local variable */
1077 variable
[13] = variable
[8] /*i*/;
1078 /* Register variable[14]: Method return value and escape marker */
1079 /* Register variable[15]: Result */
1080 variable
[15] = TAG_Bool(UNTAG_Int( variable
[13] /*index*/)>=UNTAG_Int( TAG_Int(0)));
1081 /* Ensure var variable[15]: Left 'and' operand*/
1082 if (UNTAG_Bool(variable
[15])) { /* and */
1083 /* Register variable[15]: Result */
1084 variable
[15] = ATTR_array___AbstractArrayRead____length(variable
[12]) /*AbstractArrayRead::_length*/;
1085 /* Register variable[15]: Result */
1086 variable
[15] = TAG_Bool(UNTAG_Int( variable
[13] /*index*/)<UNTAG_Int(variable
[15]));
1088 /* Register variable[15]: Result */
1089 if (!UNTAG_Bool(variable
[15])) { fprintf(stderr
, "Assert%s failed", " 'index' "); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_array___Array_____bra
, LOCATE_compiling_base
, 234); nit_exit(1);}
1090 /* Register variable[15]: Result */
1091 variable
[15] = ATTR_array___Array____items(variable
[12]) /*Array::_items*/;
1092 /* Register variable[15]: Result */
1093 variable
[15] = UNBOX_NativeArray(variable
[15])[UNTAG_Int( variable
[13] /*index*/)];
1094 variable
[14] = variable
[15];
1095 goto return_label52
;
1096 return_label52
: while(false);
1097 /* Register variable[12]: Result */
1098 variable
[12] = variable
[14];
1099 /* Register variable[11]: Result */
1100 variable
[11] = NEW_PrimitiveInfo_compiling_base___PrimitiveInfo___init( variable
[9] /*n*/, variable
[11], variable
[12]) /*new PrimitiveInfo*/;
1101 variable
[10] = variable
[11];
1102 CALL_abstract_collection___Map_____braeq( variable
[2] /*res*/)( variable
[2] /*res*/, variable
[9] /*n*/, variable
[10] /*pi*/) /*HashMap::[]=*/;
1103 continue_49
: while(0);
1104 CALL_abstract_collection___Iterator___next(variable
[6])(variable
[6]) /*Iterator::next*/;
1107 variable
[1] = variable
[2] /*res*/;
1108 goto return_label34
;
1109 return_label34
: while(false);
1110 tracehead
= trace
.prev
;
1113 val_t
compiling_base___PrimitiveInfo___name(val_t self
) {
1114 struct trace_t trace
= {NULL
, NULL
, 219, LOCATE_compiling_base___PrimitiveInfo___name
};
1115 val_t
*variable
= NULL
;
1116 struct WBT_
**closurevariable
= NULL
;
1117 trace
.prev
= tracehead
; tracehead
= &trace
;
1118 trace
.file
= LOCATE_compiling_base
;
1119 tracehead
= trace
.prev
;
1120 return ATTR_compiling_base___PrimitiveInfo____name( self
) /*PrimitiveInfo::_name*/;
1122 val_t
compiling_base___PrimitiveInfo___tagged(val_t self
) {
1123 struct trace_t trace
= {NULL
, NULL
, 222, LOCATE_compiling_base___PrimitiveInfo___tagged
};
1124 val_t
*variable
= NULL
;
1125 struct WBT_
**closurevariable
= NULL
;
1126 trace
.prev
= tracehead
; tracehead
= &trace
;
1127 trace
.file
= LOCATE_compiling_base
;
1128 tracehead
= trace
.prev
;
1129 return ATTR_compiling_base___PrimitiveInfo____tagged( self
) /*PrimitiveInfo::_tagged*/;
1131 val_t
compiling_base___PrimitiveInfo___cname(val_t self
) {
1132 struct trace_t trace
= {NULL
, NULL
, 225, LOCATE_compiling_base___PrimitiveInfo___cname
};
1133 val_t
*variable
= NULL
;
1134 struct WBT_
**closurevariable
= NULL
;
1135 trace
.prev
= tracehead
; tracehead
= &trace
;
1136 trace
.file
= LOCATE_compiling_base
;
1137 tracehead
= trace
.prev
;
1138 return ATTR_compiling_base___PrimitiveInfo____cname( self
) /*PrimitiveInfo::_cname*/;
1140 void compiling_base___PrimitiveInfo___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
1141 struct trace_t trace
= {NULL
, NULL
, 228, LOCATE_compiling_base___PrimitiveInfo___init
};
1143 struct WBT_
**closurevariable
= NULL
;
1144 trace
.prev
= tracehead
; tracehead
= &trace
;
1145 trace
.file
= LOCATE_compiling_base
;
1146 /* Register variable[0]: Local variable */
1148 /* Register variable[1]: Local variable */
1149 variable
[1] = param0
;
1150 /* Register variable[2]: Local variable */
1151 variable
[2] = param1
;
1152 /* Register variable[3]: Local variable */
1153 variable
[3] = param2
;
1154 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_PrimitiveInfo
].i
]) return;
1155 /* Register variable[4]: Method return value and escape marker */
1156 ATTR_compiling_base___PrimitiveInfo____name(variable
[0]) /*PrimitiveInfo::_name*/ = variable
[1] /*n*/;
1157 ATTR_compiling_base___PrimitiveInfo____tagged(variable
[0]) /*PrimitiveInfo::_tagged*/ = variable
[2] /*t*/;
1158 ATTR_compiling_base___PrimitiveInfo____cname(variable
[0]) /*PrimitiveInfo::_cname*/ = variable
[3] /*c*/;
1159 return_label53
: while(false);
1160 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_PrimitiveInfo
].i
] = 1;
1161 tracehead
= trace
.prev
;
1164 val_t
compiling_base___MMType___cname(val_t self
) {
1165 struct trace_t trace
= {NULL
, NULL
, 237, LOCATE_compiling_base___MMType___cname
};
1166 static val_t once_value_55
= NIT_NULL
; /* Once value for string variable[3]*/
1168 struct WBT_
**closurevariable
= NULL
;
1169 trace
.prev
= tracehead
; tracehead
= &trace
;
1170 trace
.file
= LOCATE_compiling_base
;
1171 /* Register variable[0]: Local variable */
1173 /* Register variable[1]: Method return value and escape marker */
1174 /* Register variable[2]: Local variable */
1175 /* Register variable[3]: Result */
1176 variable
[3] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1177 /* Register variable[3]: Result */
1178 variable
[3] = CALL_compiling_base___MMLocalClass___primitive_info(variable
[3])(variable
[3]) /*MMLocalClass::primitive_info*/;
1179 variable
[2] = variable
[3];
1180 /* Register variable[3]: Result */
1181 variable
[3] = TAG_Bool(( variable
[2] /*pi*/ == NIT_NULL
/*null*/) || (( variable
[2] /*pi*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[2] /*pi*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[2] /*pi*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[2] /*pi*/)( variable
[2] /*pi*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1182 if (UNTAG_Bool(variable
[3])) { /*if*/
1183 /* Register variable[3]: Once String constant */
1184 if (once_value_55
!= NIT_NULL
) variable
[3] = once_value_55
;
1186 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("val_t"), TAG_Int(5)) /*new String*/;
1187 once_value_55
= variable
[3];
1189 /* Register variable[3]: Result */
1190 variable
[1] = variable
[3];
1191 goto return_label54
;
1193 /* Register variable[3]: Result */
1194 variable
[3] = CALL_compiling_base___PrimitiveInfo___cname( variable
[2] /*pi*/)( variable
[2] /*pi*/) /*PrimitiveInfo::cname*/;
1195 variable
[1] = variable
[3];
1196 goto return_label54
;
1198 return_label54
: while(false);
1199 tracehead
= trace
.prev
;
1202 val_t
compiling_base___MMType___default_cvalue(val_t self
) {
1203 struct trace_t trace
= {NULL
, NULL
, 248, LOCATE_compiling_base___MMType___default_cvalue
};
1204 static val_t once_value_57
= NIT_NULL
; /* Once value for string variable[4]*/
1205 static val_t once_value_58
= NIT_NULL
; /* Once value for string variable[4]*/
1206 static val_t once_value_59
= NIT_NULL
; /* Once value for string variable[4]*/
1207 static val_t once_value_60
= NIT_NULL
; /* Once value for string variable[3]*/
1209 struct WBT_
**closurevariable
= NULL
;
1210 trace
.prev
= tracehead
; tracehead
= &trace
;
1211 trace
.file
= LOCATE_compiling_base
;
1212 /* Register variable[0]: Local variable */
1214 /* Register variable[1]: Method return value and escape marker */
1215 /* Register variable[2]: Local variable */
1216 /* Register variable[3]: Result */
1217 variable
[3] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1218 /* Register variable[3]: Result */
1219 variable
[3] = CALL_compiling_base___MMLocalClass___primitive_info(variable
[3])(variable
[3]) /*MMLocalClass::primitive_info*/;
1220 variable
[2] = variable
[3];
1221 /* Register variable[3]: Result */
1222 variable
[3] = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable
[2] /*pi*/ == NIT_NULL
/*null*/) || (( variable
[2] /*pi*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[2] /*pi*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[2] /*pi*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[2] /*pi*/)( variable
[2] /*pi*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
1223 /* Ensure var variable[3]: Left 'and' operand*/
1224 if (UNTAG_Bool(variable
[3])) { /* and */
1225 /* Register variable[3]: Result */
1226 variable
[3] = CALL_compiling_base___PrimitiveInfo___tagged( variable
[2] /*pi*/)( variable
[2] /*pi*/) /*PrimitiveInfo::tagged*/;
1228 /* Register variable[3]: Result */
1229 if (UNTAG_Bool(variable
[3])) { /*if*/
1230 variable
[3] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
1231 /* Register variable[4]: Once String constant */
1232 if (once_value_57
!= NIT_NULL
) variable
[4] = once_value_57
;
1234 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("TAG_"), TAG_Int(4)) /*new String*/;
1235 once_value_57
= variable
[4];
1237 /* Register variable[4]: Result */
1238 /* Ensure var variable[4]: super-string element*/
1239 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
1240 /* Register variable[4]: Result */
1241 variable
[4] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1242 /* Register variable[4]: Result */
1243 variable
[4] = CALL_abstractmetamodel___MMLocalClass___name(variable
[4])(variable
[4]) /*MMLocalClass::name*/;
1244 /* Ensure var variable[4]: super-string element*/
1245 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], CALL_string___Object___to_s(variable
[4])(variable
[4]) /*Object::to_s*/) /*AbstractArray::add*/;
1246 /* Register variable[4]: Once String constant */
1247 if (once_value_58
!= NIT_NULL
) variable
[4] = once_value_58
;
1249 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("(("), TAG_Int(2)) /*new String*/;
1250 once_value_58
= variable
[4];
1252 /* Register variable[4]: Result */
1253 /* Ensure var variable[4]: super-string element*/
1254 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
1255 /* Register variable[4]: Result */
1256 variable
[4] = CALL_compiling_base___PrimitiveInfo___cname( variable
[2] /*pi*/)( variable
[2] /*pi*/) /*PrimitiveInfo::cname*/;
1257 /* Ensure var variable[4]: super-string element*/
1258 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
1259 /* Register variable[4]: Once String constant */
1260 if (once_value_59
!= NIT_NULL
) variable
[4] = once_value_59
;
1262 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString(")0)"), TAG_Int(3)) /*new String*/;
1263 once_value_59
= variable
[4];
1265 /* Register variable[4]: Result */
1266 /* Ensure var variable[4]: super-string element*/
1267 CALL_abstract_collection___SimpleCollection___add(variable
[3])(variable
[3], variable
[4]) /*AbstractArray::add*/;
1268 /* Register variable[3]: Result */
1269 variable
[3] = CALL_string___Object___to_s(variable
[3])(variable
[3]) /*Object::to_s*/;
1270 variable
[1] = variable
[3];
1271 goto return_label56
;
1273 /* Register variable[3]: Once String constant */
1274 if (once_value_60
!= NIT_NULL
) variable
[3] = once_value_60
;
1276 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("NIT_NULL"), TAG_Int(8)) /*new String*/;
1277 once_value_60
= variable
[3];
1279 /* Register variable[3]: Result */
1280 variable
[1] = variable
[3];
1281 goto return_label56
;
1283 return_label56
: while(false);
1284 tracehead
= trace
.prev
;
1287 val_t
compiling_base___MMType___boxtype(val_t self
, val_t param0
) {
1288 struct trace_t trace
= {NULL
, NULL
, 260, LOCATE_compiling_base___MMType___boxtype
};
1289 static val_t once_value_62
= NIT_NULL
; /* Once value for string variable[5]*/
1290 static val_t once_value_63
= NIT_NULL
; /* Once value for string variable[5]*/
1291 static val_t once_value_64
= NIT_NULL
; /* Once value for string variable[5]*/
1292 static val_t once_value_65
= NIT_NULL
; /* Once value for string variable[5]*/
1293 static val_t once_value_66
= NIT_NULL
; /* Once value for string variable[5]*/
1294 static val_t once_value_67
= NIT_NULL
; /* Once value for string variable[5]*/
1296 struct WBT_
**closurevariable
= NULL
;
1297 trace
.prev
= tracehead
; tracehead
= &trace
;
1298 trace
.file
= LOCATE_compiling_base
;
1299 /* Register variable[0]: Local variable */
1301 /* Register variable[1]: Local variable */
1302 variable
[1] = param0
;
1303 /* Register variable[2]: Method return value and escape marker */
1304 /* Register variable[3]: Local variable */
1305 /* Register variable[4]: Result */
1306 variable
[4] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1307 /* Register variable[4]: Result */
1308 variable
[4] = CALL_compiling_base___MMLocalClass___primitive_info(variable
[4])(variable
[4]) /*MMLocalClass::primitive_info*/;
1309 variable
[3] = variable
[4];
1310 /* Register variable[4]: Result */
1311 variable
[4] = TAG_Bool(( variable
[3] /*pi*/ == NIT_NULL
/*null*/) || (( variable
[3] /*pi*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[3] /*pi*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[3] /*pi*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[3] /*pi*/)( variable
[3] /*pi*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1312 if (UNTAG_Bool(variable
[4])) { /*if*/
1313 variable
[2] = variable
[1] /*s*/;
1314 goto return_label61
;
1316 /* Register variable[4]: Result */
1317 variable
[4] = CALL_compiling_base___PrimitiveInfo___tagged( variable
[3] /*pi*/)( variable
[3] /*pi*/) /*PrimitiveInfo::tagged*/;
1318 if (UNTAG_Bool(variable
[4])) { /*if*/
1319 variable
[4] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
1320 /* Register variable[5]: Once String constant */
1321 if (once_value_62
!= NIT_NULL
) variable
[5] = once_value_62
;
1323 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("TAG_"), TAG_Int(4)) /*new String*/;
1324 once_value_62
= variable
[5];
1326 /* Register variable[5]: Result */
1327 /* Ensure var variable[5]: super-string element*/
1328 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1329 /* Register variable[5]: Result */
1330 variable
[5] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1331 /* Register variable[5]: Result */
1332 variable
[5] = CALL_abstractmetamodel___MMLocalClass___name(variable
[5])(variable
[5]) /*MMLocalClass::name*/;
1333 /* Ensure var variable[5]: super-string element*/
1334 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], CALL_string___Object___to_s(variable
[5])(variable
[5]) /*Object::to_s*/) /*AbstractArray::add*/;
1335 /* Register variable[5]: Once String constant */
1336 if (once_value_63
!= NIT_NULL
) variable
[5] = once_value_63
;
1338 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
1339 once_value_63
= variable
[5];
1341 /* Register variable[5]: Result */
1342 /* Ensure var variable[5]: super-string element*/
1343 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1344 variable
[5] = variable
[1] /*s*/ /* Ensure var: super-string element*/;
1345 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1346 /* Register variable[5]: Once String constant */
1347 if (once_value_64
!= NIT_NULL
) variable
[5] = once_value_64
;
1349 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)) /*new String*/;
1350 once_value_64
= variable
[5];
1352 /* Register variable[5]: Result */
1353 /* Ensure var variable[5]: super-string element*/
1354 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1355 /* Register variable[4]: Result */
1356 variable
[4] = CALL_string___Object___to_s(variable
[4])(variable
[4]) /*Object::to_s*/;
1357 variable
[2] = variable
[4];
1358 goto return_label61
;
1360 variable
[4] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
1361 /* Register variable[5]: Once String constant */
1362 if (once_value_65
!= NIT_NULL
) variable
[5] = once_value_65
;
1364 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("BOX_"), TAG_Int(4)) /*new String*/;
1365 once_value_65
= variable
[5];
1367 /* Register variable[5]: Result */
1368 /* Ensure var variable[5]: super-string element*/
1369 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1370 /* Register variable[5]: Result */
1371 variable
[5] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1372 /* Register variable[5]: Result */
1373 variable
[5] = CALL_abstractmetamodel___MMLocalClass___name(variable
[5])(variable
[5]) /*MMLocalClass::name*/;
1374 /* Ensure var variable[5]: super-string element*/
1375 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], CALL_string___Object___to_s(variable
[5])(variable
[5]) /*Object::to_s*/) /*AbstractArray::add*/;
1376 /* Register variable[5]: Once String constant */
1377 if (once_value_66
!= NIT_NULL
) variable
[5] = once_value_66
;
1379 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
1380 once_value_66
= variable
[5];
1382 /* Register variable[5]: Result */
1383 /* Ensure var variable[5]: super-string element*/
1384 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1385 variable
[5] = variable
[1] /*s*/ /* Ensure var: super-string element*/;
1386 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1387 /* Register variable[5]: Once String constant */
1388 if (once_value_67
!= NIT_NULL
) variable
[5] = once_value_67
;
1390 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)) /*new String*/;
1391 once_value_67
= variable
[5];
1393 /* Register variable[5]: Result */
1394 /* Ensure var variable[5]: super-string element*/
1395 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1396 /* Register variable[4]: Result */
1397 variable
[4] = CALL_string___Object___to_s(variable
[4])(variable
[4]) /*Object::to_s*/;
1398 variable
[2] = variable
[4];
1399 goto return_label61
;
1402 return_label61
: while(false);
1403 tracehead
= trace
.prev
;
1406 val_t
compiling_base___MMType___unboxtype(val_t self
, val_t param0
) {
1407 struct trace_t trace
= {NULL
, NULL
, 274, LOCATE_compiling_base___MMType___unboxtype
};
1408 static val_t once_value_69
= NIT_NULL
; /* Once value for string variable[5]*/
1409 static val_t once_value_70
= NIT_NULL
; /* Once value for string variable[5]*/
1410 static val_t once_value_71
= NIT_NULL
; /* Once value for string variable[5]*/
1411 static val_t once_value_72
= NIT_NULL
; /* Once value for string variable[5]*/
1412 static val_t once_value_73
= NIT_NULL
; /* Once value for string variable[5]*/
1413 static val_t once_value_74
= NIT_NULL
; /* Once value for string variable[5]*/
1415 struct WBT_
**closurevariable
= NULL
;
1416 trace
.prev
= tracehead
; tracehead
= &trace
;
1417 trace
.file
= LOCATE_compiling_base
;
1418 /* Register variable[0]: Local variable */
1420 /* Register variable[1]: Local variable */
1421 variable
[1] = param0
;
1422 /* Register variable[2]: Method return value and escape marker */
1423 /* Register variable[3]: Local variable */
1424 /* Register variable[4]: Result */
1425 variable
[4] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1426 /* Register variable[4]: Result */
1427 variable
[4] = CALL_compiling_base___MMLocalClass___primitive_info(variable
[4])(variable
[4]) /*MMLocalClass::primitive_info*/;
1428 variable
[3] = variable
[4];
1429 /* Register variable[4]: Result */
1430 variable
[4] = TAG_Bool(( variable
[3] /*pi*/ == NIT_NULL
/*null*/) || (( variable
[3] /*pi*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[3] /*pi*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[3] /*pi*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[3] /*pi*/)( variable
[3] /*pi*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1431 if (UNTAG_Bool(variable
[4])) { /*if*/
1432 variable
[2] = variable
[1] /*s*/;
1433 goto return_label68
;
1435 /* Register variable[4]: Result */
1436 variable
[4] = CALL_compiling_base___PrimitiveInfo___tagged( variable
[3] /*pi*/)( variable
[3] /*pi*/) /*PrimitiveInfo::tagged*/;
1437 if (UNTAG_Bool(variable
[4])) { /*if*/
1438 variable
[4] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
1439 /* Register variable[5]: Once String constant */
1440 if (once_value_69
!= NIT_NULL
) variable
[5] = once_value_69
;
1442 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("UNTAG_"), TAG_Int(6)) /*new String*/;
1443 once_value_69
= variable
[5];
1445 /* Register variable[5]: Result */
1446 /* Ensure var variable[5]: super-string element*/
1447 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1448 /* Register variable[5]: Result */
1449 variable
[5] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1450 /* Register variable[5]: Result */
1451 variable
[5] = CALL_abstractmetamodel___MMLocalClass___name(variable
[5])(variable
[5]) /*MMLocalClass::name*/;
1452 /* Ensure var variable[5]: super-string element*/
1453 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], CALL_string___Object___to_s(variable
[5])(variable
[5]) /*Object::to_s*/) /*AbstractArray::add*/;
1454 /* Register variable[5]: Once String constant */
1455 if (once_value_70
!= NIT_NULL
) variable
[5] = once_value_70
;
1457 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
1458 once_value_70
= variable
[5];
1460 /* Register variable[5]: Result */
1461 /* Ensure var variable[5]: super-string element*/
1462 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1463 variable
[5] = variable
[1] /*s*/ /* Ensure var: super-string element*/;
1464 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1465 /* Register variable[5]: Once String constant */
1466 if (once_value_71
!= NIT_NULL
) variable
[5] = once_value_71
;
1468 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)) /*new String*/;
1469 once_value_71
= variable
[5];
1471 /* Register variable[5]: Result */
1472 /* Ensure var variable[5]: super-string element*/
1473 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1474 /* Register variable[4]: Result */
1475 variable
[4] = CALL_string___Object___to_s(variable
[4])(variable
[4]) /*Object::to_s*/;
1476 variable
[2] = variable
[4];
1477 goto return_label68
;
1479 variable
[4] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
1480 /* Register variable[5]: Once String constant */
1481 if (once_value_72
!= NIT_NULL
) variable
[5] = once_value_72
;
1483 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("UNBOX_"), TAG_Int(6)) /*new String*/;
1484 once_value_72
= variable
[5];
1486 /* Register variable[5]: Result */
1487 /* Ensure var variable[5]: super-string element*/
1488 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1489 /* Register variable[5]: Result */
1490 variable
[5] = CALL_static_type___MMType___local_class(variable
[0])(variable
[0]) /*MMType::local_class*/;
1491 /* Register variable[5]: Result */
1492 variable
[5] = CALL_abstractmetamodel___MMLocalClass___name(variable
[5])(variable
[5]) /*MMLocalClass::name*/;
1493 /* Ensure var variable[5]: super-string element*/
1494 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], CALL_string___Object___to_s(variable
[5])(variable
[5]) /*Object::to_s*/) /*AbstractArray::add*/;
1495 /* Register variable[5]: Once String constant */
1496 if (once_value_73
!= NIT_NULL
) variable
[5] = once_value_73
;
1498 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
1499 once_value_73
= variable
[5];
1501 /* Register variable[5]: Result */
1502 /* Ensure var variable[5]: super-string element*/
1503 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1504 variable
[5] = variable
[1] /*s*/ /* Ensure var: super-string element*/;
1505 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1506 /* Register variable[5]: Once String constant */
1507 if (once_value_74
!= NIT_NULL
) variable
[5] = once_value_74
;
1509 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)) /*new String*/;
1510 once_value_74
= variable
[5];
1512 /* Register variable[5]: Result */
1513 /* Ensure var variable[5]: super-string element*/
1514 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[5]) /*AbstractArray::add*/;
1515 /* Register variable[4]: Result */
1516 variable
[4] = CALL_string___Object___to_s(variable
[4])(variable
[4]) /*Object::to_s*/;
1517 variable
[2] = variable
[4];
1518 goto return_label68
;
1521 return_label68
: while(false);
1522 tracehead
= trace
.prev
;
1525 val_t
compiling_base___MMLocalProperty___cname(val_t self
) {
1526 struct trace_t trace
= {NULL
, NULL
, 293, LOCATE_compiling_base___MMLocalProperty___cname
};
1528 struct WBT_
**closurevariable
= NULL
;
1529 trace
.prev
= tracehead
; tracehead
= &trace
;
1530 trace
.file
= LOCATE_compiling_base
;
1531 /* Register variable[0]: Local variable */
1533 /* Register variable[1]: Method return value and escape marker */
1534 /* Register variable[2]: Result */
1535 variable
[2] = ATTR_compiling_base___MMLocalProperty____cname_cache(variable
[0]) /*MMLocalProperty::_cname_cache*/;
1536 /* Register variable[2]: Result */
1537 variable
[2] = TAG_Bool((variable
[2] == NIT_NULL
/*null*/) || ((variable
[2] != NIT_NULL
) && UNTAG_Bool(CALL_kernel___Object_____eqeq(variable
[2])(variable
[2], NIT_NULL
/*null*/) /*String::==*/)));
1538 if (UNTAG_Bool(variable
[2])) { /*if*/
1539 variable
[2] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[Symbol]*/ /* Ensure var: Literal array*/;
1540 /* Register variable[3]: Result */
1541 variable
[3] = CALL_abstractmetamodel___MMLocalProperty___module(variable
[0])(variable
[0]) /*MMLocalProperty::module*/;
1542 /* Register variable[3]: Result */
1543 variable
[3] = CALL_abstractmetamodel___MMModule___name(variable
[3])(variable
[3]) /*MMModule::name*/;
1544 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
1545 /* Register variable[4]: Result */
1546 variable
[4] = CALL_abstractmetamodel___MMLocalProperty___local_class(variable
[0])(variable
[0]) /*MMLocalProperty::local_class*/;
1547 /* Register variable[4]: Result */
1548 variable
[4] = CALL_abstractmetamodel___MMLocalClass___name(variable
[4])(variable
[4]) /*MMLocalClass::name*/;
1549 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[4]) /*AbstractArray::add*/;
1550 /* Register variable[5]: Result */
1551 variable
[5] = CALL_abstractmetamodel___MMLocalProperty___name(variable
[0])(variable
[0]) /*MMLocalProperty::name*/;
1552 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[5]) /*AbstractArray::add*/;
1553 /* Register variable[2]: Result */
1554 /* Register variable[2]: Result */
1555 variable
[2] = CALL_utils___Object___cmangle(variable
[0])(variable
[0], variable
[2]) /*Object::cmangle*/;
1556 ATTR_compiling_base___MMLocalProperty____cname_cache(variable
[0]) /*MMLocalProperty::_cname_cache*/ = variable
[2];
1558 /* Register variable[2]: Result */
1559 variable
[2] = ATTR_compiling_base___MMLocalProperty____cname_cache(variable
[0]) /*MMLocalProperty::_cname_cache*/;
1560 variable
[1] = variable
[2];
1561 goto return_label75
;
1562 return_label75
: while(false);
1563 tracehead
= trace
.prev
;
1566 val_t
compiling_base___MMLocalProperty___super_meth_call(val_t self
) {
1567 struct trace_t trace
= {NULL
, NULL
, 302, LOCATE_compiling_base___MMLocalProperty___super_meth_call
};
1568 static val_t once_value_77
= NIT_NULL
; /* Once value for string variable[3]*/
1569 static val_t once_value_78
= NIT_NULL
; /* Once value for string variable[3]*/
1571 struct WBT_
**closurevariable
= NULL
;
1572 trace
.prev
= tracehead
; tracehead
= &trace
;
1573 trace
.file
= LOCATE_compiling_base
;
1574 /* Register variable[0]: Local variable */
1576 /* Register variable[1]: Method return value and escape marker */
1577 variable
[2] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
1578 /* Register variable[3]: Once String constant */
1579 if (once_value_77
!= NIT_NULL
) variable
[3] = once_value_77
;
1581 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("CALL_SUPER_"), TAG_Int(11)) /*new String*/;
1582 once_value_77
= variable
[3];
1584 /* Register variable[3]: Result */
1585 /* Ensure var variable[3]: super-string element*/
1586 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
1587 /* Register variable[3]: Result */
1588 variable
[3] = CALL_compiling_base___MMLocalProperty___cname(variable
[0])(variable
[0]) /*MMLocalProperty::cname*/;
1589 /* Ensure var variable[3]: super-string element*/
1590 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
1591 /* Register variable[3]: Once String constant */
1592 if (once_value_78
!= NIT_NULL
) variable
[3] = once_value_78
;
1594 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
1595 once_value_78
= variable
[3];
1597 /* Register variable[3]: Result */
1598 /* Ensure var variable[3]: super-string element*/
1599 CALL_abstract_collection___SimpleCollection___add(variable
[2])(variable
[2], variable
[3]) /*AbstractArray::add*/;
1600 /* Register variable[2]: Result */
1601 variable
[2] = CALL_string___Object___to_s(variable
[2])(variable
[2]) /*Object::to_s*/;
1602 variable
[1] = variable
[2];
1603 goto return_label76
;
1604 return_label76
: while(false);
1605 tracehead
= trace
.prev
;