niti: add extern `file_realpath`
[nit.git] / c_src / nitg.classes.10.c
1 #include "nitg.classes.0.h"
2 /* runtime class array__ArrayMap */
3 const struct class class_array__ArrayMap = {
4 0, /* box_kind */
5 {
6 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to array:ArrayMap:kernel#Object#object_id */
7 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to array:ArrayMap:kernel#Object#is_same_type */
8 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to array:ArrayMap:kernel#Object#is_same_instance */
9 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to array:ArrayMap:kernel#Object#== */
10 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to array:ArrayMap:kernel#Object#!= */
11 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to array:ArrayMap:kernel#Object#output */
12 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to array:ArrayMap:kernel#Object#output_class_name */
13 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to array:ArrayMap:kernel#Object#exit */
14 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to array:ArrayMap:kernel#Object#sys */
15 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to array:ArrayMap:kernel#Object#hash */
16 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to array:ArrayMap:string#Object#to_s */
17 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to array:ArrayMap:string#Object#native_class_name */
18 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to array:ArrayMap:string#Object#class_name */
19 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to array:ArrayMap:string#Object#inspect */
20 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to array:ArrayMap:string#Object#inspect_head */
21 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to array:ArrayMap:string#Object#args */
22 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to array:ArrayMap:math#Object#atan2 */
23 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to array:ArrayMap:math#Object#pi */
24 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to array:ArrayMap:math#Object#srand_from */
25 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to array:ArrayMap:math#Object#srand */
26 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to array:ArrayMap:stream#Object#poll */
27 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to array:ArrayMap:stream#Object#intern_poll */
28 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to array:ArrayMap:time#Object#get_time */
29 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to array:ArrayMap:file#Object#printn */
30 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to array:ArrayMap:file#Object#print */
31 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to array:ArrayMap:file#Object#getc */
32 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to array:ArrayMap:file#Object#gets */
33 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to array:ArrayMap:file#Object#getcwd */
34 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to array:ArrayMap:file#Object#file_getcwd */
35 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to array:ArrayMap:file#Object#stdin */
36 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to array:ArrayMap:file#Object#stdout */
37 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to array:ArrayMap:file#Object#stderr */
38 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to array:ArrayMap:model_base#Object#intrude_visibility */
39 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to array:ArrayMap:model_base#Object#public_visibility */
40 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to array:ArrayMap:model_base#Object#protected_visibility */
41 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to array:ArrayMap:model_base#Object#private_visibility */
42 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to array:ArrayMap:model_base#Object#none_visibility */
43 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to array:ArrayMap:model#Object#abstract_kind */
44 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to array:ArrayMap:model#Object#concrete_kind */
45 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to array:ArrayMap:model#Object#interface_kind */
46 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to array:ArrayMap:model#Object#enum_kind */
47 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to array:ArrayMap:model#Object#extern_kind */
48 (nitmethod_t)VIRTUAL_array__ArrayMap___91d_93d, /* pointer to array:ArrayMap:array#ArrayMap#[] */
49 (nitmethod_t)VIRTUAL_abstract_collection__MapRead__get_or_default, /* pointer to array:ArrayMap:abstract_collection#MapRead#get_or_default */
50 (nitmethod_t)VIRTUAL_abstract_collection__MapRead__has_key, /* pointer to array:ArrayMap:abstract_collection#MapRead#has_key */
51 (nitmethod_t)VIRTUAL_array__ArrayMap__iterator, /* pointer to array:ArrayMap:array#ArrayMap#iterator */
52 (nitmethod_t)VIRTUAL_array__ArrayMap__values, /* pointer to array:ArrayMap:array#ArrayMap#values */
53 (nitmethod_t)VIRTUAL_array__ArrayMap__keys, /* pointer to array:ArrayMap:array#ArrayMap#keys */
54 (nitmethod_t)VIRTUAL_array__ArrayMap__is_empty, /* pointer to array:ArrayMap:array#ArrayMap#is_empty */
55 (nitmethod_t)VIRTUAL_array__ArrayMap__length, /* pointer to array:ArrayMap:array#ArrayMap#length */
56 (nitmethod_t)VIRTUAL_array__ArrayMap___91d_93d_61d, /* pointer to array:ArrayMap:array#ArrayMap#[]= */
57 (nitmethod_t)VIRTUAL_abstract_collection__Map__recover_with, /* pointer to array:ArrayMap:abstract_collection#Map#recover_with */
58 (nitmethod_t)VIRTUAL_array__ArrayMap__clear, /* pointer to array:ArrayMap:array#ArrayMap#clear */
59 (nitmethod_t)VIRTUAL_string__Map__join, /* pointer to array:ArrayMap:string#Map#join */
60 (nitmethod_t)VIRTUAL_array__ArrayMap__couple_at, /* pointer to array:ArrayMap:array#ArrayMap#couple_at */
61 (nitmethod_t)VIRTUAL_array__ArrayMap__keys_61d, /* pointer to array:ArrayMap:array#ArrayMap#keys= */
62 (nitmethod_t)VIRTUAL_array__ArrayMap__values_61d, /* pointer to array:ArrayMap:array#ArrayMap#values= */
63 (nitmethod_t)VIRTUAL_array__ArrayMap__enlarge, /* pointer to array:ArrayMap:array#ArrayMap#enlarge */
64 (nitmethod_t)VIRTUAL_array__ArrayMap__remove_at_index, /* pointer to array:ArrayMap:array#ArrayMap#remove_at_index */
65 (nitmethod_t)VIRTUAL_array__ArrayMap__index, /* pointer to array:ArrayMap:array#ArrayMap#index */
66 (nitmethod_t)VIRTUAL_array__ArrayMap__init, /* pointer to array:ArrayMap:array#ArrayMap#init */
67 }
68 };
69 /* allocate ArrayMap[Object, nullable Object] */
70 val* NEW_array__ArrayMap(const struct type* type) {
71 val* self /* : ArrayMap[Object, nullable Object] */;
72 val* var /* : ArrayMapKeys[Object, nullable Object] */;
73 val* var1 /* : ArrayMapValues[Object, nullable Object] */;
74 long var2 /* : Int */;
75 self = nit_alloc(sizeof(struct instance) + 4*sizeof(nitattribute_t));
76 self->type = type;
77 self->class = &class_array__ArrayMap;
78 var = NEW_array__ArrayMapKeys(self->type->resolution_table->types[COLOR_array__ArrayMapKeysarray__ArrayMap_FT0array__ArrayMap_FT1]);
79 ((void (*)(val*, val*))(var->class->vft[COLOR_array__ArrayMapKeys__init]))(var, self) /* init on <var:ArrayMapKeys[Object, nullable Object]>*/;
80 CHECK_NEW_array__ArrayMapKeys(var);
81 self->attrs[COLOR_array__ArrayMap___64dkeys].val = var; /* @keys on <self:ArrayMap[Object, nullable Object] exact> */
82 var1 = NEW_array__ArrayMapValues(self->type->resolution_table->types[COLOR_array__ArrayMapValuesarray__ArrayMap_FT0array__ArrayMap_FT1]);
83 ((void (*)(val*, val*))(var1->class->vft[COLOR_array__ArrayMapValues__init]))(var1, self) /* init on <var1:ArrayMapValues[Object, nullable Object]>*/;
84 CHECK_NEW_array__ArrayMapValues(var1);
85 self->attrs[COLOR_array__ArrayMap___64dvalues].val = var1; /* @values on <self:ArrayMap[Object, nullable Object] exact> */
86 var2 = 0;
87 self->attrs[COLOR_array__ArrayMap___last_index].l = var2; /* _last_index on <self:ArrayMap[Object, nullable Object] exact> */
88 return self;
89 }
90 /* allocate ArrayMap[Object, nullable Object] */
91 void CHECK_NEW_array__ArrayMap(val* self) {
92 val* var /* : Array[Couple[Object, nullable Object]] */;
93 var = self->attrs[COLOR_array__ArrayMap___items].val; /* _items on <self:ArrayMap[Object, nullable Object]> */
94 if (var == NULL) {
95 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _items");
96 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/array.nit", 496);
97 exit(1);
98 }
99 }
100 /* runtime class array__ArrayMapKeys */
101 const struct class class_array__ArrayMapKeys = {
102 0, /* box_kind */
103 {
104 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to array:ArrayMapKeys:kernel#Object#object_id */
105 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to array:ArrayMapKeys:kernel#Object#is_same_type */
106 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to array:ArrayMapKeys:kernel#Object#is_same_instance */
107 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to array:ArrayMapKeys:kernel#Object#== */
108 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to array:ArrayMapKeys:kernel#Object#!= */
109 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to array:ArrayMapKeys:kernel#Object#output */
110 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to array:ArrayMapKeys:kernel#Object#output_class_name */
111 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to array:ArrayMapKeys:kernel#Object#exit */
112 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to array:ArrayMapKeys:kernel#Object#sys */
113 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to array:ArrayMapKeys:kernel#Object#hash */
114 (nitmethod_t)VIRTUAL_string__Collection__to_s, /* pointer to array:ArrayMapKeys:string#Collection#to_s */
115 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to array:ArrayMapKeys:string#Object#native_class_name */
116 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to array:ArrayMapKeys:string#Object#class_name */
117 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to array:ArrayMapKeys:string#Object#inspect */
118 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to array:ArrayMapKeys:string#Object#inspect_head */
119 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to array:ArrayMapKeys:string#Object#args */
120 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to array:ArrayMapKeys:math#Object#atan2 */
121 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to array:ArrayMapKeys:math#Object#pi */
122 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to array:ArrayMapKeys:math#Object#srand_from */
123 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to array:ArrayMapKeys:math#Object#srand */
124 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to array:ArrayMapKeys:stream#Object#poll */
125 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to array:ArrayMapKeys:stream#Object#intern_poll */
126 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to array:ArrayMapKeys:time#Object#get_time */
127 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to array:ArrayMapKeys:file#Object#printn */
128 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to array:ArrayMapKeys:file#Object#print */
129 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to array:ArrayMapKeys:file#Object#getc */
130 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to array:ArrayMapKeys:file#Object#gets */
131 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to array:ArrayMapKeys:file#Object#getcwd */
132 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to array:ArrayMapKeys:file#Object#file_getcwd */
133 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to array:ArrayMapKeys:file#Object#stdin */
134 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to array:ArrayMapKeys:file#Object#stdout */
135 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to array:ArrayMapKeys:file#Object#stderr */
136 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to array:ArrayMapKeys:model_base#Object#intrude_visibility */
137 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to array:ArrayMapKeys:model_base#Object#public_visibility */
138 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to array:ArrayMapKeys:model_base#Object#protected_visibility */
139 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to array:ArrayMapKeys:model_base#Object#private_visibility */
140 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to array:ArrayMapKeys:model_base#Object#none_visibility */
141 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to array:ArrayMapKeys:model#Object#abstract_kind */
142 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to array:ArrayMapKeys:model#Object#concrete_kind */
143 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to array:ArrayMapKeys:model#Object#interface_kind */
144 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to array:ArrayMapKeys:model#Object#enum_kind */
145 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to array:ArrayMapKeys:model#Object#extern_kind */
146 NULL, /* empty */
147 NULL, /* empty */
148 NULL, /* empty */
149 NULL, /* empty */
150 NULL, /* empty */
151 NULL, /* empty */
152 NULL, /* empty */
153 NULL, /* empty */
154 NULL, /* empty */
155 NULL, /* empty */
156 NULL, /* empty */
157 NULL, /* empty */
158 NULL, /* empty */
159 NULL, /* empty */
160 NULL, /* empty */
161 NULL, /* empty */
162 NULL, /* empty */
163 NULL, /* empty */
164 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__iterator, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#iterator */
165 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__is_empty, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#is_empty */
166 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__length, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#length */
167 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__has, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#has */
168 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__has_only, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#has_only */
169 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__count, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#count */
170 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__first, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#first */
171 (nitmethod_t)VIRTUAL_abstract_collection__Collection__has_all, /* pointer to array:ArrayMapKeys:abstract_collection#Collection#has_all */
172 (nitmethod_t)VIRTUAL_array__Collection__to_a, /* pointer to array:ArrayMapKeys:array#Collection#to_a */
173 (nitmethod_t)VIRTUAL_string__Collection__join, /* pointer to array:ArrayMapKeys:string#Collection#join */
174 (nitmethod_t)VIRTUAL_math__Collection__rand, /* pointer to array:ArrayMapKeys:math#Collection#rand */
175 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__clear, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#clear */
176 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__remove, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#remove */
177 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__remove_all, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#remove_all */
178 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__map, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#map */
179 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__map_61d, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#map= */
180 (nitmethod_t)VIRTUAL_array__ArrayMapKeys__init, /* pointer to array:ArrayMapKeys:array#ArrayMapKeys#init */
181 }
182 };
183 /* allocate ArrayMapKeys[Object, nullable Object] */
184 val* NEW_array__ArrayMapKeys(const struct type* type) {
185 val* self /* : ArrayMapKeys[Object, nullable Object] */;
186 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
187 self->type = type;
188 self->class = &class_array__ArrayMapKeys;
189 return self;
190 }
191 /* allocate ArrayMapKeys[Object, nullable Object] */
192 void CHECK_NEW_array__ArrayMapKeys(val* self) {
193 val* var /* : ArrayMap[Object, nullable Object] */;
194 var = self->attrs[COLOR_array__ArrayMapKeys___64dmap].val; /* @map on <self:ArrayMapKeys[Object, nullable Object]> */
195 if (var == NULL) {
196 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @map");
197 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/array.nit", 536);
198 exit(1);
199 }
200 }
201 /* runtime class array__ArrayMapValues */
202 const struct class class_array__ArrayMapValues = {
203 0, /* box_kind */
204 {
205 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to array:ArrayMapValues:kernel#Object#object_id */
206 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to array:ArrayMapValues:kernel#Object#is_same_type */
207 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to array:ArrayMapValues:kernel#Object#is_same_instance */
208 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to array:ArrayMapValues:kernel#Object#== */
209 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to array:ArrayMapValues:kernel#Object#!= */
210 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to array:ArrayMapValues:kernel#Object#output */
211 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to array:ArrayMapValues:kernel#Object#output_class_name */
212 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to array:ArrayMapValues:kernel#Object#exit */
213 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to array:ArrayMapValues:kernel#Object#sys */
214 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to array:ArrayMapValues:kernel#Object#hash */
215 (nitmethod_t)VIRTUAL_string__Collection__to_s, /* pointer to array:ArrayMapValues:string#Collection#to_s */
216 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to array:ArrayMapValues:string#Object#native_class_name */
217 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to array:ArrayMapValues:string#Object#class_name */
218 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to array:ArrayMapValues:string#Object#inspect */
219 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to array:ArrayMapValues:string#Object#inspect_head */
220 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to array:ArrayMapValues:string#Object#args */
221 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to array:ArrayMapValues:math#Object#atan2 */
222 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to array:ArrayMapValues:math#Object#pi */
223 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to array:ArrayMapValues:math#Object#srand_from */
224 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to array:ArrayMapValues:math#Object#srand */
225 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to array:ArrayMapValues:stream#Object#poll */
226 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to array:ArrayMapValues:stream#Object#intern_poll */
227 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to array:ArrayMapValues:time#Object#get_time */
228 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to array:ArrayMapValues:file#Object#printn */
229 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to array:ArrayMapValues:file#Object#print */
230 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to array:ArrayMapValues:file#Object#getc */
231 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to array:ArrayMapValues:file#Object#gets */
232 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to array:ArrayMapValues:file#Object#getcwd */
233 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to array:ArrayMapValues:file#Object#file_getcwd */
234 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to array:ArrayMapValues:file#Object#stdin */
235 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to array:ArrayMapValues:file#Object#stdout */
236 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to array:ArrayMapValues:file#Object#stderr */
237 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to array:ArrayMapValues:model_base#Object#intrude_visibility */
238 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to array:ArrayMapValues:model_base#Object#public_visibility */
239 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to array:ArrayMapValues:model_base#Object#protected_visibility */
240 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to array:ArrayMapValues:model_base#Object#private_visibility */
241 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to array:ArrayMapValues:model_base#Object#none_visibility */
242 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to array:ArrayMapValues:model#Object#abstract_kind */
243 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to array:ArrayMapValues:model#Object#concrete_kind */
244 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to array:ArrayMapValues:model#Object#interface_kind */
245 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to array:ArrayMapValues:model#Object#enum_kind */
246 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to array:ArrayMapValues:model#Object#extern_kind */
247 NULL, /* empty */
248 NULL, /* empty */
249 NULL, /* empty */
250 NULL, /* empty */
251 NULL, /* empty */
252 NULL, /* empty */
253 NULL, /* empty */
254 NULL, /* empty */
255 NULL, /* empty */
256 NULL, /* empty */
257 NULL, /* empty */
258 NULL, /* empty */
259 NULL, /* empty */
260 NULL, /* empty */
261 NULL, /* empty */
262 NULL, /* empty */
263 NULL, /* empty */
264 NULL, /* empty */
265 (nitmethod_t)VIRTUAL_array__ArrayMapValues__iterator, /* pointer to array:ArrayMapValues:array#ArrayMapValues#iterator */
266 (nitmethod_t)VIRTUAL_array__ArrayMapValues__is_empty, /* pointer to array:ArrayMapValues:array#ArrayMapValues#is_empty */
267 (nitmethod_t)VIRTUAL_array__ArrayMapValues__length, /* pointer to array:ArrayMapValues:array#ArrayMapValues#length */
268 (nitmethod_t)VIRTUAL_array__ArrayMapValues__has, /* pointer to array:ArrayMapValues:array#ArrayMapValues#has */
269 (nitmethod_t)VIRTUAL_array__ArrayMapValues__has_only, /* pointer to array:ArrayMapValues:array#ArrayMapValues#has_only */
270 (nitmethod_t)VIRTUAL_array__ArrayMapValues__count, /* pointer to array:ArrayMapValues:array#ArrayMapValues#count */
271 (nitmethod_t)VIRTUAL_array__ArrayMapValues__first, /* pointer to array:ArrayMapValues:array#ArrayMapValues#first */
272 (nitmethod_t)VIRTUAL_abstract_collection__Collection__has_all, /* pointer to array:ArrayMapValues:abstract_collection#Collection#has_all */
273 (nitmethod_t)VIRTUAL_array__Collection__to_a, /* pointer to array:ArrayMapValues:array#Collection#to_a */
274 (nitmethod_t)VIRTUAL_string__Collection__join, /* pointer to array:ArrayMapValues:string#Collection#join */
275 (nitmethod_t)VIRTUAL_math__Collection__rand, /* pointer to array:ArrayMapValues:math#Collection#rand */
276 (nitmethod_t)VIRTUAL_array__ArrayMapValues__clear, /* pointer to array:ArrayMapValues:array#ArrayMapValues#clear */
277 (nitmethod_t)VIRTUAL_array__ArrayMapValues__remove, /* pointer to array:ArrayMapValues:array#ArrayMapValues#remove */
278 (nitmethod_t)VIRTUAL_array__ArrayMapValues__remove_all, /* pointer to array:ArrayMapValues:array#ArrayMapValues#remove_all */
279 (nitmethod_t)VIRTUAL_array__ArrayMapValues__map, /* pointer to array:ArrayMapValues:array#ArrayMapValues#map */
280 (nitmethod_t)VIRTUAL_array__ArrayMapValues__map_61d, /* pointer to array:ArrayMapValues:array#ArrayMapValues#map= */
281 (nitmethod_t)VIRTUAL_array__ArrayMapValues__init, /* pointer to array:ArrayMapValues:array#ArrayMapValues#init */
282 }
283 };
284 /* allocate ArrayMapValues[Object, nullable Object] */
285 val* NEW_array__ArrayMapValues(const struct type* type) {
286 val* self /* : ArrayMapValues[Object, nullable Object] */;
287 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
288 self->type = type;
289 self->class = &class_array__ArrayMapValues;
290 return self;
291 }
292 /* allocate ArrayMapValues[Object, nullable Object] */
293 void CHECK_NEW_array__ArrayMapValues(val* self) {
294 val* var /* : ArrayMap[Object, nullable Object] */;
295 var = self->attrs[COLOR_array__ArrayMapValues___64dmap].val; /* @map on <self:ArrayMapValues[Object, nullable Object]> */
296 if (var == NULL) {
297 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @map");
298 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/array.nit", 556);
299 exit(1);
300 }
301 }
302 /* runtime class array__NativeArray */
303 const struct class class_array__NativeArray = {
304 0, /* box_kind */
305 {
306 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to array:NativeArray:kernel#Object#object_id */
307 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to array:NativeArray:kernel#Object#is_same_type */
308 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to array:NativeArray:kernel#Object#is_same_instance */
309 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to array:NativeArray:kernel#Object#== */
310 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to array:NativeArray:kernel#Object#!= */
311 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to array:NativeArray:kernel#Object#output */
312 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to array:NativeArray:kernel#Object#output_class_name */
313 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to array:NativeArray:kernel#Object#exit */
314 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to array:NativeArray:kernel#Object#sys */
315 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to array:NativeArray:kernel#Object#hash */
316 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to array:NativeArray:string#Object#to_s */
317 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to array:NativeArray:string#Object#native_class_name */
318 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to array:NativeArray:string#Object#class_name */
319 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to array:NativeArray:string#Object#inspect */
320 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to array:NativeArray:string#Object#inspect_head */
321 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to array:NativeArray:string#Object#args */
322 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to array:NativeArray:math#Object#atan2 */
323 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to array:NativeArray:math#Object#pi */
324 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to array:NativeArray:math#Object#srand_from */
325 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to array:NativeArray:math#Object#srand */
326 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to array:NativeArray:stream#Object#poll */
327 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to array:NativeArray:stream#Object#intern_poll */
328 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to array:NativeArray:time#Object#get_time */
329 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to array:NativeArray:file#Object#printn */
330 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to array:NativeArray:file#Object#print */
331 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to array:NativeArray:file#Object#getc */
332 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to array:NativeArray:file#Object#gets */
333 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to array:NativeArray:file#Object#getcwd */
334 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to array:NativeArray:file#Object#file_getcwd */
335 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to array:NativeArray:file#Object#stdin */
336 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to array:NativeArray:file#Object#stdout */
337 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to array:NativeArray:file#Object#stderr */
338 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to array:NativeArray:model_base#Object#intrude_visibility */
339 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to array:NativeArray:model_base#Object#public_visibility */
340 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to array:NativeArray:model_base#Object#protected_visibility */
341 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to array:NativeArray:model_base#Object#private_visibility */
342 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to array:NativeArray:model_base#Object#none_visibility */
343 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to array:NativeArray:model#Object#abstract_kind */
344 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to array:NativeArray:model#Object#concrete_kind */
345 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to array:NativeArray:model#Object#interface_kind */
346 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to array:NativeArray:model#Object#enum_kind */
347 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to array:NativeArray:model#Object#extern_kind */
348 (nitmethod_t)VIRTUAL_array__NativeArray___91d_93d, /* pointer to array:NativeArray:array#NativeArray#[] */
349 (nitmethod_t)VIRTUAL_array__NativeArray___91d_93d_61d, /* pointer to array:NativeArray:array#NativeArray#[]= */
350 (nitmethod_t)VIRTUAL_array__NativeArray__copy_to, /* pointer to array:NativeArray:array#NativeArray#copy_to */
351 }
352 };
353 /* allocate NativeArray[nullable Object] */
354 val* NEW_array__NativeArray(int length, const struct type* type) {
355 val* self /* : NativeArray[nullable Object] */;
356 self = nit_alloc(sizeof(struct instance_array__NativeArray) + length*sizeof(val*));
357 self->type = type;
358 self->class = &class_array__NativeArray;
359 return self;
360 }
361 /* runtime class sorter__ComparableSorter */
362 const struct class class_sorter__ComparableSorter = {
363 0, /* box_kind */
364 {
365 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to sorter:ComparableSorter:kernel#Object#object_id */
366 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to sorter:ComparableSorter:kernel#Object#is_same_type */
367 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to sorter:ComparableSorter:kernel#Object#is_same_instance */
368 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to sorter:ComparableSorter:kernel#Object#== */
369 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to sorter:ComparableSorter:kernel#Object#!= */
370 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to sorter:ComparableSorter:kernel#Object#output */
371 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to sorter:ComparableSorter:kernel#Object#output_class_name */
372 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to sorter:ComparableSorter:kernel#Object#exit */
373 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to sorter:ComparableSorter:kernel#Object#sys */
374 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to sorter:ComparableSorter:kernel#Object#hash */
375 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to sorter:ComparableSorter:string#Object#to_s */
376 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to sorter:ComparableSorter:string#Object#native_class_name */
377 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to sorter:ComparableSorter:string#Object#class_name */
378 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to sorter:ComparableSorter:string#Object#inspect */
379 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to sorter:ComparableSorter:string#Object#inspect_head */
380 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to sorter:ComparableSorter:string#Object#args */
381 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to sorter:ComparableSorter:math#Object#atan2 */
382 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to sorter:ComparableSorter:math#Object#pi */
383 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to sorter:ComparableSorter:math#Object#srand_from */
384 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to sorter:ComparableSorter:math#Object#srand */
385 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to sorter:ComparableSorter:stream#Object#poll */
386 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to sorter:ComparableSorter:stream#Object#intern_poll */
387 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to sorter:ComparableSorter:time#Object#get_time */
388 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to sorter:ComparableSorter:file#Object#printn */
389 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to sorter:ComparableSorter:file#Object#print */
390 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to sorter:ComparableSorter:file#Object#getc */
391 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to sorter:ComparableSorter:file#Object#gets */
392 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to sorter:ComparableSorter:file#Object#getcwd */
393 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to sorter:ComparableSorter:file#Object#file_getcwd */
394 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to sorter:ComparableSorter:file#Object#stdin */
395 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to sorter:ComparableSorter:file#Object#stdout */
396 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to sorter:ComparableSorter:file#Object#stderr */
397 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to sorter:ComparableSorter:model_base#Object#intrude_visibility */
398 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to sorter:ComparableSorter:model_base#Object#public_visibility */
399 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to sorter:ComparableSorter:model_base#Object#protected_visibility */
400 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to sorter:ComparableSorter:model_base#Object#private_visibility */
401 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to sorter:ComparableSorter:model_base#Object#none_visibility */
402 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to sorter:ComparableSorter:model#Object#abstract_kind */
403 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to sorter:ComparableSorter:model#Object#concrete_kind */
404 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to sorter:ComparableSorter:model#Object#interface_kind */
405 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to sorter:ComparableSorter:model#Object#enum_kind */
406 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to sorter:ComparableSorter:model#Object#extern_kind */
407 NULL, /* empty */
408 NULL, /* empty */
409 NULL, /* empty */
410 NULL, /* empty */
411 NULL, /* empty */
412 NULL, /* empty */
413 NULL, /* empty */
414 NULL, /* empty */
415 NULL, /* empty */
416 NULL, /* empty */
417 NULL, /* empty */
418 NULL, /* empty */
419 NULL, /* empty */
420 NULL, /* empty */
421 NULL, /* empty */
422 NULL, /* empty */
423 NULL, /* empty */
424 NULL, /* empty */
425 NULL, /* empty */
426 NULL, /* empty */
427 NULL, /* empty */
428 NULL, /* empty */
429 NULL, /* empty */
430 NULL, /* empty */
431 NULL, /* empty */
432 NULL, /* empty */
433 NULL, /* empty */
434 NULL, /* empty */
435 NULL, /* empty */
436 (nitmethod_t)VIRTUAL_sorter__ComparableSorter__compare, /* pointer to sorter:ComparableSorter:sorter#ComparableSorter#compare */
437 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sort, /* pointer to sorter:ComparableSorter:sorter#AbstractSorter#sort */
438 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sub_sort, /* pointer to sorter:ComparableSorter:sorter#AbstractSorter#sub_sort */
439 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__quick_sort, /* pointer to sorter:ComparableSorter:sorter#AbstractSorter#quick_sort */
440 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__bubble_sort, /* pointer to sorter:ComparableSorter:sorter#AbstractSorter#bubble_sort */
441 (nitmethod_t)VIRTUAL_sorter__ComparableSorter__init, /* pointer to sorter:ComparableSorter:sorter#ComparableSorter#init */
442 }
443 };
444 /* allocate ComparableSorter[Comparable] */
445 val* NEW_sorter__ComparableSorter(const struct type* type) {
446 val* self /* : ComparableSorter[Comparable] */;
447 self = nit_alloc(sizeof(struct instance) + 0*sizeof(nitattribute_t));
448 self->type = type;
449 self->class = &class_sorter__ComparableSorter;
450 return self;
451 }
452 /* allocate ComparableSorter[Comparable] */
453 void CHECK_NEW_sorter__ComparableSorter(val* self) {
454 }
455 /* runtime class hash_collection__HashMap */
456 const struct class class_hash_collection__HashMap = {
457 0, /* box_kind */
458 {
459 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashMap:kernel#Object#object_id */
460 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashMap:kernel#Object#is_same_type */
461 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashMap:kernel#Object#is_same_instance */
462 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to hash_collection:HashMap:kernel#Object#== */
463 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashMap:kernel#Object#!= */
464 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashMap:kernel#Object#output */
465 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashMap:kernel#Object#output_class_name */
466 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashMap:kernel#Object#exit */
467 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashMap:kernel#Object#sys */
468 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to hash_collection:HashMap:kernel#Object#hash */
469 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to hash_collection:HashMap:string#Object#to_s */
470 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashMap:string#Object#native_class_name */
471 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashMap:string#Object#class_name */
472 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashMap:string#Object#inspect */
473 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashMap:string#Object#inspect_head */
474 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashMap:string#Object#args */
475 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashMap:math#Object#atan2 */
476 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashMap:math#Object#pi */
477 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashMap:math#Object#srand_from */
478 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashMap:math#Object#srand */
479 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashMap:stream#Object#poll */
480 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashMap:stream#Object#intern_poll */
481 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashMap:time#Object#get_time */
482 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashMap:file#Object#printn */
483 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashMap:file#Object#print */
484 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashMap:file#Object#getc */
485 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashMap:file#Object#gets */
486 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashMap:file#Object#getcwd */
487 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashMap:file#Object#file_getcwd */
488 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashMap:file#Object#stdin */
489 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashMap:file#Object#stdout */
490 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashMap:file#Object#stderr */
491 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashMap:model_base#Object#intrude_visibility */
492 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashMap:model_base#Object#public_visibility */
493 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashMap:model_base#Object#protected_visibility */
494 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashMap:model_base#Object#private_visibility */
495 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashMap:model_base#Object#none_visibility */
496 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashMap:model#Object#abstract_kind */
497 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashMap:model#Object#concrete_kind */
498 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashMap:model#Object#interface_kind */
499 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashMap:model#Object#enum_kind */
500 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashMap:model#Object#extern_kind */
501 (nitmethod_t)VIRTUAL_hash_collection__HashMap___91d_93d, /* pointer to hash_collection:HashMap:hash_collection#HashMap#[] */
502 (nitmethod_t)VIRTUAL_abstract_collection__MapRead__get_or_default, /* pointer to hash_collection:HashMap:abstract_collection#MapRead#get_or_default */
503 (nitmethod_t)VIRTUAL_abstract_collection__MapRead__has_key, /* pointer to hash_collection:HashMap:abstract_collection#MapRead#has_key */
504 (nitmethod_t)VIRTUAL_hash_collection__HashMap__iterator, /* pointer to hash_collection:HashMap:hash_collection#HashMap#iterator */
505 (nitmethod_t)VIRTUAL_hash_collection__HashMap__values, /* pointer to hash_collection:HashMap:hash_collection#HashMap#values */
506 (nitmethod_t)VIRTUAL_hash_collection__HashMap__keys, /* pointer to hash_collection:HashMap:hash_collection#HashMap#keys */
507 (nitmethod_t)VIRTUAL_hash_collection__HashMap__is_empty, /* pointer to hash_collection:HashMap:hash_collection#HashMap#is_empty */
508 (nitmethod_t)VIRTUAL_hash_collection__HashMap__length, /* pointer to hash_collection:HashMap:hash_collection#HashMap#length */
509 (nitmethod_t)VIRTUAL_hash_collection__HashMap___91d_93d_61d, /* pointer to hash_collection:HashMap:hash_collection#HashMap#[]= */
510 (nitmethod_t)VIRTUAL_abstract_collection__Map__recover_with, /* pointer to hash_collection:HashMap:abstract_collection#Map#recover_with */
511 (nitmethod_t)VIRTUAL_hash_collection__HashMap__clear, /* pointer to hash_collection:HashMap:hash_collection#HashMap#clear */
512 (nitmethod_t)VIRTUAL_string__Map__join, /* pointer to hash_collection:HashMap:string#Map#join */
513 NULL, /* empty */
514 NULL, /* empty */
515 NULL, /* empty */
516 NULL, /* empty */
517 NULL, /* empty */
518 NULL, /* empty */
519 NULL, /* empty */
520 NULL, /* empty */
521 NULL, /* empty */
522 NULL, /* empty */
523 NULL, /* empty */
524 NULL, /* empty */
525 NULL, /* empty */
526 NULL, /* empty */
527 NULL, /* empty */
528 NULL, /* empty */
529 NULL, /* empty */
530 NULL, /* empty */
531 NULL, /* empty */
532 NULL, /* empty */
533 NULL, /* empty */
534 NULL, /* empty */
535 NULL, /* empty */
536 NULL, /* empty */
537 NULL, /* empty */
538 NULL, /* empty */
539 NULL, /* empty */
540 NULL, /* empty */
541 NULL, /* empty */
542 NULL, /* empty */
543 NULL, /* empty */
544 NULL, /* empty */
545 NULL, /* empty */
546 NULL, /* empty */
547 NULL, /* empty */
548 NULL, /* empty */
549 NULL, /* empty */
550 NULL, /* empty */
551 NULL, /* empty */
552 NULL, /* empty */
553 NULL, /* empty */
554 NULL, /* empty */
555 NULL, /* empty */
556 NULL, /* empty */
557 NULL, /* empty */
558 (nitmethod_t)VIRTUAL_array__ArrayCapable__calloc_array, /* pointer to hash_collection:HashMap:array#ArrayCapable#calloc_array */
559 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__first_item, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#first_item */
560 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__index_at, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#index_at */
561 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__node_at, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#node_at */
562 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__node_at_idx, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#node_at_idx */
563 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__store, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#store */
564 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__remove_node, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#remove_node */
565 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__raz, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#raz */
566 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__enlarge, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#enlarge */
567 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__init, /* pointer to hash_collection:HashMap:hash_collection#HashCollection#init */
568 (nitmethod_t)VIRTUAL_hash_collection__HashMap__init, /* pointer to hash_collection:HashMap:hash_collection#HashMap#init */
569 (nitmethod_t)VIRTUAL_hash_collection__HashMap__keys_61d, /* pointer to hash_collection:HashMap:hash_collection#HashMap#keys= */
570 (nitmethod_t)VIRTUAL_hash_collection__HashMap__values_61d, /* pointer to hash_collection:HashMap:hash_collection#HashMap#values= */
571 }
572 };
573 /* allocate HashMap[Object, nullable Object] */
574 val* NEW_hash_collection__HashMap(const struct type* type) {
575 val* self /* : HashMap[Object, nullable Object] */;
576 val* var /* : null */;
577 long var1 /* : Int */;
578 long var2 /* : Int */;
579 val* var3 /* : null */;
580 val* var4 /* : null */;
581 val* var5 /* : null */;
582 val* var6 /* : null */;
583 val* var7 /* : HashMapKeys[Object, nullable Object] */;
584 val* var8 /* : HashMapValues[Object, nullable Object] */;
585 self = nit_alloc(sizeof(struct instance) + 9*sizeof(nitattribute_t));
586 self->type = type;
587 self->class = &class_hash_collection__HashMap;
588 var = NULL;
589 self->attrs[COLOR_hash_collection__HashCollection___array].val = var; /* _array on <self:HashMap[Object, nullable Object] exact> */
590 var1 = 0;
591 self->attrs[COLOR_hash_collection__HashCollection___capacity].l = var1; /* _capacity on <self:HashMap[Object, nullable Object] exact> */
592 var2 = 0;
593 self->attrs[COLOR_hash_collection__HashCollection___length].l = var2; /* _length on <self:HashMap[Object, nullable Object] exact> */
594 var3 = NULL;
595 self->attrs[COLOR_hash_collection__HashCollection___first_item].val = var3; /* _first_item on <self:HashMap[Object, nullable Object] exact> */
596 var4 = NULL;
597 self->attrs[COLOR_hash_collection__HashCollection___last_item].val = var4; /* _last_item on <self:HashMap[Object, nullable Object] exact> */
598 var5 = NULL;
599 self->attrs[COLOR_hash_collection__HashCollection___last_accessed_key].val = var5; /* _last_accessed_key on <self:HashMap[Object, nullable Object] exact> */
600 var6 = NULL;
601 self->attrs[COLOR_hash_collection__HashCollection___last_accessed_node].val = var6; /* _last_accessed_node on <self:HashMap[Object, nullable Object] exact> */
602 var7 = NEW_hash_collection__HashMapKeys(self->type->resolution_table->types[COLOR_hash_collection__HashMapKeyshash_collection__HashMap_FT0hash_collection__HashMap_FT1]);
603 ((void (*)(val*, val*))(var7->class->vft[COLOR_hash_collection__HashMapKeys__init]))(var7, self) /* init on <var7:HashMapKeys[Object, nullable Object]>*/;
604 CHECK_NEW_hash_collection__HashMapKeys(var7);
605 self->attrs[COLOR_hash_collection__HashMap___64dkeys].val = var7; /* @keys on <self:HashMap[Object, nullable Object] exact> */
606 var8 = NEW_hash_collection__HashMapValues(self->type->resolution_table->types[COLOR_hash_collection__HashMapValueshash_collection__HashMap_FT0hash_collection__HashMap_FT1]);
607 ((void (*)(val*, val*))(var8->class->vft[COLOR_hash_collection__HashMapValues__init]))(var8, self) /* init on <var8:HashMapValues[Object, nullable Object]>*/;
608 CHECK_NEW_hash_collection__HashMapValues(var8);
609 self->attrs[COLOR_hash_collection__HashMap___64dvalues].val = var8; /* @values on <self:HashMap[Object, nullable Object] exact> */
610 return self;
611 }
612 /* allocate HashMap[Object, nullable Object] */
613 void CHECK_NEW_hash_collection__HashMap(val* self) {
614 }
615 /* runtime class hash_collection__HashMapKeys */
616 const struct class class_hash_collection__HashMapKeys = {
617 0, /* box_kind */
618 {
619 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashMapKeys:kernel#Object#object_id */
620 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashMapKeys:kernel#Object#is_same_type */
621 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashMapKeys:kernel#Object#is_same_instance */
622 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to hash_collection:HashMapKeys:kernel#Object#== */
623 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashMapKeys:kernel#Object#!= */
624 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashMapKeys:kernel#Object#output */
625 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashMapKeys:kernel#Object#output_class_name */
626 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashMapKeys:kernel#Object#exit */
627 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashMapKeys:kernel#Object#sys */
628 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to hash_collection:HashMapKeys:kernel#Object#hash */
629 (nitmethod_t)VIRTUAL_string__Collection__to_s, /* pointer to hash_collection:HashMapKeys:string#Collection#to_s */
630 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashMapKeys:string#Object#native_class_name */
631 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashMapKeys:string#Object#class_name */
632 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashMapKeys:string#Object#inspect */
633 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashMapKeys:string#Object#inspect_head */
634 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashMapKeys:string#Object#args */
635 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashMapKeys:math#Object#atan2 */
636 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashMapKeys:math#Object#pi */
637 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashMapKeys:math#Object#srand_from */
638 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashMapKeys:math#Object#srand */
639 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashMapKeys:stream#Object#poll */
640 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashMapKeys:stream#Object#intern_poll */
641 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashMapKeys:time#Object#get_time */
642 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashMapKeys:file#Object#printn */
643 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashMapKeys:file#Object#print */
644 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashMapKeys:file#Object#getc */
645 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashMapKeys:file#Object#gets */
646 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashMapKeys:file#Object#getcwd */
647 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashMapKeys:file#Object#file_getcwd */
648 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashMapKeys:file#Object#stdin */
649 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashMapKeys:file#Object#stdout */
650 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashMapKeys:file#Object#stderr */
651 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashMapKeys:model_base#Object#intrude_visibility */
652 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashMapKeys:model_base#Object#public_visibility */
653 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashMapKeys:model_base#Object#protected_visibility */
654 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashMapKeys:model_base#Object#private_visibility */
655 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashMapKeys:model_base#Object#none_visibility */
656 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashMapKeys:model#Object#abstract_kind */
657 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashMapKeys:model#Object#concrete_kind */
658 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashMapKeys:model#Object#interface_kind */
659 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashMapKeys:model#Object#enum_kind */
660 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashMapKeys:model#Object#extern_kind */
661 NULL, /* empty */
662 NULL, /* empty */
663 NULL, /* empty */
664 NULL, /* empty */
665 NULL, /* empty */
666 NULL, /* empty */
667 NULL, /* empty */
668 NULL, /* empty */
669 NULL, /* empty */
670 NULL, /* empty */
671 NULL, /* empty */
672 NULL, /* empty */
673 NULL, /* empty */
674 NULL, /* empty */
675 NULL, /* empty */
676 NULL, /* empty */
677 NULL, /* empty */
678 NULL, /* empty */
679 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__iterator, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#iterator */
680 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__is_empty, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#is_empty */
681 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__length, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#length */
682 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__has, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#has */
683 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__has_only, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#has_only */
684 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__count, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#count */
685 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__first, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#first */
686 (nitmethod_t)VIRTUAL_abstract_collection__Collection__has_all, /* pointer to hash_collection:HashMapKeys:abstract_collection#Collection#has_all */
687 (nitmethod_t)VIRTUAL_array__Collection__to_a, /* pointer to hash_collection:HashMapKeys:array#Collection#to_a */
688 (nitmethod_t)VIRTUAL_string__Collection__join, /* pointer to hash_collection:HashMapKeys:string#Collection#join */
689 (nitmethod_t)VIRTUAL_math__Collection__rand, /* pointer to hash_collection:HashMapKeys:math#Collection#rand */
690 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__clear, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#clear */
691 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__remove, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#remove */
692 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__remove_all, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#remove_all */
693 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__map, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#map */
694 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__map_61d, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#map= */
695 (nitmethod_t)VIRTUAL_hash_collection__HashMapKeys__init, /* pointer to hash_collection:HashMapKeys:hash_collection#HashMapKeys#init */
696 }
697 };
698 /* allocate HashMapKeys[Object, nullable Object] */
699 val* NEW_hash_collection__HashMapKeys(const struct type* type) {
700 val* self /* : HashMapKeys[Object, nullable Object] */;
701 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
702 self->type = type;
703 self->class = &class_hash_collection__HashMapKeys;
704 return self;
705 }
706 /* allocate HashMapKeys[Object, nullable Object] */
707 void CHECK_NEW_hash_collection__HashMapKeys(val* self) {
708 val* var /* : HashMap[Object, nullable Object] */;
709 var = self->attrs[COLOR_hash_collection__HashMapKeys___64dmap].val; /* @map on <self:HashMapKeys[Object, nullable Object]> */
710 if (var == NULL) {
711 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @map");
712 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/hash_collection.nit", 251);
713 exit(1);
714 }
715 }
716 /* runtime class hash_collection__HashMapValues */
717 const struct class class_hash_collection__HashMapValues = {
718 0, /* box_kind */
719 {
720 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashMapValues:kernel#Object#object_id */
721 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashMapValues:kernel#Object#is_same_type */
722 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashMapValues:kernel#Object#is_same_instance */
723 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to hash_collection:HashMapValues:kernel#Object#== */
724 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashMapValues:kernel#Object#!= */
725 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashMapValues:kernel#Object#output */
726 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashMapValues:kernel#Object#output_class_name */
727 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashMapValues:kernel#Object#exit */
728 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashMapValues:kernel#Object#sys */
729 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to hash_collection:HashMapValues:kernel#Object#hash */
730 (nitmethod_t)VIRTUAL_string__Collection__to_s, /* pointer to hash_collection:HashMapValues:string#Collection#to_s */
731 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashMapValues:string#Object#native_class_name */
732 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashMapValues:string#Object#class_name */
733 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashMapValues:string#Object#inspect */
734 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashMapValues:string#Object#inspect_head */
735 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashMapValues:string#Object#args */
736 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashMapValues:math#Object#atan2 */
737 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashMapValues:math#Object#pi */
738 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashMapValues:math#Object#srand_from */
739 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashMapValues:math#Object#srand */
740 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashMapValues:stream#Object#poll */
741 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashMapValues:stream#Object#intern_poll */
742 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashMapValues:time#Object#get_time */
743 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashMapValues:file#Object#printn */
744 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashMapValues:file#Object#print */
745 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashMapValues:file#Object#getc */
746 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashMapValues:file#Object#gets */
747 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashMapValues:file#Object#getcwd */
748 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashMapValues:file#Object#file_getcwd */
749 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashMapValues:file#Object#stdin */
750 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashMapValues:file#Object#stdout */
751 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashMapValues:file#Object#stderr */
752 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashMapValues:model_base#Object#intrude_visibility */
753 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashMapValues:model_base#Object#public_visibility */
754 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashMapValues:model_base#Object#protected_visibility */
755 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashMapValues:model_base#Object#private_visibility */
756 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashMapValues:model_base#Object#none_visibility */
757 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashMapValues:model#Object#abstract_kind */
758 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashMapValues:model#Object#concrete_kind */
759 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashMapValues:model#Object#interface_kind */
760 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashMapValues:model#Object#enum_kind */
761 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashMapValues:model#Object#extern_kind */
762 NULL, /* empty */
763 NULL, /* empty */
764 NULL, /* empty */
765 NULL, /* empty */
766 NULL, /* empty */
767 NULL, /* empty */
768 NULL, /* empty */
769 NULL, /* empty */
770 NULL, /* empty */
771 NULL, /* empty */
772 NULL, /* empty */
773 NULL, /* empty */
774 NULL, /* empty */
775 NULL, /* empty */
776 NULL, /* empty */
777 NULL, /* empty */
778 NULL, /* empty */
779 NULL, /* empty */
780 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__iterator, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#iterator */
781 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__is_empty, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#is_empty */
782 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__length, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#length */
783 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__has, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#has */
784 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__has_only, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#has_only */
785 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__count, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#count */
786 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__first, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#first */
787 (nitmethod_t)VIRTUAL_abstract_collection__Collection__has_all, /* pointer to hash_collection:HashMapValues:abstract_collection#Collection#has_all */
788 (nitmethod_t)VIRTUAL_array__Collection__to_a, /* pointer to hash_collection:HashMapValues:array#Collection#to_a */
789 (nitmethod_t)VIRTUAL_string__Collection__join, /* pointer to hash_collection:HashMapValues:string#Collection#join */
790 (nitmethod_t)VIRTUAL_math__Collection__rand, /* pointer to hash_collection:HashMapValues:math#Collection#rand */
791 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__clear, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#clear */
792 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__remove, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#remove */
793 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__remove_all, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#remove_all */
794 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__map, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#map */
795 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__map_61d, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#map= */
796 (nitmethod_t)VIRTUAL_hash_collection__HashMapValues__init, /* pointer to hash_collection:HashMapValues:hash_collection#HashMapValues#init */
797 }
798 };
799 /* allocate HashMapValues[Object, nullable Object] */
800 val* NEW_hash_collection__HashMapValues(const struct type* type) {
801 val* self /* : HashMapValues[Object, nullable Object] */;
802 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
803 self->type = type;
804 self->class = &class_hash_collection__HashMapValues;
805 return self;
806 }
807 /* allocate HashMapValues[Object, nullable Object] */
808 void CHECK_NEW_hash_collection__HashMapValues(val* self) {
809 val* var /* : HashMap[Object, nullable Object] */;
810 var = self->attrs[COLOR_hash_collection__HashMapValues___64dmap].val; /* @map on <self:HashMapValues[Object, nullable Object]> */
811 if (var == NULL) {
812 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @map");
813 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/hash_collection.nit", 272);
814 exit(1);
815 }
816 }
817 /* runtime class hash_collection__HashMapNode */
818 const struct class class_hash_collection__HashMapNode = {
819 0, /* box_kind */
820 {
821 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashMapNode:kernel#Object#object_id */
822 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashMapNode:kernel#Object#is_same_type */
823 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashMapNode:kernel#Object#is_same_instance */
824 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to hash_collection:HashMapNode:kernel#Object#== */
825 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashMapNode:kernel#Object#!= */
826 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashMapNode:kernel#Object#output */
827 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashMapNode:kernel#Object#output_class_name */
828 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashMapNode:kernel#Object#exit */
829 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashMapNode:kernel#Object#sys */
830 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to hash_collection:HashMapNode:kernel#Object#hash */
831 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to hash_collection:HashMapNode:string#Object#to_s */
832 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashMapNode:string#Object#native_class_name */
833 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashMapNode:string#Object#class_name */
834 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashMapNode:string#Object#inspect */
835 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashMapNode:string#Object#inspect_head */
836 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashMapNode:string#Object#args */
837 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashMapNode:math#Object#atan2 */
838 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashMapNode:math#Object#pi */
839 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashMapNode:math#Object#srand_from */
840 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashMapNode:math#Object#srand */
841 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashMapNode:stream#Object#poll */
842 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashMapNode:stream#Object#intern_poll */
843 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashMapNode:time#Object#get_time */
844 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashMapNode:file#Object#printn */
845 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashMapNode:file#Object#print */
846 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashMapNode:file#Object#getc */
847 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashMapNode:file#Object#gets */
848 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashMapNode:file#Object#getcwd */
849 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashMapNode:file#Object#file_getcwd */
850 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashMapNode:file#Object#stdin */
851 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashMapNode:file#Object#stdout */
852 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashMapNode:file#Object#stderr */
853 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashMapNode:model_base#Object#intrude_visibility */
854 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashMapNode:model_base#Object#public_visibility */
855 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashMapNode:model_base#Object#protected_visibility */
856 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashMapNode:model_base#Object#private_visibility */
857 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashMapNode:model_base#Object#none_visibility */
858 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashMapNode:model#Object#abstract_kind */
859 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashMapNode:model#Object#concrete_kind */
860 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashMapNode:model#Object#interface_kind */
861 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashMapNode:model#Object#enum_kind */
862 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashMapNode:model#Object#extern_kind */
863 (nitmethod_t)VIRTUAL_hash_collection__HashNode__next_item, /* pointer to hash_collection:HashMapNode:hash_collection#HashNode#next_item */
864 (nitmethod_t)VIRTUAL_hash_collection__HashNode__next_item_61d, /* pointer to hash_collection:HashMapNode:hash_collection#HashNode#next_item= */
865 (nitmethod_t)VIRTUAL_hash_collection__HashNode__prev_item, /* pointer to hash_collection:HashMapNode:hash_collection#HashNode#prev_item */
866 (nitmethod_t)VIRTUAL_hash_collection__HashNode__prev_item_61d, /* pointer to hash_collection:HashMapNode:hash_collection#HashNode#prev_item= */
867 (nitmethod_t)VIRTUAL_hash_collection__HashNode__init, /* pointer to hash_collection:HashMapNode:hash_collection#HashNode#init */
868 (nitmethod_t)VIRTUAL_hash_collection__HashMapNode__init, /* pointer to hash_collection:HashMapNode:hash_collection#HashMapNode#init */
869 }
870 };
871 /* allocate HashMapNode[Object, nullable Object] */
872 val* NEW_hash_collection__HashMapNode(const struct type* type) {
873 val* self /* : HashMapNode[Object, nullable Object] */;
874 val* var /* : null */;
875 val* var1 /* : null */;
876 val* var2 /* : null */;
877 val* var3 /* : null */;
878 self = nit_alloc(sizeof(struct instance) + 6*sizeof(nitattribute_t));
879 self->type = type;
880 self->class = &class_hash_collection__HashMapNode;
881 var = NULL;
882 self->attrs[COLOR_hash_collection__HashNode___next_item].val = var; /* _next_item on <self:HashMapNode[Object, nullable Object] exact> */
883 var1 = NULL;
884 self->attrs[COLOR_hash_collection__HashNode___prev_item].val = var1; /* _prev_item on <self:HashMapNode[Object, nullable Object] exact> */
885 var2 = NULL;
886 self->attrs[COLOR_hash_collection__HashNode___prev_in_bucklet].val = var2; /* _prev_in_bucklet on <self:HashMapNode[Object, nullable Object] exact> */
887 var3 = NULL;
888 self->attrs[COLOR_hash_collection__HashNode___next_in_bucklet].val = var3; /* _next_in_bucklet on <self:HashMapNode[Object, nullable Object] exact> */
889 return self;
890 }
891 /* allocate HashMapNode[Object, nullable Object] */
892 void CHECK_NEW_hash_collection__HashMapNode(val* self) {
893 val* var /* : Object */;
894 val* var1 /* : nullable Object */;
895 var = self->attrs[COLOR_hash_collection__HashNode___key].val; /* _key on <self:HashMapNode[Object, nullable Object]> */
896 if (var == NULL) {
897 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _key");
898 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/hash_collection.nit", 189);
899 exit(1);
900 }
901 var1 = self->attrs[COLOR_hash_collection__HashMapNode___value].val; /* _value on <self:HashMapNode[Object, nullable Object]> */
902 }
903 /* runtime class hash_collection__HashMapIterator */
904 const struct class class_hash_collection__HashMapIterator = {
905 0, /* box_kind */
906 {
907 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashMapIterator:kernel#Object#object_id */
908 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashMapIterator:kernel#Object#is_same_type */
909 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashMapIterator:kernel#Object#is_same_instance */
910 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to hash_collection:HashMapIterator:kernel#Object#== */
911 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashMapIterator:kernel#Object#!= */
912 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashMapIterator:kernel#Object#output */
913 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashMapIterator:kernel#Object#output_class_name */
914 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashMapIterator:kernel#Object#exit */
915 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashMapIterator:kernel#Object#sys */
916 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to hash_collection:HashMapIterator:kernel#Object#hash */
917 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to hash_collection:HashMapIterator:string#Object#to_s */
918 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashMapIterator:string#Object#native_class_name */
919 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashMapIterator:string#Object#class_name */
920 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashMapIterator:string#Object#inspect */
921 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashMapIterator:string#Object#inspect_head */
922 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashMapIterator:string#Object#args */
923 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashMapIterator:math#Object#atan2 */
924 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashMapIterator:math#Object#pi */
925 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashMapIterator:math#Object#srand_from */
926 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashMapIterator:math#Object#srand */
927 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashMapIterator:stream#Object#poll */
928 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashMapIterator:stream#Object#intern_poll */
929 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashMapIterator:time#Object#get_time */
930 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashMapIterator:file#Object#printn */
931 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashMapIterator:file#Object#print */
932 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashMapIterator:file#Object#getc */
933 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashMapIterator:file#Object#gets */
934 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashMapIterator:file#Object#getcwd */
935 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashMapIterator:file#Object#file_getcwd */
936 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashMapIterator:file#Object#stdin */
937 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashMapIterator:file#Object#stdout */
938 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashMapIterator:file#Object#stderr */
939 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashMapIterator:model_base#Object#intrude_visibility */
940 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashMapIterator:model_base#Object#public_visibility */
941 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashMapIterator:model_base#Object#protected_visibility */
942 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashMapIterator:model_base#Object#private_visibility */
943 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashMapIterator:model_base#Object#none_visibility */
944 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashMapIterator:model#Object#abstract_kind */
945 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashMapIterator:model#Object#concrete_kind */
946 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashMapIterator:model#Object#interface_kind */
947 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashMapIterator:model#Object#enum_kind */
948 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashMapIterator:model#Object#extern_kind */
949 (nitmethod_t)VIRTUAL_hash_collection__HashMapIterator__item, /* pointer to hash_collection:HashMapIterator:hash_collection#HashMapIterator#item */
950 (nitmethod_t)VIRTUAL_hash_collection__HashMapIterator__key, /* pointer to hash_collection:HashMapIterator:hash_collection#HashMapIterator#key */
951 (nitmethod_t)VIRTUAL_hash_collection__HashMapIterator__next, /* pointer to hash_collection:HashMapIterator:hash_collection#HashMapIterator#next */
952 (nitmethod_t)VIRTUAL_hash_collection__HashMapIterator__is_ok, /* pointer to hash_collection:HashMapIterator:hash_collection#HashMapIterator#is_ok */
953 (nitmethod_t)VIRTUAL_hash_collection__HashMapIterator__init, /* pointer to hash_collection:HashMapIterator:hash_collection#HashMapIterator#init */
954 }
955 };
956 /* allocate HashMapIterator[Object, nullable Object] */
957 val* NEW_hash_collection__HashMapIterator(const struct type* type) {
958 val* self /* : HashMapIterator[Object, nullable Object] */;
959 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
960 self->type = type;
961 self->class = &class_hash_collection__HashMapIterator;
962 return self;
963 }
964 /* allocate HashMapIterator[Object, nullable Object] */
965 void CHECK_NEW_hash_collection__HashMapIterator(val* self) {
966 val* var /* : HashMap[Object, nullable Object] */;
967 val* var1 /* : nullable HashMapNode[Object, nullable Object] */;
968 var = self->attrs[COLOR_hash_collection__HashMapIterator___map].val; /* _map on <self:HashMapIterator[Object, nullable Object]> */
969 if (var == NULL) {
970 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _map");
971 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/hash_collection.nit", 380);
972 exit(1);
973 }
974 var1 = self->attrs[COLOR_hash_collection__HashMapIterator___node].val; /* _node on <self:HashMapIterator[Object, nullable Object]> */
975 }
976 /* runtime class hash_collection__HashSet */
977 const struct class class_hash_collection__HashSet = {
978 0, /* box_kind */
979 {
980 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashSet:kernel#Object#object_id */
981 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashSet:kernel#Object#is_same_type */
982 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashSet:kernel#Object#is_same_instance */
983 (nitmethod_t)VIRTUAL_abstract_collection__Set___61d_61d, /* pointer to hash_collection:HashSet:abstract_collection#Set#== */
984 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashSet:kernel#Object#!= */
985 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashSet:kernel#Object#output */
986 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashSet:kernel#Object#output_class_name */
987 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashSet:kernel#Object#exit */
988 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashSet:kernel#Object#sys */
989 (nitmethod_t)VIRTUAL_abstract_collection__Set__hash, /* pointer to hash_collection:HashSet:abstract_collection#Set#hash */
990 (nitmethod_t)VIRTUAL_string__Collection__to_s, /* pointer to hash_collection:HashSet:string#Collection#to_s */
991 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashSet:string#Object#native_class_name */
992 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashSet:string#Object#class_name */
993 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashSet:string#Object#inspect */
994 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashSet:string#Object#inspect_head */
995 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashSet:string#Object#args */
996 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashSet:math#Object#atan2 */
997 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashSet:math#Object#pi */
998 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashSet:math#Object#srand_from */
999 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashSet:math#Object#srand */
1000 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashSet:stream#Object#poll */
1001 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashSet:stream#Object#intern_poll */
1002 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashSet:time#Object#get_time */
1003 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashSet:file#Object#printn */
1004 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashSet:file#Object#print */
1005 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashSet:file#Object#getc */
1006 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashSet:file#Object#gets */
1007 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashSet:file#Object#getcwd */
1008 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashSet:file#Object#file_getcwd */
1009 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashSet:file#Object#stdin */
1010 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashSet:file#Object#stdout */
1011 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashSet:file#Object#stderr */
1012 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashSet:model_base#Object#intrude_visibility */
1013 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashSet:model_base#Object#public_visibility */
1014 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashSet:model_base#Object#protected_visibility */
1015 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashSet:model_base#Object#private_visibility */
1016 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashSet:model_base#Object#none_visibility */
1017 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashSet:model#Object#abstract_kind */
1018 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashSet:model#Object#concrete_kind */
1019 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashSet:model#Object#interface_kind */
1020 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashSet:model#Object#enum_kind */
1021 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashSet:model#Object#extern_kind */
1022 NULL, /* empty */
1023 NULL, /* empty */
1024 NULL, /* empty */
1025 NULL, /* empty */
1026 NULL, /* empty */
1027 NULL, /* empty */
1028 NULL, /* empty */
1029 NULL, /* empty */
1030 NULL, /* empty */
1031 NULL, /* empty */
1032 NULL, /* empty */
1033 NULL, /* empty */
1034 NULL, /* empty */
1035 NULL, /* empty */
1036 NULL, /* empty */
1037 NULL, /* empty */
1038 NULL, /* empty */
1039 NULL, /* empty */
1040 (nitmethod_t)VIRTUAL_hash_collection__HashSet__iterator, /* pointer to hash_collection:HashSet:hash_collection#HashSet#iterator */
1041 (nitmethod_t)VIRTUAL_hash_collection__HashSet__is_empty, /* pointer to hash_collection:HashSet:hash_collection#HashSet#is_empty */
1042 (nitmethod_t)VIRTUAL_hash_collection__HashSet__length, /* pointer to hash_collection:HashSet:hash_collection#HashSet#length */
1043 (nitmethod_t)VIRTUAL_hash_collection__HashSet__has, /* pointer to hash_collection:HashSet:hash_collection#HashSet#has */
1044 (nitmethod_t)VIRTUAL_abstract_collection__Set__has_only, /* pointer to hash_collection:HashSet:abstract_collection#Set#has_only */
1045 (nitmethod_t)VIRTUAL_abstract_collection__Set__count, /* pointer to hash_collection:HashSet:abstract_collection#Set#count */
1046 (nitmethod_t)VIRTUAL_hash_collection__HashSet__first, /* pointer to hash_collection:HashSet:hash_collection#HashSet#first */
1047 (nitmethod_t)VIRTUAL_abstract_collection__Collection__has_all, /* pointer to hash_collection:HashSet:abstract_collection#Collection#has_all */
1048 (nitmethod_t)VIRTUAL_array__Collection__to_a, /* pointer to hash_collection:HashSet:array#Collection#to_a */
1049 (nitmethod_t)VIRTUAL_string__Collection__join, /* pointer to hash_collection:HashSet:string#Collection#join */
1050 (nitmethod_t)VIRTUAL_math__Collection__rand, /* pointer to hash_collection:HashSet:math#Collection#rand */
1051 (nitmethod_t)VIRTUAL_hash_collection__HashSet__clear, /* pointer to hash_collection:HashSet:hash_collection#HashSet#clear */
1052 (nitmethod_t)VIRTUAL_hash_collection__HashSet__remove, /* pointer to hash_collection:HashSet:hash_collection#HashSet#remove */
1053 (nitmethod_t)VIRTUAL_abstract_collection__Set__remove_all, /* pointer to hash_collection:HashSet:abstract_collection#Set#remove_all */
1054 (nitmethod_t)VIRTUAL_hash_collection__HashSet__add, /* pointer to hash_collection:HashSet:hash_collection#HashSet#add */
1055 (nitmethod_t)VIRTUAL_abstract_collection__SimpleCollection__add_all, /* pointer to hash_collection:HashSet:abstract_collection#SimpleCollection#add_all */
1056 NULL, /* empty */
1057 NULL, /* empty */
1058 NULL, /* empty */
1059 NULL, /* empty */
1060 NULL, /* empty */
1061 NULL, /* empty */
1062 NULL, /* empty */
1063 NULL, /* empty */
1064 NULL, /* empty */
1065 NULL, /* empty */
1066 NULL, /* empty */
1067 NULL, /* empty */
1068 NULL, /* empty */
1069 NULL, /* empty */
1070 NULL, /* empty */
1071 NULL, /* empty */
1072 NULL, /* empty */
1073 NULL, /* empty */
1074 NULL, /* empty */
1075 NULL, /* empty */
1076 NULL, /* empty */
1077 NULL, /* empty */
1078 NULL, /* empty */
1079 (nitmethod_t)VIRTUAL_array__ArrayCapable__calloc_array, /* pointer to hash_collection:HashSet:array#ArrayCapable#calloc_array */
1080 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__first_item, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#first_item */
1081 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__index_at, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#index_at */
1082 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__node_at, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#node_at */
1083 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__node_at_idx, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#node_at_idx */
1084 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__store, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#store */
1085 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__remove_node, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#remove_node */
1086 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__raz, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#raz */
1087 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__enlarge, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#enlarge */
1088 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__init, /* pointer to hash_collection:HashSet:hash_collection#HashCollection#init */
1089 (nitmethod_t)VIRTUAL_hash_collection__HashSet__init, /* pointer to hash_collection:HashSet:hash_collection#HashSet#init */
1090 (nitmethod_t)VIRTUAL_hash_collection__HashSet__from, /* pointer to hash_collection:HashSet:hash_collection#HashSet#from */
1091 }
1092 };
1093 /* allocate HashSet[Object] */
1094 val* NEW_hash_collection__HashSet(const struct type* type) {
1095 val* self /* : HashSet[Object] */;
1096 val* var /* : null */;
1097 long var1 /* : Int */;
1098 long var2 /* : Int */;
1099 val* var3 /* : null */;
1100 val* var4 /* : null */;
1101 val* var5 /* : null */;
1102 val* var6 /* : null */;
1103 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
1104 self->type = type;
1105 self->class = &class_hash_collection__HashSet;
1106 var = NULL;
1107 self->attrs[COLOR_hash_collection__HashCollection___array].val = var; /* _array on <self:HashSet[Object] exact> */
1108 var1 = 0;
1109 self->attrs[COLOR_hash_collection__HashCollection___capacity].l = var1; /* _capacity on <self:HashSet[Object] exact> */
1110 var2 = 0;
1111 self->attrs[COLOR_hash_collection__HashCollection___length].l = var2; /* _length on <self:HashSet[Object] exact> */
1112 var3 = NULL;
1113 self->attrs[COLOR_hash_collection__HashCollection___first_item].val = var3; /* _first_item on <self:HashSet[Object] exact> */
1114 var4 = NULL;
1115 self->attrs[COLOR_hash_collection__HashCollection___last_item].val = var4; /* _last_item on <self:HashSet[Object] exact> */
1116 var5 = NULL;
1117 self->attrs[COLOR_hash_collection__HashCollection___last_accessed_key].val = var5; /* _last_accessed_key on <self:HashSet[Object] exact> */
1118 var6 = NULL;
1119 self->attrs[COLOR_hash_collection__HashCollection___last_accessed_node].val = var6; /* _last_accessed_node on <self:HashSet[Object] exact> */
1120 return self;
1121 }
1122 /* allocate HashSet[Object] */
1123 void CHECK_NEW_hash_collection__HashSet(val* self) {
1124 }
1125 /* runtime class hash_collection__HashSetNode */
1126 const struct class class_hash_collection__HashSetNode = {
1127 0, /* box_kind */
1128 {
1129 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashSetNode:kernel#Object#object_id */
1130 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashSetNode:kernel#Object#is_same_type */
1131 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashSetNode:kernel#Object#is_same_instance */
1132 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to hash_collection:HashSetNode:kernel#Object#== */
1133 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashSetNode:kernel#Object#!= */
1134 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashSetNode:kernel#Object#output */
1135 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashSetNode:kernel#Object#output_class_name */
1136 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashSetNode:kernel#Object#exit */
1137 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashSetNode:kernel#Object#sys */
1138 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to hash_collection:HashSetNode:kernel#Object#hash */
1139 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to hash_collection:HashSetNode:string#Object#to_s */
1140 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashSetNode:string#Object#native_class_name */
1141 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashSetNode:string#Object#class_name */
1142 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashSetNode:string#Object#inspect */
1143 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashSetNode:string#Object#inspect_head */
1144 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashSetNode:string#Object#args */
1145 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashSetNode:math#Object#atan2 */
1146 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashSetNode:math#Object#pi */
1147 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashSetNode:math#Object#srand_from */
1148 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashSetNode:math#Object#srand */
1149 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashSetNode:stream#Object#poll */
1150 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashSetNode:stream#Object#intern_poll */
1151 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashSetNode:time#Object#get_time */
1152 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashSetNode:file#Object#printn */
1153 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashSetNode:file#Object#print */
1154 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashSetNode:file#Object#getc */
1155 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashSetNode:file#Object#gets */
1156 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashSetNode:file#Object#getcwd */
1157 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashSetNode:file#Object#file_getcwd */
1158 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashSetNode:file#Object#stdin */
1159 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashSetNode:file#Object#stdout */
1160 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashSetNode:file#Object#stderr */
1161 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashSetNode:model_base#Object#intrude_visibility */
1162 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashSetNode:model_base#Object#public_visibility */
1163 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashSetNode:model_base#Object#protected_visibility */
1164 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashSetNode:model_base#Object#private_visibility */
1165 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashSetNode:model_base#Object#none_visibility */
1166 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashSetNode:model#Object#abstract_kind */
1167 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashSetNode:model#Object#concrete_kind */
1168 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashSetNode:model#Object#interface_kind */
1169 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashSetNode:model#Object#enum_kind */
1170 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashSetNode:model#Object#extern_kind */
1171 (nitmethod_t)VIRTUAL_hash_collection__HashNode__next_item, /* pointer to hash_collection:HashSetNode:hash_collection#HashNode#next_item */
1172 (nitmethod_t)VIRTUAL_hash_collection__HashNode__next_item_61d, /* pointer to hash_collection:HashSetNode:hash_collection#HashNode#next_item= */
1173 (nitmethod_t)VIRTUAL_hash_collection__HashNode__prev_item, /* pointer to hash_collection:HashSetNode:hash_collection#HashNode#prev_item */
1174 (nitmethod_t)VIRTUAL_hash_collection__HashNode__prev_item_61d, /* pointer to hash_collection:HashSetNode:hash_collection#HashNode#prev_item= */
1175 (nitmethod_t)VIRTUAL_hash_collection__HashNode__init, /* pointer to hash_collection:HashSetNode:hash_collection#HashNode#init */
1176 (nitmethod_t)VIRTUAL_hash_collection__HashSetNode__init, /* pointer to hash_collection:HashSetNode:hash_collection#HashSetNode#init */
1177 }
1178 };
1179 /* allocate HashSetNode[Object] */
1180 val* NEW_hash_collection__HashSetNode(const struct type* type) {
1181 val* self /* : HashSetNode[Object] */;
1182 val* var /* : null */;
1183 val* var1 /* : null */;
1184 val* var2 /* : null */;
1185 val* var3 /* : null */;
1186 self = nit_alloc(sizeof(struct instance) + 5*sizeof(nitattribute_t));
1187 self->type = type;
1188 self->class = &class_hash_collection__HashSetNode;
1189 var = NULL;
1190 self->attrs[COLOR_hash_collection__HashNode___next_item].val = var; /* _next_item on <self:HashSetNode[Object] exact> */
1191 var1 = NULL;
1192 self->attrs[COLOR_hash_collection__HashNode___prev_item].val = var1; /* _prev_item on <self:HashSetNode[Object] exact> */
1193 var2 = NULL;
1194 self->attrs[COLOR_hash_collection__HashNode___prev_in_bucklet].val = var2; /* _prev_in_bucklet on <self:HashSetNode[Object] exact> */
1195 var3 = NULL;
1196 self->attrs[COLOR_hash_collection__HashNode___next_in_bucklet].val = var3; /* _next_in_bucklet on <self:HashSetNode[Object] exact> */
1197 return self;
1198 }
1199 /* allocate HashSetNode[Object] */
1200 void CHECK_NEW_hash_collection__HashSetNode(val* self) {
1201 val* var /* : Object */;
1202 var = self->attrs[COLOR_hash_collection__HashNode___key].val; /* _key on <self:HashSetNode[Object]> */
1203 if (var == NULL) {
1204 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _key");
1205 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/hash_collection.nit", 189);
1206 exit(1);
1207 }
1208 }
1209 /* runtime class hash_collection__HashSetIterator */
1210 const struct class class_hash_collection__HashSetIterator = {
1211 0, /* box_kind */
1212 {
1213 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to hash_collection:HashSetIterator:kernel#Object#object_id */
1214 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to hash_collection:HashSetIterator:kernel#Object#is_same_type */
1215 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to hash_collection:HashSetIterator:kernel#Object#is_same_instance */
1216 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to hash_collection:HashSetIterator:kernel#Object#== */
1217 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to hash_collection:HashSetIterator:kernel#Object#!= */
1218 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to hash_collection:HashSetIterator:kernel#Object#output */
1219 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to hash_collection:HashSetIterator:kernel#Object#output_class_name */
1220 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to hash_collection:HashSetIterator:kernel#Object#exit */
1221 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to hash_collection:HashSetIterator:kernel#Object#sys */
1222 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to hash_collection:HashSetIterator:kernel#Object#hash */
1223 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to hash_collection:HashSetIterator:string#Object#to_s */
1224 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to hash_collection:HashSetIterator:string#Object#native_class_name */
1225 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to hash_collection:HashSetIterator:string#Object#class_name */
1226 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to hash_collection:HashSetIterator:string#Object#inspect */
1227 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to hash_collection:HashSetIterator:string#Object#inspect_head */
1228 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to hash_collection:HashSetIterator:string#Object#args */
1229 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to hash_collection:HashSetIterator:math#Object#atan2 */
1230 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to hash_collection:HashSetIterator:math#Object#pi */
1231 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to hash_collection:HashSetIterator:math#Object#srand_from */
1232 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to hash_collection:HashSetIterator:math#Object#srand */
1233 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to hash_collection:HashSetIterator:stream#Object#poll */
1234 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to hash_collection:HashSetIterator:stream#Object#intern_poll */
1235 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to hash_collection:HashSetIterator:time#Object#get_time */
1236 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to hash_collection:HashSetIterator:file#Object#printn */
1237 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to hash_collection:HashSetIterator:file#Object#print */
1238 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to hash_collection:HashSetIterator:file#Object#getc */
1239 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to hash_collection:HashSetIterator:file#Object#gets */
1240 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to hash_collection:HashSetIterator:file#Object#getcwd */
1241 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to hash_collection:HashSetIterator:file#Object#file_getcwd */
1242 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to hash_collection:HashSetIterator:file#Object#stdin */
1243 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to hash_collection:HashSetIterator:file#Object#stdout */
1244 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to hash_collection:HashSetIterator:file#Object#stderr */
1245 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to hash_collection:HashSetIterator:model_base#Object#intrude_visibility */
1246 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to hash_collection:HashSetIterator:model_base#Object#public_visibility */
1247 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to hash_collection:HashSetIterator:model_base#Object#protected_visibility */
1248 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to hash_collection:HashSetIterator:model_base#Object#private_visibility */
1249 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to hash_collection:HashSetIterator:model_base#Object#none_visibility */
1250 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to hash_collection:HashSetIterator:model#Object#abstract_kind */
1251 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to hash_collection:HashSetIterator:model#Object#concrete_kind */
1252 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to hash_collection:HashSetIterator:model#Object#interface_kind */
1253 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to hash_collection:HashSetIterator:model#Object#enum_kind */
1254 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to hash_collection:HashSetIterator:model#Object#extern_kind */
1255 (nitmethod_t)VIRTUAL_hash_collection__HashSetIterator__item, /* pointer to hash_collection:HashSetIterator:hash_collection#HashSetIterator#item */
1256 (nitmethod_t)VIRTUAL_hash_collection__HashSetIterator__next, /* pointer to hash_collection:HashSetIterator:hash_collection#HashSetIterator#next */
1257 (nitmethod_t)VIRTUAL_hash_collection__HashSetIterator__is_ok, /* pointer to hash_collection:HashSetIterator:hash_collection#HashSetIterator#is_ok */
1258 (nitmethod_t)VIRTUAL_array__Iterator__to_a, /* pointer to hash_collection:HashSetIterator:array#Iterator#to_a */
1259 (nitmethod_t)VIRTUAL_hash_collection__HashSetIterator__init, /* pointer to hash_collection:HashSetIterator:hash_collection#HashSetIterator#init */
1260 }
1261 };
1262 /* allocate HashSetIterator[Object] */
1263 val* NEW_hash_collection__HashSetIterator(const struct type* type) {
1264 val* self /* : HashSetIterator[Object] */;
1265 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
1266 self->type = type;
1267 self->class = &class_hash_collection__HashSetIterator;
1268 return self;
1269 }
1270 /* allocate HashSetIterator[Object] */
1271 void CHECK_NEW_hash_collection__HashSetIterator(val* self) {
1272 val* var /* : HashSet[Object] */;
1273 val* var1 /* : nullable HashSetNode[Object] */;
1274 var = self->attrs[COLOR_hash_collection__HashSetIterator___set].val; /* _set on <self:HashSetIterator[Object]> */
1275 if (var == NULL) {
1276 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _set");
1277 fprintf(stderr, " (%s:%d)\n", "lib/standard/collection/hash_collection.nit", 471);
1278 exit(1);
1279 }
1280 var1 = self->attrs[COLOR_hash_collection__HashSetIterator___node].val; /* _node on <self:HashSetIterator[Object]> */
1281 }
1282 /* runtime class ropes__TupleLeafNodePos */
1283 /* allocate TupleLeafNodePos */
1284 val* NEW_ropes__TupleLeafNodePos(const struct type* type) {
1285 fprintf(stderr, "Runtime error: %s", "TupleLeafNodePos is DEAD");
1286 fprintf(stderr, "\n");
1287 exit(1);
1288 }
1289 /* allocate TupleLeafNodePos */
1290 void CHECK_NEW_ropes__TupleLeafNodePos(val* self) {
1291 fprintf(stderr, "Runtime error: %s", "TupleLeafNodePos is DEAD");
1292 fprintf(stderr, "\n");
1293 exit(1);
1294 }
1295 /* runtime class ropes__BufferRope */
1296 /* allocate BufferRope */
1297 val* NEW_ropes__BufferRope(const struct type* type) {
1298 fprintf(stderr, "Runtime error: %s", "BufferRope is DEAD");
1299 fprintf(stderr, "\n");
1300 exit(1);
1301 }
1302 /* allocate BufferRope */
1303 void CHECK_NEW_ropes__BufferRope(val* self) {
1304 fprintf(stderr, "Runtime error: %s", "BufferRope is DEAD");
1305 fprintf(stderr, "\n");
1306 exit(1);
1307 }
1308 /* runtime class ropes__ImmutableRope */
1309 /* allocate ImmutableRope */
1310 val* NEW_ropes__ImmutableRope(const struct type* type) {
1311 fprintf(stderr, "Runtime error: %s", "ImmutableRope is DEAD");
1312 fprintf(stderr, "\n");
1313 exit(1);
1314 }
1315 /* allocate ImmutableRope */
1316 void CHECK_NEW_ropes__ImmutableRope(val* self) {
1317 fprintf(stderr, "Runtime error: %s", "ImmutableRope is DEAD");
1318 fprintf(stderr, "\n");
1319 exit(1);
1320 }
1321 /* runtime class ropes__CharRopeView */
1322 /* allocate CharRopeView */
1323 val* NEW_ropes__CharRopeView(const struct type* type) {
1324 fprintf(stderr, "Runtime error: %s", "CharRopeView is DEAD");
1325 fprintf(stderr, "\n");
1326 exit(1);
1327 }
1328 /* allocate CharRopeView */
1329 void CHECK_NEW_ropes__CharRopeView(val* self) {
1330 fprintf(stderr, "Runtime error: %s", "CharRopeView is DEAD");
1331 fprintf(stderr, "\n");
1332 exit(1);
1333 }
1334 /* runtime class ropes__TupleVisitNode */
1335 /* allocate TupleVisitNode */
1336 val* NEW_ropes__TupleVisitNode(const struct type* type) {
1337 fprintf(stderr, "Runtime error: %s", "TupleVisitNode is DEAD");
1338 fprintf(stderr, "\n");
1339 exit(1);
1340 }
1341 /* allocate TupleVisitNode */
1342 void CHECK_NEW_ropes__TupleVisitNode(val* self) {
1343 fprintf(stderr, "Runtime error: %s", "TupleVisitNode is DEAD");
1344 fprintf(stderr, "\n");
1345 exit(1);
1346 }
1347 /* runtime class ropes__RopeCharIterator */
1348 /* allocate RopeCharIterator */
1349 val* NEW_ropes__RopeCharIterator(const struct type* type) {
1350 fprintf(stderr, "Runtime error: %s", "RopeCharIterator is DEAD");
1351 fprintf(stderr, "\n");
1352 exit(1);
1353 }
1354 /* allocate RopeCharIterator */
1355 void CHECK_NEW_ropes__RopeCharIterator(val* self) {
1356 fprintf(stderr, "Runtime error: %s", "RopeCharIterator is DEAD");
1357 fprintf(stderr, "\n");
1358 exit(1);
1359 }
1360 /* runtime class ropes__DFSRopeLeafIterator */
1361 /* allocate DFSRopeLeafIterator */
1362 val* NEW_ropes__DFSRopeLeafIterator(const struct type* type) {
1363 fprintf(stderr, "Runtime error: %s", "DFSRopeLeafIterator is DEAD");
1364 fprintf(stderr, "\n");
1365 exit(1);
1366 }
1367 /* allocate DFSRopeLeafIterator */
1368 void CHECK_NEW_ropes__DFSRopeLeafIterator(val* self) {
1369 fprintf(stderr, "Runtime error: %s", "DFSRopeLeafIterator is DEAD");
1370 fprintf(stderr, "\n");
1371 exit(1);
1372 }
1373 /* runtime class ropes__ConcatNode */
1374 /* allocate ConcatNode */
1375 val* NEW_ropes__ConcatNode(const struct type* type) {
1376 fprintf(stderr, "Runtime error: %s", "ConcatNode is DEAD");
1377 fprintf(stderr, "\n");
1378 exit(1);
1379 }
1380 /* allocate ConcatNode */
1381 void CHECK_NEW_ropes__ConcatNode(val* self) {
1382 fprintf(stderr, "Runtime error: %s", "ConcatNode is DEAD");
1383 fprintf(stderr, "\n");
1384 exit(1);
1385 }
1386 /* runtime class ropes__LeafNode */
1387 /* allocate LeafNode */
1388 val* NEW_ropes__LeafNode(const struct type* type) {
1389 fprintf(stderr, "Runtime error: %s", "LeafNode is DEAD");
1390 fprintf(stderr, "\n");
1391 exit(1);
1392 }
1393 /* allocate LeafNode */
1394 void CHECK_NEW_ropes__LeafNode(val* self) {
1395 fprintf(stderr, "Runtime error: %s", "LeafNode is DEAD");
1396 fprintf(stderr, "\n");
1397 exit(1);
1398 }
1399 /* runtime class file__IFStream */
1400 const struct class class_file__IFStream = {
1401 0, /* box_kind */
1402 {
1403 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to file:IFStream:kernel#Object#object_id */
1404 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to file:IFStream:kernel#Object#is_same_type */
1405 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to file:IFStream:kernel#Object#is_same_instance */
1406 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to file:IFStream:kernel#Object#== */
1407 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to file:IFStream:kernel#Object#!= */
1408 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to file:IFStream:kernel#Object#output */
1409 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to file:IFStream:kernel#Object#output_class_name */
1410 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to file:IFStream:kernel#Object#exit */
1411 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to file:IFStream:kernel#Object#sys */
1412 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to file:IFStream:kernel#Object#hash */
1413 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to file:IFStream:string#Object#to_s */
1414 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to file:IFStream:string#Object#native_class_name */
1415 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to file:IFStream:string#Object#class_name */
1416 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to file:IFStream:string#Object#inspect */
1417 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to file:IFStream:string#Object#inspect_head */
1418 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to file:IFStream:string#Object#args */
1419 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to file:IFStream:math#Object#atan2 */
1420 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to file:IFStream:math#Object#pi */
1421 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to file:IFStream:math#Object#srand_from */
1422 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to file:IFStream:math#Object#srand */
1423 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to file:IFStream:stream#Object#poll */
1424 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to file:IFStream:stream#Object#intern_poll */
1425 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to file:IFStream:time#Object#get_time */
1426 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to file:IFStream:file#Object#printn */
1427 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to file:IFStream:file#Object#print */
1428 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to file:IFStream:file#Object#getc */
1429 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to file:IFStream:file#Object#gets */
1430 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to file:IFStream:file#Object#getcwd */
1431 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to file:IFStream:file#Object#file_getcwd */
1432 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to file:IFStream:file#Object#stdin */
1433 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to file:IFStream:file#Object#stdout */
1434 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to file:IFStream:file#Object#stderr */
1435 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to file:IFStream:model_base#Object#intrude_visibility */
1436 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to file:IFStream:model_base#Object#public_visibility */
1437 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to file:IFStream:model_base#Object#protected_visibility */
1438 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to file:IFStream:model_base#Object#private_visibility */
1439 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to file:IFStream:model_base#Object#none_visibility */
1440 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to file:IFStream:model#Object#abstract_kind */
1441 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to file:IFStream:model#Object#concrete_kind */
1442 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to file:IFStream:model#Object#interface_kind */
1443 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to file:IFStream:model#Object#enum_kind */
1444 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to file:IFStream:model#Object#extern_kind */
1445 (nitmethod_t)VIRTUAL_file__IFStream__close, /* pointer to file:IFStream:file#IFStream#close */
1446 (nitmethod_t)VIRTUAL_stream__BufferedIStream__read_char, /* pointer to file:IFStream:stream#BufferedIStream#read_char */
1447 (nitmethod_t)VIRTUAL_stream__BufferedIStream__read, /* pointer to file:IFStream:stream#BufferedIStream#read */
1448 (nitmethod_t)VIRTUAL_stream__IStream__read_line, /* pointer to file:IFStream:stream#IStream#read_line */
1449 (nitmethod_t)VIRTUAL_stream__BufferedIStream__read_all, /* pointer to file:IFStream:stream#BufferedIStream#read_all */
1450 (nitmethod_t)VIRTUAL_stream__BufferedIStream__append_line_to, /* pointer to file:IFStream:stream#BufferedIStream#append_line_to */
1451 (nitmethod_t)VIRTUAL_stream__BufferedIStream__eof, /* pointer to file:IFStream:stream#BufferedIStream#eof */
1452 (nitmethod_t)VIRTUAL_file__IFStream__fill_buffer, /* pointer to file:IFStream:file#IFStream#fill_buffer */
1453 (nitmethod_t)VIRTUAL_file__IFStream__end_reached, /* pointer to file:IFStream:file#IFStream#end_reached */
1454 (nitmethod_t)VIRTUAL_stream__BufferedIStream__prepare_buffer, /* pointer to file:IFStream:stream#BufferedIStream#prepare_buffer */
1455 (nitmethod_t)VIRTUAL_stream__BufferedIStream__init, /* pointer to file:IFStream:stream#BufferedIStream#init */
1456 (nitmethod_t)VIRTUAL_file__FStream__path, /* pointer to file:IFStream:file#FStream#path */
1457 (nitmethod_t)VIRTUAL_file__FStream__file_stat, /* pointer to file:IFStream:file#FStream#file_stat */
1458 (nitmethod_t)VIRTUAL_file__FStream__init, /* pointer to file:IFStream:file#FStream#init */
1459 (nitmethod_t)VIRTUAL_file__IFStream__reopen, /* pointer to file:IFStream:file#IFStream#reopen */
1460 (nitmethod_t)VIRTUAL_file__IFStream__open, /* pointer to file:IFStream:file#IFStream#open */
1461 (nitmethod_t)VIRTUAL_file__IFStream__init, /* pointer to file:IFStream:file#IFStream#init */
1462 (nitmethod_t)VIRTUAL_file__IFStream__without_file, /* pointer to file:IFStream:file#IFStream#without_file */
1463 }
1464 };
1465 /* allocate IFStream */
1466 val* NEW_file__IFStream(const struct type* type) {
1467 val* self /* : IFStream */;
1468 val* var /* : null */;
1469 val* var1 /* : null */;
1470 val* var2 /* : null */;
1471 long var3 /* : Int */;
1472 short int var4 /* : Bool */;
1473 self = nit_alloc(sizeof(struct instance) + 5*sizeof(nitattribute_t));
1474 self->type = type;
1475 self->class = &class_file__IFStream;
1476 var = NULL;
1477 self->attrs[COLOR_file__FStream___path].val = var; /* _path on <self:IFStream exact> */
1478 var1 = NULL;
1479 self->attrs[COLOR_file__FStream___file].val = var1; /* _file on <self:IFStream exact> */
1480 var2 = NULL;
1481 self->attrs[COLOR_stream__BufferedIStream___buffer].val = var2; /* _buffer on <self:IFStream exact> */
1482 var3 = 0;
1483 self->attrs[COLOR_stream__BufferedIStream___buffer_pos].l = var3; /* _buffer_pos on <self:IFStream exact> */
1484 var4 = 0;
1485 self->attrs[COLOR_file__IFStream___end_reached].s = var4; /* _end_reached on <self:IFStream exact> */
1486 return self;
1487 }
1488 /* allocate IFStream */
1489 void CHECK_NEW_file__IFStream(val* self) {
1490 }
1491 /* runtime class file__OFStream */
1492 const struct class class_file__OFStream = {
1493 0, /* box_kind */
1494 {
1495 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to file:OFStream:kernel#Object#object_id */
1496 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to file:OFStream:kernel#Object#is_same_type */
1497 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to file:OFStream:kernel#Object#is_same_instance */
1498 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to file:OFStream:kernel#Object#== */
1499 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to file:OFStream:kernel#Object#!= */
1500 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to file:OFStream:kernel#Object#output */
1501 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to file:OFStream:kernel#Object#output_class_name */
1502 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to file:OFStream:kernel#Object#exit */
1503 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to file:OFStream:kernel#Object#sys */
1504 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to file:OFStream:kernel#Object#hash */
1505 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to file:OFStream:string#Object#to_s */
1506 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to file:OFStream:string#Object#native_class_name */
1507 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to file:OFStream:string#Object#class_name */
1508 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to file:OFStream:string#Object#inspect */
1509 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to file:OFStream:string#Object#inspect_head */
1510 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to file:OFStream:string#Object#args */
1511 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to file:OFStream:math#Object#atan2 */
1512 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to file:OFStream:math#Object#pi */
1513 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to file:OFStream:math#Object#srand_from */
1514 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to file:OFStream:math#Object#srand */
1515 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to file:OFStream:stream#Object#poll */
1516 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to file:OFStream:stream#Object#intern_poll */
1517 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to file:OFStream:time#Object#get_time */
1518 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to file:OFStream:file#Object#printn */
1519 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to file:OFStream:file#Object#print */
1520 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to file:OFStream:file#Object#getc */
1521 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to file:OFStream:file#Object#gets */
1522 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to file:OFStream:file#Object#getcwd */
1523 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to file:OFStream:file#Object#file_getcwd */
1524 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to file:OFStream:file#Object#stdin */
1525 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to file:OFStream:file#Object#stdout */
1526 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to file:OFStream:file#Object#stderr */
1527 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to file:OFStream:model_base#Object#intrude_visibility */
1528 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to file:OFStream:model_base#Object#public_visibility */
1529 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to file:OFStream:model_base#Object#protected_visibility */
1530 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to file:OFStream:model_base#Object#private_visibility */
1531 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to file:OFStream:model_base#Object#none_visibility */
1532 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to file:OFStream:model#Object#abstract_kind */
1533 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to file:OFStream:model#Object#concrete_kind */
1534 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to file:OFStream:model#Object#interface_kind */
1535 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to file:OFStream:model#Object#enum_kind */
1536 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to file:OFStream:model#Object#extern_kind */
1537 (nitmethod_t)VIRTUAL_file__OFStream__close, /* pointer to file:OFStream:file#OFStream#close */
1538 NULL, /* empty */
1539 NULL, /* empty */
1540 NULL, /* empty */
1541 NULL, /* empty */
1542 NULL, /* empty */
1543 NULL, /* empty */
1544 (nitmethod_t)VIRTUAL_file__OFStream__write, /* pointer to file:OFStream:file#OFStream#write */
1545 (nitmethod_t)VIRTUAL_file__OFStream__is_writable, /* pointer to file:OFStream:file#OFStream#is_writable */
1546 NULL, /* empty */
1547 NULL, /* empty */
1548 (nitmethod_t)VIRTUAL_file__FStream__path, /* pointer to file:OFStream:file#FStream#path */
1549 (nitmethod_t)VIRTUAL_file__FStream__file_stat, /* pointer to file:OFStream:file#FStream#file_stat */
1550 (nitmethod_t)VIRTUAL_file__FStream__init, /* pointer to file:OFStream:file#FStream#init */
1551 (nitmethod_t)VIRTUAL_file__OFStream__write_native, /* pointer to file:OFStream:file#OFStream#write_native */
1552 (nitmethod_t)VIRTUAL_file__OFStream__open, /* pointer to file:OFStream:file#OFStream#open */
1553 (nitmethod_t)VIRTUAL_file__OFStream__init, /* pointer to file:OFStream:file#OFStream#init */
1554 (nitmethod_t)VIRTUAL_file__OFStream__without_file, /* pointer to file:OFStream:file#OFStream#without_file */
1555 }
1556 };
1557 /* allocate OFStream */
1558 val* NEW_file__OFStream(const struct type* type) {
1559 val* self /* : OFStream */;
1560 val* var /* : null */;
1561 val* var1 /* : null */;
1562 self = nit_alloc(sizeof(struct instance) + 5*sizeof(nitattribute_t));
1563 self->type = type;
1564 self->class = &class_file__OFStream;
1565 var = NULL;
1566 self->attrs[COLOR_file__FStream___path].val = var; /* _path on <self:OFStream exact> */
1567 var1 = NULL;
1568 self->attrs[COLOR_file__FStream___file].val = var1; /* _file on <self:OFStream exact> */
1569 return self;
1570 }
1571 /* allocate OFStream */
1572 void CHECK_NEW_file__OFStream(val* self) {
1573 short int var /* : Bool */;
1574 var = self->attrs[COLOR_file__OFStream___writable].s; /* _writable on <self:OFStream> */
1575 }
1576 /* runtime class file__Stdin */
1577 /* allocate Stdin */
1578 val* NEW_file__Stdin(const struct type* type) {
1579 fprintf(stderr, "Runtime error: %s", "Stdin is DEAD");
1580 fprintf(stderr, "\n");
1581 exit(1);
1582 }
1583 /* allocate Stdin */
1584 void CHECK_NEW_file__Stdin(val* self) {
1585 fprintf(stderr, "Runtime error: %s", "Stdin is DEAD");
1586 fprintf(stderr, "\n");
1587 exit(1);
1588 }
1589 /* runtime class file__Stdout */
1590 const struct class class_file__Stdout = {
1591 0, /* box_kind */
1592 {
1593 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to file:Stdout:kernel#Object#object_id */
1594 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to file:Stdout:kernel#Object#is_same_type */
1595 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to file:Stdout:kernel#Object#is_same_instance */
1596 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to file:Stdout:kernel#Object#== */
1597 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to file:Stdout:kernel#Object#!= */
1598 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to file:Stdout:kernel#Object#output */
1599 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to file:Stdout:kernel#Object#output_class_name */
1600 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to file:Stdout:kernel#Object#exit */
1601 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to file:Stdout:kernel#Object#sys */
1602 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to file:Stdout:kernel#Object#hash */
1603 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to file:Stdout:string#Object#to_s */
1604 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to file:Stdout:string#Object#native_class_name */
1605 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to file:Stdout:string#Object#class_name */
1606 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to file:Stdout:string#Object#inspect */
1607 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to file:Stdout:string#Object#inspect_head */
1608 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to file:Stdout:string#Object#args */
1609 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to file:Stdout:math#Object#atan2 */
1610 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to file:Stdout:math#Object#pi */
1611 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to file:Stdout:math#Object#srand_from */
1612 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to file:Stdout:math#Object#srand */
1613 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to file:Stdout:stream#Object#poll */
1614 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to file:Stdout:stream#Object#intern_poll */
1615 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to file:Stdout:time#Object#get_time */
1616 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to file:Stdout:file#Object#printn */
1617 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to file:Stdout:file#Object#print */
1618 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to file:Stdout:file#Object#getc */
1619 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to file:Stdout:file#Object#gets */
1620 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to file:Stdout:file#Object#getcwd */
1621 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to file:Stdout:file#Object#file_getcwd */
1622 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to file:Stdout:file#Object#stdin */
1623 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to file:Stdout:file#Object#stdout */
1624 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to file:Stdout:file#Object#stderr */
1625 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to file:Stdout:model_base#Object#intrude_visibility */
1626 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to file:Stdout:model_base#Object#public_visibility */
1627 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to file:Stdout:model_base#Object#protected_visibility */
1628 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to file:Stdout:model_base#Object#private_visibility */
1629 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to file:Stdout:model_base#Object#none_visibility */
1630 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to file:Stdout:model#Object#abstract_kind */
1631 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to file:Stdout:model#Object#concrete_kind */
1632 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to file:Stdout:model#Object#interface_kind */
1633 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to file:Stdout:model#Object#enum_kind */
1634 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to file:Stdout:model#Object#extern_kind */
1635 (nitmethod_t)VIRTUAL_file__OFStream__close, /* pointer to file:Stdout:file#OFStream#close */
1636 NULL, /* empty */
1637 NULL, /* empty */
1638 NULL, /* empty */
1639 NULL, /* empty */
1640 NULL, /* empty */
1641 NULL, /* empty */
1642 (nitmethod_t)VIRTUAL_file__OFStream__write, /* pointer to file:Stdout:file#OFStream#write */
1643 (nitmethod_t)VIRTUAL_file__OFStream__is_writable, /* pointer to file:Stdout:file#OFStream#is_writable */
1644 NULL, /* empty */
1645 NULL, /* empty */
1646 (nitmethod_t)VIRTUAL_file__FStream__path, /* pointer to file:Stdout:file#FStream#path */
1647 (nitmethod_t)VIRTUAL_file__FStream__file_stat, /* pointer to file:Stdout:file#FStream#file_stat */
1648 (nitmethod_t)VIRTUAL_file__FStream__init, /* pointer to file:Stdout:file#FStream#init */
1649 (nitmethod_t)VIRTUAL_file__OFStream__write_native, /* pointer to file:Stdout:file#OFStream#write_native */
1650 (nitmethod_t)VIRTUAL_file__OFStream__open, /* pointer to file:Stdout:file#OFStream#open */
1651 (nitmethod_t)VIRTUAL_file__OFStream__init, /* pointer to file:Stdout:file#OFStream#init */
1652 (nitmethod_t)VIRTUAL_file__OFStream__without_file, /* pointer to file:Stdout:file#OFStream#without_file */
1653 (nitmethod_t)VIRTUAL_file__Stdout__init, /* pointer to file:Stdout:file#Stdout#init */
1654 }
1655 };
1656 /* allocate Stdout */
1657 val* NEW_file__Stdout(const struct type* type) {
1658 val* self /* : Stdout */;
1659 val* var /* : null */;
1660 val* var1 /* : null */;
1661 self = nit_alloc(sizeof(struct instance) + 5*sizeof(nitattribute_t));
1662 self->type = type;
1663 self->class = &class_file__Stdout;
1664 var = NULL;
1665 self->attrs[COLOR_file__FStream___path].val = var; /* _path on <self:Stdout exact> */
1666 var1 = NULL;
1667 self->attrs[COLOR_file__FStream___file].val = var1; /* _file on <self:Stdout exact> */
1668 return self;
1669 }
1670 /* allocate Stdout */
1671 void CHECK_NEW_file__Stdout(val* self) {
1672 short int var /* : Bool */;
1673 var = self->attrs[COLOR_file__OFStream___writable].s; /* _writable on <self:Stdout> */
1674 }
1675 /* runtime class file__Stderr */
1676 const struct class class_file__Stderr = {
1677 0, /* box_kind */
1678 {
1679 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to file:Stderr:kernel#Object#object_id */
1680 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to file:Stderr:kernel#Object#is_same_type */
1681 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to file:Stderr:kernel#Object#is_same_instance */
1682 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to file:Stderr:kernel#Object#== */
1683 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to file:Stderr:kernel#Object#!= */
1684 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to file:Stderr:kernel#Object#output */
1685 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to file:Stderr:kernel#Object#output_class_name */
1686 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to file:Stderr:kernel#Object#exit */
1687 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to file:Stderr:kernel#Object#sys */
1688 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to file:Stderr:kernel#Object#hash */
1689 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to file:Stderr:string#Object#to_s */
1690 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to file:Stderr:string#Object#native_class_name */
1691 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to file:Stderr:string#Object#class_name */
1692 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to file:Stderr:string#Object#inspect */
1693 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to file:Stderr:string#Object#inspect_head */
1694 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to file:Stderr:string#Object#args */
1695 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to file:Stderr:math#Object#atan2 */
1696 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to file:Stderr:math#Object#pi */
1697 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to file:Stderr:math#Object#srand_from */
1698 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to file:Stderr:math#Object#srand */
1699 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to file:Stderr:stream#Object#poll */
1700 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to file:Stderr:stream#Object#intern_poll */
1701 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to file:Stderr:time#Object#get_time */
1702 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to file:Stderr:file#Object#printn */
1703 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to file:Stderr:file#Object#print */
1704 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to file:Stderr:file#Object#getc */
1705 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to file:Stderr:file#Object#gets */
1706 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to file:Stderr:file#Object#getcwd */
1707 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to file:Stderr:file#Object#file_getcwd */
1708 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to file:Stderr:file#Object#stdin */
1709 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to file:Stderr:file#Object#stdout */
1710 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to file:Stderr:file#Object#stderr */
1711 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to file:Stderr:model_base#Object#intrude_visibility */
1712 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to file:Stderr:model_base#Object#public_visibility */
1713 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to file:Stderr:model_base#Object#protected_visibility */
1714 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to file:Stderr:model_base#Object#private_visibility */
1715 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to file:Stderr:model_base#Object#none_visibility */
1716 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to file:Stderr:model#Object#abstract_kind */
1717 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to file:Stderr:model#Object#concrete_kind */
1718 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to file:Stderr:model#Object#interface_kind */
1719 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to file:Stderr:model#Object#enum_kind */
1720 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to file:Stderr:model#Object#extern_kind */
1721 (nitmethod_t)VIRTUAL_file__OFStream__close, /* pointer to file:Stderr:file#OFStream#close */
1722 NULL, /* empty */
1723 NULL, /* empty */
1724 NULL, /* empty */
1725 NULL, /* empty */
1726 NULL, /* empty */
1727 NULL, /* empty */
1728 (nitmethod_t)VIRTUAL_file__OFStream__write, /* pointer to file:Stderr:file#OFStream#write */
1729 (nitmethod_t)VIRTUAL_file__OFStream__is_writable, /* pointer to file:Stderr:file#OFStream#is_writable */
1730 NULL, /* empty */
1731 NULL, /* empty */
1732 (nitmethod_t)VIRTUAL_file__FStream__path, /* pointer to file:Stderr:file#FStream#path */
1733 (nitmethod_t)VIRTUAL_file__FStream__file_stat, /* pointer to file:Stderr:file#FStream#file_stat */
1734 (nitmethod_t)VIRTUAL_file__FStream__init, /* pointer to file:Stderr:file#FStream#init */
1735 (nitmethod_t)VIRTUAL_file__OFStream__write_native, /* pointer to file:Stderr:file#OFStream#write_native */
1736 (nitmethod_t)VIRTUAL_file__OFStream__open, /* pointer to file:Stderr:file#OFStream#open */
1737 (nitmethod_t)VIRTUAL_file__OFStream__init, /* pointer to file:Stderr:file#OFStream#init */
1738 (nitmethod_t)VIRTUAL_file__OFStream__without_file, /* pointer to file:Stderr:file#OFStream#without_file */
1739 (nitmethod_t)VIRTUAL_file__Stderr__init, /* pointer to file:Stderr:file#Stderr#init */
1740 }
1741 };
1742 /* allocate Stderr */
1743 val* NEW_file__Stderr(const struct type* type) {
1744 val* self /* : Stderr */;
1745 val* var /* : null */;
1746 val* var1 /* : null */;
1747 self = nit_alloc(sizeof(struct instance) + 5*sizeof(nitattribute_t));
1748 self->type = type;
1749 self->class = &class_file__Stderr;
1750 var = NULL;
1751 self->attrs[COLOR_file__FStream___path].val = var; /* _path on <self:Stderr exact> */
1752 var1 = NULL;
1753 self->attrs[COLOR_file__FStream___file].val = var1; /* _file on <self:Stderr exact> */
1754 return self;
1755 }
1756 /* allocate Stderr */
1757 void CHECK_NEW_file__Stderr(val* self) {
1758 short int var /* : Bool */;
1759 var = self->attrs[COLOR_file__OFStream___writable].s; /* _writable on <self:Stderr> */
1760 }
1761 /* runtime class file__FileStat */
1762 const struct class class_file__FileStat = {
1763 6, /* box_kind */
1764 {
1765 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to file:FileStat:kernel#Object#object_id */
1766 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to file:FileStat:kernel#Object#is_same_type */
1767 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to file:FileStat:kernel#Object#is_same_instance */
1768 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to file:FileStat:kernel#Object#== */
1769 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to file:FileStat:kernel#Object#!= */
1770 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to file:FileStat:kernel#Object#output */
1771 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to file:FileStat:kernel#Object#output_class_name */
1772 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to file:FileStat:kernel#Object#exit */
1773 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to file:FileStat:kernel#Object#sys */
1774 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to file:FileStat:kernel#Object#hash */
1775 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to file:FileStat:string#Object#to_s */
1776 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to file:FileStat:string#Object#native_class_name */
1777 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to file:FileStat:string#Object#class_name */
1778 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to file:FileStat:string#Object#inspect */
1779 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to file:FileStat:string#Object#inspect_head */
1780 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to file:FileStat:string#Object#args */
1781 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to file:FileStat:math#Object#atan2 */
1782 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to file:FileStat:math#Object#pi */
1783 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to file:FileStat:math#Object#srand_from */
1784 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to file:FileStat:math#Object#srand */
1785 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to file:FileStat:stream#Object#poll */
1786 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to file:FileStat:stream#Object#intern_poll */
1787 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to file:FileStat:time#Object#get_time */
1788 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to file:FileStat:file#Object#printn */
1789 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to file:FileStat:file#Object#print */
1790 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to file:FileStat:file#Object#getc */
1791 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to file:FileStat:file#Object#gets */
1792 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to file:FileStat:file#Object#getcwd */
1793 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to file:FileStat:file#Object#file_getcwd */
1794 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to file:FileStat:file#Object#stdin */
1795 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to file:FileStat:file#Object#stdout */
1796 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to file:FileStat:file#Object#stderr */
1797 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to file:FileStat:model_base#Object#intrude_visibility */
1798 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to file:FileStat:model_base#Object#public_visibility */
1799 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to file:FileStat:model_base#Object#protected_visibility */
1800 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to file:FileStat:model_base#Object#private_visibility */
1801 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to file:FileStat:model_base#Object#none_visibility */
1802 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to file:FileStat:model#Object#abstract_kind */
1803 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to file:FileStat:model#Object#concrete_kind */
1804 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to file:FileStat:model#Object#interface_kind */
1805 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to file:FileStat:model#Object#enum_kind */
1806 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to file:FileStat:model#Object#extern_kind */
1807 (nitmethod_t)VIRTUAL_kernel__Pointer__address_is_null, /* pointer to file:FileStat:kernel#Pointer#address_is_null */
1808 (nitmethod_t)VIRTUAL_file__FileStat__mode, /* pointer to file:FileStat:file#FileStat#mode */
1809 (nitmethod_t)VIRTUAL_file__FileStat__atime, /* pointer to file:FileStat:file#FileStat#atime */
1810 (nitmethod_t)VIRTUAL_file__FileStat__ctime, /* pointer to file:FileStat:file#FileStat#ctime */
1811 (nitmethod_t)VIRTUAL_file__FileStat__mtime, /* pointer to file:FileStat:file#FileStat#mtime */
1812 (nitmethod_t)VIRTUAL_file__FileStat__size, /* pointer to file:FileStat:file#FileStat#size */
1813 (nitmethod_t)VIRTUAL_file__FileStat__is_reg, /* pointer to file:FileStat:file#FileStat#is_reg */
1814 (nitmethod_t)VIRTUAL_file__FileStat__is_dir, /* pointer to file:FileStat:file#FileStat#is_dir */
1815 (nitmethod_t)VIRTUAL_file__FileStat__is_chr, /* pointer to file:FileStat:file#FileStat#is_chr */
1816 (nitmethod_t)VIRTUAL_file__FileStat__is_blk, /* pointer to file:FileStat:file#FileStat#is_blk */
1817 (nitmethod_t)VIRTUAL_file__FileStat__is_fifo, /* pointer to file:FileStat:file#FileStat#is_fifo */
1818 (nitmethod_t)VIRTUAL_file__FileStat__is_lnk, /* pointer to file:FileStat:file#FileStat#is_lnk */
1819 (nitmethod_t)VIRTUAL_file__FileStat__is_sock, /* pointer to file:FileStat:file#FileStat#is_sock */
1820 }
1821 };
1822 /* runtime class file__NativeFile */
1823 const struct class class_file__NativeFile = {
1824 6, /* box_kind */
1825 {
1826 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to file:NativeFile:kernel#Object#object_id */
1827 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to file:NativeFile:kernel#Object#is_same_type */
1828 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to file:NativeFile:kernel#Object#is_same_instance */
1829 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to file:NativeFile:kernel#Object#== */
1830 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to file:NativeFile:kernel#Object#!= */
1831 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to file:NativeFile:kernel#Object#output */
1832 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to file:NativeFile:kernel#Object#output_class_name */
1833 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to file:NativeFile:kernel#Object#exit */
1834 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to file:NativeFile:kernel#Object#sys */
1835 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to file:NativeFile:kernel#Object#hash */
1836 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to file:NativeFile:string#Object#to_s */
1837 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to file:NativeFile:string#Object#native_class_name */
1838 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to file:NativeFile:string#Object#class_name */
1839 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to file:NativeFile:string#Object#inspect */
1840 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to file:NativeFile:string#Object#inspect_head */
1841 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to file:NativeFile:string#Object#args */
1842 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to file:NativeFile:math#Object#atan2 */
1843 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to file:NativeFile:math#Object#pi */
1844 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to file:NativeFile:math#Object#srand_from */
1845 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to file:NativeFile:math#Object#srand */
1846 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to file:NativeFile:stream#Object#poll */
1847 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to file:NativeFile:stream#Object#intern_poll */
1848 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to file:NativeFile:time#Object#get_time */
1849 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to file:NativeFile:file#Object#printn */
1850 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to file:NativeFile:file#Object#print */
1851 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to file:NativeFile:file#Object#getc */
1852 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to file:NativeFile:file#Object#gets */
1853 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to file:NativeFile:file#Object#getcwd */
1854 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to file:NativeFile:file#Object#file_getcwd */
1855 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to file:NativeFile:file#Object#stdin */
1856 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to file:NativeFile:file#Object#stdout */
1857 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to file:NativeFile:file#Object#stderr */
1858 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to file:NativeFile:model_base#Object#intrude_visibility */
1859 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to file:NativeFile:model_base#Object#public_visibility */
1860 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to file:NativeFile:model_base#Object#protected_visibility */
1861 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to file:NativeFile:model_base#Object#private_visibility */
1862 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to file:NativeFile:model_base#Object#none_visibility */
1863 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to file:NativeFile:model#Object#abstract_kind */
1864 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to file:NativeFile:model#Object#concrete_kind */
1865 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to file:NativeFile:model#Object#interface_kind */
1866 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to file:NativeFile:model#Object#enum_kind */
1867 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to file:NativeFile:model#Object#extern_kind */
1868 (nitmethod_t)VIRTUAL_kernel__Pointer__address_is_null, /* pointer to file:NativeFile:kernel#Pointer#address_is_null */
1869 (nitmethod_t)VIRTUAL_file__NativeFile__io_read, /* pointer to file:NativeFile:file#NativeFile#io_read */
1870 (nitmethod_t)VIRTUAL_file__NativeFile__io_write, /* pointer to file:NativeFile:file#NativeFile#io_write */
1871 (nitmethod_t)VIRTUAL_file__NativeFile__io_close, /* pointer to file:NativeFile:file#NativeFile#io_close */
1872 (nitmethod_t)VIRTUAL_file__NativeFile__file_stat, /* pointer to file:NativeFile:file#NativeFile#file_stat */
1873 (nitmethod_t)VIRTUAL_file__NativeFile__io_open_read, /* pointer to file:NativeFile:file#NativeFile#io_open_read */
1874 (nitmethod_t)VIRTUAL_file__NativeFile__io_open_write, /* pointer to file:NativeFile:file#NativeFile#io_open_write */
1875 (nitmethod_t)VIRTUAL_file__NativeFile__native_stdin, /* pointer to file:NativeFile:file#NativeFile#native_stdin */
1876 (nitmethod_t)VIRTUAL_file__NativeFile__native_stdout, /* pointer to file:NativeFile:file#NativeFile#native_stdout */
1877 (nitmethod_t)VIRTUAL_file__NativeFile__native_stderr, /* pointer to file:NativeFile:file#NativeFile#native_stderr */
1878 }
1879 };
1880 /* allocate NativeFile */
1881 val* BOX_file__NativeFile(void* value) {
1882 struct instance_file__NativeFile*res = nit_alloc(sizeof(struct instance_file__NativeFile));
1883 res->type = &type_file__NativeFile;
1884 res->class = &class_file__NativeFile;
1885 res->value = value;
1886 return (val*)res;
1887 }
1888 /* runtime class stream__FDIStream */
1889 /* allocate FDIStream */
1890 val* NEW_stream__FDIStream(const struct type* type) {
1891 fprintf(stderr, "Runtime error: %s", "FDIStream is DEAD");
1892 fprintf(stderr, "\n");
1893 exit(1);
1894 }
1895 /* allocate FDIStream */
1896 void CHECK_NEW_stream__FDIStream(val* self) {
1897 fprintf(stderr, "Runtime error: %s", "FDIStream is DEAD");
1898 fprintf(stderr, "\n");
1899 exit(1);
1900 }
1901 /* runtime class stream__FDOStream */
1902 /* allocate FDOStream */
1903 val* NEW_stream__FDOStream(const struct type* type) {
1904 fprintf(stderr, "Runtime error: %s", "FDOStream is DEAD");
1905 fprintf(stderr, "\n");
1906 exit(1);
1907 }
1908 /* allocate FDOStream */
1909 void CHECK_NEW_stream__FDOStream(val* self) {
1910 fprintf(stderr, "Runtime error: %s", "FDOStream is DEAD");
1911 fprintf(stderr, "\n");
1912 exit(1);
1913 }
1914 /* runtime class stream__FDIOStream */
1915 /* allocate FDIOStream */
1916 val* NEW_stream__FDIOStream(const struct type* type) {
1917 fprintf(stderr, "Runtime error: %s", "FDIOStream is DEAD");
1918 fprintf(stderr, "\n");
1919 exit(1);
1920 }
1921 /* allocate FDIOStream */
1922 void CHECK_NEW_stream__FDIOStream(val* self) {
1923 fprintf(stderr, "Runtime error: %s", "FDIOStream is DEAD");
1924 fprintf(stderr, "\n");
1925 exit(1);
1926 }
1927 /* runtime class string_search__BM_Pattern */
1928 /* allocate BM_Pattern */
1929 val* NEW_string_search__BM_Pattern(const struct type* type) {
1930 fprintf(stderr, "Runtime error: %s", "BM_Pattern is DEAD");
1931 fprintf(stderr, "\n");
1932 exit(1);
1933 }
1934 /* allocate BM_Pattern */
1935 void CHECK_NEW_string_search__BM_Pattern(val* self) {
1936 fprintf(stderr, "Runtime error: %s", "BM_Pattern is DEAD");
1937 fprintf(stderr, "\n");
1938 exit(1);
1939 }
1940 /* runtime class string_search__Match */
1941 const struct class class_string_search__Match = {
1942 0, /* box_kind */
1943 {
1944 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to string_search:Match:kernel#Object#object_id */
1945 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to string_search:Match:kernel#Object#is_same_type */
1946 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to string_search:Match:kernel#Object#is_same_instance */
1947 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to string_search:Match:kernel#Object#== */
1948 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to string_search:Match:kernel#Object#!= */
1949 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to string_search:Match:kernel#Object#output */
1950 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to string_search:Match:kernel#Object#output_class_name */
1951 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to string_search:Match:kernel#Object#exit */
1952 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to string_search:Match:kernel#Object#sys */
1953 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to string_search:Match:kernel#Object#hash */
1954 (nitmethod_t)VIRTUAL_string_search__Match__to_s, /* pointer to string_search:Match:string_search#Match#to_s */
1955 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to string_search:Match:string#Object#native_class_name */
1956 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to string_search:Match:string#Object#class_name */
1957 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to string_search:Match:string#Object#inspect */
1958 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to string_search:Match:string#Object#inspect_head */
1959 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to string_search:Match:string#Object#args */
1960 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to string_search:Match:math#Object#atan2 */
1961 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to string_search:Match:math#Object#pi */
1962 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to string_search:Match:math#Object#srand_from */
1963 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to string_search:Match:math#Object#srand */
1964 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to string_search:Match:stream#Object#poll */
1965 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to string_search:Match:stream#Object#intern_poll */
1966 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to string_search:Match:time#Object#get_time */
1967 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to string_search:Match:file#Object#printn */
1968 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to string_search:Match:file#Object#print */
1969 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to string_search:Match:file#Object#getc */
1970 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to string_search:Match:file#Object#gets */
1971 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to string_search:Match:file#Object#getcwd */
1972 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to string_search:Match:file#Object#file_getcwd */
1973 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to string_search:Match:file#Object#stdin */
1974 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to string_search:Match:file#Object#stdout */
1975 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to string_search:Match:file#Object#stderr */
1976 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to string_search:Match:model_base#Object#intrude_visibility */
1977 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to string_search:Match:model_base#Object#public_visibility */
1978 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to string_search:Match:model_base#Object#protected_visibility */
1979 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to string_search:Match:model_base#Object#private_visibility */
1980 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to string_search:Match:model_base#Object#none_visibility */
1981 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to string_search:Match:model#Object#abstract_kind */
1982 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to string_search:Match:model#Object#concrete_kind */
1983 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to string_search:Match:model#Object#interface_kind */
1984 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to string_search:Match:model#Object#enum_kind */
1985 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to string_search:Match:model#Object#extern_kind */
1986 (nitmethod_t)VIRTUAL_string_search__Match__string, /* pointer to string_search:Match:string_search#Match#string */
1987 (nitmethod_t)VIRTUAL_string_search__Match__from, /* pointer to string_search:Match:string_search#Match#from */
1988 (nitmethod_t)VIRTUAL_string_search__Match__length, /* pointer to string_search:Match:string_search#Match#length */
1989 (nitmethod_t)VIRTUAL_string_search__Match__after, /* pointer to string_search:Match:string_search#Match#after */
1990 (nitmethod_t)VIRTUAL_string_search__Match__init, /* pointer to string_search:Match:string_search#Match#init */
1991 }
1992 };
1993 /* allocate Match */
1994 val* NEW_string_search__Match(const struct type* type) {
1995 val* self /* : Match */;
1996 self = nit_alloc(sizeof(struct instance) + 3*sizeof(nitattribute_t));
1997 self->type = type;
1998 self->class = &class_string_search__Match;
1999 return self;
2000 }
2001 /* allocate Match */
2002 void CHECK_NEW_string_search__Match(val* self) {
2003 val* var /* : String */;
2004 long var1 /* : Int */;
2005 long var2 /* : Int */;
2006 var = self->attrs[COLOR_string_search__Match___string].val; /* _string on <self:Match> */
2007 if (var == NULL) {
2008 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _string");
2009 fprintf(stderr, " (%s:%d)\n", "lib/standard/string_search.nit", 207);
2010 exit(1);
2011 }
2012 var1 = self->attrs[COLOR_string_search__Match___from].l; /* _from on <self:Match> */
2013 var2 = self->attrs[COLOR_string_search__Match___length].l; /* _length on <self:Match> */
2014 }
2015 /* runtime class time__TimeT */
2016 const struct class class_time__TimeT = {
2017 6, /* box_kind */
2018 {
2019 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to time:TimeT:kernel#Object#object_id */
2020 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to time:TimeT:kernel#Object#is_same_type */
2021 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to time:TimeT:kernel#Object#is_same_instance */
2022 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to time:TimeT:kernel#Object#== */
2023 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to time:TimeT:kernel#Object#!= */
2024 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to time:TimeT:kernel#Object#output */
2025 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to time:TimeT:kernel#Object#output_class_name */
2026 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to time:TimeT:kernel#Object#exit */
2027 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to time:TimeT:kernel#Object#sys */
2028 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to time:TimeT:kernel#Object#hash */
2029 (nitmethod_t)VIRTUAL_time__TimeT__to_s, /* pointer to time:TimeT:time#TimeT#to_s */
2030 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to time:TimeT:string#Object#native_class_name */
2031 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to time:TimeT:string#Object#class_name */
2032 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to time:TimeT:string#Object#inspect */
2033 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to time:TimeT:string#Object#inspect_head */
2034 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to time:TimeT:string#Object#args */
2035 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to time:TimeT:math#Object#atan2 */
2036 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to time:TimeT:math#Object#pi */
2037 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to time:TimeT:math#Object#srand_from */
2038 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to time:TimeT:math#Object#srand */
2039 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to time:TimeT:stream#Object#poll */
2040 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to time:TimeT:stream#Object#intern_poll */
2041 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to time:TimeT:time#Object#get_time */
2042 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to time:TimeT:file#Object#printn */
2043 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to time:TimeT:file#Object#print */
2044 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to time:TimeT:file#Object#getc */
2045 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to time:TimeT:file#Object#gets */
2046 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to time:TimeT:file#Object#getcwd */
2047 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to time:TimeT:file#Object#file_getcwd */
2048 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to time:TimeT:file#Object#stdin */
2049 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to time:TimeT:file#Object#stdout */
2050 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to time:TimeT:file#Object#stderr */
2051 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to time:TimeT:model_base#Object#intrude_visibility */
2052 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to time:TimeT:model_base#Object#public_visibility */
2053 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to time:TimeT:model_base#Object#protected_visibility */
2054 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to time:TimeT:model_base#Object#private_visibility */
2055 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to time:TimeT:model_base#Object#none_visibility */
2056 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to time:TimeT:model#Object#abstract_kind */
2057 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to time:TimeT:model#Object#concrete_kind */
2058 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to time:TimeT:model#Object#interface_kind */
2059 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to time:TimeT:model#Object#enum_kind */
2060 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to time:TimeT:model#Object#extern_kind */
2061 (nitmethod_t)VIRTUAL_kernel__Pointer__address_is_null, /* pointer to time:TimeT:kernel#Pointer#address_is_null */
2062 (nitmethod_t)VIRTUAL_time__TimeT__init, /* pointer to time:TimeT:time#TimeT#init */
2063 (nitmethod_t)VIRTUAL_time__TimeT__from_i, /* pointer to time:TimeT:time#TimeT#from_i */
2064 (nitmethod_t)VIRTUAL_time__TimeT__update, /* pointer to time:TimeT:time#TimeT#update */
2065 (nitmethod_t)VIRTUAL_time__TimeT__ctime, /* pointer to time:TimeT:time#TimeT#ctime */
2066 (nitmethod_t)VIRTUAL_time__TimeT__difftime, /* pointer to time:TimeT:time#TimeT#difftime */
2067 (nitmethod_t)VIRTUAL_time__TimeT__to_i, /* pointer to time:TimeT:time#TimeT#to_i */
2068 }
2069 };
2070 /* runtime class time__Tm */
2071 const struct class class_time__Tm = {
2072 6, /* box_kind */
2073 {
2074 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to time:Tm:kernel#Object#object_id */
2075 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to time:Tm:kernel#Object#is_same_type */
2076 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to time:Tm:kernel#Object#is_same_instance */
2077 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to time:Tm:kernel#Object#== */
2078 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to time:Tm:kernel#Object#!= */
2079 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to time:Tm:kernel#Object#output */
2080 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to time:Tm:kernel#Object#output_class_name */
2081 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to time:Tm:kernel#Object#exit */
2082 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to time:Tm:kernel#Object#sys */
2083 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to time:Tm:kernel#Object#hash */
2084 (nitmethod_t)VIRTUAL_time__Tm__to_s, /* pointer to time:Tm:time#Tm#to_s */
2085 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to time:Tm:string#Object#native_class_name */
2086 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to time:Tm:string#Object#class_name */
2087 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to time:Tm:string#Object#inspect */
2088 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to time:Tm:string#Object#inspect_head */
2089 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to time:Tm:string#Object#args */
2090 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to time:Tm:math#Object#atan2 */
2091 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to time:Tm:math#Object#pi */
2092 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to time:Tm:math#Object#srand_from */
2093 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to time:Tm:math#Object#srand */
2094 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to time:Tm:stream#Object#poll */
2095 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to time:Tm:stream#Object#intern_poll */
2096 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to time:Tm:time#Object#get_time */
2097 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to time:Tm:file#Object#printn */
2098 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to time:Tm:file#Object#print */
2099 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to time:Tm:file#Object#getc */
2100 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to time:Tm:file#Object#gets */
2101 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to time:Tm:file#Object#getcwd */
2102 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to time:Tm:file#Object#file_getcwd */
2103 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to time:Tm:file#Object#stdin */
2104 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to time:Tm:file#Object#stdout */
2105 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to time:Tm:file#Object#stderr */
2106 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to time:Tm:model_base#Object#intrude_visibility */
2107 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to time:Tm:model_base#Object#public_visibility */
2108 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to time:Tm:model_base#Object#protected_visibility */
2109 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to time:Tm:model_base#Object#private_visibility */
2110 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to time:Tm:model_base#Object#none_visibility */
2111 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to time:Tm:model#Object#abstract_kind */
2112 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to time:Tm:model#Object#concrete_kind */
2113 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to time:Tm:model#Object#interface_kind */
2114 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to time:Tm:model#Object#enum_kind */
2115 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to time:Tm:model#Object#extern_kind */
2116 (nitmethod_t)VIRTUAL_kernel__Pointer__address_is_null, /* pointer to time:Tm:kernel#Pointer#address_is_null */
2117 (nitmethod_t)VIRTUAL_time__Tm__gmtime, /* pointer to time:Tm:time#Tm#gmtime */
2118 (nitmethod_t)VIRTUAL_time__Tm__gmtime_from_timet, /* pointer to time:Tm:time#Tm#gmtime_from_timet */
2119 (nitmethod_t)VIRTUAL_time__Tm__localtime, /* pointer to time:Tm:time#Tm#localtime */
2120 (nitmethod_t)VIRTUAL_time__Tm__localtime_from_timet, /* pointer to time:Tm:time#Tm#localtime_from_timet */
2121 (nitmethod_t)VIRTUAL_time__Tm__to_timet, /* pointer to time:Tm:time#Tm#to_timet */
2122 (nitmethod_t)VIRTUAL_time__Tm__sec, /* pointer to time:Tm:time#Tm#sec */
2123 (nitmethod_t)VIRTUAL_time__Tm__min, /* pointer to time:Tm:time#Tm#min */
2124 (nitmethod_t)VIRTUAL_time__Tm__hour, /* pointer to time:Tm:time#Tm#hour */
2125 (nitmethod_t)VIRTUAL_time__Tm__mday, /* pointer to time:Tm:time#Tm#mday */
2126 (nitmethod_t)VIRTUAL_time__Tm__mon, /* pointer to time:Tm:time#Tm#mon */
2127 (nitmethod_t)VIRTUAL_time__Tm__year, /* pointer to time:Tm:time#Tm#year */
2128 (nitmethod_t)VIRTUAL_time__Tm__wday, /* pointer to time:Tm:time#Tm#wday */
2129 (nitmethod_t)VIRTUAL_time__Tm__yday, /* pointer to time:Tm:time#Tm#yday */
2130 (nitmethod_t)VIRTUAL_time__Tm__is_dst, /* pointer to time:Tm:time#Tm#is_dst */
2131 (nitmethod_t)VIRTUAL_time__Tm__asctime, /* pointer to time:Tm:time#Tm#asctime */
2132 (nitmethod_t)VIRTUAL_time__Tm__strftime, /* pointer to time:Tm:time#Tm#strftime */
2133 }
2134 };
2135 /* runtime class exec__Process */
2136 /* allocate Process */
2137 val* NEW_exec__Process(const struct type* type) {
2138 fprintf(stderr, "Runtime error: %s", "Process is DEAD");
2139 fprintf(stderr, "\n");
2140 exit(1);
2141 }
2142 /* allocate Process */
2143 void CHECK_NEW_exec__Process(val* self) {
2144 fprintf(stderr, "Runtime error: %s", "Process is DEAD");
2145 fprintf(stderr, "\n");
2146 exit(1);
2147 }
2148 /* runtime class exec__IProcess */
2149 /* allocate IProcess */
2150 val* NEW_exec__IProcess(const struct type* type) {
2151 fprintf(stderr, "Runtime error: %s", "IProcess is DEAD");
2152 fprintf(stderr, "\n");
2153 exit(1);
2154 }
2155 /* allocate IProcess */
2156 void CHECK_NEW_exec__IProcess(val* self) {
2157 fprintf(stderr, "Runtime error: %s", "IProcess is DEAD");
2158 fprintf(stderr, "\n");
2159 exit(1);
2160 }
2161 /* runtime class exec__OProcess */
2162 /* allocate OProcess */
2163 val* NEW_exec__OProcess(const struct type* type) {
2164 fprintf(stderr, "Runtime error: %s", "OProcess is DEAD");
2165 fprintf(stderr, "\n");
2166 exit(1);
2167 }
2168 /* allocate OProcess */
2169 void CHECK_NEW_exec__OProcess(val* self) {
2170 fprintf(stderr, "Runtime error: %s", "OProcess is DEAD");
2171 fprintf(stderr, "\n");
2172 exit(1);
2173 }
2174 /* runtime class exec__IOProcess */
2175 /* allocate IOProcess */
2176 val* NEW_exec__IOProcess(const struct type* type) {
2177 fprintf(stderr, "Runtime error: %s", "IOProcess is DEAD");
2178 fprintf(stderr, "\n");
2179 exit(1);
2180 }
2181 /* allocate IOProcess */
2182 void CHECK_NEW_exec__IOProcess(val* self) {
2183 fprintf(stderr, "Runtime error: %s", "IOProcess is DEAD");
2184 fprintf(stderr, "\n");
2185 exit(1);
2186 }
2187 /* runtime class exec__NativeProcess */
2188 const struct class class_exec__NativeProcess = {
2189 6, /* box_kind */
2190 {
2191 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to exec:NativeProcess:kernel#Object#object_id */
2192 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to exec:NativeProcess:kernel#Object#is_same_type */
2193 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to exec:NativeProcess:kernel#Object#is_same_instance */
2194 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to exec:NativeProcess:kernel#Object#== */
2195 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to exec:NativeProcess:kernel#Object#!= */
2196 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to exec:NativeProcess:kernel#Object#output */
2197 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to exec:NativeProcess:kernel#Object#output_class_name */
2198 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to exec:NativeProcess:kernel#Object#exit */
2199 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to exec:NativeProcess:kernel#Object#sys */
2200 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to exec:NativeProcess:kernel#Object#hash */
2201 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to exec:NativeProcess:string#Object#to_s */
2202 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to exec:NativeProcess:string#Object#native_class_name */
2203 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to exec:NativeProcess:string#Object#class_name */
2204 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to exec:NativeProcess:string#Object#inspect */
2205 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to exec:NativeProcess:string#Object#inspect_head */
2206 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to exec:NativeProcess:string#Object#args */
2207 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to exec:NativeProcess:math#Object#atan2 */
2208 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to exec:NativeProcess:math#Object#pi */
2209 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to exec:NativeProcess:math#Object#srand_from */
2210 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to exec:NativeProcess:math#Object#srand */
2211 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to exec:NativeProcess:stream#Object#poll */
2212 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to exec:NativeProcess:stream#Object#intern_poll */
2213 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to exec:NativeProcess:time#Object#get_time */
2214 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to exec:NativeProcess:file#Object#printn */
2215 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to exec:NativeProcess:file#Object#print */
2216 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to exec:NativeProcess:file#Object#getc */
2217 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to exec:NativeProcess:file#Object#gets */
2218 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to exec:NativeProcess:file#Object#getcwd */
2219 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to exec:NativeProcess:file#Object#file_getcwd */
2220 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to exec:NativeProcess:file#Object#stdin */
2221 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to exec:NativeProcess:file#Object#stdout */
2222 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to exec:NativeProcess:file#Object#stderr */
2223 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to exec:NativeProcess:model_base#Object#intrude_visibility */
2224 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to exec:NativeProcess:model_base#Object#public_visibility */
2225 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to exec:NativeProcess:model_base#Object#protected_visibility */
2226 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to exec:NativeProcess:model_base#Object#private_visibility */
2227 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to exec:NativeProcess:model_base#Object#none_visibility */
2228 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to exec:NativeProcess:model#Object#abstract_kind */
2229 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to exec:NativeProcess:model#Object#concrete_kind */
2230 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to exec:NativeProcess:model#Object#interface_kind */
2231 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to exec:NativeProcess:model#Object#enum_kind */
2232 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to exec:NativeProcess:model#Object#extern_kind */
2233 (nitmethod_t)VIRTUAL_kernel__Pointer__address_is_null, /* pointer to exec:NativeProcess:kernel#Pointer#address_is_null */
2234 (nitmethod_t)VIRTUAL_exec__NativeProcess__id, /* pointer to exec:NativeProcess:exec#NativeProcess#id */
2235 (nitmethod_t)VIRTUAL_exec__NativeProcess__is_finished, /* pointer to exec:NativeProcess:exec#NativeProcess#is_finished */
2236 (nitmethod_t)VIRTUAL_exec__NativeProcess__status, /* pointer to exec:NativeProcess:exec#NativeProcess#status */
2237 (nitmethod_t)VIRTUAL_exec__NativeProcess__wait, /* pointer to exec:NativeProcess:exec#NativeProcess#wait */
2238 (nitmethod_t)VIRTUAL_exec__NativeProcess__in_fd, /* pointer to exec:NativeProcess:exec#NativeProcess#in_fd */
2239 (nitmethod_t)VIRTUAL_exec__NativeProcess__out_fd, /* pointer to exec:NativeProcess:exec#NativeProcess#out_fd */
2240 (nitmethod_t)VIRTUAL_exec__NativeProcess__err_fd, /* pointer to exec:NativeProcess:exec#NativeProcess#err_fd */
2241 }
2242 };
2243 /* runtime class model__MClassDefSorter */
2244 const struct class class_model__MClassDefSorter = {
2245 0, /* box_kind */
2246 {
2247 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MClassDefSorter:kernel#Object#object_id */
2248 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MClassDefSorter:kernel#Object#is_same_type */
2249 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MClassDefSorter:kernel#Object#is_same_instance */
2250 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MClassDefSorter:kernel#Object#== */
2251 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MClassDefSorter:kernel#Object#!= */
2252 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MClassDefSorter:kernel#Object#output */
2253 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MClassDefSorter:kernel#Object#output_class_name */
2254 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MClassDefSorter:kernel#Object#exit */
2255 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MClassDefSorter:kernel#Object#sys */
2256 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MClassDefSorter:kernel#Object#hash */
2257 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to model:MClassDefSorter:string#Object#to_s */
2258 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MClassDefSorter:string#Object#native_class_name */
2259 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MClassDefSorter:string#Object#class_name */
2260 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MClassDefSorter:string#Object#inspect */
2261 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MClassDefSorter:string#Object#inspect_head */
2262 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MClassDefSorter:string#Object#args */
2263 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MClassDefSorter:math#Object#atan2 */
2264 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MClassDefSorter:math#Object#pi */
2265 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MClassDefSorter:math#Object#srand_from */
2266 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MClassDefSorter:math#Object#srand */
2267 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MClassDefSorter:stream#Object#poll */
2268 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MClassDefSorter:stream#Object#intern_poll */
2269 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MClassDefSorter:time#Object#get_time */
2270 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MClassDefSorter:file#Object#printn */
2271 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MClassDefSorter:file#Object#print */
2272 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MClassDefSorter:file#Object#getc */
2273 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MClassDefSorter:file#Object#gets */
2274 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MClassDefSorter:file#Object#getcwd */
2275 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MClassDefSorter:file#Object#file_getcwd */
2276 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MClassDefSorter:file#Object#stdin */
2277 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MClassDefSorter:file#Object#stdout */
2278 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MClassDefSorter:file#Object#stderr */
2279 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MClassDefSorter:model_base#Object#intrude_visibility */
2280 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MClassDefSorter:model_base#Object#public_visibility */
2281 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MClassDefSorter:model_base#Object#protected_visibility */
2282 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MClassDefSorter:model_base#Object#private_visibility */
2283 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MClassDefSorter:model_base#Object#none_visibility */
2284 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MClassDefSorter:model#Object#abstract_kind */
2285 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MClassDefSorter:model#Object#concrete_kind */
2286 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MClassDefSorter:model#Object#interface_kind */
2287 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MClassDefSorter:model#Object#enum_kind */
2288 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MClassDefSorter:model#Object#extern_kind */
2289 NULL, /* empty */
2290 NULL, /* empty */
2291 NULL, /* empty */
2292 NULL, /* empty */
2293 NULL, /* empty */
2294 NULL, /* empty */
2295 NULL, /* empty */
2296 NULL, /* empty */
2297 NULL, /* empty */
2298 NULL, /* empty */
2299 NULL, /* empty */
2300 NULL, /* empty */
2301 NULL, /* empty */
2302 NULL, /* empty */
2303 NULL, /* empty */
2304 NULL, /* empty */
2305 NULL, /* empty */
2306 NULL, /* empty */
2307 NULL, /* empty */
2308 NULL, /* empty */
2309 NULL, /* empty */
2310 NULL, /* empty */
2311 NULL, /* empty */
2312 NULL, /* empty */
2313 NULL, /* empty */
2314 NULL, /* empty */
2315 NULL, /* empty */
2316 NULL, /* empty */
2317 NULL, /* empty */
2318 (nitmethod_t)VIRTUAL_model__MClassDefSorter__compare, /* pointer to model:MClassDefSorter:model#MClassDefSorter#compare */
2319 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sort, /* pointer to model:MClassDefSorter:sorter#AbstractSorter#sort */
2320 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sub_sort, /* pointer to model:MClassDefSorter:sorter#AbstractSorter#sub_sort */
2321 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__quick_sort, /* pointer to model:MClassDefSorter:sorter#AbstractSorter#quick_sort */
2322 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__bubble_sort, /* pointer to model:MClassDefSorter:sorter#AbstractSorter#bubble_sort */
2323 (nitmethod_t)VIRTUAL_model__MClassDefSorter__mmodule, /* pointer to model:MClassDefSorter:model#MClassDefSorter#mmodule */
2324 (nitmethod_t)VIRTUAL_model__MClassDefSorter__mmodule_61d, /* pointer to model:MClassDefSorter:model#MClassDefSorter#mmodule= */
2325 (nitmethod_t)VIRTUAL_model__MClassDefSorter__init, /* pointer to model:MClassDefSorter:model#MClassDefSorter#init */
2326 }
2327 };
2328 /* allocate MClassDefSorter */
2329 val* NEW_model__MClassDefSorter(const struct type* type) {
2330 val* self /* : MClassDefSorter */;
2331 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
2332 self->type = type;
2333 self->class = &class_model__MClassDefSorter;
2334 return self;
2335 }
2336 /* allocate MClassDefSorter */
2337 void CHECK_NEW_model__MClassDefSorter(val* self) {
2338 val* var /* : MModule */;
2339 var = self->attrs[COLOR_model__MClassDefSorter___64dmmodule].val; /* @mmodule on <self:MClassDefSorter> */
2340 if (var == NULL) {
2341 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mmodule");
2342 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 255);
2343 exit(1);
2344 }
2345 }
2346 /* runtime class model__MPropDefSorter */
2347 const struct class class_model__MPropDefSorter = {
2348 0, /* box_kind */
2349 {
2350 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MPropDefSorter:kernel#Object#object_id */
2351 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MPropDefSorter:kernel#Object#is_same_type */
2352 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MPropDefSorter:kernel#Object#is_same_instance */
2353 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MPropDefSorter:kernel#Object#== */
2354 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MPropDefSorter:kernel#Object#!= */
2355 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MPropDefSorter:kernel#Object#output */
2356 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MPropDefSorter:kernel#Object#output_class_name */
2357 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MPropDefSorter:kernel#Object#exit */
2358 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MPropDefSorter:kernel#Object#sys */
2359 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MPropDefSorter:kernel#Object#hash */
2360 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to model:MPropDefSorter:string#Object#to_s */
2361 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MPropDefSorter:string#Object#native_class_name */
2362 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MPropDefSorter:string#Object#class_name */
2363 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MPropDefSorter:string#Object#inspect */
2364 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MPropDefSorter:string#Object#inspect_head */
2365 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MPropDefSorter:string#Object#args */
2366 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MPropDefSorter:math#Object#atan2 */
2367 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MPropDefSorter:math#Object#pi */
2368 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MPropDefSorter:math#Object#srand_from */
2369 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MPropDefSorter:math#Object#srand */
2370 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MPropDefSorter:stream#Object#poll */
2371 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MPropDefSorter:stream#Object#intern_poll */
2372 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MPropDefSorter:time#Object#get_time */
2373 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MPropDefSorter:file#Object#printn */
2374 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MPropDefSorter:file#Object#print */
2375 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MPropDefSorter:file#Object#getc */
2376 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MPropDefSorter:file#Object#gets */
2377 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MPropDefSorter:file#Object#getcwd */
2378 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MPropDefSorter:file#Object#file_getcwd */
2379 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MPropDefSorter:file#Object#stdin */
2380 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MPropDefSorter:file#Object#stdout */
2381 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MPropDefSorter:file#Object#stderr */
2382 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MPropDefSorter:model_base#Object#intrude_visibility */
2383 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MPropDefSorter:model_base#Object#public_visibility */
2384 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MPropDefSorter:model_base#Object#protected_visibility */
2385 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MPropDefSorter:model_base#Object#private_visibility */
2386 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MPropDefSorter:model_base#Object#none_visibility */
2387 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MPropDefSorter:model#Object#abstract_kind */
2388 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MPropDefSorter:model#Object#concrete_kind */
2389 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MPropDefSorter:model#Object#interface_kind */
2390 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MPropDefSorter:model#Object#enum_kind */
2391 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MPropDefSorter:model#Object#extern_kind */
2392 NULL, /* empty */
2393 NULL, /* empty */
2394 NULL, /* empty */
2395 NULL, /* empty */
2396 NULL, /* empty */
2397 NULL, /* empty */
2398 NULL, /* empty */
2399 NULL, /* empty */
2400 NULL, /* empty */
2401 NULL, /* empty */
2402 NULL, /* empty */
2403 NULL, /* empty */
2404 NULL, /* empty */
2405 NULL, /* empty */
2406 NULL, /* empty */
2407 NULL, /* empty */
2408 NULL, /* empty */
2409 NULL, /* empty */
2410 NULL, /* empty */
2411 NULL, /* empty */
2412 NULL, /* empty */
2413 NULL, /* empty */
2414 NULL, /* empty */
2415 NULL, /* empty */
2416 NULL, /* empty */
2417 NULL, /* empty */
2418 NULL, /* empty */
2419 NULL, /* empty */
2420 NULL, /* empty */
2421 (nitmethod_t)VIRTUAL_model__MPropDefSorter__compare, /* pointer to model:MPropDefSorter:model#MPropDefSorter#compare */
2422 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sort, /* pointer to model:MPropDefSorter:sorter#AbstractSorter#sort */
2423 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sub_sort, /* pointer to model:MPropDefSorter:sorter#AbstractSorter#sub_sort */
2424 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__quick_sort, /* pointer to model:MPropDefSorter:sorter#AbstractSorter#quick_sort */
2425 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__bubble_sort, /* pointer to model:MPropDefSorter:sorter#AbstractSorter#bubble_sort */
2426 (nitmethod_t)VIRTUAL_model__MPropDefSorter__mmodule, /* pointer to model:MPropDefSorter:model#MPropDefSorter#mmodule */
2427 (nitmethod_t)VIRTUAL_model__MPropDefSorter__mmodule_61d, /* pointer to model:MPropDefSorter:model#MPropDefSorter#mmodule= */
2428 (nitmethod_t)VIRTUAL_model__MPropDefSorter__init, /* pointer to model:MPropDefSorter:model#MPropDefSorter#init */
2429 }
2430 };
2431 /* allocate MPropDefSorter */
2432 val* NEW_model__MPropDefSorter(const struct type* type) {
2433 val* self /* : MPropDefSorter */;
2434 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
2435 self->type = type;
2436 self->class = &class_model__MPropDefSorter;
2437 return self;
2438 }
2439 /* allocate MPropDefSorter */
2440 void CHECK_NEW_model__MPropDefSorter(val* self) {
2441 val* var /* : MModule */;
2442 var = self->attrs[COLOR_model__MPropDefSorter___64dmmodule].val; /* @mmodule on <self:MPropDefSorter> */
2443 if (var == NULL) {
2444 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mmodule");
2445 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 267);
2446 exit(1);
2447 }
2448 }
2449 /* runtime class model__MClass */
2450 const struct class class_model__MClass = {
2451 0, /* box_kind */
2452 {
2453 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MClass:kernel#Object#object_id */
2454 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MClass:kernel#Object#is_same_type */
2455 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MClass:kernel#Object#is_same_instance */
2456 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MClass:kernel#Object#== */
2457 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MClass:kernel#Object#!= */
2458 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MClass:kernel#Object#output */
2459 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MClass:kernel#Object#output_class_name */
2460 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MClass:kernel#Object#exit */
2461 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MClass:kernel#Object#sys */
2462 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MClass:kernel#Object#hash */
2463 (nitmethod_t)VIRTUAL_model__MClass__to_s, /* pointer to model:MClass:model#MClass#to_s */
2464 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MClass:string#Object#native_class_name */
2465 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MClass:string#Object#class_name */
2466 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MClass:string#Object#inspect */
2467 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MClass:string#Object#inspect_head */
2468 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MClass:string#Object#args */
2469 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MClass:math#Object#atan2 */
2470 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MClass:math#Object#pi */
2471 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MClass:math#Object#srand_from */
2472 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MClass:math#Object#srand */
2473 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MClass:stream#Object#poll */
2474 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MClass:stream#Object#intern_poll */
2475 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MClass:time#Object#get_time */
2476 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MClass:file#Object#printn */
2477 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MClass:file#Object#print */
2478 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MClass:file#Object#getc */
2479 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MClass:file#Object#gets */
2480 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MClass:file#Object#getcwd */
2481 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MClass:file#Object#file_getcwd */
2482 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MClass:file#Object#stdin */
2483 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MClass:file#Object#stdout */
2484 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MClass:file#Object#stderr */
2485 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MClass:model_base#Object#intrude_visibility */
2486 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MClass:model_base#Object#public_visibility */
2487 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MClass:model_base#Object#protected_visibility */
2488 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MClass:model_base#Object#private_visibility */
2489 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MClass:model_base#Object#none_visibility */
2490 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MClass:model#Object#abstract_kind */
2491 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MClass:model#Object#concrete_kind */
2492 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MClass:model#Object#interface_kind */
2493 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MClass:model#Object#enum_kind */
2494 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MClass:model#Object#extern_kind */
2495 (nitmethod_t)VIRTUAL_model__MClass__intro_mmodule, /* pointer to model:MClass:model#MClass#intro_mmodule */
2496 (nitmethod_t)VIRTUAL_model__MClass__intro_mmodule_61d, /* pointer to model:MClass:model#MClass#intro_mmodule= */
2497 (nitmethod_t)VIRTUAL_model__MClass__name, /* pointer to model:MClass:model#MClass#name */
2498 (nitmethod_t)VIRTUAL_model__MClass__name_61d, /* pointer to model:MClass:model#MClass#name= */
2499 (nitmethod_t)VIRTUAL_model__MClass__full_name, /* pointer to model:MClass:model#MClass#full_name */
2500 (nitmethod_t)VIRTUAL_model__MClass__arity, /* pointer to model:MClass:model#MClass#arity */
2501 (nitmethod_t)VIRTUAL_model__MClass__arity_61d, /* pointer to model:MClass:model#MClass#arity= */
2502 (nitmethod_t)VIRTUAL_model__MClass__kind, /* pointer to model:MClass:model#MClass#kind */
2503 (nitmethod_t)VIRTUAL_model__MClass__kind_61d, /* pointer to model:MClass:model#MClass#kind= */
2504 (nitmethod_t)VIRTUAL_model__MClass__visibility, /* pointer to model:MClass:model#MClass#visibility */
2505 (nitmethod_t)VIRTUAL_model__MClass__visibility_61d, /* pointer to model:MClass:model#MClass#visibility= */
2506 (nitmethod_t)VIRTUAL_model__MClass__init, /* pointer to model:MClass:model#MClass#init */
2507 (nitmethod_t)VIRTUAL_model__MClass__mclassdefs, /* pointer to model:MClass:model#MClass#mclassdefs */
2508 (nitmethod_t)VIRTUAL_model__MClass__mclassdefs_61d, /* pointer to model:MClass:model#MClass#mclassdefs= */
2509 (nitmethod_t)VIRTUAL_model__MClass__intro, /* pointer to model:MClass:model#MClass#intro */
2510 (nitmethod_t)VIRTUAL_model__MClass__in_hierarchy, /* pointer to model:MClass:model#MClass#in_hierarchy */
2511 (nitmethod_t)VIRTUAL_model__MClass__mclass_type, /* pointer to model:MClass:model#MClass#mclass_type */
2512 (nitmethod_t)VIRTUAL_model__MClass__mclass_type_61d, /* pointer to model:MClass:model#MClass#mclass_type= */
2513 (nitmethod_t)VIRTUAL_model__MClass__get_mtype, /* pointer to model:MClass:model#MClass#get_mtype */
2514 (nitmethod_t)VIRTUAL_model__MClass__get_mtype_cache, /* pointer to model:MClass:model#MClass#get_mtype_cache */
2515 (nitmethod_t)VIRTUAL_model__MClass__get_mtype_cache_61d, /* pointer to model:MClass:model#MClass#get_mtype_cache= */
2516 (nitmethod_t)VIRTUAL_modelize_property__MClass__inherit_init_from, /* pointer to model:MClass:modelize_property#MClass#inherit_init_from */
2517 (nitmethod_t)VIRTUAL_modelize_property__MClass__inherit_init_from_61d, /* pointer to model:MClass:modelize_property#MClass#inherit_init_from= */
2518 (nitmethod_t)VIRTUAL_abstract_compiler__MClass__c_name, /* pointer to model:MClass:abstract_compiler#MClass#c_name */
2519 (nitmethod_t)VIRTUAL_abstract_compiler__MClass__c_name_cache, /* pointer to model:MClass:abstract_compiler#MClass#c_name_cache */
2520 (nitmethod_t)VIRTUAL_abstract_compiler__MClass__c_name_cache_61d, /* pointer to model:MClass:abstract_compiler#MClass#c_name_cache= */
2521 }
2522 };
2523 /* allocate MClass */
2524 val* NEW_model__MClass(const struct type* type) {
2525 val* self /* : MClass */;
2526 val* var /* : Array[MClassDef] */;
2527 val* var1 /* : Array[MGenericType] */;
2528 val* var2 /* : null */;
2529 self = nit_alloc(sizeof(struct instance) + 10*sizeof(nitattribute_t));
2530 self->type = type;
2531 self->class = &class_model__MClass;
2532 var = NEW_array__Array(&type_array__Arraymodel__MClassDef);
2533 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[MClassDef]>*/;
2534 CHECK_NEW_array__Array(var);
2535 self->attrs[COLOR_model__MClass___64dmclassdefs].val = var; /* @mclassdefs on <self:MClass exact> */
2536 var1 = NEW_array__Array(&type_array__Arraymodel__MGenericType);
2537 ((void (*)(val*))(var1->class->vft[COLOR_array__Array__init]))(var1) /* init on <var1:Array[MGenericType]>*/;
2538 CHECK_NEW_array__Array(var1);
2539 self->attrs[COLOR_model__MClass___64dget_mtype_cache].val = var1; /* @get_mtype_cache on <self:MClass exact> */
2540 var2 = NULL;
2541 self->attrs[COLOR_modelize_property__MClass___64dinherit_init_from].val = var2; /* @inherit_init_from on <self:MClass exact> */
2542 return self;
2543 }
2544 /* allocate MClass */
2545 void CHECK_NEW_model__MClass(val* self) {
2546 val* var /* : MModule */;
2547 val* var1 /* : String */;
2548 long var2 /* : Int */;
2549 val* var3 /* : MClassKind */;
2550 val* var4 /* : MVisibility */;
2551 val* var5 /* : MClassType */;
2552 val* var6 /* : nullable String */;
2553 var = self->attrs[COLOR_model__MClass___64dintro_mmodule].val; /* @intro_mmodule on <self:MClass> */
2554 if (var == NULL) {
2555 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @intro_mmodule");
2556 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 290);
2557 exit(1);
2558 }
2559 var1 = self->attrs[COLOR_model__MClass___64dname].val; /* @name on <self:MClass> */
2560 if (var1 == NULL) {
2561 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
2562 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 295);
2563 exit(1);
2564 }
2565 var2 = self->attrs[COLOR_model__MClass___64darity].l; /* @arity on <self:MClass> */
2566 var3 = self->attrs[COLOR_model__MClass___64dkind].val; /* @kind on <self:MClass> */
2567 if (var3 == NULL) {
2568 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @kind");
2569 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 310);
2570 exit(1);
2571 }
2572 var4 = self->attrs[COLOR_model__MClass___64dvisibility].val; /* @visibility on <self:MClass> */
2573 if (var4 == NULL) {
2574 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @visibility");
2575 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 314);
2576 exit(1);
2577 }
2578 var5 = self->attrs[COLOR_model__MClass___64dmclass_type].val; /* @mclass_type on <self:MClass> */
2579 if (var5 == NULL) {
2580 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclass_type");
2581 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 370);
2582 exit(1);
2583 }
2584 var6 = self->attrs[COLOR_abstract_compiler__MClass___64dc_name_cache].val; /* @c_name_cache on <self:MClass> */
2585 }
2586 /* runtime class model__MClassDef */
2587 const struct class class_model__MClassDef = {
2588 0, /* box_kind */
2589 {
2590 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MClassDef:kernel#Object#object_id */
2591 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MClassDef:kernel#Object#is_same_type */
2592 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MClassDef:kernel#Object#is_same_instance */
2593 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MClassDef:kernel#Object#== */
2594 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MClassDef:kernel#Object#!= */
2595 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MClassDef:kernel#Object#output */
2596 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MClassDef:kernel#Object#output_class_name */
2597 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MClassDef:kernel#Object#exit */
2598 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MClassDef:kernel#Object#sys */
2599 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MClassDef:kernel#Object#hash */
2600 (nitmethod_t)VIRTUAL_model__MClassDef__to_s, /* pointer to model:MClassDef:model#MClassDef#to_s */
2601 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MClassDef:string#Object#native_class_name */
2602 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MClassDef:string#Object#class_name */
2603 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MClassDef:string#Object#inspect */
2604 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MClassDef:string#Object#inspect_head */
2605 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MClassDef:string#Object#args */
2606 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MClassDef:math#Object#atan2 */
2607 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MClassDef:math#Object#pi */
2608 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MClassDef:math#Object#srand_from */
2609 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MClassDef:math#Object#srand */
2610 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MClassDef:stream#Object#poll */
2611 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MClassDef:stream#Object#intern_poll */
2612 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MClassDef:time#Object#get_time */
2613 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MClassDef:file#Object#printn */
2614 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MClassDef:file#Object#print */
2615 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MClassDef:file#Object#getc */
2616 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MClassDef:file#Object#gets */
2617 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MClassDef:file#Object#getcwd */
2618 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MClassDef:file#Object#file_getcwd */
2619 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MClassDef:file#Object#stdin */
2620 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MClassDef:file#Object#stdout */
2621 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MClassDef:file#Object#stderr */
2622 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MClassDef:model_base#Object#intrude_visibility */
2623 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MClassDef:model_base#Object#public_visibility */
2624 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MClassDef:model_base#Object#protected_visibility */
2625 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MClassDef:model_base#Object#private_visibility */
2626 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MClassDef:model_base#Object#none_visibility */
2627 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MClassDef:model#Object#abstract_kind */
2628 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MClassDef:model#Object#concrete_kind */
2629 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MClassDef:model#Object#interface_kind */
2630 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MClassDef:model#Object#enum_kind */
2631 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MClassDef:model#Object#extern_kind */
2632 (nitmethod_t)VIRTUAL_model__MClassDef__mmodule, /* pointer to model:MClassDef:model#MClassDef#mmodule */
2633 (nitmethod_t)VIRTUAL_model__MClassDef__mmodule_61d, /* pointer to model:MClassDef:model#MClassDef#mmodule= */
2634 (nitmethod_t)VIRTUAL_model__MClassDef__mclass, /* pointer to model:MClassDef:model#MClassDef#mclass */
2635 (nitmethod_t)VIRTUAL_model__MClassDef__mclass_61d, /* pointer to model:MClassDef:model#MClassDef#mclass= */
2636 (nitmethod_t)VIRTUAL_model__MClassDef__bound_mtype, /* pointer to model:MClassDef:model#MClassDef#bound_mtype */
2637 (nitmethod_t)VIRTUAL_model__MClassDef__bound_mtype_61d, /* pointer to model:MClassDef:model#MClassDef#bound_mtype= */
2638 (nitmethod_t)VIRTUAL_model__MClassDef__parameter_names, /* pointer to model:MClassDef:model#MClassDef#parameter_names */
2639 (nitmethod_t)VIRTUAL_model__MClassDef__parameter_names_61d, /* pointer to model:MClassDef:model#MClassDef#parameter_names= */
2640 (nitmethod_t)VIRTUAL_model__MClassDef__location, /* pointer to model:MClassDef:model#MClassDef#location */
2641 (nitmethod_t)VIRTUAL_model__MClassDef__location_61d, /* pointer to model:MClassDef:model#MClassDef#location= */
2642 (nitmethod_t)VIRTUAL_model__MClassDef__to_s_61d, /* pointer to model:MClassDef:model#MClassDef#to_s= */
2643 (nitmethod_t)VIRTUAL_model__MClassDef__init, /* pointer to model:MClassDef:model#MClassDef#init */
2644 (nitmethod_t)VIRTUAL_model__MClassDef__supertypes, /* pointer to model:MClassDef:model#MClassDef#supertypes */
2645 (nitmethod_t)VIRTUAL_model__MClassDef__supertypes_61d, /* pointer to model:MClassDef:model#MClassDef#supertypes= */
2646 (nitmethod_t)VIRTUAL_model__MClassDef__set_supertypes, /* pointer to model:MClassDef:model#MClassDef#set_supertypes */
2647 (nitmethod_t)VIRTUAL_model__MClassDef__add_in_hierarchy, /* pointer to model:MClassDef:model#MClassDef#add_in_hierarchy */
2648 (nitmethod_t)VIRTUAL_model__MClassDef__in_hierarchy, /* pointer to model:MClassDef:model#MClassDef#in_hierarchy */
2649 (nitmethod_t)VIRTUAL_model__MClassDef__in_hierarchy_61d, /* pointer to model:MClassDef:model#MClassDef#in_hierarchy= */
2650 (nitmethod_t)VIRTUAL_model__MClassDef__is_intro, /* pointer to model:MClassDef:model#MClassDef#is_intro */
2651 (nitmethod_t)VIRTUAL_model__MClassDef__intro_mproperties, /* pointer to model:MClassDef:model#MClassDef#intro_mproperties */
2652 (nitmethod_t)VIRTUAL_model__MClassDef__intro_mproperties_61d, /* pointer to model:MClassDef:model#MClassDef#intro_mproperties= */
2653 (nitmethod_t)VIRTUAL_model__MClassDef__mpropdefs, /* pointer to model:MClassDef:model#MClassDef#mpropdefs */
2654 (nitmethod_t)VIRTUAL_model__MClassDef__mpropdefs_61d, /* pointer to model:MClassDef:model#MClassDef#mpropdefs= */
2655 }
2656 };
2657 /* allocate MClassDef */
2658 val* NEW_model__MClassDef(const struct type* type) {
2659 val* self /* : MClassDef */;
2660 val* var /* : Array[MClassType] */;
2661 val* var1 /* : null */;
2662 val* var2 /* : Array[MProperty] */;
2663 val* var3 /* : Array[MPropDef] */;
2664 self = nit_alloc(sizeof(struct instance) + 10*sizeof(nitattribute_t));
2665 self->type = type;
2666 self->class = &class_model__MClassDef;
2667 var = NEW_array__Array(&type_array__Arraymodel__MClassType);
2668 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[MClassType]>*/;
2669 CHECK_NEW_array__Array(var);
2670 self->attrs[COLOR_model__MClassDef___64dsupertypes].val = var; /* @supertypes on <self:MClassDef exact> */
2671 var1 = NULL;
2672 self->attrs[COLOR_model__MClassDef___64din_hierarchy].val = var1; /* @in_hierarchy on <self:MClassDef exact> */
2673 var2 = NEW_array__Array(&type_array__Arraymodel__MProperty);
2674 ((void (*)(val*))(var2->class->vft[COLOR_array__Array__init]))(var2) /* init on <var2:Array[MProperty]>*/;
2675 CHECK_NEW_array__Array(var2);
2676 self->attrs[COLOR_model__MClassDef___64dintro_mproperties].val = var2; /* @intro_mproperties on <self:MClassDef exact> */
2677 var3 = NEW_array__Array(&type_array__Arraymodel__MPropDef);
2678 ((void (*)(val*))(var3->class->vft[COLOR_array__Array__init]))(var3) /* init on <var3:Array[MPropDef]>*/;
2679 CHECK_NEW_array__Array(var3);
2680 self->attrs[COLOR_model__MClassDef___64dmpropdefs].val = var3; /* @mpropdefs on <self:MClassDef exact> */
2681 return self;
2682 }
2683 /* allocate MClassDef */
2684 void CHECK_NEW_model__MClassDef(val* self) {
2685 val* var /* : MModule */;
2686 val* var1 /* : MClass */;
2687 val* var2 /* : MClassType */;
2688 val* var3 /* : Array[String] */;
2689 val* var4 /* : Location */;
2690 val* var5 /* : String */;
2691 var = self->attrs[COLOR_model__MClassDef___64dmmodule].val; /* @mmodule on <self:MClassDef> */
2692 if (var == NULL) {
2693 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mmodule");
2694 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 415);
2695 exit(1);
2696 }
2697 var1 = self->attrs[COLOR_model__MClassDef___64dmclass].val; /* @mclass on <self:MClassDef> */
2698 if (var1 == NULL) {
2699 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclass");
2700 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 418);
2701 exit(1);
2702 }
2703 var2 = self->attrs[COLOR_model__MClassDef___64dbound_mtype].val; /* @bound_mtype on <self:MClassDef> */
2704 if (var2 == NULL) {
2705 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @bound_mtype");
2706 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 421);
2707 exit(1);
2708 }
2709 var3 = self->attrs[COLOR_model__MClassDef___64dparameter_names].val; /* @parameter_names on <self:MClassDef> */
2710 if (var3 == NULL) {
2711 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @parameter_names");
2712 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 433);
2713 exit(1);
2714 }
2715 var4 = self->attrs[COLOR_model__MClassDef___64dlocation].val; /* @location on <self:MClassDef> */
2716 if (var4 == NULL) {
2717 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @location");
2718 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 436);
2719 exit(1);
2720 }
2721 var5 = self->attrs[COLOR_model__MClassDef___64dto_s].val; /* @to_s on <self:MClassDef> */
2722 if (var5 == NULL) {
2723 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
2724 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 439);
2725 exit(1);
2726 }
2727 }
2728 /* runtime class model__MClassType */
2729 const struct class class_model__MClassType = {
2730 0, /* box_kind */
2731 {
2732 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MClassType:kernel#Object#object_id */
2733 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MClassType:kernel#Object#is_same_type */
2734 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MClassType:kernel#Object#is_same_instance */
2735 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MClassType:kernel#Object#== */
2736 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MClassType:kernel#Object#!= */
2737 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MClassType:kernel#Object#output */
2738 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MClassType:kernel#Object#output_class_name */
2739 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MClassType:kernel#Object#exit */
2740 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MClassType:kernel#Object#sys */
2741 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MClassType:kernel#Object#hash */
2742 (nitmethod_t)VIRTUAL_model__MClassType__to_s, /* pointer to model:MClassType:model#MClassType#to_s */
2743 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MClassType:string#Object#native_class_name */
2744 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MClassType:string#Object#class_name */
2745 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MClassType:string#Object#inspect */
2746 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MClassType:string#Object#inspect_head */
2747 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MClassType:string#Object#args */
2748 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MClassType:math#Object#atan2 */
2749 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MClassType:math#Object#pi */
2750 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MClassType:math#Object#srand_from */
2751 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MClassType:math#Object#srand */
2752 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MClassType:stream#Object#poll */
2753 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MClassType:stream#Object#intern_poll */
2754 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MClassType:time#Object#get_time */
2755 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MClassType:file#Object#printn */
2756 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MClassType:file#Object#print */
2757 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MClassType:file#Object#getc */
2758 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MClassType:file#Object#gets */
2759 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MClassType:file#Object#getcwd */
2760 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MClassType:file#Object#file_getcwd */
2761 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MClassType:file#Object#stdin */
2762 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MClassType:file#Object#stdout */
2763 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MClassType:file#Object#stderr */
2764 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MClassType:model_base#Object#intrude_visibility */
2765 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MClassType:model_base#Object#public_visibility */
2766 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MClassType:model_base#Object#protected_visibility */
2767 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MClassType:model_base#Object#private_visibility */
2768 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MClassType:model_base#Object#none_visibility */
2769 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MClassType:model#Object#abstract_kind */
2770 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MClassType:model#Object#concrete_kind */
2771 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MClassType:model#Object#interface_kind */
2772 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MClassType:model#Object#enum_kind */
2773 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MClassType:model#Object#extern_kind */
2774 (nitmethod_t)VIRTUAL_model__MClassType__model, /* pointer to model:MClassType:model#MClassType#model */
2775 (nitmethod_t)VIRTUAL_model__MType__is_subtype, /* pointer to model:MClassType:model#MType#is_subtype */
2776 (nitmethod_t)VIRTUAL_model__MClassType__anchor_to, /* pointer to model:MClassType:model#MClassType#anchor_to */
2777 (nitmethod_t)VIRTUAL_model__MClassType__need_anchor, /* pointer to model:MClassType:model#MClassType#need_anchor */
2778 (nitmethod_t)VIRTUAL_model__MType__supertype_to, /* pointer to model:MClassType:model#MType#supertype_to */
2779 (nitmethod_t)VIRTUAL_model__MClassType__resolve_for, /* pointer to model:MClassType:model#MClassType#resolve_for */
2780 (nitmethod_t)VIRTUAL_model__MClassType__can_resolve_for, /* pointer to model:MClassType:model#MClassType#can_resolve_for */
2781 (nitmethod_t)VIRTUAL_model__MType__as_nullable, /* pointer to model:MClassType:model#MType#as_nullable */
2782 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache, /* pointer to model:MClassType:model#MType#as_nullable_cache */
2783 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache_61d, /* pointer to model:MClassType:model#MType#as_nullable_cache= */
2784 (nitmethod_t)VIRTUAL_model__MType__depth, /* pointer to model:MClassType:model#MType#depth */
2785 (nitmethod_t)VIRTUAL_model__MType__length, /* pointer to model:MClassType:model#MType#length */
2786 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclassdefs, /* pointer to model:MClassType:model#MClassType#collect_mclassdefs */
2787 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclasses, /* pointer to model:MClassType:model#MClassType#collect_mclasses */
2788 (nitmethod_t)VIRTUAL_model__MClassType__collect_mtypes, /* pointer to model:MClassType:model#MClassType#collect_mtypes */
2789 (nitmethod_t)VIRTUAL_model__MType__has_mproperty, /* pointer to model:MClassType:model#MType#has_mproperty */
2790 (nitmethod_t)VIRTUAL_model__MType__init, /* pointer to model:MClassType:model#MType#init */
2791 (nitmethod_t)VIRTUAL_abstract_compiler__MClassType__ctype, /* pointer to model:MClassType:abstract_compiler#MClassType#ctype */
2792 (nitmethod_t)VIRTUAL_abstract_compiler__MClassType__ctypename, /* pointer to model:MClassType:abstract_compiler#MClassType#ctypename */
2793 (nitmethod_t)VIRTUAL_abstract_compiler__MClassType__c_name, /* pointer to model:MClassType:abstract_compiler#MClassType#c_name */
2794 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache, /* pointer to model:MClassType:abstract_compiler#MType#c_name_cache */
2795 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache_61d, /* pointer to model:MClassType:abstract_compiler#MType#c_name_cache= */
2796 (nitmethod_t)VIRTUAL_separate_compiler__MType__const_color, /* pointer to model:MClassType:separate_compiler#MType#const_color */
2797 (nitmethod_t)VIRTUAL_model__MClassType__mclass, /* pointer to model:MClassType:model#MClassType#mclass */
2798 (nitmethod_t)VIRTUAL_model__MClassType__mclass_61d, /* pointer to model:MClassType:model#MClassType#mclass= */
2799 (nitmethod_t)VIRTUAL_model__MClassType__init, /* pointer to model:MClassType:model#MClassType#init */
2800 (nitmethod_t)VIRTUAL_model__MClassType__arguments, /* pointer to model:MClassType:model#MClassType#arguments */
2801 (nitmethod_t)VIRTUAL_model__MClassType__arguments_61d, /* pointer to model:MClassType:model#MClassType#arguments= */
2802 (nitmethod_t)VIRTUAL_model__MClassType__collect_things, /* pointer to model:MClassType:model#MClassType#collect_things */
2803 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclassdefs_cache, /* pointer to model:MClassType:model#MClassType#collect_mclassdefs_cache */
2804 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclassdefs_cache_61d, /* pointer to model:MClassType:model#MClassType#collect_mclassdefs_cache= */
2805 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclasses_cache, /* pointer to model:MClassType:model#MClassType#collect_mclasses_cache */
2806 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclasses_cache_61d, /* pointer to model:MClassType:model#MClassType#collect_mclasses_cache= */
2807 (nitmethod_t)VIRTUAL_model__MClassType__collect_mtypes_cache, /* pointer to model:MClassType:model#MClassType#collect_mtypes_cache */
2808 (nitmethod_t)VIRTUAL_model__MClassType__collect_mtypes_cache_61d, /* pointer to model:MClassType:model#MClassType#collect_mtypes_cache= */
2809 (nitmethod_t)VIRTUAL_model__MType__anchor_to, /* pointer to model:MClassType:model#MType#anchor_to */
2810 }
2811 };
2812 /* allocate MClassType */
2813 val* NEW_model__MClassType(const struct type* type) {
2814 val* self /* : MClassType */;
2815 val* var /* : null */;
2816 val* var1 /* : Array[MType] */;
2817 val* var2 /* : HashMap[MModule, Set[MClassDef]] */;
2818 val* var3 /* : HashMap[MModule, Set[MClass]] */;
2819 val* var4 /* : HashMap[MModule, Set[MClassType]] */;
2820 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
2821 self->type = type;
2822 self->class = &class_model__MClassType;
2823 var = NULL;
2824 self->attrs[COLOR_model__MType___64das_nullable_cache].val = var; /* @as_nullable_cache on <self:MClassType exact> */
2825 var1 = NEW_array__Array(&type_array__Arraymodel__MType);
2826 ((void (*)(val*))(var1->class->vft[COLOR_array__Array__init]))(var1) /* init on <var1:Array[MType]>*/;
2827 CHECK_NEW_array__Array(var1);
2828 self->attrs[COLOR_model__MClassType___64darguments].val = var1; /* @arguments on <self:MClassType exact> */
2829 var2 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapmodel_base__MModuleabstract_collection__Setmodel__MClassDef);
2830 ((void (*)(val*))(var2->class->vft[COLOR_hash_collection__HashMap__init]))(var2) /* init on <var2:HashMap[MModule, Set[MClassDef]]>*/;
2831 CHECK_NEW_hash_collection__HashMap(var2);
2832 self->attrs[COLOR_model__MClassType___64dcollect_mclassdefs_cache].val = var2; /* @collect_mclassdefs_cache on <self:MClassType exact> */
2833 var3 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapmodel_base__MModuleabstract_collection__Setmodel__MClass);
2834 ((void (*)(val*))(var3->class->vft[COLOR_hash_collection__HashMap__init]))(var3) /* init on <var3:HashMap[MModule, Set[MClass]]>*/;
2835 CHECK_NEW_hash_collection__HashMap(var3);
2836 self->attrs[COLOR_model__MClassType___64dcollect_mclasses_cache].val = var3; /* @collect_mclasses_cache on <self:MClassType exact> */
2837 var4 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapmodel_base__MModuleabstract_collection__Setmodel__MClassType);
2838 ((void (*)(val*))(var4->class->vft[COLOR_hash_collection__HashMap__init]))(var4) /* init on <var4:HashMap[MModule, Set[MClassType]]>*/;
2839 CHECK_NEW_hash_collection__HashMap(var4);
2840 self->attrs[COLOR_model__MClassType___64dcollect_mtypes_cache].val = var4; /* @collect_mtypes_cache on <self:MClassType exact> */
2841 return self;
2842 }
2843 /* allocate MClassType */
2844 void CHECK_NEW_model__MClassType(val* self) {
2845 val* var /* : nullable String */;
2846 val* var1 /* : MClass */;
2847 var = self->attrs[COLOR_abstract_compiler__MType___64dc_name_cache].val; /* @c_name_cache on <self:MClassType> */
2848 var1 = self->attrs[COLOR_model__MClassType___64dmclass].val; /* @mclass on <self:MClassType> */
2849 if (var1 == NULL) {
2850 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclass");
2851 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 900);
2852 exit(1);
2853 }
2854 }
2855 /* runtime class model__MGenericType */
2856 const struct class class_model__MGenericType = {
2857 0, /* box_kind */
2858 {
2859 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MGenericType:kernel#Object#object_id */
2860 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MGenericType:kernel#Object#is_same_type */
2861 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MGenericType:kernel#Object#is_same_instance */
2862 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MGenericType:kernel#Object#== */
2863 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MGenericType:kernel#Object#!= */
2864 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MGenericType:kernel#Object#output */
2865 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MGenericType:kernel#Object#output_class_name */
2866 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MGenericType:kernel#Object#exit */
2867 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MGenericType:kernel#Object#sys */
2868 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MGenericType:kernel#Object#hash */
2869 (nitmethod_t)VIRTUAL_model__MGenericType__to_s, /* pointer to model:MGenericType:model#MGenericType#to_s */
2870 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MGenericType:string#Object#native_class_name */
2871 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MGenericType:string#Object#class_name */
2872 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MGenericType:string#Object#inspect */
2873 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MGenericType:string#Object#inspect_head */
2874 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MGenericType:string#Object#args */
2875 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MGenericType:math#Object#atan2 */
2876 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MGenericType:math#Object#pi */
2877 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MGenericType:math#Object#srand_from */
2878 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MGenericType:math#Object#srand */
2879 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MGenericType:stream#Object#poll */
2880 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MGenericType:stream#Object#intern_poll */
2881 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MGenericType:time#Object#get_time */
2882 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MGenericType:file#Object#printn */
2883 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MGenericType:file#Object#print */
2884 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MGenericType:file#Object#getc */
2885 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MGenericType:file#Object#gets */
2886 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MGenericType:file#Object#getcwd */
2887 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MGenericType:file#Object#file_getcwd */
2888 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MGenericType:file#Object#stdin */
2889 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MGenericType:file#Object#stdout */
2890 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MGenericType:file#Object#stderr */
2891 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MGenericType:model_base#Object#intrude_visibility */
2892 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MGenericType:model_base#Object#public_visibility */
2893 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MGenericType:model_base#Object#protected_visibility */
2894 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MGenericType:model_base#Object#private_visibility */
2895 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MGenericType:model_base#Object#none_visibility */
2896 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MGenericType:model#Object#abstract_kind */
2897 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MGenericType:model#Object#concrete_kind */
2898 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MGenericType:model#Object#interface_kind */
2899 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MGenericType:model#Object#enum_kind */
2900 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MGenericType:model#Object#extern_kind */
2901 (nitmethod_t)VIRTUAL_model__MClassType__model, /* pointer to model:MGenericType:model#MClassType#model */
2902 (nitmethod_t)VIRTUAL_model__MType__is_subtype, /* pointer to model:MGenericType:model#MType#is_subtype */
2903 (nitmethod_t)VIRTUAL_model__MClassType__anchor_to, /* pointer to model:MGenericType:model#MClassType#anchor_to */
2904 (nitmethod_t)VIRTUAL_model__MGenericType__need_anchor, /* pointer to model:MGenericType:model#MGenericType#need_anchor */
2905 (nitmethod_t)VIRTUAL_model__MType__supertype_to, /* pointer to model:MGenericType:model#MType#supertype_to */
2906 (nitmethod_t)VIRTUAL_model__MGenericType__resolve_for, /* pointer to model:MGenericType:model#MGenericType#resolve_for */
2907 (nitmethod_t)VIRTUAL_model__MGenericType__can_resolve_for, /* pointer to model:MGenericType:model#MGenericType#can_resolve_for */
2908 (nitmethod_t)VIRTUAL_model__MType__as_nullable, /* pointer to model:MGenericType:model#MType#as_nullable */
2909 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache, /* pointer to model:MGenericType:model#MType#as_nullable_cache */
2910 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache_61d, /* pointer to model:MGenericType:model#MType#as_nullable_cache= */
2911 (nitmethod_t)VIRTUAL_model__MGenericType__depth, /* pointer to model:MGenericType:model#MGenericType#depth */
2912 (nitmethod_t)VIRTUAL_model__MGenericType__length, /* pointer to model:MGenericType:model#MGenericType#length */
2913 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclassdefs, /* pointer to model:MGenericType:model#MClassType#collect_mclassdefs */
2914 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclasses, /* pointer to model:MGenericType:model#MClassType#collect_mclasses */
2915 (nitmethod_t)VIRTUAL_model__MClassType__collect_mtypes, /* pointer to model:MGenericType:model#MClassType#collect_mtypes */
2916 (nitmethod_t)VIRTUAL_model__MType__has_mproperty, /* pointer to model:MGenericType:model#MType#has_mproperty */
2917 (nitmethod_t)VIRTUAL_model__MType__init, /* pointer to model:MGenericType:model#MType#init */
2918 (nitmethod_t)VIRTUAL_abstract_compiler__MClassType__ctype, /* pointer to model:MGenericType:abstract_compiler#MClassType#ctype */
2919 (nitmethod_t)VIRTUAL_abstract_compiler__MClassType__ctypename, /* pointer to model:MGenericType:abstract_compiler#MClassType#ctypename */
2920 (nitmethod_t)VIRTUAL_abstract_compiler__MGenericType__c_name, /* pointer to model:MGenericType:abstract_compiler#MGenericType#c_name */
2921 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache, /* pointer to model:MGenericType:abstract_compiler#MType#c_name_cache */
2922 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache_61d, /* pointer to model:MGenericType:abstract_compiler#MType#c_name_cache= */
2923 (nitmethod_t)VIRTUAL_separate_compiler__MType__const_color, /* pointer to model:MGenericType:separate_compiler#MType#const_color */
2924 (nitmethod_t)VIRTUAL_model__MClassType__mclass, /* pointer to model:MGenericType:model#MClassType#mclass */
2925 (nitmethod_t)VIRTUAL_model__MClassType__mclass_61d, /* pointer to model:MGenericType:model#MClassType#mclass= */
2926 (nitmethod_t)VIRTUAL_model__MClassType__init, /* pointer to model:MGenericType:model#MClassType#init */
2927 (nitmethod_t)VIRTUAL_model__MClassType__arguments, /* pointer to model:MGenericType:model#MClassType#arguments */
2928 (nitmethod_t)VIRTUAL_model__MClassType__arguments_61d, /* pointer to model:MGenericType:model#MClassType#arguments= */
2929 (nitmethod_t)VIRTUAL_model__MClassType__collect_things, /* pointer to model:MGenericType:model#MClassType#collect_things */
2930 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclassdefs_cache, /* pointer to model:MGenericType:model#MClassType#collect_mclassdefs_cache */
2931 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclassdefs_cache_61d, /* pointer to model:MGenericType:model#MClassType#collect_mclassdefs_cache= */
2932 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclasses_cache, /* pointer to model:MGenericType:model#MClassType#collect_mclasses_cache */
2933 (nitmethod_t)VIRTUAL_model__MClassType__collect_mclasses_cache_61d, /* pointer to model:MGenericType:model#MClassType#collect_mclasses_cache= */
2934 (nitmethod_t)VIRTUAL_model__MClassType__collect_mtypes_cache, /* pointer to model:MGenericType:model#MClassType#collect_mtypes_cache */
2935 (nitmethod_t)VIRTUAL_model__MClassType__collect_mtypes_cache_61d, /* pointer to model:MGenericType:model#MClassType#collect_mtypes_cache= */
2936 (nitmethod_t)VIRTUAL_model__MType__anchor_to, /* pointer to model:MGenericType:model#MType#anchor_to */
2937 (nitmethod_t)VIRTUAL_model__MGenericType__init, /* pointer to model:MGenericType:model#MGenericType#init */
2938 (nitmethod_t)VIRTUAL_model__MGenericType__to_s_61d, /* pointer to model:MGenericType:model#MGenericType#to_s= */
2939 (nitmethod_t)VIRTUAL_model__MGenericType__need_anchor_61d, /* pointer to model:MGenericType:model#MGenericType#need_anchor= */
2940 (nitmethod_t)VIRTUAL_abstract_compiler__MClassType__c_name, /* pointer to model:MGenericType:abstract_compiler#MClassType#c_name */
2941 }
2942 };
2943 /* allocate MGenericType */
2944 val* NEW_model__MGenericType(const struct type* type) {
2945 val* self /* : MGenericType */;
2946 val* var /* : null */;
2947 val* var1 /* : Array[MType] */;
2948 val* var2 /* : HashMap[MModule, Set[MClassDef]] */;
2949 val* var3 /* : HashMap[MModule, Set[MClass]] */;
2950 val* var4 /* : HashMap[MModule, Set[MClassType]] */;
2951 self = nit_alloc(sizeof(struct instance) + 9*sizeof(nitattribute_t));
2952 self->type = type;
2953 self->class = &class_model__MGenericType;
2954 var = NULL;
2955 self->attrs[COLOR_model__MType___64das_nullable_cache].val = var; /* @as_nullable_cache on <self:MGenericType exact> */
2956 var1 = NEW_array__Array(&type_array__Arraymodel__MType);
2957 ((void (*)(val*))(var1->class->vft[COLOR_array__Array__init]))(var1) /* init on <var1:Array[MType]>*/;
2958 CHECK_NEW_array__Array(var1);
2959 self->attrs[COLOR_model__MClassType___64darguments].val = var1; /* @arguments on <self:MGenericType exact> */
2960 var2 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapmodel_base__MModuleabstract_collection__Setmodel__MClassDef);
2961 ((void (*)(val*))(var2->class->vft[COLOR_hash_collection__HashMap__init]))(var2) /* init on <var2:HashMap[MModule, Set[MClassDef]]>*/;
2962 CHECK_NEW_hash_collection__HashMap(var2);
2963 self->attrs[COLOR_model__MClassType___64dcollect_mclassdefs_cache].val = var2; /* @collect_mclassdefs_cache on <self:MGenericType exact> */
2964 var3 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapmodel_base__MModuleabstract_collection__Setmodel__MClass);
2965 ((void (*)(val*))(var3->class->vft[COLOR_hash_collection__HashMap__init]))(var3) /* init on <var3:HashMap[MModule, Set[MClass]]>*/;
2966 CHECK_NEW_hash_collection__HashMap(var3);
2967 self->attrs[COLOR_model__MClassType___64dcollect_mclasses_cache].val = var3; /* @collect_mclasses_cache on <self:MGenericType exact> */
2968 var4 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapmodel_base__MModuleabstract_collection__Setmodel__MClassType);
2969 ((void (*)(val*))(var4->class->vft[COLOR_hash_collection__HashMap__init]))(var4) /* init on <var4:HashMap[MModule, Set[MClassType]]>*/;
2970 CHECK_NEW_hash_collection__HashMap(var4);
2971 self->attrs[COLOR_model__MClassType___64dcollect_mtypes_cache].val = var4; /* @collect_mtypes_cache on <self:MGenericType exact> */
2972 return self;
2973 }
2974 /* allocate MGenericType */
2975 void CHECK_NEW_model__MGenericType(val* self) {
2976 val* var /* : nullable String */;
2977 val* var1 /* : MClass */;
2978 val* var2 /* : String */;
2979 short int var3 /* : Bool */;
2980 var = self->attrs[COLOR_abstract_compiler__MType___64dc_name_cache].val; /* @c_name_cache on <self:MGenericType> */
2981 var1 = self->attrs[COLOR_model__MClassType___64dmclass].val; /* @mclass on <self:MGenericType> */
2982 if (var1 == NULL) {
2983 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclass");
2984 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 900);
2985 exit(1);
2986 }
2987 var2 = self->attrs[COLOR_model__MGenericType___64dto_s].val; /* @to_s on <self:MGenericType> */
2988 if (var2 == NULL) {
2989 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
2990 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1015);
2991 exit(1);
2992 }
2993 var3 = self->attrs[COLOR_model__MGenericType___64dneed_anchor].s; /* @need_anchor on <self:MGenericType> */
2994 }
2995 /* runtime class model__MVirtualType */
2996 const struct class class_model__MVirtualType = {
2997 0, /* box_kind */
2998 {
2999 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MVirtualType:kernel#Object#object_id */
3000 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MVirtualType:kernel#Object#is_same_type */
3001 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MVirtualType:kernel#Object#is_same_instance */
3002 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MVirtualType:kernel#Object#== */
3003 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MVirtualType:kernel#Object#!= */
3004 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MVirtualType:kernel#Object#output */
3005 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MVirtualType:kernel#Object#output_class_name */
3006 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MVirtualType:kernel#Object#exit */
3007 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MVirtualType:kernel#Object#sys */
3008 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MVirtualType:kernel#Object#hash */
3009 (nitmethod_t)VIRTUAL_model__MVirtualType__to_s, /* pointer to model:MVirtualType:model#MVirtualType#to_s */
3010 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MVirtualType:string#Object#native_class_name */
3011 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MVirtualType:string#Object#class_name */
3012 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MVirtualType:string#Object#inspect */
3013 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MVirtualType:string#Object#inspect_head */
3014 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MVirtualType:string#Object#args */
3015 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MVirtualType:math#Object#atan2 */
3016 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MVirtualType:math#Object#pi */
3017 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MVirtualType:math#Object#srand_from */
3018 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MVirtualType:math#Object#srand */
3019 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MVirtualType:stream#Object#poll */
3020 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MVirtualType:stream#Object#intern_poll */
3021 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MVirtualType:time#Object#get_time */
3022 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MVirtualType:file#Object#printn */
3023 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MVirtualType:file#Object#print */
3024 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MVirtualType:file#Object#getc */
3025 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MVirtualType:file#Object#gets */
3026 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MVirtualType:file#Object#getcwd */
3027 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MVirtualType:file#Object#file_getcwd */
3028 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MVirtualType:file#Object#stdin */
3029 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MVirtualType:file#Object#stdout */
3030 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MVirtualType:file#Object#stderr */
3031 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MVirtualType:model_base#Object#intrude_visibility */
3032 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MVirtualType:model_base#Object#public_visibility */
3033 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MVirtualType:model_base#Object#protected_visibility */
3034 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MVirtualType:model_base#Object#private_visibility */
3035 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MVirtualType:model_base#Object#none_visibility */
3036 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MVirtualType:model#Object#abstract_kind */
3037 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MVirtualType:model#Object#concrete_kind */
3038 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MVirtualType:model#Object#interface_kind */
3039 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MVirtualType:model#Object#enum_kind */
3040 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MVirtualType:model#Object#extern_kind */
3041 (nitmethod_t)VIRTUAL_model__MVirtualType__model, /* pointer to model:MVirtualType:model#MVirtualType#model */
3042 (nitmethod_t)VIRTUAL_model__MType__is_subtype, /* pointer to model:MVirtualType:model#MType#is_subtype */
3043 (nitmethod_t)VIRTUAL_model__MType__anchor_to, /* pointer to model:MVirtualType:model#MType#anchor_to */
3044 (nitmethod_t)VIRTUAL_model__MType__need_anchor, /* pointer to model:MVirtualType:model#MType#need_anchor */
3045 (nitmethod_t)VIRTUAL_model__MType__supertype_to, /* pointer to model:MVirtualType:model#MType#supertype_to */
3046 (nitmethod_t)VIRTUAL_model__MVirtualType__resolve_for, /* pointer to model:MVirtualType:model#MVirtualType#resolve_for */
3047 (nitmethod_t)VIRTUAL_model__MVirtualType__can_resolve_for, /* pointer to model:MVirtualType:model#MVirtualType#can_resolve_for */
3048 (nitmethod_t)VIRTUAL_model__MType__as_nullable, /* pointer to model:MVirtualType:model#MType#as_nullable */
3049 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache, /* pointer to model:MVirtualType:model#MType#as_nullable_cache */
3050 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache_61d, /* pointer to model:MVirtualType:model#MType#as_nullable_cache= */
3051 (nitmethod_t)VIRTUAL_model__MType__depth, /* pointer to model:MVirtualType:model#MType#depth */
3052 (nitmethod_t)VIRTUAL_model__MType__length, /* pointer to model:MVirtualType:model#MType#length */
3053 (nitmethod_t)VIRTUAL_model__MType__collect_mclassdefs, /* pointer to model:MVirtualType:model#MType#collect_mclassdefs */
3054 (nitmethod_t)VIRTUAL_model__MType__collect_mclasses, /* pointer to model:MVirtualType:model#MType#collect_mclasses */
3055 (nitmethod_t)VIRTUAL_model__MType__collect_mtypes, /* pointer to model:MVirtualType:model#MType#collect_mtypes */
3056 (nitmethod_t)VIRTUAL_model__MType__has_mproperty, /* pointer to model:MVirtualType:model#MType#has_mproperty */
3057 (nitmethod_t)VIRTUAL_model__MType__init, /* pointer to model:MVirtualType:model#MType#init */
3058 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctype, /* pointer to model:MVirtualType:abstract_compiler#MType#ctype */
3059 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctypename, /* pointer to model:MVirtualType:abstract_compiler#MType#ctypename */
3060 (nitmethod_t)VIRTUAL_abstract_compiler__MVirtualType__c_name, /* pointer to model:MVirtualType:abstract_compiler#MVirtualType#c_name */
3061 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache, /* pointer to model:MVirtualType:abstract_compiler#MType#c_name_cache */
3062 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache_61d, /* pointer to model:MVirtualType:abstract_compiler#MType#c_name_cache= */
3063 (nitmethod_t)VIRTUAL_separate_compiler__MType__const_color, /* pointer to model:MVirtualType:separate_compiler#MType#const_color */
3064 (nitmethod_t)VIRTUAL_model__MVirtualType__mproperty, /* pointer to model:MVirtualType:model#MVirtualType#mproperty */
3065 (nitmethod_t)VIRTUAL_model__MVirtualType__mproperty_61d, /* pointer to model:MVirtualType:model#MVirtualType#mproperty= */
3066 (nitmethod_t)VIRTUAL_model__MVirtualType__lookup_bound, /* pointer to model:MVirtualType:model#MVirtualType#lookup_bound */
3067 (nitmethod_t)VIRTUAL_model__MVirtualType__init, /* pointer to model:MVirtualType:model#MVirtualType#init */
3068 }
3069 };
3070 /* allocate MVirtualType */
3071 val* NEW_model__MVirtualType(const struct type* type) {
3072 val* self /* : MVirtualType */;
3073 val* var /* : null */;
3074 self = nit_alloc(sizeof(struct instance) + 3*sizeof(nitattribute_t));
3075 self->type = type;
3076 self->class = &class_model__MVirtualType;
3077 var = NULL;
3078 self->attrs[COLOR_model__MType___64das_nullable_cache].val = var; /* @as_nullable_cache on <self:MVirtualType exact> */
3079 return self;
3080 }
3081 /* allocate MVirtualType */
3082 void CHECK_NEW_model__MVirtualType(val* self) {
3083 val* var /* : nullable String */;
3084 val* var1 /* : MProperty */;
3085 var = self->attrs[COLOR_abstract_compiler__MType___64dc_name_cache].val; /* @c_name_cache on <self:MVirtualType> */
3086 var1 = self->attrs[COLOR_model__MVirtualType___64dmproperty].val; /* @mproperty on <self:MVirtualType> */
3087 if (var1 == NULL) {
3088 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mproperty");
3089 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1066);
3090 exit(1);
3091 }
3092 }
3093 /* runtime class model__MParameterType */
3094 const struct class class_model__MParameterType = {
3095 0, /* box_kind */
3096 {
3097 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MParameterType:kernel#Object#object_id */
3098 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MParameterType:kernel#Object#is_same_type */
3099 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MParameterType:kernel#Object#is_same_instance */
3100 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MParameterType:kernel#Object#== */
3101 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MParameterType:kernel#Object#!= */
3102 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MParameterType:kernel#Object#output */
3103 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MParameterType:kernel#Object#output_class_name */
3104 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MParameterType:kernel#Object#exit */
3105 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MParameterType:kernel#Object#sys */
3106 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MParameterType:kernel#Object#hash */
3107 (nitmethod_t)VIRTUAL_model__MParameterType__to_s, /* pointer to model:MParameterType:model#MParameterType#to_s */
3108 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MParameterType:string#Object#native_class_name */
3109 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MParameterType:string#Object#class_name */
3110 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MParameterType:string#Object#inspect */
3111 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MParameterType:string#Object#inspect_head */
3112 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MParameterType:string#Object#args */
3113 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MParameterType:math#Object#atan2 */
3114 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MParameterType:math#Object#pi */
3115 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MParameterType:math#Object#srand_from */
3116 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MParameterType:math#Object#srand */
3117 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MParameterType:stream#Object#poll */
3118 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MParameterType:stream#Object#intern_poll */
3119 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MParameterType:time#Object#get_time */
3120 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MParameterType:file#Object#printn */
3121 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MParameterType:file#Object#print */
3122 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MParameterType:file#Object#getc */
3123 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MParameterType:file#Object#gets */
3124 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MParameterType:file#Object#getcwd */
3125 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MParameterType:file#Object#file_getcwd */
3126 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MParameterType:file#Object#stdin */
3127 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MParameterType:file#Object#stdout */
3128 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MParameterType:file#Object#stderr */
3129 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MParameterType:model_base#Object#intrude_visibility */
3130 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MParameterType:model_base#Object#public_visibility */
3131 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MParameterType:model_base#Object#protected_visibility */
3132 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MParameterType:model_base#Object#private_visibility */
3133 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MParameterType:model_base#Object#none_visibility */
3134 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MParameterType:model#Object#abstract_kind */
3135 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MParameterType:model#Object#concrete_kind */
3136 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MParameterType:model#Object#interface_kind */
3137 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MParameterType:model#Object#enum_kind */
3138 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MParameterType:model#Object#extern_kind */
3139 (nitmethod_t)VIRTUAL_model__MParameterType__model, /* pointer to model:MParameterType:model#MParameterType#model */
3140 (nitmethod_t)VIRTUAL_model__MType__is_subtype, /* pointer to model:MParameterType:model#MType#is_subtype */
3141 (nitmethod_t)VIRTUAL_model__MType__anchor_to, /* pointer to model:MParameterType:model#MType#anchor_to */
3142 (nitmethod_t)VIRTUAL_model__MType__need_anchor, /* pointer to model:MParameterType:model#MType#need_anchor */
3143 (nitmethod_t)VIRTUAL_model__MType__supertype_to, /* pointer to model:MParameterType:model#MType#supertype_to */
3144 (nitmethod_t)VIRTUAL_model__MParameterType__resolve_for, /* pointer to model:MParameterType:model#MParameterType#resolve_for */
3145 (nitmethod_t)VIRTUAL_model__MParameterType__can_resolve_for, /* pointer to model:MParameterType:model#MParameterType#can_resolve_for */
3146 (nitmethod_t)VIRTUAL_model__MType__as_nullable, /* pointer to model:MParameterType:model#MType#as_nullable */
3147 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache, /* pointer to model:MParameterType:model#MType#as_nullable_cache */
3148 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache_61d, /* pointer to model:MParameterType:model#MType#as_nullable_cache= */
3149 (nitmethod_t)VIRTUAL_model__MType__depth, /* pointer to model:MParameterType:model#MType#depth */
3150 (nitmethod_t)VIRTUAL_model__MType__length, /* pointer to model:MParameterType:model#MType#length */
3151 (nitmethod_t)VIRTUAL_model__MType__collect_mclassdefs, /* pointer to model:MParameterType:model#MType#collect_mclassdefs */
3152 (nitmethod_t)VIRTUAL_model__MType__collect_mclasses, /* pointer to model:MParameterType:model#MType#collect_mclasses */
3153 (nitmethod_t)VIRTUAL_model__MType__collect_mtypes, /* pointer to model:MParameterType:model#MType#collect_mtypes */
3154 (nitmethod_t)VIRTUAL_model__MType__has_mproperty, /* pointer to model:MParameterType:model#MType#has_mproperty */
3155 (nitmethod_t)VIRTUAL_model__MType__init, /* pointer to model:MParameterType:model#MType#init */
3156 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctype, /* pointer to model:MParameterType:abstract_compiler#MType#ctype */
3157 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctypename, /* pointer to model:MParameterType:abstract_compiler#MType#ctypename */
3158 (nitmethod_t)VIRTUAL_abstract_compiler__MParameterType__c_name, /* pointer to model:MParameterType:abstract_compiler#MParameterType#c_name */
3159 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache, /* pointer to model:MParameterType:abstract_compiler#MType#c_name_cache */
3160 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache_61d, /* pointer to model:MParameterType:abstract_compiler#MType#c_name_cache= */
3161 (nitmethod_t)VIRTUAL_separate_compiler__MType__const_color, /* pointer to model:MParameterType:separate_compiler#MType#const_color */
3162 (nitmethod_t)VIRTUAL_model__MParameterType__mclass, /* pointer to model:MParameterType:model#MParameterType#mclass */
3163 (nitmethod_t)VIRTUAL_model__MParameterType__mclass_61d, /* pointer to model:MParameterType:model#MParameterType#mclass= */
3164 (nitmethod_t)VIRTUAL_model__MParameterType__rank, /* pointer to model:MParameterType:model#MParameterType#rank */
3165 (nitmethod_t)VIRTUAL_model__MParameterType__rank_61d, /* pointer to model:MParameterType:model#MParameterType#rank= */
3166 (nitmethod_t)VIRTUAL_model__MParameterType__lookup_bound, /* pointer to model:MParameterType:model#MParameterType#lookup_bound */
3167 (nitmethod_t)VIRTUAL_model__MParameterType__init, /* pointer to model:MParameterType:model#MParameterType#init */
3168 }
3169 };
3170 /* allocate MParameterType */
3171 val* NEW_model__MParameterType(const struct type* type) {
3172 val* self /* : MParameterType */;
3173 val* var /* : null */;
3174 self = nit_alloc(sizeof(struct instance) + 4*sizeof(nitattribute_t));
3175 self->type = type;
3176 self->class = &class_model__MParameterType;
3177 var = NULL;
3178 self->attrs[COLOR_model__MType___64das_nullable_cache].val = var; /* @as_nullable_cache on <self:MParameterType exact> */
3179 return self;
3180 }
3181 /* allocate MParameterType */
3182 void CHECK_NEW_model__MParameterType(val* self) {
3183 val* var /* : nullable String */;
3184 val* var1 /* : MClass */;
3185 long var2 /* : Int */;
3186 var = self->attrs[COLOR_abstract_compiler__MType___64dc_name_cache].val; /* @c_name_cache on <self:MParameterType> */
3187 var1 = self->attrs[COLOR_model__MParameterType___64dmclass].val; /* @mclass on <self:MParameterType> */
3188 if (var1 == NULL) {
3189 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclass");
3190 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1180);
3191 exit(1);
3192 }
3193 var2 = self->attrs[COLOR_model__MParameterType___64drank].l; /* @rank on <self:MParameterType> */
3194 }
3195 /* runtime class model__MNullableType */
3196 const struct class class_model__MNullableType = {
3197 0, /* box_kind */
3198 {
3199 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MNullableType:kernel#Object#object_id */
3200 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MNullableType:kernel#Object#is_same_type */
3201 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MNullableType:kernel#Object#is_same_instance */
3202 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MNullableType:kernel#Object#== */
3203 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MNullableType:kernel#Object#!= */
3204 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MNullableType:kernel#Object#output */
3205 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MNullableType:kernel#Object#output_class_name */
3206 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MNullableType:kernel#Object#exit */
3207 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MNullableType:kernel#Object#sys */
3208 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MNullableType:kernel#Object#hash */
3209 (nitmethod_t)VIRTUAL_model__MNullableType__to_s, /* pointer to model:MNullableType:model#MNullableType#to_s */
3210 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MNullableType:string#Object#native_class_name */
3211 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MNullableType:string#Object#class_name */
3212 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MNullableType:string#Object#inspect */
3213 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MNullableType:string#Object#inspect_head */
3214 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MNullableType:string#Object#args */
3215 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MNullableType:math#Object#atan2 */
3216 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MNullableType:math#Object#pi */
3217 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MNullableType:math#Object#srand_from */
3218 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MNullableType:math#Object#srand */
3219 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MNullableType:stream#Object#poll */
3220 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MNullableType:stream#Object#intern_poll */
3221 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MNullableType:time#Object#get_time */
3222 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MNullableType:file#Object#printn */
3223 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MNullableType:file#Object#print */
3224 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MNullableType:file#Object#getc */
3225 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MNullableType:file#Object#gets */
3226 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MNullableType:file#Object#getcwd */
3227 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MNullableType:file#Object#file_getcwd */
3228 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MNullableType:file#Object#stdin */
3229 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MNullableType:file#Object#stdout */
3230 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MNullableType:file#Object#stderr */
3231 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MNullableType:model_base#Object#intrude_visibility */
3232 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MNullableType:model_base#Object#public_visibility */
3233 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MNullableType:model_base#Object#protected_visibility */
3234 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MNullableType:model_base#Object#private_visibility */
3235 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MNullableType:model_base#Object#none_visibility */
3236 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MNullableType:model#Object#abstract_kind */
3237 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MNullableType:model#Object#concrete_kind */
3238 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MNullableType:model#Object#interface_kind */
3239 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MNullableType:model#Object#enum_kind */
3240 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MNullableType:model#Object#extern_kind */
3241 (nitmethod_t)VIRTUAL_model__MNullableType__model, /* pointer to model:MNullableType:model#MNullableType#model */
3242 (nitmethod_t)VIRTUAL_model__MType__is_subtype, /* pointer to model:MNullableType:model#MType#is_subtype */
3243 (nitmethod_t)VIRTUAL_model__MType__anchor_to, /* pointer to model:MNullableType:model#MType#anchor_to */
3244 (nitmethod_t)VIRTUAL_model__MNullableType__need_anchor, /* pointer to model:MNullableType:model#MNullableType#need_anchor */
3245 (nitmethod_t)VIRTUAL_model__MType__supertype_to, /* pointer to model:MNullableType:model#MType#supertype_to */
3246 (nitmethod_t)VIRTUAL_model__MNullableType__resolve_for, /* pointer to model:MNullableType:model#MNullableType#resolve_for */
3247 (nitmethod_t)VIRTUAL_model__MNullableType__can_resolve_for, /* pointer to model:MNullableType:model#MNullableType#can_resolve_for */
3248 (nitmethod_t)VIRTUAL_model__MNullableType__as_nullable, /* pointer to model:MNullableType:model#MNullableType#as_nullable */
3249 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache, /* pointer to model:MNullableType:model#MType#as_nullable_cache */
3250 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache_61d, /* pointer to model:MNullableType:model#MType#as_nullable_cache= */
3251 (nitmethod_t)VIRTUAL_model__MNullableType__depth, /* pointer to model:MNullableType:model#MNullableType#depth */
3252 (nitmethod_t)VIRTUAL_model__MNullableType__length, /* pointer to model:MNullableType:model#MNullableType#length */
3253 (nitmethod_t)VIRTUAL_model__MNullableType__collect_mclassdefs, /* pointer to model:MNullableType:model#MNullableType#collect_mclassdefs */
3254 (nitmethod_t)VIRTUAL_model__MNullableType__collect_mclasses, /* pointer to model:MNullableType:model#MNullableType#collect_mclasses */
3255 (nitmethod_t)VIRTUAL_model__MNullableType__collect_mtypes, /* pointer to model:MNullableType:model#MNullableType#collect_mtypes */
3256 (nitmethod_t)VIRTUAL_model__MType__has_mproperty, /* pointer to model:MNullableType:model#MType#has_mproperty */
3257 (nitmethod_t)VIRTUAL_model__MType__init, /* pointer to model:MNullableType:model#MType#init */
3258 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctype, /* pointer to model:MNullableType:abstract_compiler#MType#ctype */
3259 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctypename, /* pointer to model:MNullableType:abstract_compiler#MType#ctypename */
3260 (nitmethod_t)VIRTUAL_abstract_compiler__MNullableType__c_name, /* pointer to model:MNullableType:abstract_compiler#MNullableType#c_name */
3261 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache, /* pointer to model:MNullableType:abstract_compiler#MType#c_name_cache */
3262 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache_61d, /* pointer to model:MNullableType:abstract_compiler#MType#c_name_cache= */
3263 (nitmethod_t)VIRTUAL_separate_compiler__MType__const_color, /* pointer to model:MNullableType:separate_compiler#MType#const_color */
3264 (nitmethod_t)VIRTUAL_model__MNullableType__mtype, /* pointer to model:MNullableType:model#MNullableType#mtype */
3265 (nitmethod_t)VIRTUAL_model__MNullableType__mtype_61d, /* pointer to model:MNullableType:model#MNullableType#mtype= */
3266 (nitmethod_t)VIRTUAL_model__MNullableType__init, /* pointer to model:MNullableType:model#MNullableType#init */
3267 (nitmethod_t)VIRTUAL_model__MNullableType__to_s_61d, /* pointer to model:MNullableType:model#MNullableType#to_s= */
3268 }
3269 };
3270 /* allocate MNullableType */
3271 val* NEW_model__MNullableType(const struct type* type) {
3272 val* self /* : MNullableType */;
3273 val* var /* : null */;
3274 self = nit_alloc(sizeof(struct instance) + 4*sizeof(nitattribute_t));
3275 self->type = type;
3276 self->class = &class_model__MNullableType;
3277 var = NULL;
3278 self->attrs[COLOR_model__MType___64das_nullable_cache].val = var; /* @as_nullable_cache on <self:MNullableType exact> */
3279 return self;
3280 }
3281 /* allocate MNullableType */
3282 void CHECK_NEW_model__MNullableType(val* self) {
3283 val* var /* : nullable String */;
3284 val* var1 /* : MType */;
3285 val* var2 /* : String */;
3286 var = self->attrs[COLOR_abstract_compiler__MType___64dc_name_cache].val; /* @c_name_cache on <self:MNullableType> */
3287 var1 = self->attrs[COLOR_model__MNullableType___64dmtype].val; /* @mtype on <self:MNullableType> */
3288 if (var1 == NULL) {
3289 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mtype");
3290 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1284);
3291 exit(1);
3292 }
3293 var2 = self->attrs[COLOR_model__MNullableType___64dto_s].val; /* @to_s on <self:MNullableType> */
3294 if (var2 == NULL) {
3295 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
3296 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1295);
3297 exit(1);
3298 }
3299 }
3300 /* runtime class model__MNullType */
3301 const struct class class_model__MNullType = {
3302 0, /* box_kind */
3303 {
3304 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MNullType:kernel#Object#object_id */
3305 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MNullType:kernel#Object#is_same_type */
3306 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MNullType:kernel#Object#is_same_instance */
3307 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MNullType:kernel#Object#== */
3308 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MNullType:kernel#Object#!= */
3309 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MNullType:kernel#Object#output */
3310 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MNullType:kernel#Object#output_class_name */
3311 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MNullType:kernel#Object#exit */
3312 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MNullType:kernel#Object#sys */
3313 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MNullType:kernel#Object#hash */
3314 (nitmethod_t)VIRTUAL_model__MNullType__to_s, /* pointer to model:MNullType:model#MNullType#to_s */
3315 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MNullType:string#Object#native_class_name */
3316 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MNullType:string#Object#class_name */
3317 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MNullType:string#Object#inspect */
3318 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MNullType:string#Object#inspect_head */
3319 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MNullType:string#Object#args */
3320 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MNullType:math#Object#atan2 */
3321 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MNullType:math#Object#pi */
3322 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MNullType:math#Object#srand_from */
3323 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MNullType:math#Object#srand */
3324 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MNullType:stream#Object#poll */
3325 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MNullType:stream#Object#intern_poll */
3326 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MNullType:time#Object#get_time */
3327 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MNullType:file#Object#printn */
3328 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MNullType:file#Object#print */
3329 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MNullType:file#Object#getc */
3330 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MNullType:file#Object#gets */
3331 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MNullType:file#Object#getcwd */
3332 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MNullType:file#Object#file_getcwd */
3333 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MNullType:file#Object#stdin */
3334 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MNullType:file#Object#stdout */
3335 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MNullType:file#Object#stderr */
3336 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MNullType:model_base#Object#intrude_visibility */
3337 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MNullType:model_base#Object#public_visibility */
3338 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MNullType:model_base#Object#protected_visibility */
3339 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MNullType:model_base#Object#private_visibility */
3340 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MNullType:model_base#Object#none_visibility */
3341 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MNullType:model#Object#abstract_kind */
3342 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MNullType:model#Object#concrete_kind */
3343 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MNullType:model#Object#interface_kind */
3344 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MNullType:model#Object#enum_kind */
3345 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MNullType:model#Object#extern_kind */
3346 (nitmethod_t)VIRTUAL_model__MNullType__model, /* pointer to model:MNullType:model#MNullType#model */
3347 (nitmethod_t)VIRTUAL_model__MType__is_subtype, /* pointer to model:MNullType:model#MType#is_subtype */
3348 (nitmethod_t)VIRTUAL_model__MType__anchor_to, /* pointer to model:MNullType:model#MType#anchor_to */
3349 (nitmethod_t)VIRTUAL_model__MNullType__need_anchor, /* pointer to model:MNullType:model#MNullType#need_anchor */
3350 (nitmethod_t)VIRTUAL_model__MType__supertype_to, /* pointer to model:MNullType:model#MType#supertype_to */
3351 (nitmethod_t)VIRTUAL_model__MNullType__resolve_for, /* pointer to model:MNullType:model#MNullType#resolve_for */
3352 (nitmethod_t)VIRTUAL_model__MNullType__can_resolve_for, /* pointer to model:MNullType:model#MNullType#can_resolve_for */
3353 (nitmethod_t)VIRTUAL_model__MNullType__as_nullable, /* pointer to model:MNullType:model#MNullType#as_nullable */
3354 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache, /* pointer to model:MNullType:model#MType#as_nullable_cache */
3355 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache_61d, /* pointer to model:MNullType:model#MType#as_nullable_cache= */
3356 (nitmethod_t)VIRTUAL_model__MType__depth, /* pointer to model:MNullType:model#MType#depth */
3357 (nitmethod_t)VIRTUAL_model__MType__length, /* pointer to model:MNullType:model#MType#length */
3358 (nitmethod_t)VIRTUAL_model__MNullType__collect_mclassdefs, /* pointer to model:MNullType:model#MNullType#collect_mclassdefs */
3359 (nitmethod_t)VIRTUAL_model__MNullType__collect_mclasses, /* pointer to model:MNullType:model#MNullType#collect_mclasses */
3360 (nitmethod_t)VIRTUAL_model__MNullType__collect_mtypes, /* pointer to model:MNullType:model#MNullType#collect_mtypes */
3361 (nitmethod_t)VIRTUAL_model__MType__has_mproperty, /* pointer to model:MNullType:model#MType#has_mproperty */
3362 (nitmethod_t)VIRTUAL_model__MType__init, /* pointer to model:MNullType:model#MType#init */
3363 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctype, /* pointer to model:MNullType:abstract_compiler#MType#ctype */
3364 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctypename, /* pointer to model:MNullType:abstract_compiler#MType#ctypename */
3365 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name, /* pointer to model:MNullType:abstract_compiler#MType#c_name */
3366 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache, /* pointer to model:MNullType:abstract_compiler#MType#c_name_cache */
3367 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache_61d, /* pointer to model:MNullType:abstract_compiler#MType#c_name_cache= */
3368 (nitmethod_t)VIRTUAL_separate_compiler__MType__const_color, /* pointer to model:MNullType:separate_compiler#MType#const_color */
3369 (nitmethod_t)VIRTUAL_model__MNullType__model_61d, /* pointer to model:MNullType:model#MNullType#model= */
3370 (nitmethod_t)VIRTUAL_model__MNullType__init, /* pointer to model:MNullType:model#MNullType#init */
3371 }
3372 };
3373 /* allocate MNullType */
3374 val* NEW_model__MNullType(const struct type* type) {
3375 val* self /* : MNullType */;
3376 val* var /* : null */;
3377 self = nit_alloc(sizeof(struct instance) + 3*sizeof(nitattribute_t));
3378 self->type = type;
3379 self->class = &class_model__MNullType;
3380 var = NULL;
3381 self->attrs[COLOR_model__MType___64das_nullable_cache].val = var; /* @as_nullable_cache on <self:MNullType exact> */
3382 return self;
3383 }
3384 /* allocate MNullType */
3385 void CHECK_NEW_model__MNullType(val* self) {
3386 val* var /* : nullable String */;
3387 val* var1 /* : Model */;
3388 var = self->attrs[COLOR_abstract_compiler__MType___64dc_name_cache].val; /* @c_name_cache on <self:MNullType> */
3389 var1 = self->attrs[COLOR_model__MNullType___64dmodel].val; /* @model on <self:MNullType> */
3390 if (var1 == NULL) {
3391 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @model");
3392 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1338);
3393 exit(1);
3394 }
3395 }
3396 /* runtime class model__MSignature */
3397 const struct class class_model__MSignature = {
3398 0, /* box_kind */
3399 {
3400 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MSignature:kernel#Object#object_id */
3401 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MSignature:kernel#Object#is_same_type */
3402 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MSignature:kernel#Object#is_same_instance */
3403 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MSignature:kernel#Object#== */
3404 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MSignature:kernel#Object#!= */
3405 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MSignature:kernel#Object#output */
3406 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MSignature:kernel#Object#output_class_name */
3407 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MSignature:kernel#Object#exit */
3408 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MSignature:kernel#Object#sys */
3409 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MSignature:kernel#Object#hash */
3410 (nitmethod_t)VIRTUAL_model__MSignature__to_s, /* pointer to model:MSignature:model#MSignature#to_s */
3411 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MSignature:string#Object#native_class_name */
3412 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MSignature:string#Object#class_name */
3413 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MSignature:string#Object#inspect */
3414 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MSignature:string#Object#inspect_head */
3415 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MSignature:string#Object#args */
3416 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MSignature:math#Object#atan2 */
3417 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MSignature:math#Object#pi */
3418 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MSignature:math#Object#srand_from */
3419 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MSignature:math#Object#srand */
3420 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MSignature:stream#Object#poll */
3421 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MSignature:stream#Object#intern_poll */
3422 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MSignature:time#Object#get_time */
3423 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MSignature:file#Object#printn */
3424 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MSignature:file#Object#print */
3425 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MSignature:file#Object#getc */
3426 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MSignature:file#Object#gets */
3427 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MSignature:file#Object#getcwd */
3428 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MSignature:file#Object#file_getcwd */
3429 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MSignature:file#Object#stdin */
3430 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MSignature:file#Object#stdout */
3431 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MSignature:file#Object#stderr */
3432 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MSignature:model_base#Object#intrude_visibility */
3433 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MSignature:model_base#Object#public_visibility */
3434 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MSignature:model_base#Object#protected_visibility */
3435 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MSignature:model_base#Object#private_visibility */
3436 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MSignature:model_base#Object#none_visibility */
3437 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MSignature:model#Object#abstract_kind */
3438 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MSignature:model#Object#concrete_kind */
3439 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MSignature:model#Object#interface_kind */
3440 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MSignature:model#Object#enum_kind */
3441 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MSignature:model#Object#extern_kind */
3442 (nitmethod_t)VIRTUAL_model__MType__model, /* pointer to model:MSignature:model#MType#model */
3443 (nitmethod_t)VIRTUAL_model__MType__is_subtype, /* pointer to model:MSignature:model#MType#is_subtype */
3444 (nitmethod_t)VIRTUAL_model__MType__anchor_to, /* pointer to model:MSignature:model#MType#anchor_to */
3445 (nitmethod_t)VIRTUAL_model__MType__need_anchor, /* pointer to model:MSignature:model#MType#need_anchor */
3446 (nitmethod_t)VIRTUAL_model__MType__supertype_to, /* pointer to model:MSignature:model#MType#supertype_to */
3447 (nitmethod_t)VIRTUAL_model__MSignature__resolve_for, /* pointer to model:MSignature:model#MSignature#resolve_for */
3448 (nitmethod_t)VIRTUAL_model__MType__can_resolve_for, /* pointer to model:MSignature:model#MType#can_resolve_for */
3449 (nitmethod_t)VIRTUAL_model__MType__as_nullable, /* pointer to model:MSignature:model#MType#as_nullable */
3450 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache, /* pointer to model:MSignature:model#MType#as_nullable_cache */
3451 (nitmethod_t)VIRTUAL_model__MType__as_nullable_cache_61d, /* pointer to model:MSignature:model#MType#as_nullable_cache= */
3452 (nitmethod_t)VIRTUAL_model__MSignature__depth, /* pointer to model:MSignature:model#MSignature#depth */
3453 (nitmethod_t)VIRTUAL_model__MSignature__length, /* pointer to model:MSignature:model#MSignature#length */
3454 (nitmethod_t)VIRTUAL_model__MType__collect_mclassdefs, /* pointer to model:MSignature:model#MType#collect_mclassdefs */
3455 (nitmethod_t)VIRTUAL_model__MType__collect_mclasses, /* pointer to model:MSignature:model#MType#collect_mclasses */
3456 (nitmethod_t)VIRTUAL_model__MType__collect_mtypes, /* pointer to model:MSignature:model#MType#collect_mtypes */
3457 (nitmethod_t)VIRTUAL_model__MType__has_mproperty, /* pointer to model:MSignature:model#MType#has_mproperty */
3458 (nitmethod_t)VIRTUAL_model__MType__init, /* pointer to model:MSignature:model#MType#init */
3459 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctype, /* pointer to model:MSignature:abstract_compiler#MType#ctype */
3460 (nitmethod_t)VIRTUAL_abstract_compiler__MType__ctypename, /* pointer to model:MSignature:abstract_compiler#MType#ctypename */
3461 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name, /* pointer to model:MSignature:abstract_compiler#MType#c_name */
3462 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache, /* pointer to model:MSignature:abstract_compiler#MType#c_name_cache */
3463 (nitmethod_t)VIRTUAL_abstract_compiler__MType__c_name_cache_61d, /* pointer to model:MSignature:abstract_compiler#MType#c_name_cache= */
3464 (nitmethod_t)VIRTUAL_separate_compiler__MType__const_color, /* pointer to model:MSignature:separate_compiler#MType#const_color */
3465 (nitmethod_t)VIRTUAL_model__MSignature__mparameters, /* pointer to model:MSignature:model#MSignature#mparameters */
3466 (nitmethod_t)VIRTUAL_model__MSignature__mparameters_61d, /* pointer to model:MSignature:model#MSignature#mparameters= */
3467 (nitmethod_t)VIRTUAL_model__MSignature__return_mtype, /* pointer to model:MSignature:model#MSignature#return_mtype */
3468 (nitmethod_t)VIRTUAL_model__MSignature__return_mtype_61d, /* pointer to model:MSignature:model#MSignature#return_mtype= */
3469 (nitmethod_t)VIRTUAL_model__MSignature__init, /* pointer to model:MSignature:model#MSignature#init */
3470 (nitmethod_t)VIRTUAL_model__MSignature__vararg_rank, /* pointer to model:MSignature:model#MSignature#vararg_rank */
3471 (nitmethod_t)VIRTUAL_model__MSignature__vararg_rank_61d, /* pointer to model:MSignature:model#MSignature#vararg_rank= */
3472 (nitmethod_t)VIRTUAL_model__MSignature__arity, /* pointer to model:MSignature:model#MSignature#arity */
3473 }
3474 };
3475 /* allocate MSignature */
3476 val* NEW_model__MSignature(const struct type* type) {
3477 val* self /* : MSignature */;
3478 val* var /* : null */;
3479 self = nit_alloc(sizeof(struct instance) + 5*sizeof(nitattribute_t));
3480 self->type = type;
3481 self->class = &class_model__MSignature;
3482 var = NULL;
3483 self->attrs[COLOR_model__MType___64das_nullable_cache].val = var; /* @as_nullable_cache on <self:MSignature exact> */
3484 return self;
3485 }
3486 /* allocate MSignature */
3487 void CHECK_NEW_model__MSignature(val* self) {
3488 val* var /* : nullable String */;
3489 val* var1 /* : Array[MParameter] */;
3490 val* var2 /* : nullable MType */;
3491 long var3 /* : Int */;
3492 var = self->attrs[COLOR_abstract_compiler__MType___64dc_name_cache].val; /* @c_name_cache on <self:MSignature> */
3493 var1 = self->attrs[COLOR_model__MSignature___64dmparameters].val; /* @mparameters on <self:MSignature> */
3494 if (var1 == NULL) {
3495 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mparameters");
3496 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1360);
3497 exit(1);
3498 }
3499 var2 = self->attrs[COLOR_model__MSignature___64dreturn_mtype].val; /* @return_mtype on <self:MSignature> */
3500 var3 = self->attrs[COLOR_model__MSignature___64dvararg_rank].l; /* @vararg_rank on <self:MSignature> */
3501 }
3502 /* runtime class model__MParameter */
3503 const struct class class_model__MParameter = {
3504 0, /* box_kind */
3505 {
3506 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MParameter:kernel#Object#object_id */
3507 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MParameter:kernel#Object#is_same_type */
3508 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MParameter:kernel#Object#is_same_instance */
3509 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MParameter:kernel#Object#== */
3510 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MParameter:kernel#Object#!= */
3511 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MParameter:kernel#Object#output */
3512 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MParameter:kernel#Object#output_class_name */
3513 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MParameter:kernel#Object#exit */
3514 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MParameter:kernel#Object#sys */
3515 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MParameter:kernel#Object#hash */
3516 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to model:MParameter:string#Object#to_s */
3517 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MParameter:string#Object#native_class_name */
3518 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MParameter:string#Object#class_name */
3519 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MParameter:string#Object#inspect */
3520 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MParameter:string#Object#inspect_head */
3521 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MParameter:string#Object#args */
3522 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MParameter:math#Object#atan2 */
3523 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MParameter:math#Object#pi */
3524 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MParameter:math#Object#srand_from */
3525 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MParameter:math#Object#srand */
3526 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MParameter:stream#Object#poll */
3527 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MParameter:stream#Object#intern_poll */
3528 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MParameter:time#Object#get_time */
3529 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MParameter:file#Object#printn */
3530 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MParameter:file#Object#print */
3531 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MParameter:file#Object#getc */
3532 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MParameter:file#Object#gets */
3533 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MParameter:file#Object#getcwd */
3534 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MParameter:file#Object#file_getcwd */
3535 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MParameter:file#Object#stdin */
3536 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MParameter:file#Object#stdout */
3537 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MParameter:file#Object#stderr */
3538 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MParameter:model_base#Object#intrude_visibility */
3539 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MParameter:model_base#Object#public_visibility */
3540 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MParameter:model_base#Object#protected_visibility */
3541 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MParameter:model_base#Object#private_visibility */
3542 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MParameter:model_base#Object#none_visibility */
3543 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MParameter:model#Object#abstract_kind */
3544 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MParameter:model#Object#concrete_kind */
3545 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MParameter:model#Object#interface_kind */
3546 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MParameter:model#Object#enum_kind */
3547 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MParameter:model#Object#extern_kind */
3548 (nitmethod_t)VIRTUAL_model__MParameter__name, /* pointer to model:MParameter:model#MParameter#name */
3549 (nitmethod_t)VIRTUAL_model__MParameter__name_61d, /* pointer to model:MParameter:model#MParameter#name= */
3550 (nitmethod_t)VIRTUAL_model__MParameter__mtype, /* pointer to model:MParameter:model#MParameter#mtype */
3551 (nitmethod_t)VIRTUAL_model__MParameter__mtype_61d, /* pointer to model:MParameter:model#MParameter#mtype= */
3552 (nitmethod_t)VIRTUAL_model__MParameter__is_vararg, /* pointer to model:MParameter:model#MParameter#is_vararg */
3553 (nitmethod_t)VIRTUAL_model__MParameter__is_vararg_61d, /* pointer to model:MParameter:model#MParameter#is_vararg= */
3554 (nitmethod_t)VIRTUAL_model__MParameter__resolve_for, /* pointer to model:MParameter:model#MParameter#resolve_for */
3555 (nitmethod_t)VIRTUAL_model__MParameter__init, /* pointer to model:MParameter:model#MParameter#init */
3556 }
3557 };
3558 /* allocate MParameter */
3559 val* NEW_model__MParameter(const struct type* type) {
3560 val* self /* : MParameter */;
3561 self = nit_alloc(sizeof(struct instance) + 3*sizeof(nitattribute_t));
3562 self->type = type;
3563 self->class = &class_model__MParameter;
3564 return self;
3565 }
3566 /* allocate MParameter */
3567 void CHECK_NEW_model__MParameter(val* self) {
3568 val* var /* : String */;
3569 val* var1 /* : MType */;
3570 short int var2 /* : Bool */;
3571 var = self->attrs[COLOR_model__MParameter___64dname].val; /* @name on <self:MParameter> */
3572 if (var == NULL) {
3573 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
3574 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1455);
3575 exit(1);
3576 }
3577 var1 = self->attrs[COLOR_model__MParameter___64dmtype].val; /* @mtype on <self:MParameter> */
3578 if (var1 == NULL) {
3579 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mtype");
3580 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1458);
3581 exit(1);
3582 }
3583 var2 = self->attrs[COLOR_model__MParameter___64dis_vararg].s; /* @is_vararg on <self:MParameter> */
3584 }
3585 /* runtime class model__MMethod */
3586 const struct class class_model__MMethod = {
3587 0, /* box_kind */
3588 {
3589 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MMethod:kernel#Object#object_id */
3590 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MMethod:kernel#Object#is_same_type */
3591 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MMethod:kernel#Object#is_same_instance */
3592 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MMethod:kernel#Object#== */
3593 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MMethod:kernel#Object#!= */
3594 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MMethod:kernel#Object#output */
3595 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MMethod:kernel#Object#output_class_name */
3596 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MMethod:kernel#Object#exit */
3597 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MMethod:kernel#Object#sys */
3598 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MMethod:kernel#Object#hash */
3599 (nitmethod_t)VIRTUAL_model__MProperty__to_s, /* pointer to model:MMethod:model#MProperty#to_s */
3600 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MMethod:string#Object#native_class_name */
3601 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MMethod:string#Object#class_name */
3602 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MMethod:string#Object#inspect */
3603 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MMethod:string#Object#inspect_head */
3604 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MMethod:string#Object#args */
3605 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MMethod:math#Object#atan2 */
3606 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MMethod:math#Object#pi */
3607 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MMethod:math#Object#srand_from */
3608 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MMethod:math#Object#srand */
3609 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MMethod:stream#Object#poll */
3610 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MMethod:stream#Object#intern_poll */
3611 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MMethod:time#Object#get_time */
3612 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MMethod:file#Object#printn */
3613 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MMethod:file#Object#print */
3614 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MMethod:file#Object#getc */
3615 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MMethod:file#Object#gets */
3616 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MMethod:file#Object#getcwd */
3617 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MMethod:file#Object#file_getcwd */
3618 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MMethod:file#Object#stdin */
3619 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MMethod:file#Object#stdout */
3620 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MMethod:file#Object#stderr */
3621 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MMethod:model_base#Object#intrude_visibility */
3622 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MMethod:model_base#Object#public_visibility */
3623 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MMethod:model_base#Object#protected_visibility */
3624 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MMethod:model_base#Object#private_visibility */
3625 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MMethod:model_base#Object#none_visibility */
3626 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MMethod:model#Object#abstract_kind */
3627 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MMethod:model#Object#concrete_kind */
3628 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MMethod:model#Object#interface_kind */
3629 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MMethod:model#Object#enum_kind */
3630 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MMethod:model#Object#extern_kind */
3631 (nitmethod_t)VIRTUAL_model__MProperty__intro_mclassdef, /* pointer to model:MMethod:model#MProperty#intro_mclassdef */
3632 (nitmethod_t)VIRTUAL_model__MProperty__intro_mclassdef_61d, /* pointer to model:MMethod:model#MProperty#intro_mclassdef= */
3633 (nitmethod_t)VIRTUAL_model__MProperty__name, /* pointer to model:MMethod:model#MProperty#name */
3634 (nitmethod_t)VIRTUAL_model__MProperty__name_61d, /* pointer to model:MMethod:model#MProperty#name= */
3635 (nitmethod_t)VIRTUAL_model__MProperty__full_name, /* pointer to model:MMethod:model#MProperty#full_name */
3636 (nitmethod_t)VIRTUAL_model__MProperty__visibility, /* pointer to model:MMethod:model#MProperty#visibility */
3637 (nitmethod_t)VIRTUAL_model__MProperty__visibility_61d, /* pointer to model:MMethod:model#MProperty#visibility= */
3638 (nitmethod_t)VIRTUAL_model__MProperty__init, /* pointer to model:MMethod:model#MProperty#init */
3639 (nitmethod_t)VIRTUAL_model__MProperty__mpropdefs, /* pointer to model:MMethod:model#MProperty#mpropdefs */
3640 (nitmethod_t)VIRTUAL_model__MProperty__mpropdefs_61d, /* pointer to model:MMethod:model#MProperty#mpropdefs= */
3641 (nitmethod_t)VIRTUAL_model__MProperty__intro, /* pointer to model:MMethod:model#MProperty#intro */
3642 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions, /* pointer to model:MMethod:model#MProperty#lookup_definitions */
3643 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions_cache, /* pointer to model:MMethod:model#MProperty#lookup_definitions_cache */
3644 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions_cache_61d, /* pointer to model:MMethod:model#MProperty#lookup_definitions_cache= */
3645 (nitmethod_t)VIRTUAL_model__MProperty__lookup_super_definitions, /* pointer to model:MMethod:model#MProperty#lookup_super_definitions */
3646 (nitmethod_t)VIRTUAL_model__MProperty__lookup_first_definition, /* pointer to model:MMethod:model#MProperty#lookup_first_definition */
3647 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions, /* pointer to model:MMethod:model#MProperty#lookup_all_definitions */
3648 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions_cache, /* pointer to model:MMethod:model#MProperty#lookup_all_definitions_cache */
3649 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions_cache_61d, /* pointer to model:MMethod:model#MProperty#lookup_all_definitions_cache= */
3650 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name, /* pointer to model:MMethod:abstract_compiler#MProperty#c_name */
3651 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name_cache, /* pointer to model:MMethod:abstract_compiler#MProperty#c_name_cache */
3652 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name_cache_61d, /* pointer to model:MMethod:abstract_compiler#MProperty#c_name_cache= */
3653 (nitmethod_t)VIRTUAL_separate_compiler__MProperty__const_color, /* pointer to model:MMethod:separate_compiler#MProperty#const_color */
3654 (nitmethod_t)VIRTUAL_model__MMethod__init, /* pointer to model:MMethod:model#MMethod#init */
3655 (nitmethod_t)VIRTUAL_model__MMethod__is_init, /* pointer to model:MMethod:model#MMethod#is_init */
3656 (nitmethod_t)VIRTUAL_model__MMethod__is_init_61d, /* pointer to model:MMethod:model#MMethod#is_init= */
3657 (nitmethod_t)VIRTUAL_model__MMethod__is_new, /* pointer to model:MMethod:model#MMethod#is_new */
3658 (nitmethod_t)VIRTUAL_model__MMethod__is_new_61d, /* pointer to model:MMethod:model#MMethod#is_new= */
3659 (nitmethod_t)VIRTUAL_model__MMethod__is_init_for, /* pointer to model:MMethod:model#MMethod#is_init_for */
3660 }
3661 };
3662 /* allocate MMethod */
3663 val* NEW_model__MMethod(const struct type* type) {
3664 val* self /* : MMethod */;
3665 val* var /* : Array[MMethodDef] */;
3666 val* var1 /* : HashMap2[MModule, MType, Array[MMethodDef]] */;
3667 val* var2 /* : HashMap2[MModule, MType, Array[MMethodDef]] */;
3668 short int var3 /* : Bool */;
3669 short int var4 /* : Bool */;
3670 self = nit_alloc(sizeof(struct instance) + 9*sizeof(nitattribute_t));
3671 self->type = type;
3672 self->class = &class_model__MMethod;
3673 var = NEW_array__Array(self->type->resolution_table->types[COLOR_array__Arraymodel__MProperty_VTMPROPDEF]);
3674 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[MMethodDef]>*/;
3675 CHECK_NEW_array__Array(var);
3676 self->attrs[COLOR_model__MProperty___64dmpropdefs].val = var; /* @mpropdefs on <self:MMethod exact> */
3677 var1 = NEW_more_collections__HashMap2(self->type->resolution_table->types[COLOR_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MProperty_VTMPROPDEF]);
3678 ((void (*)(val*))(var1->class->vft[COLOR_more_collections__HashMap2__init]))(var1) /* init on <var1:HashMap2[MModule, MType, Array[MMethodDef]]>*/;
3679 CHECK_NEW_more_collections__HashMap2(var1);
3680 self->attrs[COLOR_model__MProperty___64dlookup_definitions_cache].val = var1; /* @lookup_definitions_cache on <self:MMethod exact> */
3681 var2 = NEW_more_collections__HashMap2(self->type->resolution_table->types[COLOR_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MProperty_VTMPROPDEF]);
3682 ((void (*)(val*))(var2->class->vft[COLOR_more_collections__HashMap2__init]))(var2) /* init on <var2:HashMap2[MModule, MType, Array[MMethodDef]]>*/;
3683 CHECK_NEW_more_collections__HashMap2(var2);
3684 self->attrs[COLOR_model__MProperty___64dlookup_all_definitions_cache].val = var2; /* @lookup_all_definitions_cache on <self:MMethod exact> */
3685 var3 = 0;
3686 self->attrs[COLOR_model__MMethod___64dis_init].s = var3; /* @is_init on <self:MMethod exact> */
3687 var4 = 0;
3688 self->attrs[COLOR_model__MMethod___64dis_new].s = var4; /* @is_new on <self:MMethod exact> */
3689 return self;
3690 }
3691 /* allocate MMethod */
3692 void CHECK_NEW_model__MMethod(val* self) {
3693 val* var /* : MClassDef */;
3694 val* var1 /* : String */;
3695 val* var2 /* : MVisibility */;
3696 val* var3 /* : nullable String */;
3697 var = self->attrs[COLOR_model__MProperty___64dintro_mclassdef].val; /* @intro_mclassdef on <self:MMethod> */
3698 if (var == NULL) {
3699 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @intro_mclassdef");
3700 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1489);
3701 exit(1);
3702 }
3703 var1 = self->attrs[COLOR_model__MProperty___64dname].val; /* @name on <self:MMethod> */
3704 if (var1 == NULL) {
3705 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
3706 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1494);
3707 exit(1);
3708 }
3709 var2 = self->attrs[COLOR_model__MProperty___64dvisibility].val; /* @visibility on <self:MMethod> */
3710 if (var2 == NULL) {
3711 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @visibility");
3712 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1504);
3713 exit(1);
3714 }
3715 var3 = self->attrs[COLOR_abstract_compiler__MProperty___64dc_name_cache].val; /* @c_name_cache on <self:MMethod> */
3716 }
3717 /* runtime class model__MAttribute */
3718 const struct class class_model__MAttribute = {
3719 0, /* box_kind */
3720 {
3721 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MAttribute:kernel#Object#object_id */
3722 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MAttribute:kernel#Object#is_same_type */
3723 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MAttribute:kernel#Object#is_same_instance */
3724 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MAttribute:kernel#Object#== */
3725 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MAttribute:kernel#Object#!= */
3726 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MAttribute:kernel#Object#output */
3727 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MAttribute:kernel#Object#output_class_name */
3728 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MAttribute:kernel#Object#exit */
3729 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MAttribute:kernel#Object#sys */
3730 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MAttribute:kernel#Object#hash */
3731 (nitmethod_t)VIRTUAL_model__MProperty__to_s, /* pointer to model:MAttribute:model#MProperty#to_s */
3732 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MAttribute:string#Object#native_class_name */
3733 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MAttribute:string#Object#class_name */
3734 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MAttribute:string#Object#inspect */
3735 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MAttribute:string#Object#inspect_head */
3736 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MAttribute:string#Object#args */
3737 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MAttribute:math#Object#atan2 */
3738 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MAttribute:math#Object#pi */
3739 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MAttribute:math#Object#srand_from */
3740 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MAttribute:math#Object#srand */
3741 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MAttribute:stream#Object#poll */
3742 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MAttribute:stream#Object#intern_poll */
3743 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MAttribute:time#Object#get_time */
3744 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MAttribute:file#Object#printn */
3745 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MAttribute:file#Object#print */
3746 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MAttribute:file#Object#getc */
3747 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MAttribute:file#Object#gets */
3748 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MAttribute:file#Object#getcwd */
3749 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MAttribute:file#Object#file_getcwd */
3750 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MAttribute:file#Object#stdin */
3751 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MAttribute:file#Object#stdout */
3752 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MAttribute:file#Object#stderr */
3753 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MAttribute:model_base#Object#intrude_visibility */
3754 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MAttribute:model_base#Object#public_visibility */
3755 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MAttribute:model_base#Object#protected_visibility */
3756 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MAttribute:model_base#Object#private_visibility */
3757 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MAttribute:model_base#Object#none_visibility */
3758 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MAttribute:model#Object#abstract_kind */
3759 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MAttribute:model#Object#concrete_kind */
3760 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MAttribute:model#Object#interface_kind */
3761 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MAttribute:model#Object#enum_kind */
3762 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MAttribute:model#Object#extern_kind */
3763 (nitmethod_t)VIRTUAL_model__MProperty__intro_mclassdef, /* pointer to model:MAttribute:model#MProperty#intro_mclassdef */
3764 (nitmethod_t)VIRTUAL_model__MProperty__intro_mclassdef_61d, /* pointer to model:MAttribute:model#MProperty#intro_mclassdef= */
3765 (nitmethod_t)VIRTUAL_model__MProperty__name, /* pointer to model:MAttribute:model#MProperty#name */
3766 (nitmethod_t)VIRTUAL_model__MProperty__name_61d, /* pointer to model:MAttribute:model#MProperty#name= */
3767 (nitmethod_t)VIRTUAL_model__MProperty__full_name, /* pointer to model:MAttribute:model#MProperty#full_name */
3768 (nitmethod_t)VIRTUAL_model__MProperty__visibility, /* pointer to model:MAttribute:model#MProperty#visibility */
3769 (nitmethod_t)VIRTUAL_model__MProperty__visibility_61d, /* pointer to model:MAttribute:model#MProperty#visibility= */
3770 (nitmethod_t)VIRTUAL_model__MProperty__init, /* pointer to model:MAttribute:model#MProperty#init */
3771 (nitmethod_t)VIRTUAL_model__MProperty__mpropdefs, /* pointer to model:MAttribute:model#MProperty#mpropdefs */
3772 (nitmethod_t)VIRTUAL_model__MProperty__mpropdefs_61d, /* pointer to model:MAttribute:model#MProperty#mpropdefs= */
3773 (nitmethod_t)VIRTUAL_model__MProperty__intro, /* pointer to model:MAttribute:model#MProperty#intro */
3774 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions, /* pointer to model:MAttribute:model#MProperty#lookup_definitions */
3775 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions_cache, /* pointer to model:MAttribute:model#MProperty#lookup_definitions_cache */
3776 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions_cache_61d, /* pointer to model:MAttribute:model#MProperty#lookup_definitions_cache= */
3777 (nitmethod_t)VIRTUAL_model__MProperty__lookup_super_definitions, /* pointer to model:MAttribute:model#MProperty#lookup_super_definitions */
3778 (nitmethod_t)VIRTUAL_model__MProperty__lookup_first_definition, /* pointer to model:MAttribute:model#MProperty#lookup_first_definition */
3779 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions, /* pointer to model:MAttribute:model#MProperty#lookup_all_definitions */
3780 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions_cache, /* pointer to model:MAttribute:model#MProperty#lookup_all_definitions_cache */
3781 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions_cache_61d, /* pointer to model:MAttribute:model#MProperty#lookup_all_definitions_cache= */
3782 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name, /* pointer to model:MAttribute:abstract_compiler#MProperty#c_name */
3783 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name_cache, /* pointer to model:MAttribute:abstract_compiler#MProperty#c_name_cache */
3784 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name_cache_61d, /* pointer to model:MAttribute:abstract_compiler#MProperty#c_name_cache= */
3785 (nitmethod_t)VIRTUAL_separate_compiler__MProperty__const_color, /* pointer to model:MAttribute:separate_compiler#MProperty#const_color */
3786 (nitmethod_t)VIRTUAL_model__MAttribute__init, /* pointer to model:MAttribute:model#MAttribute#init */
3787 }
3788 };
3789 /* allocate MAttribute */
3790 val* NEW_model__MAttribute(const struct type* type) {
3791 val* self /* : MAttribute */;
3792 val* var /* : Array[MAttributeDef] */;
3793 val* var1 /* : HashMap2[MModule, MType, Array[MAttributeDef]] */;
3794 val* var2 /* : HashMap2[MModule, MType, Array[MAttributeDef]] */;
3795 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
3796 self->type = type;
3797 self->class = &class_model__MAttribute;
3798 var = NEW_array__Array(self->type->resolution_table->types[COLOR_array__Arraymodel__MProperty_VTMPROPDEF]);
3799 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[MAttributeDef]>*/;
3800 CHECK_NEW_array__Array(var);
3801 self->attrs[COLOR_model__MProperty___64dmpropdefs].val = var; /* @mpropdefs on <self:MAttribute exact> */
3802 var1 = NEW_more_collections__HashMap2(self->type->resolution_table->types[COLOR_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MProperty_VTMPROPDEF]);
3803 ((void (*)(val*))(var1->class->vft[COLOR_more_collections__HashMap2__init]))(var1) /* init on <var1:HashMap2[MModule, MType, Array[MAttributeDef]]>*/;
3804 CHECK_NEW_more_collections__HashMap2(var1);
3805 self->attrs[COLOR_model__MProperty___64dlookup_definitions_cache].val = var1; /* @lookup_definitions_cache on <self:MAttribute exact> */
3806 var2 = NEW_more_collections__HashMap2(self->type->resolution_table->types[COLOR_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MProperty_VTMPROPDEF]);
3807 ((void (*)(val*))(var2->class->vft[COLOR_more_collections__HashMap2__init]))(var2) /* init on <var2:HashMap2[MModule, MType, Array[MAttributeDef]]>*/;
3808 CHECK_NEW_more_collections__HashMap2(var2);
3809 self->attrs[COLOR_model__MProperty___64dlookup_all_definitions_cache].val = var2; /* @lookup_all_definitions_cache on <self:MAttribute exact> */
3810 return self;
3811 }
3812 /* allocate MAttribute */
3813 void CHECK_NEW_model__MAttribute(val* self) {
3814 val* var /* : MClassDef */;
3815 val* var1 /* : String */;
3816 val* var2 /* : MVisibility */;
3817 val* var3 /* : nullable String */;
3818 var = self->attrs[COLOR_model__MProperty___64dintro_mclassdef].val; /* @intro_mclassdef on <self:MAttribute> */
3819 if (var == NULL) {
3820 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @intro_mclassdef");
3821 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1489);
3822 exit(1);
3823 }
3824 var1 = self->attrs[COLOR_model__MProperty___64dname].val; /* @name on <self:MAttribute> */
3825 if (var1 == NULL) {
3826 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
3827 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1494);
3828 exit(1);
3829 }
3830 var2 = self->attrs[COLOR_model__MProperty___64dvisibility].val; /* @visibility on <self:MAttribute> */
3831 if (var2 == NULL) {
3832 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @visibility");
3833 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1504);
3834 exit(1);
3835 }
3836 var3 = self->attrs[COLOR_abstract_compiler__MProperty___64dc_name_cache].val; /* @c_name_cache on <self:MAttribute> */
3837 }
3838 /* runtime class model__MVirtualTypeProp */
3839 const struct class class_model__MVirtualTypeProp = {
3840 0, /* box_kind */
3841 {
3842 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MVirtualTypeProp:kernel#Object#object_id */
3843 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MVirtualTypeProp:kernel#Object#is_same_type */
3844 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MVirtualTypeProp:kernel#Object#is_same_instance */
3845 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MVirtualTypeProp:kernel#Object#== */
3846 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MVirtualTypeProp:kernel#Object#!= */
3847 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MVirtualTypeProp:kernel#Object#output */
3848 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MVirtualTypeProp:kernel#Object#output_class_name */
3849 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MVirtualTypeProp:kernel#Object#exit */
3850 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MVirtualTypeProp:kernel#Object#sys */
3851 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MVirtualTypeProp:kernel#Object#hash */
3852 (nitmethod_t)VIRTUAL_model__MProperty__to_s, /* pointer to model:MVirtualTypeProp:model#MProperty#to_s */
3853 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MVirtualTypeProp:string#Object#native_class_name */
3854 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MVirtualTypeProp:string#Object#class_name */
3855 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MVirtualTypeProp:string#Object#inspect */
3856 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MVirtualTypeProp:string#Object#inspect_head */
3857 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MVirtualTypeProp:string#Object#args */
3858 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MVirtualTypeProp:math#Object#atan2 */
3859 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MVirtualTypeProp:math#Object#pi */
3860 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MVirtualTypeProp:math#Object#srand_from */
3861 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MVirtualTypeProp:math#Object#srand */
3862 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MVirtualTypeProp:stream#Object#poll */
3863 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MVirtualTypeProp:stream#Object#intern_poll */
3864 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MVirtualTypeProp:time#Object#get_time */
3865 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MVirtualTypeProp:file#Object#printn */
3866 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MVirtualTypeProp:file#Object#print */
3867 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MVirtualTypeProp:file#Object#getc */
3868 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MVirtualTypeProp:file#Object#gets */
3869 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MVirtualTypeProp:file#Object#getcwd */
3870 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MVirtualTypeProp:file#Object#file_getcwd */
3871 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MVirtualTypeProp:file#Object#stdin */
3872 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MVirtualTypeProp:file#Object#stdout */
3873 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MVirtualTypeProp:file#Object#stderr */
3874 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MVirtualTypeProp:model_base#Object#intrude_visibility */
3875 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MVirtualTypeProp:model_base#Object#public_visibility */
3876 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MVirtualTypeProp:model_base#Object#protected_visibility */
3877 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MVirtualTypeProp:model_base#Object#private_visibility */
3878 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MVirtualTypeProp:model_base#Object#none_visibility */
3879 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MVirtualTypeProp:model#Object#abstract_kind */
3880 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MVirtualTypeProp:model#Object#concrete_kind */
3881 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MVirtualTypeProp:model#Object#interface_kind */
3882 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MVirtualTypeProp:model#Object#enum_kind */
3883 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MVirtualTypeProp:model#Object#extern_kind */
3884 (nitmethod_t)VIRTUAL_model__MProperty__intro_mclassdef, /* pointer to model:MVirtualTypeProp:model#MProperty#intro_mclassdef */
3885 (nitmethod_t)VIRTUAL_model__MProperty__intro_mclassdef_61d, /* pointer to model:MVirtualTypeProp:model#MProperty#intro_mclassdef= */
3886 (nitmethod_t)VIRTUAL_model__MProperty__name, /* pointer to model:MVirtualTypeProp:model#MProperty#name */
3887 (nitmethod_t)VIRTUAL_model__MProperty__name_61d, /* pointer to model:MVirtualTypeProp:model#MProperty#name= */
3888 (nitmethod_t)VIRTUAL_model__MProperty__full_name, /* pointer to model:MVirtualTypeProp:model#MProperty#full_name */
3889 (nitmethod_t)VIRTUAL_model__MProperty__visibility, /* pointer to model:MVirtualTypeProp:model#MProperty#visibility */
3890 (nitmethod_t)VIRTUAL_model__MProperty__visibility_61d, /* pointer to model:MVirtualTypeProp:model#MProperty#visibility= */
3891 (nitmethod_t)VIRTUAL_model__MProperty__init, /* pointer to model:MVirtualTypeProp:model#MProperty#init */
3892 (nitmethod_t)VIRTUAL_model__MProperty__mpropdefs, /* pointer to model:MVirtualTypeProp:model#MProperty#mpropdefs */
3893 (nitmethod_t)VIRTUAL_model__MProperty__mpropdefs_61d, /* pointer to model:MVirtualTypeProp:model#MProperty#mpropdefs= */
3894 (nitmethod_t)VIRTUAL_model__MProperty__intro, /* pointer to model:MVirtualTypeProp:model#MProperty#intro */
3895 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_definitions */
3896 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions_cache, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_definitions_cache */
3897 (nitmethod_t)VIRTUAL_model__MProperty__lookup_definitions_cache_61d, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_definitions_cache= */
3898 (nitmethod_t)VIRTUAL_model__MProperty__lookup_super_definitions, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_super_definitions */
3899 (nitmethod_t)VIRTUAL_model__MProperty__lookup_first_definition, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_first_definition */
3900 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_all_definitions */
3901 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions_cache, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_all_definitions_cache */
3902 (nitmethod_t)VIRTUAL_model__MProperty__lookup_all_definitions_cache_61d, /* pointer to model:MVirtualTypeProp:model#MProperty#lookup_all_definitions_cache= */
3903 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name, /* pointer to model:MVirtualTypeProp:abstract_compiler#MProperty#c_name */
3904 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name_cache, /* pointer to model:MVirtualTypeProp:abstract_compiler#MProperty#c_name_cache */
3905 (nitmethod_t)VIRTUAL_abstract_compiler__MProperty__c_name_cache_61d, /* pointer to model:MVirtualTypeProp:abstract_compiler#MProperty#c_name_cache= */
3906 (nitmethod_t)VIRTUAL_separate_compiler__MProperty__const_color, /* pointer to model:MVirtualTypeProp:separate_compiler#MProperty#const_color */
3907 (nitmethod_t)VIRTUAL_model__MVirtualTypeProp__init, /* pointer to model:MVirtualTypeProp:model#MVirtualTypeProp#init */
3908 (nitmethod_t)VIRTUAL_model__MVirtualTypeProp__mvirtualtype, /* pointer to model:MVirtualTypeProp:model#MVirtualTypeProp#mvirtualtype */
3909 (nitmethod_t)VIRTUAL_model__MVirtualTypeProp__mvirtualtype_61d, /* pointer to model:MVirtualTypeProp:model#MVirtualTypeProp#mvirtualtype= */
3910 }
3911 };
3912 /* allocate MVirtualTypeProp */
3913 val* NEW_model__MVirtualTypeProp(const struct type* type) {
3914 val* self /* : MVirtualTypeProp */;
3915 val* var /* : Array[MVirtualTypeDef] */;
3916 val* var1 /* : HashMap2[MModule, MType, Array[MVirtualTypeDef]] */;
3917 val* var2 /* : HashMap2[MModule, MType, Array[MVirtualTypeDef]] */;
3918 val* var3 /* : MVirtualType */;
3919 self = nit_alloc(sizeof(struct instance) + 8*sizeof(nitattribute_t));
3920 self->type = type;
3921 self->class = &class_model__MVirtualTypeProp;
3922 var = NEW_array__Array(self->type->resolution_table->types[COLOR_array__Arraymodel__MProperty_VTMPROPDEF]);
3923 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[MVirtualTypeDef]>*/;
3924 CHECK_NEW_array__Array(var);
3925 self->attrs[COLOR_model__MProperty___64dmpropdefs].val = var; /* @mpropdefs on <self:MVirtualTypeProp exact> */
3926 var1 = NEW_more_collections__HashMap2(self->type->resolution_table->types[COLOR_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MProperty_VTMPROPDEF]);
3927 ((void (*)(val*))(var1->class->vft[COLOR_more_collections__HashMap2__init]))(var1) /* init on <var1:HashMap2[MModule, MType, Array[MVirtualTypeDef]]>*/;
3928 CHECK_NEW_more_collections__HashMap2(var1);
3929 self->attrs[COLOR_model__MProperty___64dlookup_definitions_cache].val = var1; /* @lookup_definitions_cache on <self:MVirtualTypeProp exact> */
3930 var2 = NEW_more_collections__HashMap2(self->type->resolution_table->types[COLOR_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MProperty_VTMPROPDEF]);
3931 ((void (*)(val*))(var2->class->vft[COLOR_more_collections__HashMap2__init]))(var2) /* init on <var2:HashMap2[MModule, MType, Array[MVirtualTypeDef]]>*/;
3932 CHECK_NEW_more_collections__HashMap2(var2);
3933 self->attrs[COLOR_model__MProperty___64dlookup_all_definitions_cache].val = var2; /* @lookup_all_definitions_cache on <self:MVirtualTypeProp exact> */
3934 var3 = NEW_model__MVirtualType(&type_model__MVirtualType);
3935 ((void (*)(val*, val*))(var3->class->vft[COLOR_model__MVirtualType__init]))(var3, self) /* init on <var3:MVirtualType>*/;
3936 CHECK_NEW_model__MVirtualType(var3);
3937 self->attrs[COLOR_model__MVirtualTypeProp___64dmvirtualtype].val = var3; /* @mvirtualtype on <self:MVirtualTypeProp exact> */
3938 return self;
3939 }
3940 /* allocate MVirtualTypeProp */
3941 void CHECK_NEW_model__MVirtualTypeProp(val* self) {
3942 val* var /* : MClassDef */;
3943 val* var1 /* : String */;
3944 val* var2 /* : MVisibility */;
3945 val* var3 /* : nullable String */;
3946 var = self->attrs[COLOR_model__MProperty___64dintro_mclassdef].val; /* @intro_mclassdef on <self:MVirtualTypeProp> */
3947 if (var == NULL) {
3948 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @intro_mclassdef");
3949 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1489);
3950 exit(1);
3951 }
3952 var1 = self->attrs[COLOR_model__MProperty___64dname].val; /* @name on <self:MVirtualTypeProp> */
3953 if (var1 == NULL) {
3954 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
3955 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1494);
3956 exit(1);
3957 }
3958 var2 = self->attrs[COLOR_model__MProperty___64dvisibility].val; /* @visibility on <self:MVirtualTypeProp> */
3959 if (var2 == NULL) {
3960 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @visibility");
3961 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1504);
3962 exit(1);
3963 }
3964 var3 = self->attrs[COLOR_abstract_compiler__MProperty___64dc_name_cache].val; /* @c_name_cache on <self:MVirtualTypeProp> */
3965 }
3966 /* runtime class model__MMethodDef */
3967 const struct class class_model__MMethodDef = {
3968 0, /* box_kind */
3969 {
3970 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MMethodDef:kernel#Object#object_id */
3971 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MMethodDef:kernel#Object#is_same_type */
3972 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MMethodDef:kernel#Object#is_same_instance */
3973 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MMethodDef:kernel#Object#== */
3974 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MMethodDef:kernel#Object#!= */
3975 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MMethodDef:kernel#Object#output */
3976 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MMethodDef:kernel#Object#output_class_name */
3977 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MMethodDef:kernel#Object#exit */
3978 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MMethodDef:kernel#Object#sys */
3979 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MMethodDef:kernel#Object#hash */
3980 (nitmethod_t)VIRTUAL_model__MPropDef__to_s, /* pointer to model:MMethodDef:model#MPropDef#to_s */
3981 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MMethodDef:string#Object#native_class_name */
3982 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MMethodDef:string#Object#class_name */
3983 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MMethodDef:string#Object#inspect */
3984 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MMethodDef:string#Object#inspect_head */
3985 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MMethodDef:string#Object#args */
3986 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MMethodDef:math#Object#atan2 */
3987 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MMethodDef:math#Object#pi */
3988 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MMethodDef:math#Object#srand_from */
3989 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MMethodDef:math#Object#srand */
3990 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MMethodDef:stream#Object#poll */
3991 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MMethodDef:stream#Object#intern_poll */
3992 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MMethodDef:time#Object#get_time */
3993 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MMethodDef:file#Object#printn */
3994 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MMethodDef:file#Object#print */
3995 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MMethodDef:file#Object#getc */
3996 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MMethodDef:file#Object#gets */
3997 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MMethodDef:file#Object#getcwd */
3998 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MMethodDef:file#Object#file_getcwd */
3999 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MMethodDef:file#Object#stdin */
4000 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MMethodDef:file#Object#stdout */
4001 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MMethodDef:file#Object#stderr */
4002 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MMethodDef:model_base#Object#intrude_visibility */
4003 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MMethodDef:model_base#Object#public_visibility */
4004 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MMethodDef:model_base#Object#protected_visibility */
4005 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MMethodDef:model_base#Object#private_visibility */
4006 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MMethodDef:model_base#Object#none_visibility */
4007 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MMethodDef:model#Object#abstract_kind */
4008 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MMethodDef:model#Object#concrete_kind */
4009 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MMethodDef:model#Object#interface_kind */
4010 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MMethodDef:model#Object#enum_kind */
4011 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MMethodDef:model#Object#extern_kind */
4012 (nitmethod_t)VIRTUAL_model__MPropDef__location, /* pointer to model:MMethodDef:model#MPropDef#location */
4013 (nitmethod_t)VIRTUAL_model__MPropDef__location_61d, /* pointer to model:MMethodDef:model#MPropDef#location= */
4014 (nitmethod_t)VIRTUAL_model__MPropDef__mclassdef, /* pointer to model:MMethodDef:model#MPropDef#mclassdef */
4015 (nitmethod_t)VIRTUAL_model__MPropDef__mclassdef_61d, /* pointer to model:MMethodDef:model#MPropDef#mclassdef= */
4016 (nitmethod_t)VIRTUAL_model__MPropDef__mproperty, /* pointer to model:MMethodDef:model#MPropDef#mproperty */
4017 (nitmethod_t)VIRTUAL_model__MPropDef__mproperty_61d, /* pointer to model:MMethodDef:model#MPropDef#mproperty= */
4018 (nitmethod_t)VIRTUAL_model__MPropDef__init, /* pointer to model:MMethodDef:model#MPropDef#init */
4019 (nitmethod_t)VIRTUAL_model__MPropDef__to_s_61d, /* pointer to model:MMethodDef:model#MPropDef#to_s= */
4020 (nitmethod_t)VIRTUAL_model__MPropDef__is_intro, /* pointer to model:MMethodDef:model#MPropDef#is_intro */
4021 (nitmethod_t)VIRTUAL_model__MPropDef__lookup_next_definition, /* pointer to model:MMethodDef:model#MPropDef#lookup_next_definition */
4022 (nitmethod_t)VIRTUAL_typing__MPropDef__has_supercall, /* pointer to model:MMethodDef:typing#MPropDef#has_supercall */
4023 (nitmethod_t)VIRTUAL_typing__MPropDef__has_supercall_61d, /* pointer to model:MMethodDef:typing#MPropDef#has_supercall= */
4024 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name_cache, /* pointer to model:MMethodDef:abstract_compiler#MPropDef#c_name_cache */
4025 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name_cache_61d, /* pointer to model:MMethodDef:abstract_compiler#MPropDef#c_name_cache= */
4026 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name, /* pointer to model:MMethodDef:abstract_compiler#MPropDef#c_name */
4027 (nitmethod_t)VIRTUAL_separate_compiler__MPropDef__const_color, /* pointer to model:MMethodDef:separate_compiler#MPropDef#const_color */
4028 (nitmethod_t)VIRTUAL_model__MMethodDef__init, /* pointer to model:MMethodDef:model#MMethodDef#init */
4029 (nitmethod_t)VIRTUAL_model__MMethodDef__msignature, /* pointer to model:MMethodDef:model#MMethodDef#msignature */
4030 (nitmethod_t)VIRTUAL_model__MMethodDef__msignature_61d, /* pointer to model:MMethodDef:model#MMethodDef#msignature= */
4031 (nitmethod_t)VIRTUAL_model__MMethodDef__is_abstract, /* pointer to model:MMethodDef:model#MMethodDef#is_abstract */
4032 (nitmethod_t)VIRTUAL_model__MMethodDef__is_abstract_61d, /* pointer to model:MMethodDef:model#MMethodDef#is_abstract= */
4033 (nitmethod_t)VIRTUAL_abstract_compiler__MMethodDef__can_inline, /* pointer to model:MMethodDef:abstract_compiler#MMethodDef#can_inline */
4034 (nitmethod_t)VIRTUAL_abstract_compiler__MMethodDef__compile_inside_to_c, /* pointer to model:MMethodDef:abstract_compiler#MMethodDef#compile_inside_to_c */
4035 (nitmethod_t)VIRTUAL_abstract_compiler__MMethodDef__compile_parameter_check, /* pointer to model:MMethodDef:abstract_compiler#MMethodDef#compile_parameter_check */
4036 (nitmethod_t)VIRTUAL_separate_compiler__MMethodDef__separate_runtime_function, /* pointer to model:MMethodDef:separate_compiler#MMethodDef#separate_runtime_function */
4037 (nitmethod_t)VIRTUAL_separate_compiler__MMethodDef__separate_runtime_function_cache, /* pointer to model:MMethodDef:separate_compiler#MMethodDef#separate_runtime_function_cache */
4038 (nitmethod_t)VIRTUAL_separate_compiler__MMethodDef__separate_runtime_function_cache_61d, /* pointer to model:MMethodDef:separate_compiler#MMethodDef#separate_runtime_function_cache= */
4039 (nitmethod_t)VIRTUAL_separate_compiler__MMethodDef__virtual_runtime_function, /* pointer to model:MMethodDef:separate_compiler#MMethodDef#virtual_runtime_function */
4040 (nitmethod_t)VIRTUAL_separate_compiler__MMethodDef__virtual_runtime_function_cache, /* pointer to model:MMethodDef:separate_compiler#MMethodDef#virtual_runtime_function_cache */
4041 (nitmethod_t)VIRTUAL_separate_compiler__MMethodDef__virtual_runtime_function_cache_61d, /* pointer to model:MMethodDef:separate_compiler#MMethodDef#virtual_runtime_function_cache= */
4042 }
4043 };
4044 /* allocate MMethodDef */
4045 val* NEW_model__MMethodDef(const struct type* type) {
4046 val* self /* : MMethodDef */;
4047 short int var /* : Bool */;
4048 val* var1 /* : null */;
4049 short int var2 /* : Bool */;
4050 self = nit_alloc(sizeof(struct instance) + 10*sizeof(nitattribute_t));
4051 self->type = type;
4052 self->class = &class_model__MMethodDef;
4053 var = 0;
4054 self->attrs[COLOR_typing__MPropDef___64dhas_supercall].s = var; /* @has_supercall on <self:MMethodDef exact> */
4055 var1 = NULL;
4056 self->attrs[COLOR_model__MMethodDef___64dmsignature].val = var1; /* @msignature on <self:MMethodDef exact> */
4057 var2 = 0;
4058 self->attrs[COLOR_model__MMethodDef___64dis_abstract].s = var2; /* @is_abstract on <self:MMethodDef exact> */
4059 return self;
4060 }
4061 /* allocate MMethodDef */
4062 void CHECK_NEW_model__MMethodDef(val* self) {
4063 val* var /* : Location */;
4064 val* var1 /* : MClassDef */;
4065 val* var2 /* : MProperty */;
4066 val* var3 /* : String */;
4067 val* var4 /* : nullable String */;
4068 val* var5 /* : nullable SeparateRuntimeFunction */;
4069 val* var6 /* : nullable VirtualRuntimeFunction */;
4070 var = self->attrs[COLOR_model__MPropDef___64dlocation].val; /* @location on <self:MMethodDef> */
4071 if (var == NULL) {
4072 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @location");
4073 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1779);
4074 exit(1);
4075 }
4076 var1 = self->attrs[COLOR_model__MPropDef___64dmclassdef].val; /* @mclassdef on <self:MMethodDef> */
4077 if (var1 == NULL) {
4078 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclassdef");
4079 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1782);
4080 exit(1);
4081 }
4082 var2 = self->attrs[COLOR_model__MPropDef___64dmproperty].val; /* @mproperty on <self:MMethodDef> */
4083 if (var2 == NULL) {
4084 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mproperty");
4085 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1785);
4086 exit(1);
4087 }
4088 var3 = self->attrs[COLOR_model__MPropDef___64dto_s].val; /* @to_s on <self:MMethodDef> */
4089 if (var3 == NULL) {
4090 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
4091 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1798);
4092 exit(1);
4093 }
4094 var4 = self->attrs[COLOR_abstract_compiler__MPropDef___64dc_name_cache].val; /* @c_name_cache on <self:MMethodDef> */
4095 var5 = self->attrs[COLOR_separate_compiler__MMethodDef___64dseparate_runtime_function_cache].val; /* @separate_runtime_function_cache on <self:MMethodDef> */
4096 var6 = self->attrs[COLOR_separate_compiler__MMethodDef___64dvirtual_runtime_function_cache].val; /* @virtual_runtime_function_cache on <self:MMethodDef> */
4097 }
4098 /* runtime class model__MAttributeDef */
4099 const struct class class_model__MAttributeDef = {
4100 0, /* box_kind */
4101 {
4102 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MAttributeDef:kernel#Object#object_id */
4103 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MAttributeDef:kernel#Object#is_same_type */
4104 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MAttributeDef:kernel#Object#is_same_instance */
4105 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MAttributeDef:kernel#Object#== */
4106 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MAttributeDef:kernel#Object#!= */
4107 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MAttributeDef:kernel#Object#output */
4108 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MAttributeDef:kernel#Object#output_class_name */
4109 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MAttributeDef:kernel#Object#exit */
4110 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MAttributeDef:kernel#Object#sys */
4111 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MAttributeDef:kernel#Object#hash */
4112 (nitmethod_t)VIRTUAL_model__MPropDef__to_s, /* pointer to model:MAttributeDef:model#MPropDef#to_s */
4113 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MAttributeDef:string#Object#native_class_name */
4114 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MAttributeDef:string#Object#class_name */
4115 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MAttributeDef:string#Object#inspect */
4116 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MAttributeDef:string#Object#inspect_head */
4117 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MAttributeDef:string#Object#args */
4118 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MAttributeDef:math#Object#atan2 */
4119 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MAttributeDef:math#Object#pi */
4120 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MAttributeDef:math#Object#srand_from */
4121 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MAttributeDef:math#Object#srand */
4122 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MAttributeDef:stream#Object#poll */
4123 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MAttributeDef:stream#Object#intern_poll */
4124 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MAttributeDef:time#Object#get_time */
4125 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MAttributeDef:file#Object#printn */
4126 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MAttributeDef:file#Object#print */
4127 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MAttributeDef:file#Object#getc */
4128 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MAttributeDef:file#Object#gets */
4129 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MAttributeDef:file#Object#getcwd */
4130 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MAttributeDef:file#Object#file_getcwd */
4131 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MAttributeDef:file#Object#stdin */
4132 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MAttributeDef:file#Object#stdout */
4133 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MAttributeDef:file#Object#stderr */
4134 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MAttributeDef:model_base#Object#intrude_visibility */
4135 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MAttributeDef:model_base#Object#public_visibility */
4136 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MAttributeDef:model_base#Object#protected_visibility */
4137 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MAttributeDef:model_base#Object#private_visibility */
4138 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MAttributeDef:model_base#Object#none_visibility */
4139 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MAttributeDef:model#Object#abstract_kind */
4140 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MAttributeDef:model#Object#concrete_kind */
4141 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MAttributeDef:model#Object#interface_kind */
4142 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MAttributeDef:model#Object#enum_kind */
4143 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MAttributeDef:model#Object#extern_kind */
4144 (nitmethod_t)VIRTUAL_model__MPropDef__location, /* pointer to model:MAttributeDef:model#MPropDef#location */
4145 (nitmethod_t)VIRTUAL_model__MPropDef__location_61d, /* pointer to model:MAttributeDef:model#MPropDef#location= */
4146 (nitmethod_t)VIRTUAL_model__MPropDef__mclassdef, /* pointer to model:MAttributeDef:model#MPropDef#mclassdef */
4147 (nitmethod_t)VIRTUAL_model__MPropDef__mclassdef_61d, /* pointer to model:MAttributeDef:model#MPropDef#mclassdef= */
4148 (nitmethod_t)VIRTUAL_model__MPropDef__mproperty, /* pointer to model:MAttributeDef:model#MPropDef#mproperty */
4149 (nitmethod_t)VIRTUAL_model__MPropDef__mproperty_61d, /* pointer to model:MAttributeDef:model#MPropDef#mproperty= */
4150 (nitmethod_t)VIRTUAL_model__MPropDef__init, /* pointer to model:MAttributeDef:model#MPropDef#init */
4151 (nitmethod_t)VIRTUAL_model__MPropDef__to_s_61d, /* pointer to model:MAttributeDef:model#MPropDef#to_s= */
4152 (nitmethod_t)VIRTUAL_model__MPropDef__is_intro, /* pointer to model:MAttributeDef:model#MPropDef#is_intro */
4153 (nitmethod_t)VIRTUAL_model__MPropDef__lookup_next_definition, /* pointer to model:MAttributeDef:model#MPropDef#lookup_next_definition */
4154 (nitmethod_t)VIRTUAL_typing__MPropDef__has_supercall, /* pointer to model:MAttributeDef:typing#MPropDef#has_supercall */
4155 (nitmethod_t)VIRTUAL_typing__MPropDef__has_supercall_61d, /* pointer to model:MAttributeDef:typing#MPropDef#has_supercall= */
4156 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name_cache, /* pointer to model:MAttributeDef:abstract_compiler#MPropDef#c_name_cache */
4157 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name_cache_61d, /* pointer to model:MAttributeDef:abstract_compiler#MPropDef#c_name_cache= */
4158 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name, /* pointer to model:MAttributeDef:abstract_compiler#MPropDef#c_name */
4159 (nitmethod_t)VIRTUAL_separate_compiler__MPropDef__const_color, /* pointer to model:MAttributeDef:separate_compiler#MPropDef#const_color */
4160 (nitmethod_t)VIRTUAL_model__MAttributeDef__init, /* pointer to model:MAttributeDef:model#MAttributeDef#init */
4161 (nitmethod_t)VIRTUAL_model__MAttributeDef__static_mtype, /* pointer to model:MAttributeDef:model#MAttributeDef#static_mtype */
4162 (nitmethod_t)VIRTUAL_model__MAttributeDef__static_mtype_61d, /* pointer to model:MAttributeDef:model#MAttributeDef#static_mtype= */
4163 }
4164 };
4165 /* allocate MAttributeDef */
4166 val* NEW_model__MAttributeDef(const struct type* type) {
4167 val* self /* : MAttributeDef */;
4168 short int var /* : Bool */;
4169 val* var1 /* : null */;
4170 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
4171 self->type = type;
4172 self->class = &class_model__MAttributeDef;
4173 var = 0;
4174 self->attrs[COLOR_typing__MPropDef___64dhas_supercall].s = var; /* @has_supercall on <self:MAttributeDef exact> */
4175 var1 = NULL;
4176 self->attrs[COLOR_model__MAttributeDef___64dstatic_mtype].val = var1; /* @static_mtype on <self:MAttributeDef exact> */
4177 return self;
4178 }
4179 /* allocate MAttributeDef */
4180 void CHECK_NEW_model__MAttributeDef(val* self) {
4181 val* var /* : Location */;
4182 val* var1 /* : MClassDef */;
4183 val* var2 /* : MProperty */;
4184 val* var3 /* : String */;
4185 val* var4 /* : nullable String */;
4186 var = self->attrs[COLOR_model__MPropDef___64dlocation].val; /* @location on <self:MAttributeDef> */
4187 if (var == NULL) {
4188 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @location");
4189 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1779);
4190 exit(1);
4191 }
4192 var1 = self->attrs[COLOR_model__MPropDef___64dmclassdef].val; /* @mclassdef on <self:MAttributeDef> */
4193 if (var1 == NULL) {
4194 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclassdef");
4195 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1782);
4196 exit(1);
4197 }
4198 var2 = self->attrs[COLOR_model__MPropDef___64dmproperty].val; /* @mproperty on <self:MAttributeDef> */
4199 if (var2 == NULL) {
4200 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mproperty");
4201 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1785);
4202 exit(1);
4203 }
4204 var3 = self->attrs[COLOR_model__MPropDef___64dto_s].val; /* @to_s on <self:MAttributeDef> */
4205 if (var3 == NULL) {
4206 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
4207 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1798);
4208 exit(1);
4209 }
4210 var4 = self->attrs[COLOR_abstract_compiler__MPropDef___64dc_name_cache].val; /* @c_name_cache on <self:MAttributeDef> */
4211 }
4212 /* runtime class model__MVirtualTypeDef */
4213 const struct class class_model__MVirtualTypeDef = {
4214 0, /* box_kind */
4215 {
4216 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MVirtualTypeDef:kernel#Object#object_id */
4217 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MVirtualTypeDef:kernel#Object#is_same_type */
4218 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MVirtualTypeDef:kernel#Object#is_same_instance */
4219 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MVirtualTypeDef:kernel#Object#== */
4220 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MVirtualTypeDef:kernel#Object#!= */
4221 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MVirtualTypeDef:kernel#Object#output */
4222 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MVirtualTypeDef:kernel#Object#output_class_name */
4223 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MVirtualTypeDef:kernel#Object#exit */
4224 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MVirtualTypeDef:kernel#Object#sys */
4225 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MVirtualTypeDef:kernel#Object#hash */
4226 (nitmethod_t)VIRTUAL_model__MPropDef__to_s, /* pointer to model:MVirtualTypeDef:model#MPropDef#to_s */
4227 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MVirtualTypeDef:string#Object#native_class_name */
4228 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MVirtualTypeDef:string#Object#class_name */
4229 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MVirtualTypeDef:string#Object#inspect */
4230 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MVirtualTypeDef:string#Object#inspect_head */
4231 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MVirtualTypeDef:string#Object#args */
4232 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MVirtualTypeDef:math#Object#atan2 */
4233 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MVirtualTypeDef:math#Object#pi */
4234 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MVirtualTypeDef:math#Object#srand_from */
4235 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MVirtualTypeDef:math#Object#srand */
4236 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MVirtualTypeDef:stream#Object#poll */
4237 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MVirtualTypeDef:stream#Object#intern_poll */
4238 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MVirtualTypeDef:time#Object#get_time */
4239 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MVirtualTypeDef:file#Object#printn */
4240 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MVirtualTypeDef:file#Object#print */
4241 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MVirtualTypeDef:file#Object#getc */
4242 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MVirtualTypeDef:file#Object#gets */
4243 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MVirtualTypeDef:file#Object#getcwd */
4244 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MVirtualTypeDef:file#Object#file_getcwd */
4245 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MVirtualTypeDef:file#Object#stdin */
4246 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MVirtualTypeDef:file#Object#stdout */
4247 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MVirtualTypeDef:file#Object#stderr */
4248 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MVirtualTypeDef:model_base#Object#intrude_visibility */
4249 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MVirtualTypeDef:model_base#Object#public_visibility */
4250 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MVirtualTypeDef:model_base#Object#protected_visibility */
4251 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MVirtualTypeDef:model_base#Object#private_visibility */
4252 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MVirtualTypeDef:model_base#Object#none_visibility */
4253 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MVirtualTypeDef:model#Object#abstract_kind */
4254 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MVirtualTypeDef:model#Object#concrete_kind */
4255 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MVirtualTypeDef:model#Object#interface_kind */
4256 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MVirtualTypeDef:model#Object#enum_kind */
4257 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MVirtualTypeDef:model#Object#extern_kind */
4258 (nitmethod_t)VIRTUAL_model__MPropDef__location, /* pointer to model:MVirtualTypeDef:model#MPropDef#location */
4259 (nitmethod_t)VIRTUAL_model__MPropDef__location_61d, /* pointer to model:MVirtualTypeDef:model#MPropDef#location= */
4260 (nitmethod_t)VIRTUAL_model__MPropDef__mclassdef, /* pointer to model:MVirtualTypeDef:model#MPropDef#mclassdef */
4261 (nitmethod_t)VIRTUAL_model__MPropDef__mclassdef_61d, /* pointer to model:MVirtualTypeDef:model#MPropDef#mclassdef= */
4262 (nitmethod_t)VIRTUAL_model__MPropDef__mproperty, /* pointer to model:MVirtualTypeDef:model#MPropDef#mproperty */
4263 (nitmethod_t)VIRTUAL_model__MPropDef__mproperty_61d, /* pointer to model:MVirtualTypeDef:model#MPropDef#mproperty= */
4264 (nitmethod_t)VIRTUAL_model__MPropDef__init, /* pointer to model:MVirtualTypeDef:model#MPropDef#init */
4265 (nitmethod_t)VIRTUAL_model__MPropDef__to_s_61d, /* pointer to model:MVirtualTypeDef:model#MPropDef#to_s= */
4266 (nitmethod_t)VIRTUAL_model__MPropDef__is_intro, /* pointer to model:MVirtualTypeDef:model#MPropDef#is_intro */
4267 (nitmethod_t)VIRTUAL_model__MPropDef__lookup_next_definition, /* pointer to model:MVirtualTypeDef:model#MPropDef#lookup_next_definition */
4268 (nitmethod_t)VIRTUAL_typing__MPropDef__has_supercall, /* pointer to model:MVirtualTypeDef:typing#MPropDef#has_supercall */
4269 (nitmethod_t)VIRTUAL_typing__MPropDef__has_supercall_61d, /* pointer to model:MVirtualTypeDef:typing#MPropDef#has_supercall= */
4270 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name_cache, /* pointer to model:MVirtualTypeDef:abstract_compiler#MPropDef#c_name_cache */
4271 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name_cache_61d, /* pointer to model:MVirtualTypeDef:abstract_compiler#MPropDef#c_name_cache= */
4272 (nitmethod_t)VIRTUAL_abstract_compiler__MPropDef__c_name, /* pointer to model:MVirtualTypeDef:abstract_compiler#MPropDef#c_name */
4273 (nitmethod_t)VIRTUAL_separate_compiler__MPropDef__const_color, /* pointer to model:MVirtualTypeDef:separate_compiler#MPropDef#const_color */
4274 (nitmethod_t)VIRTUAL_model__MVirtualTypeDef__init, /* pointer to model:MVirtualTypeDef:model#MVirtualTypeDef#init */
4275 (nitmethod_t)VIRTUAL_model__MVirtualTypeDef__bound, /* pointer to model:MVirtualTypeDef:model#MVirtualTypeDef#bound */
4276 (nitmethod_t)VIRTUAL_model__MVirtualTypeDef__bound_61d, /* pointer to model:MVirtualTypeDef:model#MVirtualTypeDef#bound= */
4277 }
4278 };
4279 /* allocate MVirtualTypeDef */
4280 val* NEW_model__MVirtualTypeDef(const struct type* type) {
4281 val* self /* : MVirtualTypeDef */;
4282 short int var /* : Bool */;
4283 val* var1 /* : null */;
4284 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
4285 self->type = type;
4286 self->class = &class_model__MVirtualTypeDef;
4287 var = 0;
4288 self->attrs[COLOR_typing__MPropDef___64dhas_supercall].s = var; /* @has_supercall on <self:MVirtualTypeDef exact> */
4289 var1 = NULL;
4290 self->attrs[COLOR_model__MVirtualTypeDef___64dbound].val = var1; /* @bound on <self:MVirtualTypeDef exact> */
4291 return self;
4292 }
4293 /* allocate MVirtualTypeDef */
4294 void CHECK_NEW_model__MVirtualTypeDef(val* self) {
4295 val* var /* : Location */;
4296 val* var1 /* : MClassDef */;
4297 val* var2 /* : MProperty */;
4298 val* var3 /* : String */;
4299 val* var4 /* : nullable String */;
4300 var = self->attrs[COLOR_model__MPropDef___64dlocation].val; /* @location on <self:MVirtualTypeDef> */
4301 if (var == NULL) {
4302 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @location");
4303 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1779);
4304 exit(1);
4305 }
4306 var1 = self->attrs[COLOR_model__MPropDef___64dmclassdef].val; /* @mclassdef on <self:MVirtualTypeDef> */
4307 if (var1 == NULL) {
4308 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mclassdef");
4309 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1782);
4310 exit(1);
4311 }
4312 var2 = self->attrs[COLOR_model__MPropDef___64dmproperty].val; /* @mproperty on <self:MVirtualTypeDef> */
4313 if (var2 == NULL) {
4314 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mproperty");
4315 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1785);
4316 exit(1);
4317 }
4318 var3 = self->attrs[COLOR_model__MPropDef___64dto_s].val; /* @to_s on <self:MVirtualTypeDef> */
4319 if (var3 == NULL) {
4320 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
4321 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1798);
4322 exit(1);
4323 }
4324 var4 = self->attrs[COLOR_abstract_compiler__MPropDef___64dc_name_cache].val; /* @c_name_cache on <self:MVirtualTypeDef> */
4325 }
4326 /* runtime class model__MClassKind */
4327 const struct class class_model__MClassKind = {
4328 0, /* box_kind */
4329 {
4330 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model:MClassKind:kernel#Object#object_id */
4331 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model:MClassKind:kernel#Object#is_same_type */
4332 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model:MClassKind:kernel#Object#is_same_instance */
4333 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model:MClassKind:kernel#Object#== */
4334 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model:MClassKind:kernel#Object#!= */
4335 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model:MClassKind:kernel#Object#output */
4336 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model:MClassKind:kernel#Object#output_class_name */
4337 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model:MClassKind:kernel#Object#exit */
4338 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model:MClassKind:kernel#Object#sys */
4339 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model:MClassKind:kernel#Object#hash */
4340 (nitmethod_t)VIRTUAL_model__MClassKind__to_s, /* pointer to model:MClassKind:model#MClassKind#to_s */
4341 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model:MClassKind:string#Object#native_class_name */
4342 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model:MClassKind:string#Object#class_name */
4343 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model:MClassKind:string#Object#inspect */
4344 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model:MClassKind:string#Object#inspect_head */
4345 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model:MClassKind:string#Object#args */
4346 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model:MClassKind:math#Object#atan2 */
4347 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model:MClassKind:math#Object#pi */
4348 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model:MClassKind:math#Object#srand_from */
4349 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model:MClassKind:math#Object#srand */
4350 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model:MClassKind:stream#Object#poll */
4351 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model:MClassKind:stream#Object#intern_poll */
4352 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model:MClassKind:time#Object#get_time */
4353 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model:MClassKind:file#Object#printn */
4354 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model:MClassKind:file#Object#print */
4355 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model:MClassKind:file#Object#getc */
4356 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model:MClassKind:file#Object#gets */
4357 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model:MClassKind:file#Object#getcwd */
4358 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model:MClassKind:file#Object#file_getcwd */
4359 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model:MClassKind:file#Object#stdin */
4360 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model:MClassKind:file#Object#stdout */
4361 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model:MClassKind:file#Object#stderr */
4362 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model:MClassKind:model_base#Object#intrude_visibility */
4363 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model:MClassKind:model_base#Object#public_visibility */
4364 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model:MClassKind:model_base#Object#protected_visibility */
4365 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model:MClassKind:model_base#Object#private_visibility */
4366 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model:MClassKind:model_base#Object#none_visibility */
4367 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model:MClassKind:model#Object#abstract_kind */
4368 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model:MClassKind:model#Object#concrete_kind */
4369 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model:MClassKind:model#Object#interface_kind */
4370 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model:MClassKind:model#Object#enum_kind */
4371 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model:MClassKind:model#Object#extern_kind */
4372 (nitmethod_t)VIRTUAL_model__MClassKind__to_s_61d, /* pointer to model:MClassKind:model#MClassKind#to_s= */
4373 (nitmethod_t)VIRTUAL_model__MClassKind__need_init, /* pointer to model:MClassKind:model#MClassKind#need_init */
4374 (nitmethod_t)VIRTUAL_model__MClassKind__need_init_61d, /* pointer to model:MClassKind:model#MClassKind#need_init= */
4375 (nitmethod_t)VIRTUAL_model__MClassKind__init, /* pointer to model:MClassKind:model#MClassKind#init */
4376 }
4377 };
4378 /* allocate MClassKind */
4379 val* NEW_model__MClassKind(const struct type* type) {
4380 val* self /* : MClassKind */;
4381 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
4382 self->type = type;
4383 self->class = &class_model__MClassKind;
4384 return self;
4385 }
4386 /* allocate MClassKind */
4387 void CHECK_NEW_model__MClassKind(val* self) {
4388 val* var /* : String */;
4389 short int var1 /* : Bool */;
4390 var = self->attrs[COLOR_model__MClassKind___64dto_s].val; /* @to_s on <self:MClassKind> */
4391 if (var == NULL) {
4392 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
4393 fprintf(stderr, " (%s:%d)\n", "src/model/model.nit", 1886);
4394 exit(1);
4395 }
4396 var1 = self->attrs[COLOR_model__MClassKind___64dneed_init].s; /* @need_init on <self:MClassKind> */
4397 }
4398 /* runtime class poset__POSet */
4399 const struct class class_poset__POSet = {
4400 0, /* box_kind */
4401 {
4402 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to poset:POSet:kernel#Object#object_id */
4403 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to poset:POSet:kernel#Object#is_same_type */
4404 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to poset:POSet:kernel#Object#is_same_instance */
4405 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to poset:POSet:kernel#Object#== */
4406 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to poset:POSet:kernel#Object#!= */
4407 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to poset:POSet:kernel#Object#output */
4408 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to poset:POSet:kernel#Object#output_class_name */
4409 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to poset:POSet:kernel#Object#exit */
4410 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to poset:POSet:kernel#Object#sys */
4411 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to poset:POSet:kernel#Object#hash */
4412 (nitmethod_t)VIRTUAL_string__Collection__to_s, /* pointer to poset:POSet:string#Collection#to_s */
4413 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to poset:POSet:string#Object#native_class_name */
4414 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to poset:POSet:string#Object#class_name */
4415 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to poset:POSet:string#Object#inspect */
4416 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to poset:POSet:string#Object#inspect_head */
4417 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to poset:POSet:string#Object#args */
4418 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to poset:POSet:math#Object#atan2 */
4419 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to poset:POSet:math#Object#pi */
4420 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to poset:POSet:math#Object#srand_from */
4421 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to poset:POSet:math#Object#srand */
4422 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to poset:POSet:stream#Object#poll */
4423 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to poset:POSet:stream#Object#intern_poll */
4424 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to poset:POSet:time#Object#get_time */
4425 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to poset:POSet:file#Object#printn */
4426 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to poset:POSet:file#Object#print */
4427 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to poset:POSet:file#Object#getc */
4428 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to poset:POSet:file#Object#gets */
4429 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to poset:POSet:file#Object#getcwd */
4430 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to poset:POSet:file#Object#file_getcwd */
4431 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to poset:POSet:file#Object#stdin */
4432 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to poset:POSet:file#Object#stdout */
4433 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to poset:POSet:file#Object#stderr */
4434 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to poset:POSet:model_base#Object#intrude_visibility */
4435 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to poset:POSet:model_base#Object#public_visibility */
4436 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to poset:POSet:model_base#Object#protected_visibility */
4437 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to poset:POSet:model_base#Object#private_visibility */
4438 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to poset:POSet:model_base#Object#none_visibility */
4439 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to poset:POSet:model#Object#abstract_kind */
4440 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to poset:POSet:model#Object#concrete_kind */
4441 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to poset:POSet:model#Object#interface_kind */
4442 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to poset:POSet:model#Object#enum_kind */
4443 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to poset:POSet:model#Object#extern_kind */
4444 NULL, /* empty */
4445 NULL, /* empty */
4446 NULL, /* empty */
4447 NULL, /* empty */
4448 NULL, /* empty */
4449 NULL, /* empty */
4450 NULL, /* empty */
4451 NULL, /* empty */
4452 NULL, /* empty */
4453 NULL, /* empty */
4454 NULL, /* empty */
4455 NULL, /* empty */
4456 NULL, /* empty */
4457 NULL, /* empty */
4458 NULL, /* empty */
4459 NULL, /* empty */
4460 NULL, /* empty */
4461 NULL, /* empty */
4462 (nitmethod_t)VIRTUAL_poset__POSet__iterator, /* pointer to poset:POSet:poset#POSet#iterator */
4463 (nitmethod_t)VIRTUAL_abstract_collection__Collection__is_empty, /* pointer to poset:POSet:abstract_collection#Collection#is_empty */
4464 (nitmethod_t)VIRTUAL_abstract_collection__Collection__length, /* pointer to poset:POSet:abstract_collection#Collection#length */
4465 (nitmethod_t)VIRTUAL_poset__POSet__has, /* pointer to poset:POSet:poset#POSet#has */
4466 (nitmethod_t)VIRTUAL_abstract_collection__Collection__has_only, /* pointer to poset:POSet:abstract_collection#Collection#has_only */
4467 (nitmethod_t)VIRTUAL_abstract_collection__Collection__count, /* pointer to poset:POSet:abstract_collection#Collection#count */
4468 (nitmethod_t)VIRTUAL_abstract_collection__Collection__first, /* pointer to poset:POSet:abstract_collection#Collection#first */
4469 (nitmethod_t)VIRTUAL_abstract_collection__Collection__has_all, /* pointer to poset:POSet:abstract_collection#Collection#has_all */
4470 (nitmethod_t)VIRTUAL_array__Collection__to_a, /* pointer to poset:POSet:array#Collection#to_a */
4471 (nitmethod_t)VIRTUAL_string__Collection__join, /* pointer to poset:POSet:string#Collection#join */
4472 (nitmethod_t)VIRTUAL_math__Collection__rand, /* pointer to poset:POSet:math#Collection#rand */
4473 (nitmethod_t)VIRTUAL_poset__POSet__compare, /* pointer to poset:POSet:poset#POSet#compare */
4474 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sort, /* pointer to poset:POSet:sorter#AbstractSorter#sort */
4475 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__sub_sort, /* pointer to poset:POSet:sorter#AbstractSorter#sub_sort */
4476 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__quick_sort, /* pointer to poset:POSet:sorter#AbstractSorter#quick_sort */
4477 (nitmethod_t)VIRTUAL_sorter__AbstractSorter__bubble_sort, /* pointer to poset:POSet:sorter#AbstractSorter#bubble_sort */
4478 (nitmethod_t)VIRTUAL_poset__POSet__elements, /* pointer to poset:POSet:poset#POSet#elements */
4479 (nitmethod_t)VIRTUAL_poset__POSet__elements_61d, /* pointer to poset:POSet:poset#POSet#elements= */
4480 (nitmethod_t)VIRTUAL_poset__POSet__add_node, /* pointer to poset:POSet:poset#POSet#add_node */
4481 (nitmethod_t)VIRTUAL_poset__POSet___91d_93d, /* pointer to poset:POSet:poset#POSet#[] */
4482 (nitmethod_t)VIRTUAL_poset__POSet__add_edge, /* pointer to poset:POSet:poset#POSet#add_edge */
4483 (nitmethod_t)VIRTUAL_poset__POSet__has_edge, /* pointer to poset:POSet:poset#POSet#has_edge */
4484 (nitmethod_t)VIRTUAL_poset__POSet__has_direct_edge, /* pointer to poset:POSet:poset#POSet#has_direct_edge */
4485 (nitmethod_t)VIRTUAL_poset__POSet__show_dot, /* pointer to poset:POSet:poset#POSet#show_dot */
4486 (nitmethod_t)VIRTUAL_poset__POSet__init, /* pointer to poset:POSet:poset#POSet#init */
4487 }
4488 };
4489 /* allocate POSet[Object] */
4490 val* NEW_poset__POSet(const struct type* type) {
4491 val* self /* : POSet[Object] */;
4492 val* var /* : HashMap[Object, POSetElement[Object]] */;
4493 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
4494 self->type = type;
4495 self->class = &class_poset__POSet;
4496 var = NEW_hash_collection__HashMap(self->type->resolution_table->types[COLOR_hash_collection__HashMapposet__POSet_FT0poset__POSetElementposet__POSet_FT0]);
4497 ((void (*)(val*))(var->class->vft[COLOR_hash_collection__HashMap__init]))(var) /* init on <var:HashMap[Object, POSetElement[Object]]>*/;
4498 CHECK_NEW_hash_collection__HashMap(var);
4499 self->attrs[COLOR_poset__POSet___64delements].val = var; /* @elements on <self:POSet[Object] exact> */
4500 return self;
4501 }
4502 /* allocate POSet[Object] */
4503 void CHECK_NEW_poset__POSet(val* self) {
4504 }
4505 /* runtime class poset__POSetElement */
4506 const struct class class_poset__POSetElement = {
4507 0, /* box_kind */
4508 {
4509 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to poset:POSetElement:kernel#Object#object_id */
4510 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to poset:POSetElement:kernel#Object#is_same_type */
4511 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to poset:POSetElement:kernel#Object#is_same_instance */
4512 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to poset:POSetElement:kernel#Object#== */
4513 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to poset:POSetElement:kernel#Object#!= */
4514 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to poset:POSetElement:kernel#Object#output */
4515 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to poset:POSetElement:kernel#Object#output_class_name */
4516 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to poset:POSetElement:kernel#Object#exit */
4517 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to poset:POSetElement:kernel#Object#sys */
4518 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to poset:POSetElement:kernel#Object#hash */
4519 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to poset:POSetElement:string#Object#to_s */
4520 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to poset:POSetElement:string#Object#native_class_name */
4521 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to poset:POSetElement:string#Object#class_name */
4522 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to poset:POSetElement:string#Object#inspect */
4523 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to poset:POSetElement:string#Object#inspect_head */
4524 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to poset:POSetElement:string#Object#args */
4525 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to poset:POSetElement:math#Object#atan2 */
4526 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to poset:POSetElement:math#Object#pi */
4527 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to poset:POSetElement:math#Object#srand_from */
4528 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to poset:POSetElement:math#Object#srand */
4529 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to poset:POSetElement:stream#Object#poll */
4530 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to poset:POSetElement:stream#Object#intern_poll */
4531 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to poset:POSetElement:time#Object#get_time */
4532 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to poset:POSetElement:file#Object#printn */
4533 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to poset:POSetElement:file#Object#print */
4534 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to poset:POSetElement:file#Object#getc */
4535 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to poset:POSetElement:file#Object#gets */
4536 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to poset:POSetElement:file#Object#getcwd */
4537 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to poset:POSetElement:file#Object#file_getcwd */
4538 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to poset:POSetElement:file#Object#stdin */
4539 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to poset:POSetElement:file#Object#stdout */
4540 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to poset:POSetElement:file#Object#stderr */
4541 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to poset:POSetElement:model_base#Object#intrude_visibility */
4542 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to poset:POSetElement:model_base#Object#public_visibility */
4543 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to poset:POSetElement:model_base#Object#protected_visibility */
4544 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to poset:POSetElement:model_base#Object#private_visibility */
4545 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to poset:POSetElement:model_base#Object#none_visibility */
4546 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to poset:POSetElement:model#Object#abstract_kind */
4547 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to poset:POSetElement:model#Object#concrete_kind */
4548 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to poset:POSetElement:model#Object#interface_kind */
4549 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to poset:POSetElement:model#Object#enum_kind */
4550 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to poset:POSetElement:model#Object#extern_kind */
4551 (nitmethod_t)VIRTUAL_poset__POSetElement__poset, /* pointer to poset:POSetElement:poset#POSetElement#poset */
4552 (nitmethod_t)VIRTUAL_poset__POSetElement__poset_61d, /* pointer to poset:POSetElement:poset#POSetElement#poset= */
4553 (nitmethod_t)VIRTUAL_poset__POSetElement__element, /* pointer to poset:POSetElement:poset#POSetElement#element */
4554 (nitmethod_t)VIRTUAL_poset__POSetElement__element_61d, /* pointer to poset:POSetElement:poset#POSetElement#element= */
4555 (nitmethod_t)VIRTUAL_poset__POSetElement__tos, /* pointer to poset:POSetElement:poset#POSetElement#tos */
4556 (nitmethod_t)VIRTUAL_poset__POSetElement__tos_61d, /* pointer to poset:POSetElement:poset#POSetElement#tos= */
4557 (nitmethod_t)VIRTUAL_poset__POSetElement__froms, /* pointer to poset:POSetElement:poset#POSetElement#froms */
4558 (nitmethod_t)VIRTUAL_poset__POSetElement__froms_61d, /* pointer to poset:POSetElement:poset#POSetElement#froms= */
4559 (nitmethod_t)VIRTUAL_poset__POSetElement__dtos, /* pointer to poset:POSetElement:poset#POSetElement#dtos */
4560 (nitmethod_t)VIRTUAL_poset__POSetElement__dtos_61d, /* pointer to poset:POSetElement:poset#POSetElement#dtos= */
4561 (nitmethod_t)VIRTUAL_poset__POSetElement__dfroms, /* pointer to poset:POSetElement:poset#POSetElement#dfroms */
4562 (nitmethod_t)VIRTUAL_poset__POSetElement__dfroms_61d, /* pointer to poset:POSetElement:poset#POSetElement#dfroms= */
4563 (nitmethod_t)VIRTUAL_poset__POSetElement__count, /* pointer to poset:POSetElement:poset#POSetElement#count */
4564 (nitmethod_t)VIRTUAL_poset__POSetElement__count_61d, /* pointer to poset:POSetElement:poset#POSetElement#count= */
4565 (nitmethod_t)VIRTUAL_poset__POSetElement__greaters, /* pointer to poset:POSetElement:poset#POSetElement#greaters */
4566 (nitmethod_t)VIRTUAL_poset__POSetElement__direct_greaters, /* pointer to poset:POSetElement:poset#POSetElement#direct_greaters */
4567 (nitmethod_t)VIRTUAL_poset__POSetElement__smallers, /* pointer to poset:POSetElement:poset#POSetElement#smallers */
4568 (nitmethod_t)VIRTUAL_poset__POSetElement__direct_smallers, /* pointer to poset:POSetElement:poset#POSetElement#direct_smallers */
4569 (nitmethod_t)VIRTUAL_poset__POSetElement___60d_61d, /* pointer to poset:POSetElement:poset#POSetElement#<= */
4570 (nitmethod_t)VIRTUAL_poset__POSetElement___60d, /* pointer to poset:POSetElement:poset#POSetElement#< */
4571 (nitmethod_t)VIRTUAL_poset__POSetElement__init, /* pointer to poset:POSetElement:poset#POSetElement#init */
4572 }
4573 };
4574 /* allocate POSetElement[Object] */
4575 val* NEW_poset__POSetElement(const struct type* type) {
4576 val* self /* : POSetElement[Object] */;
4577 val* var /* : HashSet[Object] */;
4578 val* var1 /* : HashSet[Object] */;
4579 val* var2 /* : HashSet[Object] */;
4580 val* var3 /* : HashSet[Object] */;
4581 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
4582 self->type = type;
4583 self->class = &class_poset__POSetElement;
4584 var = NEW_hash_collection__HashSet(self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]);
4585 ((void (*)(val*))(var->class->vft[COLOR_hash_collection__HashSet__init]))(var) /* init on <var:HashSet[Object]>*/;
4586 CHECK_NEW_hash_collection__HashSet(var);
4587 self->attrs[COLOR_poset__POSetElement___64dtos].val = var; /* @tos on <self:POSetElement[Object] exact> */
4588 var1 = NEW_hash_collection__HashSet(self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]);
4589 ((void (*)(val*))(var1->class->vft[COLOR_hash_collection__HashSet__init]))(var1) /* init on <var1:HashSet[Object]>*/;
4590 CHECK_NEW_hash_collection__HashSet(var1);
4591 self->attrs[COLOR_poset__POSetElement___64dfroms].val = var1; /* @froms on <self:POSetElement[Object] exact> */
4592 var2 = NEW_hash_collection__HashSet(self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]);
4593 ((void (*)(val*))(var2->class->vft[COLOR_hash_collection__HashSet__init]))(var2) /* init on <var2:HashSet[Object]>*/;
4594 CHECK_NEW_hash_collection__HashSet(var2);
4595 self->attrs[COLOR_poset__POSetElement___64ddtos].val = var2; /* @dtos on <self:POSetElement[Object] exact> */
4596 var3 = NEW_hash_collection__HashSet(self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]);
4597 ((void (*)(val*))(var3->class->vft[COLOR_hash_collection__HashSet__init]))(var3) /* init on <var3:HashSet[Object]>*/;
4598 CHECK_NEW_hash_collection__HashSet(var3);
4599 self->attrs[COLOR_poset__POSetElement___64ddfroms].val = var3; /* @dfroms on <self:POSetElement[Object] exact> */
4600 return self;
4601 }
4602 /* allocate POSetElement[Object] */
4603 void CHECK_NEW_poset__POSetElement(val* self) {
4604 val* var /* : POSet[Object] */;
4605 val* var1 /* : Object */;
4606 long var2 /* : Int */;
4607 var = self->attrs[COLOR_poset__POSetElement___64dposet].val; /* @poset on <self:POSetElement[Object]> */
4608 if (var == NULL) {
4609 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @poset");
4610 fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 181);
4611 exit(1);
4612 }
4613 var1 = self->attrs[COLOR_poset__POSetElement___64delement].val; /* @element on <self:POSetElement[Object]> */
4614 if (var1 == NULL) {
4615 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @element");
4616 fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 184);
4617 exit(1);
4618 }
4619 var2 = self->attrs[COLOR_poset__POSetElement___64dcount].l; /* @count on <self:POSetElement[Object]> */
4620 }
4621 /* runtime class model_base__Model */
4622 const struct class class_model_base__Model = {
4623 0, /* box_kind */
4624 {
4625 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model_base:Model:kernel#Object#object_id */
4626 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model_base:Model:kernel#Object#is_same_type */
4627 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model_base:Model:kernel#Object#is_same_instance */
4628 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model_base:Model:kernel#Object#== */
4629 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model_base:Model:kernel#Object#!= */
4630 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model_base:Model:kernel#Object#output */
4631 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model_base:Model:kernel#Object#output_class_name */
4632 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model_base:Model:kernel#Object#exit */
4633 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model_base:Model:kernel#Object#sys */
4634 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model_base:Model:kernel#Object#hash */
4635 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to model_base:Model:string#Object#to_s */
4636 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model_base:Model:string#Object#native_class_name */
4637 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model_base:Model:string#Object#class_name */
4638 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model_base:Model:string#Object#inspect */
4639 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model_base:Model:string#Object#inspect_head */
4640 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model_base:Model:string#Object#args */
4641 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model_base:Model:math#Object#atan2 */
4642 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model_base:Model:math#Object#pi */
4643 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model_base:Model:math#Object#srand_from */
4644 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model_base:Model:math#Object#srand */
4645 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model_base:Model:stream#Object#poll */
4646 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model_base:Model:stream#Object#intern_poll */
4647 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model_base:Model:time#Object#get_time */
4648 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model_base:Model:file#Object#printn */
4649 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model_base:Model:file#Object#print */
4650 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model_base:Model:file#Object#getc */
4651 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model_base:Model:file#Object#gets */
4652 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model_base:Model:file#Object#getcwd */
4653 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model_base:Model:file#Object#file_getcwd */
4654 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model_base:Model:file#Object#stdin */
4655 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model_base:Model:file#Object#stdout */
4656 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model_base:Model:file#Object#stderr */
4657 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model_base:Model:model_base#Object#intrude_visibility */
4658 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model_base:Model:model_base#Object#public_visibility */
4659 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model_base:Model:model_base#Object#protected_visibility */
4660 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model_base:Model:model_base#Object#private_visibility */
4661 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model_base:Model:model_base#Object#none_visibility */
4662 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model_base:Model:model#Object#abstract_kind */
4663 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model_base:Model:model#Object#concrete_kind */
4664 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model_base:Model:model#Object#interface_kind */
4665 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model_base:Model:model#Object#enum_kind */
4666 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model_base:Model:model#Object#extern_kind */
4667 (nitmethod_t)VIRTUAL_model_base__Model__mmodules, /* pointer to model_base:Model:model_base#Model#mmodules */
4668 (nitmethod_t)VIRTUAL_model_base__Model__mmodules_61d, /* pointer to model_base:Model:model_base#Model#mmodules= */
4669 (nitmethod_t)VIRTUAL_model_base__Model__mmodule_nesting_hierarchy, /* pointer to model_base:Model:model_base#Model#mmodule_nesting_hierarchy */
4670 (nitmethod_t)VIRTUAL_model_base__Model__mmodule_nesting_hierarchy_61d, /* pointer to model_base:Model:model_base#Model#mmodule_nesting_hierarchy= */
4671 (nitmethod_t)VIRTUAL_model_base__Model__mmodule_importation_hierarchy, /* pointer to model_base:Model:model_base#Model#mmodule_importation_hierarchy */
4672 (nitmethod_t)VIRTUAL_model_base__Model__mmodule_importation_hierarchy_61d, /* pointer to model_base:Model:model_base#Model#mmodule_importation_hierarchy= */
4673 (nitmethod_t)VIRTUAL_model_base__Model__mmodules_by_name, /* pointer to model_base:Model:model_base#Model#mmodules_by_name */
4674 (nitmethod_t)VIRTUAL_model_base__Model__mmodules_by_name_61d, /* pointer to model_base:Model:model_base#Model#mmodules_by_name= */
4675 (nitmethod_t)VIRTUAL_model_base__Model__get_mmodules_by_name, /* pointer to model_base:Model:model_base#Model#get_mmodules_by_name */
4676 (nitmethod_t)VIRTUAL_model_base__Model__init, /* pointer to model_base:Model:model_base#Model#init */
4677 (nitmethod_t)VIRTUAL_model__Model__mclasses, /* pointer to model_base:Model:model#Model#mclasses */
4678 (nitmethod_t)VIRTUAL_model__Model__mclasses_61d, /* pointer to model_base:Model:model#Model#mclasses= */
4679 (nitmethod_t)VIRTUAL_model__Model__mproperties, /* pointer to model_base:Model:model#Model#mproperties */
4680 (nitmethod_t)VIRTUAL_model__Model__mproperties_61d, /* pointer to model_base:Model:model#Model#mproperties= */
4681 (nitmethod_t)VIRTUAL_model__Model__mclassdef_hierarchy, /* pointer to model_base:Model:model#Model#mclassdef_hierarchy */
4682 (nitmethod_t)VIRTUAL_model__Model__mclassdef_hierarchy_61d, /* pointer to model_base:Model:model#Model#mclassdef_hierarchy= */
4683 (nitmethod_t)VIRTUAL_model__Model__intro_mtype_specialization_hierarchy, /* pointer to model_base:Model:model#Model#intro_mtype_specialization_hierarchy */
4684 (nitmethod_t)VIRTUAL_model__Model__intro_mtype_specialization_hierarchy_61d, /* pointer to model_base:Model:model#Model#intro_mtype_specialization_hierarchy= */
4685 (nitmethod_t)VIRTUAL_model__Model__full_mtype_specialization_hierarchy, /* pointer to model_base:Model:model#Model#full_mtype_specialization_hierarchy */
4686 (nitmethod_t)VIRTUAL_model__Model__full_mtype_specialization_hierarchy_61d, /* pointer to model_base:Model:model#Model#full_mtype_specialization_hierarchy= */
4687 (nitmethod_t)VIRTUAL_model__Model__mclasses_by_name, /* pointer to model_base:Model:model#Model#mclasses_by_name */
4688 (nitmethod_t)VIRTUAL_model__Model__mclasses_by_name_61d, /* pointer to model_base:Model:model#Model#mclasses_by_name= */
4689 (nitmethod_t)VIRTUAL_model__Model__get_mclasses_by_name, /* pointer to model_base:Model:model#Model#get_mclasses_by_name */
4690 (nitmethod_t)VIRTUAL_model__Model__mproperties_by_name, /* pointer to model_base:Model:model#Model#mproperties_by_name */
4691 (nitmethod_t)VIRTUAL_model__Model__mproperties_by_name_61d, /* pointer to model_base:Model:model#Model#mproperties_by_name= */
4692 (nitmethod_t)VIRTUAL_model__Model__get_mproperties_by_name, /* pointer to model_base:Model:model#Model#get_mproperties_by_name */
4693 (nitmethod_t)VIRTUAL_model__Model__null_type, /* pointer to model_base:Model:model#Model#null_type */
4694 (nitmethod_t)VIRTUAL_model__Model__null_type_61d, /* pointer to model_base:Model:model#Model#null_type= */
4695 }
4696 };
4697 /* allocate Model */
4698 val* NEW_model_base__Model(const struct type* type) {
4699 val* self /* : Model */;
4700 val* var /* : Array[MModule] */;
4701 val* var1 /* : POSet[MModule] */;
4702 val* var2 /* : POSet[MModule] */;
4703 val* var3 /* : MultiHashMap[String, MModule] */;
4704 val* var4 /* : Array[MClass] */;
4705 val* var5 /* : Array[MProperty] */;
4706 val* var6 /* : POSet[MClassDef] */;
4707 val* var7 /* : POSet[MClassType] */;
4708 val* var8 /* : POSet[MClassType] */;
4709 val* var9 /* : MultiHashMap[String, MClass] */;
4710 val* var10 /* : MultiHashMap[String, MProperty] */;
4711 val* var11 /* : MNullType */;
4712 self = nit_alloc(sizeof(struct instance) + 12*sizeof(nitattribute_t));
4713 self->type = type;
4714 self->class = &class_model_base__Model;
4715 var = NEW_array__Array(&type_array__Arraymodel_base__MModule);
4716 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[MModule]>*/;
4717 CHECK_NEW_array__Array(var);
4718 self->attrs[COLOR_model_base__Model___64dmmodules].val = var; /* @mmodules on <self:Model exact> */
4719 var1 = NEW_poset__POSet(&type_poset__POSetmodel_base__MModule);
4720 ((void (*)(val*))(var1->class->vft[COLOR_poset__POSet__init]))(var1) /* init on <var1:POSet[MModule]>*/;
4721 CHECK_NEW_poset__POSet(var1);
4722 self->attrs[COLOR_model_base__Model___64dmmodule_nesting_hierarchy].val = var1; /* @mmodule_nesting_hierarchy on <self:Model exact> */
4723 var2 = NEW_poset__POSet(&type_poset__POSetmodel_base__MModule);
4724 ((void (*)(val*))(var2->class->vft[COLOR_poset__POSet__init]))(var2) /* init on <var2:POSet[MModule]>*/;
4725 CHECK_NEW_poset__POSet(var2);
4726 self->attrs[COLOR_model_base__Model___64dmmodule_importation_hierarchy].val = var2; /* @mmodule_importation_hierarchy on <self:Model exact> */
4727 var3 = NEW_more_collections__MultiHashMap(&type_more_collections__MultiHashMapstring__Stringmodel_base__MModule);
4728 ((void (*)(val*))(var3->class->vft[COLOR_more_collections__MultiHashMap__init]))(var3) /* init on <var3:MultiHashMap[String, MModule]>*/;
4729 CHECK_NEW_more_collections__MultiHashMap(var3);
4730 self->attrs[COLOR_model_base__Model___64dmmodules_by_name].val = var3; /* @mmodules_by_name on <self:Model exact> */
4731 var4 = NEW_array__Array(&type_array__Arraymodel__MClass);
4732 ((void (*)(val*))(var4->class->vft[COLOR_array__Array__init]))(var4) /* init on <var4:Array[MClass]>*/;
4733 CHECK_NEW_array__Array(var4);
4734 self->attrs[COLOR_model__Model___64dmclasses].val = var4; /* @mclasses on <self:Model exact> */
4735 var5 = NEW_array__Array(&type_array__Arraymodel__MProperty);
4736 ((void (*)(val*))(var5->class->vft[COLOR_array__Array__init]))(var5) /* init on <var5:Array[MProperty]>*/;
4737 CHECK_NEW_array__Array(var5);
4738 self->attrs[COLOR_model__Model___64dmproperties].val = var5; /* @mproperties on <self:Model exact> */
4739 var6 = NEW_poset__POSet(&type_poset__POSetmodel__MClassDef);
4740 ((void (*)(val*))(var6->class->vft[COLOR_poset__POSet__init]))(var6) /* init on <var6:POSet[MClassDef]>*/;
4741 CHECK_NEW_poset__POSet(var6);
4742 self->attrs[COLOR_model__Model___64dmclassdef_hierarchy].val = var6; /* @mclassdef_hierarchy on <self:Model exact> */
4743 var7 = NEW_poset__POSet(&type_poset__POSetmodel__MClassType);
4744 ((void (*)(val*))(var7->class->vft[COLOR_poset__POSet__init]))(var7) /* init on <var7:POSet[MClassType]>*/;
4745 CHECK_NEW_poset__POSet(var7);
4746 self->attrs[COLOR_model__Model___64dintro_mtype_specialization_hierarchy].val = var7; /* @intro_mtype_specialization_hierarchy on <self:Model exact> */
4747 var8 = NEW_poset__POSet(&type_poset__POSetmodel__MClassType);
4748 ((void (*)(val*))(var8->class->vft[COLOR_poset__POSet__init]))(var8) /* init on <var8:POSet[MClassType]>*/;
4749 CHECK_NEW_poset__POSet(var8);
4750 self->attrs[COLOR_model__Model___64dfull_mtype_specialization_hierarchy].val = var8; /* @full_mtype_specialization_hierarchy on <self:Model exact> */
4751 var9 = NEW_more_collections__MultiHashMap(&type_more_collections__MultiHashMapstring__Stringmodel__MClass);
4752 ((void (*)(val*))(var9->class->vft[COLOR_more_collections__MultiHashMap__init]))(var9) /* init on <var9:MultiHashMap[String, MClass]>*/;
4753 CHECK_NEW_more_collections__MultiHashMap(var9);
4754 self->attrs[COLOR_model__Model___64dmclasses_by_name].val = var9; /* @mclasses_by_name on <self:Model exact> */
4755 var10 = NEW_more_collections__MultiHashMap(&type_more_collections__MultiHashMapstring__Stringmodel__MProperty);
4756 ((void (*)(val*))(var10->class->vft[COLOR_more_collections__MultiHashMap__init]))(var10) /* init on <var10:MultiHashMap[String, MProperty]>*/;
4757 CHECK_NEW_more_collections__MultiHashMap(var10);
4758 self->attrs[COLOR_model__Model___64dmproperties_by_name].val = var10; /* @mproperties_by_name on <self:Model exact> */
4759 var11 = NEW_model__MNullType(&type_model__MNullType);
4760 ((void (*)(val*, val*))(var11->class->vft[COLOR_model__MNullType__init]))(var11, self) /* init on <var11:MNullType>*/;
4761 CHECK_NEW_model__MNullType(var11);
4762 self->attrs[COLOR_model__Model___64dnull_type].val = var11; /* @null_type on <self:Model exact> */
4763 return self;
4764 }
4765 /* allocate Model */
4766 void CHECK_NEW_model_base__Model(val* self) {
4767 }
4768 /* runtime class model_base__MModule */
4769 const struct class class_model_base__MModule = {
4770 0, /* box_kind */
4771 {
4772 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model_base:MModule:kernel#Object#object_id */
4773 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model_base:MModule:kernel#Object#is_same_type */
4774 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model_base:MModule:kernel#Object#is_same_instance */
4775 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model_base:MModule:kernel#Object#== */
4776 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model_base:MModule:kernel#Object#!= */
4777 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model_base:MModule:kernel#Object#output */
4778 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model_base:MModule:kernel#Object#output_class_name */
4779 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model_base:MModule:kernel#Object#exit */
4780 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model_base:MModule:kernel#Object#sys */
4781 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model_base:MModule:kernel#Object#hash */
4782 (nitmethod_t)VIRTUAL_model_base__MModule__to_s, /* pointer to model_base:MModule:model_base#MModule#to_s */
4783 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model_base:MModule:string#Object#native_class_name */
4784 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model_base:MModule:string#Object#class_name */
4785 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model_base:MModule:string#Object#inspect */
4786 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model_base:MModule:string#Object#inspect_head */
4787 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model_base:MModule:string#Object#args */
4788 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model_base:MModule:math#Object#atan2 */
4789 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model_base:MModule:math#Object#pi */
4790 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model_base:MModule:math#Object#srand_from */
4791 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model_base:MModule:math#Object#srand */
4792 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model_base:MModule:stream#Object#poll */
4793 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model_base:MModule:stream#Object#intern_poll */
4794 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model_base:MModule:time#Object#get_time */
4795 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model_base:MModule:file#Object#printn */
4796 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model_base:MModule:file#Object#print */
4797 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model_base:MModule:file#Object#getc */
4798 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model_base:MModule:file#Object#gets */
4799 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model_base:MModule:file#Object#getcwd */
4800 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model_base:MModule:file#Object#file_getcwd */
4801 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model_base:MModule:file#Object#stdin */
4802 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model_base:MModule:file#Object#stdout */
4803 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model_base:MModule:file#Object#stderr */
4804 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model_base:MModule:model_base#Object#intrude_visibility */
4805 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model_base:MModule:model_base#Object#public_visibility */
4806 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model_base:MModule:model_base#Object#protected_visibility */
4807 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model_base:MModule:model_base#Object#private_visibility */
4808 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model_base:MModule:model_base#Object#none_visibility */
4809 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model_base:MModule:model#Object#abstract_kind */
4810 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model_base:MModule:model#Object#concrete_kind */
4811 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model_base:MModule:model#Object#interface_kind */
4812 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model_base:MModule:model#Object#enum_kind */
4813 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model_base:MModule:model#Object#extern_kind */
4814 (nitmethod_t)VIRTUAL_model_base__MModule__model, /* pointer to model_base:MModule:model_base#MModule#model */
4815 (nitmethod_t)VIRTUAL_model_base__MModule__model_61d, /* pointer to model_base:MModule:model_base#MModule#model= */
4816 (nitmethod_t)VIRTUAL_model_base__MModule__direct_owner, /* pointer to model_base:MModule:model_base#MModule#direct_owner */
4817 (nitmethod_t)VIRTUAL_model_base__MModule__direct_owner_61d, /* pointer to model_base:MModule:model_base#MModule#direct_owner= */
4818 (nitmethod_t)VIRTUAL_model_base__MModule__name, /* pointer to model_base:MModule:model_base#MModule#name */
4819 (nitmethod_t)VIRTUAL_model_base__MModule__name_61d, /* pointer to model_base:MModule:model_base#MModule#name= */
4820 (nitmethod_t)VIRTUAL_model_base__MModule__location, /* pointer to model_base:MModule:model_base#MModule#location */
4821 (nitmethod_t)VIRTUAL_model_base__MModule__location_61d, /* pointer to model_base:MModule:model_base#MModule#location= */
4822 (nitmethod_t)VIRTUAL_model_base__MModule__in_nesting, /* pointer to model_base:MModule:model_base#MModule#in_nesting */
4823 (nitmethod_t)VIRTUAL_model_base__MModule__in_nesting_61d, /* pointer to model_base:MModule:model_base#MModule#in_nesting= */
4824 (nitmethod_t)VIRTUAL_model_base__MModule__in_importation, /* pointer to model_base:MModule:model_base#MModule#in_importation */
4825 (nitmethod_t)VIRTUAL_model_base__MModule__in_importation_61d, /* pointer to model_base:MModule:model_base#MModule#in_importation= */
4826 (nitmethod_t)VIRTUAL_model_base__MModule__full_name, /* pointer to model_base:MModule:model_base#MModule#full_name */
4827 (nitmethod_t)VIRTUAL_model_base__MModule__init, /* pointer to model_base:MModule:model_base#MModule#init */
4828 (nitmethod_t)VIRTUAL_model_base__MModule__set_imported_mmodules, /* pointer to model_base:MModule:model_base#MModule#set_imported_mmodules */
4829 (nitmethod_t)VIRTUAL_model_base__MModule__intrude_mmodules, /* pointer to model_base:MModule:model_base#MModule#intrude_mmodules */
4830 (nitmethod_t)VIRTUAL_model_base__MModule__intrude_mmodules_61d, /* pointer to model_base:MModule:model_base#MModule#intrude_mmodules= */
4831 (nitmethod_t)VIRTUAL_model_base__MModule__public_mmodules, /* pointer to model_base:MModule:model_base#MModule#public_mmodules */
4832 (nitmethod_t)VIRTUAL_model_base__MModule__public_mmodules_61d, /* pointer to model_base:MModule:model_base#MModule#public_mmodules= */
4833 (nitmethod_t)VIRTUAL_model_base__MModule__private_mmodules, /* pointer to model_base:MModule:model_base#MModule#private_mmodules */
4834 (nitmethod_t)VIRTUAL_model_base__MModule__private_mmodules_61d, /* pointer to model_base:MModule:model_base#MModule#private_mmodules= */
4835 (nitmethod_t)VIRTUAL_model_base__MModule__visibility_for, /* pointer to model_base:MModule:model_base#MModule#visibility_for */
4836 (nitmethod_t)VIRTUAL_model_base__MModule__set_visibility_for, /* pointer to model_base:MModule:model_base#MModule#set_visibility_for */
4837 (nitmethod_t)VIRTUAL_model_base__MModule__public_owner, /* pointer to model_base:MModule:model_base#MModule#public_owner */
4838 (nitmethod_t)VIRTUAL_model_base__MModule__is_visible, /* pointer to model_base:MModule:model_base#MModule#is_visible */
4839 (nitmethod_t)VIRTUAL_model__MModule__intro_mclasses, /* pointer to model_base:MModule:model#MModule#intro_mclasses */
4840 (nitmethod_t)VIRTUAL_model__MModule__intro_mclasses_61d, /* pointer to model_base:MModule:model#MModule#intro_mclasses= */
4841 (nitmethod_t)VIRTUAL_model__MModule__mclassdefs, /* pointer to model_base:MModule:model#MModule#mclassdefs */
4842 (nitmethod_t)VIRTUAL_model__MModule__mclassdefs_61d, /* pointer to model_base:MModule:model#MModule#mclassdefs= */
4843 (nitmethod_t)VIRTUAL_model__MModule__has_mclass, /* pointer to model_base:MModule:model#MModule#has_mclass */
4844 (nitmethod_t)VIRTUAL_model__MModule__flatten_mclass_hierarchy, /* pointer to model_base:MModule:model#MModule#flatten_mclass_hierarchy */
4845 (nitmethod_t)VIRTUAL_model__MModule__linearize_mclasses, /* pointer to model_base:MModule:model#MModule#linearize_mclasses */
4846 (nitmethod_t)VIRTUAL_model__MModule__linearize_mclassdefs, /* pointer to model_base:MModule:model#MModule#linearize_mclassdefs */
4847 (nitmethod_t)VIRTUAL_model__MModule__linearize_mpropdefs, /* pointer to model_base:MModule:model#MModule#linearize_mpropdefs */
4848 (nitmethod_t)VIRTUAL_model__MModule__flatten_mclass_hierarchy_cache, /* pointer to model_base:MModule:model#MModule#flatten_mclass_hierarchy_cache */
4849 (nitmethod_t)VIRTUAL_model__MModule__flatten_mclass_hierarchy_cache_61d, /* pointer to model_base:MModule:model#MModule#flatten_mclass_hierarchy_cache= */
4850 (nitmethod_t)VIRTUAL_model__MModule__object_type, /* pointer to model_base:MModule:model#MModule#object_type */
4851 (nitmethod_t)VIRTUAL_model__MModule__object_type_cache, /* pointer to model_base:MModule:model#MModule#object_type_cache */
4852 (nitmethod_t)VIRTUAL_model__MModule__object_type_cache_61d, /* pointer to model_base:MModule:model#MModule#object_type_cache= */
4853 (nitmethod_t)VIRTUAL_model__MModule__bool_type, /* pointer to model_base:MModule:model#MModule#bool_type */
4854 (nitmethod_t)VIRTUAL_model__MModule__bool_type_cache, /* pointer to model_base:MModule:model#MModule#bool_type_cache */
4855 (nitmethod_t)VIRTUAL_model__MModule__bool_type_cache_61d, /* pointer to model_base:MModule:model#MModule#bool_type_cache= */
4856 (nitmethod_t)VIRTUAL_model__MModule__sys_type, /* pointer to model_base:MModule:model#MModule#sys_type */
4857 (nitmethod_t)VIRTUAL_model__MModule__get_primitive_class, /* pointer to model_base:MModule:model#MModule#get_primitive_class */
4858 (nitmethod_t)VIRTUAL_model__MModule__try_get_primitive_method, /* pointer to model_base:MModule:model#MModule#try_get_primitive_method */
4859 (nitmethod_t)VIRTUAL_abstract_compiler__MModule__properties, /* pointer to model_base:MModule:abstract_compiler#MModule#properties */
4860 (nitmethod_t)VIRTUAL_abstract_compiler__MModule__properties_cache, /* pointer to model_base:MModule:abstract_compiler#MModule#properties_cache */
4861 (nitmethod_t)VIRTUAL_abstract_compiler__MModule__properties_cache_61d, /* pointer to model_base:MModule:abstract_compiler#MModule#properties_cache= */
4862 }
4863 };
4864 /* allocate MModule */
4865 val* NEW_model_base__MModule(const struct type* type) {
4866 val* self /* : MModule */;
4867 val* var /* : HashSet[MModule] */;
4868 val* var1 /* : HashSet[MModule] */;
4869 val* var2 /* : HashSet[MModule] */;
4870 val* var3 /* : Array[MClass] */;
4871 val* var4 /* : Array[MClassDef] */;
4872 val* var5 /* : null */;
4873 val* var6 /* : HashMap[MClass, Set[MProperty]] */;
4874 self = nit_alloc(sizeof(struct instance) + 15*sizeof(nitattribute_t));
4875 self->type = type;
4876 self->class = &class_model_base__MModule;
4877 var = NEW_hash_collection__HashSet(&type_hash_collection__HashSetmodel_base__MModule);
4878 ((void (*)(val*))(var->class->vft[COLOR_hash_collection__HashSet__init]))(var) /* init on <var:HashSet[MModule]>*/;
4879 CHECK_NEW_hash_collection__HashSet(var);
4880 self->attrs[COLOR_model_base__MModule___64dintrude_mmodules].val = var; /* @intrude_mmodules on <self:MModule exact> */
4881 var1 = NEW_hash_collection__HashSet(&type_hash_collection__HashSetmodel_base__MModule);
4882 ((void (*)(val*))(var1->class->vft[COLOR_hash_collection__HashSet__init]))(var1) /* init on <var1:HashSet[MModule]>*/;
4883 CHECK_NEW_hash_collection__HashSet(var1);
4884 self->attrs[COLOR_model_base__MModule___64dpublic_mmodules].val = var1; /* @public_mmodules on <self:MModule exact> */
4885 var2 = NEW_hash_collection__HashSet(&type_hash_collection__HashSetmodel_base__MModule);
4886 ((void (*)(val*))(var2->class->vft[COLOR_hash_collection__HashSet__init]))(var2) /* init on <var2:HashSet[MModule]>*/;
4887 CHECK_NEW_hash_collection__HashSet(var2);
4888 self->attrs[COLOR_model_base__MModule___64dprivate_mmodules].val = var2; /* @private_mmodules on <self:MModule exact> */
4889 var3 = NEW_array__Array(&type_array__Arraymodel__MClass);
4890 ((void (*)(val*))(var3->class->vft[COLOR_array__Array__init]))(var3) /* init on <var3:Array[MClass]>*/;
4891 CHECK_NEW_array__Array(var3);
4892 self->attrs[COLOR_model__MModule___64dintro_mclasses].val = var3; /* @intro_mclasses on <self:MModule exact> */
4893 var4 = NEW_array__Array(&type_array__Arraymodel__MClassDef);
4894 ((void (*)(val*))(var4->class->vft[COLOR_array__Array__init]))(var4) /* init on <var4:Array[MClassDef]>*/;
4895 CHECK_NEW_array__Array(var4);
4896 self->attrs[COLOR_model__MModule___64dmclassdefs].val = var4; /* @mclassdefs on <self:MModule exact> */
4897 var5 = NULL;
4898 self->attrs[COLOR_model__MModule___64dflatten_mclass_hierarchy_cache].val = var5; /* @flatten_mclass_hierarchy_cache on <self:MModule exact> */
4899 var6 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MProperty);
4900 ((void (*)(val*))(var6->class->vft[COLOR_hash_collection__HashMap__init]))(var6) /* init on <var6:HashMap[MClass, Set[MProperty]]>*/;
4901 CHECK_NEW_hash_collection__HashMap(var6);
4902 self->attrs[COLOR_abstract_compiler__MModule___64dproperties_cache].val = var6; /* @properties_cache on <self:MModule exact> */
4903 return self;
4904 }
4905 /* allocate MModule */
4906 void CHECK_NEW_model_base__MModule(val* self) {
4907 val* var /* : Model */;
4908 val* var1 /* : nullable MModule */;
4909 val* var2 /* : String */;
4910 val* var3 /* : Location */;
4911 val* var4 /* : POSetElement[MModule] */;
4912 val* var5 /* : POSetElement[MModule] */;
4913 val* var6 /* : nullable MClassType */;
4914 val* var7 /* : nullable MClassType */;
4915 var = self->attrs[COLOR_model_base__MModule___64dmodel].val; /* @model on <self:MModule> */
4916 if (var == NULL) {
4917 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @model");
4918 fprintf(stderr, " (%s:%d)\n", "src/model/model_base.nit", 56);
4919 exit(1);
4920 }
4921 var1 = self->attrs[COLOR_model_base__MModule___64ddirect_owner].val; /* @direct_owner on <self:MModule> */
4922 var2 = self->attrs[COLOR_model_base__MModule___64dname].val; /* @name on <self:MModule> */
4923 if (var2 == NULL) {
4924 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
4925 fprintf(stderr, " (%s:%d)\n", "src/model/model_base.nit", 62);
4926 exit(1);
4927 }
4928 var3 = self->attrs[COLOR_model_base__MModule___64dlocation].val; /* @location on <self:MModule> */
4929 if (var3 == NULL) {
4930 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @location");
4931 fprintf(stderr, " (%s:%d)\n", "src/model/model_base.nit", 65);
4932 exit(1);
4933 }
4934 var4 = self->attrs[COLOR_model_base__MModule___64din_nesting].val; /* @in_nesting on <self:MModule> */
4935 if (var4 == NULL) {
4936 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_nesting");
4937 fprintf(stderr, " (%s:%d)\n", "src/model/model_base.nit", 71);
4938 exit(1);
4939 }
4940 var5 = self->attrs[COLOR_model_base__MModule___64din_importation].val; /* @in_importation on <self:MModule> */
4941 if (var5 == NULL) {
4942 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_importation");
4943 fprintf(stderr, " (%s:%d)\n", "src/model/model_base.nit", 74);
4944 exit(1);
4945 }
4946 var6 = self->attrs[COLOR_model__MModule___64dobject_type_cache].val; /* @object_type_cache on <self:MModule> */
4947 var7 = self->attrs[COLOR_model__MModule___64dbool_type_cache].val; /* @bool_type_cache on <self:MModule> */
4948 }
4949 /* runtime class model_base__MVisibility */
4950 const struct class class_model_base__MVisibility = {
4951 0, /* box_kind */
4952 {
4953 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to model_base:MVisibility:kernel#Object#object_id */
4954 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to model_base:MVisibility:kernel#Object#is_same_type */
4955 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to model_base:MVisibility:kernel#Object#is_same_instance */
4956 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to model_base:MVisibility:kernel#Object#== */
4957 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to model_base:MVisibility:kernel#Object#!= */
4958 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to model_base:MVisibility:kernel#Object#output */
4959 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to model_base:MVisibility:kernel#Object#output_class_name */
4960 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to model_base:MVisibility:kernel#Object#exit */
4961 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to model_base:MVisibility:kernel#Object#sys */
4962 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to model_base:MVisibility:kernel#Object#hash */
4963 (nitmethod_t)VIRTUAL_model_base__MVisibility__to_s, /* pointer to model_base:MVisibility:model_base#MVisibility#to_s */
4964 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to model_base:MVisibility:string#Object#native_class_name */
4965 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to model_base:MVisibility:string#Object#class_name */
4966 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to model_base:MVisibility:string#Object#inspect */
4967 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to model_base:MVisibility:string#Object#inspect_head */
4968 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to model_base:MVisibility:string#Object#args */
4969 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to model_base:MVisibility:math#Object#atan2 */
4970 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to model_base:MVisibility:math#Object#pi */
4971 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to model_base:MVisibility:math#Object#srand_from */
4972 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to model_base:MVisibility:math#Object#srand */
4973 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to model_base:MVisibility:stream#Object#poll */
4974 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to model_base:MVisibility:stream#Object#intern_poll */
4975 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to model_base:MVisibility:time#Object#get_time */
4976 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to model_base:MVisibility:file#Object#printn */
4977 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to model_base:MVisibility:file#Object#print */
4978 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to model_base:MVisibility:file#Object#getc */
4979 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to model_base:MVisibility:file#Object#gets */
4980 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to model_base:MVisibility:file#Object#getcwd */
4981 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to model_base:MVisibility:file#Object#file_getcwd */
4982 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to model_base:MVisibility:file#Object#stdin */
4983 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to model_base:MVisibility:file#Object#stdout */
4984 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to model_base:MVisibility:file#Object#stderr */
4985 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to model_base:MVisibility:model_base#Object#intrude_visibility */
4986 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to model_base:MVisibility:model_base#Object#public_visibility */
4987 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to model_base:MVisibility:model_base#Object#protected_visibility */
4988 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to model_base:MVisibility:model_base#Object#private_visibility */
4989 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to model_base:MVisibility:model_base#Object#none_visibility */
4990 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to model_base:MVisibility:model#Object#abstract_kind */
4991 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to model_base:MVisibility:model#Object#concrete_kind */
4992 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to model_base:MVisibility:model#Object#interface_kind */
4993 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to model_base:MVisibility:model#Object#enum_kind */
4994 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to model_base:MVisibility:model#Object#extern_kind */
4995 (nitmethod_t)VIRTUAL_model_base__MVisibility___60d, /* pointer to model_base:MVisibility:model_base#MVisibility#< */
4996 (nitmethod_t)VIRTUAL_kernel__Comparable___60d_61d, /* pointer to model_base:MVisibility:kernel#Comparable#<= */
4997 (nitmethod_t)VIRTUAL_kernel__Comparable___62d_61d, /* pointer to model_base:MVisibility:kernel#Comparable#>= */
4998 (nitmethod_t)VIRTUAL_kernel__Comparable___62d, /* pointer to model_base:MVisibility:kernel#Comparable#> */
4999 (nitmethod_t)VIRTUAL_kernel__Comparable___60d_61d_62d, /* pointer to model_base:MVisibility:kernel#Comparable#<=> */
5000 (nitmethod_t)VIRTUAL_kernel__Comparable__is_between, /* pointer to model_base:MVisibility:kernel#Comparable#is_between */
5001 (nitmethod_t)VIRTUAL_kernel__Comparable__max, /* pointer to model_base:MVisibility:kernel#Comparable#max */
5002 (nitmethod_t)VIRTUAL_kernel__Comparable__min, /* pointer to model_base:MVisibility:kernel#Comparable#min */
5003 (nitmethod_t)VIRTUAL_model_base__MVisibility__to_s_61d, /* pointer to model_base:MVisibility:model_base#MVisibility#to_s= */
5004 (nitmethod_t)VIRTUAL_model_base__MVisibility__level, /* pointer to model_base:MVisibility:model_base#MVisibility#level */
5005 (nitmethod_t)VIRTUAL_model_base__MVisibility__level_61d, /* pointer to model_base:MVisibility:model_base#MVisibility#level= */
5006 (nitmethod_t)VIRTUAL_model_base__MVisibility__init, /* pointer to model_base:MVisibility:model_base#MVisibility#init */
5007 }
5008 };
5009 /* allocate MVisibility */
5010 val* NEW_model_base__MVisibility(const struct type* type) {
5011 val* self /* : MVisibility */;
5012 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
5013 self->type = type;
5014 self->class = &class_model_base__MVisibility;
5015 return self;
5016 }
5017 /* allocate MVisibility */
5018 void CHECK_NEW_model_base__MVisibility(val* self) {
5019 val* var /* : String */;
5020 long var1 /* : Int */;
5021 var = self->attrs[COLOR_model_base__MVisibility___64dto_s].val; /* @to_s on <self:MVisibility> */
5022 if (var == NULL) {
5023 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @to_s");
5024 fprintf(stderr, " (%s:%d)\n", "src/model/model_base.nit", 200);
5025 exit(1);
5026 }
5027 var1 = self->attrs[COLOR_model_base__MVisibility___64dlevel].l; /* @level on <self:MVisibility> */
5028 }
5029 /* runtime class more_collections__MultiHashMap */
5030 const struct class class_more_collections__MultiHashMap = {
5031 0, /* box_kind */
5032 {
5033 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to more_collections:MultiHashMap:kernel#Object#object_id */
5034 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to more_collections:MultiHashMap:kernel#Object#is_same_type */
5035 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to more_collections:MultiHashMap:kernel#Object#is_same_instance */
5036 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to more_collections:MultiHashMap:kernel#Object#== */
5037 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to more_collections:MultiHashMap:kernel#Object#!= */
5038 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to more_collections:MultiHashMap:kernel#Object#output */
5039 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to more_collections:MultiHashMap:kernel#Object#output_class_name */
5040 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to more_collections:MultiHashMap:kernel#Object#exit */
5041 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to more_collections:MultiHashMap:kernel#Object#sys */
5042 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to more_collections:MultiHashMap:kernel#Object#hash */
5043 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to more_collections:MultiHashMap:string#Object#to_s */
5044 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to more_collections:MultiHashMap:string#Object#native_class_name */
5045 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to more_collections:MultiHashMap:string#Object#class_name */
5046 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to more_collections:MultiHashMap:string#Object#inspect */
5047 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to more_collections:MultiHashMap:string#Object#inspect_head */
5048 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to more_collections:MultiHashMap:string#Object#args */
5049 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to more_collections:MultiHashMap:math#Object#atan2 */
5050 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to more_collections:MultiHashMap:math#Object#pi */
5051 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to more_collections:MultiHashMap:math#Object#srand_from */
5052 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to more_collections:MultiHashMap:math#Object#srand */
5053 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to more_collections:MultiHashMap:stream#Object#poll */
5054 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to more_collections:MultiHashMap:stream#Object#intern_poll */
5055 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to more_collections:MultiHashMap:time#Object#get_time */
5056 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to more_collections:MultiHashMap:file#Object#printn */
5057 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to more_collections:MultiHashMap:file#Object#print */
5058 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to more_collections:MultiHashMap:file#Object#getc */
5059 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to more_collections:MultiHashMap:file#Object#gets */
5060 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to more_collections:MultiHashMap:file#Object#getcwd */
5061 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to more_collections:MultiHashMap:file#Object#file_getcwd */
5062 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to more_collections:MultiHashMap:file#Object#stdin */
5063 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to more_collections:MultiHashMap:file#Object#stdout */
5064 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to more_collections:MultiHashMap:file#Object#stderr */
5065 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to more_collections:MultiHashMap:model_base#Object#intrude_visibility */
5066 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to more_collections:MultiHashMap:model_base#Object#public_visibility */
5067 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to more_collections:MultiHashMap:model_base#Object#protected_visibility */
5068 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to more_collections:MultiHashMap:model_base#Object#private_visibility */
5069 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to more_collections:MultiHashMap:model_base#Object#none_visibility */
5070 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to more_collections:MultiHashMap:model#Object#abstract_kind */
5071 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to more_collections:MultiHashMap:model#Object#concrete_kind */
5072 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to more_collections:MultiHashMap:model#Object#interface_kind */
5073 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to more_collections:MultiHashMap:model#Object#enum_kind */
5074 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to more_collections:MultiHashMap:model#Object#extern_kind */
5075 (nitmethod_t)VIRTUAL_hash_collection__HashMap___91d_93d, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#[] */
5076 (nitmethod_t)VIRTUAL_abstract_collection__MapRead__get_or_default, /* pointer to more_collections:MultiHashMap:abstract_collection#MapRead#get_or_default */
5077 (nitmethod_t)VIRTUAL_abstract_collection__MapRead__has_key, /* pointer to more_collections:MultiHashMap:abstract_collection#MapRead#has_key */
5078 (nitmethod_t)VIRTUAL_hash_collection__HashMap__iterator, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#iterator */
5079 (nitmethod_t)VIRTUAL_hash_collection__HashMap__values, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#values */
5080 (nitmethod_t)VIRTUAL_hash_collection__HashMap__keys, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#keys */
5081 (nitmethod_t)VIRTUAL_hash_collection__HashMap__is_empty, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#is_empty */
5082 (nitmethod_t)VIRTUAL_hash_collection__HashMap__length, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#length */
5083 (nitmethod_t)VIRTUAL_hash_collection__HashMap___91d_93d_61d, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#[]= */
5084 (nitmethod_t)VIRTUAL_abstract_collection__Map__recover_with, /* pointer to more_collections:MultiHashMap:abstract_collection#Map#recover_with */
5085 (nitmethod_t)VIRTUAL_hash_collection__HashMap__clear, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#clear */
5086 (nitmethod_t)VIRTUAL_string__Map__join, /* pointer to more_collections:MultiHashMap:string#Map#join */
5087 NULL, /* empty */
5088 NULL, /* empty */
5089 NULL, /* empty */
5090 NULL, /* empty */
5091 NULL, /* empty */
5092 NULL, /* empty */
5093 NULL, /* empty */
5094 NULL, /* empty */
5095 NULL, /* empty */
5096 NULL, /* empty */
5097 NULL, /* empty */
5098 NULL, /* empty */
5099 NULL, /* empty */
5100 NULL, /* empty */
5101 NULL, /* empty */
5102 NULL, /* empty */
5103 NULL, /* empty */
5104 NULL, /* empty */
5105 NULL, /* empty */
5106 NULL, /* empty */
5107 NULL, /* empty */
5108 NULL, /* empty */
5109 NULL, /* empty */
5110 NULL, /* empty */
5111 NULL, /* empty */
5112 NULL, /* empty */
5113 NULL, /* empty */
5114 NULL, /* empty */
5115 NULL, /* empty */
5116 NULL, /* empty */
5117 NULL, /* empty */
5118 NULL, /* empty */
5119 NULL, /* empty */
5120 NULL, /* empty */
5121 NULL, /* empty */
5122 NULL, /* empty */
5123 NULL, /* empty */
5124 NULL, /* empty */
5125 NULL, /* empty */
5126 NULL, /* empty */
5127 NULL, /* empty */
5128 NULL, /* empty */
5129 NULL, /* empty */
5130 NULL, /* empty */
5131 NULL, /* empty */
5132 (nitmethod_t)VIRTUAL_array__ArrayCapable__calloc_array, /* pointer to more_collections:MultiHashMap:array#ArrayCapable#calloc_array */
5133 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__first_item, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#first_item */
5134 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__index_at, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#index_at */
5135 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__node_at, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#node_at */
5136 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__node_at_idx, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#node_at_idx */
5137 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__store, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#store */
5138 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__remove_node, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#remove_node */
5139 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__raz, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#raz */
5140 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__enlarge, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#enlarge */
5141 (nitmethod_t)VIRTUAL_hash_collection__HashCollection__init, /* pointer to more_collections:MultiHashMap:hash_collection#HashCollection#init */
5142 (nitmethod_t)VIRTUAL_hash_collection__HashMap__init, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#init */
5143 (nitmethod_t)VIRTUAL_hash_collection__HashMap__keys_61d, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#keys= */
5144 (nitmethod_t)VIRTUAL_hash_collection__HashMap__values_61d, /* pointer to more_collections:MultiHashMap:hash_collection#HashMap#values= */
5145 (nitmethod_t)VIRTUAL_more_collections__MultiHashMap__add_one, /* pointer to more_collections:MultiHashMap:more_collections#MultiHashMap#add_one */
5146 (nitmethod_t)VIRTUAL_more_collections__MultiHashMap__init, /* pointer to more_collections:MultiHashMap:more_collections#MultiHashMap#init */
5147 }
5148 };
5149 /* allocate MultiHashMap[Object, nullable Object] */
5150 val* NEW_more_collections__MultiHashMap(const struct type* type) {
5151 val* self /* : MultiHashMap[Object, nullable Object] */;
5152 val* var /* : null */;
5153 long var1 /* : Int */;
5154 long var2 /* : Int */;
5155 val* var3 /* : null */;
5156 val* var4 /* : null */;
5157 val* var5 /* : null */;
5158 val* var6 /* : null */;
5159 val* var7 /* : HashMapKeys[Object, Array[nullable Object]] */;
5160 val* var8 /* : HashMapValues[Object, Array[nullable Object]] */;
5161 self = nit_alloc(sizeof(struct instance) + 9*sizeof(nitattribute_t));
5162 self->type = type;
5163 self->class = &class_more_collections__MultiHashMap;
5164 var = NULL;
5165 self->attrs[COLOR_hash_collection__HashCollection___array].val = var; /* _array on <self:MultiHashMap[Object, nullable Object] exact> */
5166 var1 = 0;
5167 self->attrs[COLOR_hash_collection__HashCollection___capacity].l = var1; /* _capacity on <self:MultiHashMap[Object, nullable Object] exact> */
5168 var2 = 0;
5169 self->attrs[COLOR_hash_collection__HashCollection___length].l = var2; /* _length on <self:MultiHashMap[Object, nullable Object] exact> */
5170 var3 = NULL;
5171 self->attrs[COLOR_hash_collection__HashCollection___first_item].val = var3; /* _first_item on <self:MultiHashMap[Object, nullable Object] exact> */
5172 var4 = NULL;
5173 self->attrs[COLOR_hash_collection__HashCollection___last_item].val = var4; /* _last_item on <self:MultiHashMap[Object, nullable Object] exact> */
5174 var5 = NULL;
5175 self->attrs[COLOR_hash_collection__HashCollection___last_accessed_key].val = var5; /* _last_accessed_key on <self:MultiHashMap[Object, nullable Object] exact> */
5176 var6 = NULL;
5177 self->attrs[COLOR_hash_collection__HashCollection___last_accessed_node].val = var6; /* _last_accessed_node on <self:MultiHashMap[Object, nullable Object] exact> */
5178 var7 = NEW_hash_collection__HashMapKeys(self->type->resolution_table->types[COLOR_hash_collection__HashMapKeyshash_collection__HashMap_FT0hash_collection__HashMap_FT1]);
5179 ((void (*)(val*, val*))(var7->class->vft[COLOR_hash_collection__HashMapKeys__init]))(var7, self) /* init on <var7:HashMapKeys[Object, Array[nullable Object]]>*/;
5180 CHECK_NEW_hash_collection__HashMapKeys(var7);
5181 self->attrs[COLOR_hash_collection__HashMap___64dkeys].val = var7; /* @keys on <self:MultiHashMap[Object, nullable Object] exact> */
5182 var8 = NEW_hash_collection__HashMapValues(self->type->resolution_table->types[COLOR_hash_collection__HashMapValueshash_collection__HashMap_FT0hash_collection__HashMap_FT1]);
5183 ((void (*)(val*, val*))(var8->class->vft[COLOR_hash_collection__HashMapValues__init]))(var8, self) /* init on <var8:HashMapValues[Object, Array[nullable Object]]>*/;
5184 CHECK_NEW_hash_collection__HashMapValues(var8);
5185 self->attrs[COLOR_hash_collection__HashMap___64dvalues].val = var8; /* @values on <self:MultiHashMap[Object, nullable Object] exact> */
5186 return self;
5187 }
5188 /* allocate MultiHashMap[Object, nullable Object] */
5189 void CHECK_NEW_more_collections__MultiHashMap(val* self) {
5190 }
5191 /* runtime class more_collections__HashMap2 */
5192 const struct class class_more_collections__HashMap2 = {
5193 0, /* box_kind */
5194 {
5195 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to more_collections:HashMap2:kernel#Object#object_id */
5196 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to more_collections:HashMap2:kernel#Object#is_same_type */
5197 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to more_collections:HashMap2:kernel#Object#is_same_instance */
5198 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to more_collections:HashMap2:kernel#Object#== */
5199 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to more_collections:HashMap2:kernel#Object#!= */
5200 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to more_collections:HashMap2:kernel#Object#output */
5201 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to more_collections:HashMap2:kernel#Object#output_class_name */
5202 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to more_collections:HashMap2:kernel#Object#exit */
5203 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to more_collections:HashMap2:kernel#Object#sys */
5204 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to more_collections:HashMap2:kernel#Object#hash */
5205 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to more_collections:HashMap2:string#Object#to_s */
5206 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to more_collections:HashMap2:string#Object#native_class_name */
5207 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to more_collections:HashMap2:string#Object#class_name */
5208 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to more_collections:HashMap2:string#Object#inspect */
5209 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to more_collections:HashMap2:string#Object#inspect_head */
5210 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to more_collections:HashMap2:string#Object#args */
5211 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to more_collections:HashMap2:math#Object#atan2 */
5212 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to more_collections:HashMap2:math#Object#pi */
5213 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to more_collections:HashMap2:math#Object#srand_from */
5214 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to more_collections:HashMap2:math#Object#srand */
5215 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to more_collections:HashMap2:stream#Object#poll */
5216 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to more_collections:HashMap2:stream#Object#intern_poll */
5217 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to more_collections:HashMap2:time#Object#get_time */
5218 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to more_collections:HashMap2:file#Object#printn */
5219 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to more_collections:HashMap2:file#Object#print */
5220 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to more_collections:HashMap2:file#Object#getc */
5221 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to more_collections:HashMap2:file#Object#gets */
5222 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to more_collections:HashMap2:file#Object#getcwd */
5223 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to more_collections:HashMap2:file#Object#file_getcwd */
5224 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to more_collections:HashMap2:file#Object#stdin */
5225 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to more_collections:HashMap2:file#Object#stdout */
5226 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to more_collections:HashMap2:file#Object#stderr */
5227 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to more_collections:HashMap2:model_base#Object#intrude_visibility */
5228 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to more_collections:HashMap2:model_base#Object#public_visibility */
5229 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to more_collections:HashMap2:model_base#Object#protected_visibility */
5230 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to more_collections:HashMap2:model_base#Object#private_visibility */
5231 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to more_collections:HashMap2:model_base#Object#none_visibility */
5232 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to more_collections:HashMap2:model#Object#abstract_kind */
5233 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to more_collections:HashMap2:model#Object#concrete_kind */
5234 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to more_collections:HashMap2:model#Object#interface_kind */
5235 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to more_collections:HashMap2:model#Object#enum_kind */
5236 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to more_collections:HashMap2:model#Object#extern_kind */
5237 (nitmethod_t)VIRTUAL_more_collections__HashMap2__level1, /* pointer to more_collections:HashMap2:more_collections#HashMap2#level1 */
5238 (nitmethod_t)VIRTUAL_more_collections__HashMap2__level1_61d, /* pointer to more_collections:HashMap2:more_collections#HashMap2#level1= */
5239 (nitmethod_t)VIRTUAL_more_collections__HashMap2___91d_93d, /* pointer to more_collections:HashMap2:more_collections#HashMap2#[] */
5240 (nitmethod_t)VIRTUAL_more_collections__HashMap2___91d_93d_61d, /* pointer to more_collections:HashMap2:more_collections#HashMap2#[]= */
5241 (nitmethod_t)VIRTUAL_more_collections__HashMap2__init, /* pointer to more_collections:HashMap2:more_collections#HashMap2#init */
5242 }
5243 };
5244 /* allocate HashMap2[Object, Object, nullable Object] */
5245 val* NEW_more_collections__HashMap2(const struct type* type) {
5246 val* self /* : HashMap2[Object, Object, nullable Object] */;
5247 val* var /* : HashMap[Object, HashMap[Object, nullable Object]] */;
5248 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
5249 self->type = type;
5250 self->class = &class_more_collections__HashMap2;
5251 var = NEW_hash_collection__HashMap(self->type->resolution_table->types[COLOR_hash_collection__HashMapmore_collections__HashMap2_FT0hash_collection__HashMapmore_collections__HashMap2_FT1more_collections__HashMap2_FT2]);
5252 ((void (*)(val*))(var->class->vft[COLOR_hash_collection__HashMap__init]))(var) /* init on <var:HashMap[Object, HashMap[Object, nullable Object]]>*/;
5253 CHECK_NEW_hash_collection__HashMap(var);
5254 self->attrs[COLOR_more_collections__HashMap2___64dlevel1].val = var; /* @level1 on <self:HashMap2[Object, Object, nullable Object] exact> */
5255 return self;
5256 }
5257 /* allocate HashMap2[Object, Object, nullable Object] */
5258 void CHECK_NEW_more_collections__HashMap2(val* self) {
5259 }
5260 /* runtime class more_collections__HashMap3 */
5261 const struct class class_more_collections__HashMap3 = {
5262 0, /* box_kind */
5263 {
5264 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to more_collections:HashMap3:kernel#Object#object_id */
5265 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to more_collections:HashMap3:kernel#Object#is_same_type */
5266 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to more_collections:HashMap3:kernel#Object#is_same_instance */
5267 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to more_collections:HashMap3:kernel#Object#== */
5268 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to more_collections:HashMap3:kernel#Object#!= */
5269 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to more_collections:HashMap3:kernel#Object#output */
5270 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to more_collections:HashMap3:kernel#Object#output_class_name */
5271 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to more_collections:HashMap3:kernel#Object#exit */
5272 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to more_collections:HashMap3:kernel#Object#sys */
5273 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to more_collections:HashMap3:kernel#Object#hash */
5274 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to more_collections:HashMap3:string#Object#to_s */
5275 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to more_collections:HashMap3:string#Object#native_class_name */
5276 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to more_collections:HashMap3:string#Object#class_name */
5277 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to more_collections:HashMap3:string#Object#inspect */
5278 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to more_collections:HashMap3:string#Object#inspect_head */
5279 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to more_collections:HashMap3:string#Object#args */
5280 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to more_collections:HashMap3:math#Object#atan2 */
5281 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to more_collections:HashMap3:math#Object#pi */
5282 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to more_collections:HashMap3:math#Object#srand_from */
5283 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to more_collections:HashMap3:math#Object#srand */
5284 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to more_collections:HashMap3:stream#Object#poll */
5285 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to more_collections:HashMap3:stream#Object#intern_poll */
5286 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to more_collections:HashMap3:time#Object#get_time */
5287 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to more_collections:HashMap3:file#Object#printn */
5288 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to more_collections:HashMap3:file#Object#print */
5289 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to more_collections:HashMap3:file#Object#getc */
5290 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to more_collections:HashMap3:file#Object#gets */
5291 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to more_collections:HashMap3:file#Object#getcwd */
5292 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to more_collections:HashMap3:file#Object#file_getcwd */
5293 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to more_collections:HashMap3:file#Object#stdin */
5294 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to more_collections:HashMap3:file#Object#stdout */
5295 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to more_collections:HashMap3:file#Object#stderr */
5296 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to more_collections:HashMap3:model_base#Object#intrude_visibility */
5297 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to more_collections:HashMap3:model_base#Object#public_visibility */
5298 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to more_collections:HashMap3:model_base#Object#protected_visibility */
5299 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to more_collections:HashMap3:model_base#Object#private_visibility */
5300 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to more_collections:HashMap3:model_base#Object#none_visibility */
5301 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to more_collections:HashMap3:model#Object#abstract_kind */
5302 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to more_collections:HashMap3:model#Object#concrete_kind */
5303 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to more_collections:HashMap3:model#Object#interface_kind */
5304 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to more_collections:HashMap3:model#Object#enum_kind */
5305 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to more_collections:HashMap3:model#Object#extern_kind */
5306 (nitmethod_t)VIRTUAL_more_collections__HashMap3__level1, /* pointer to more_collections:HashMap3:more_collections#HashMap3#level1 */
5307 (nitmethod_t)VIRTUAL_more_collections__HashMap3__level1_61d, /* pointer to more_collections:HashMap3:more_collections#HashMap3#level1= */
5308 (nitmethod_t)VIRTUAL_more_collections__HashMap3___91d_93d, /* pointer to more_collections:HashMap3:more_collections#HashMap3#[] */
5309 (nitmethod_t)VIRTUAL_more_collections__HashMap3___91d_93d_61d, /* pointer to more_collections:HashMap3:more_collections#HashMap3#[]= */
5310 (nitmethod_t)VIRTUAL_more_collections__HashMap3__init, /* pointer to more_collections:HashMap3:more_collections#HashMap3#init */
5311 }
5312 };
5313 /* allocate HashMap3[Object, Object, Object, nullable Object] */
5314 val* NEW_more_collections__HashMap3(const struct type* type) {
5315 val* self /* : HashMap3[Object, Object, Object, nullable Object] */;
5316 val* var /* : HashMap[Object, HashMap2[Object, Object, nullable Object]] */;
5317 self = nit_alloc(sizeof(struct instance) + 1*sizeof(nitattribute_t));
5318 self->type = type;
5319 self->class = &class_more_collections__HashMap3;
5320 var = NEW_hash_collection__HashMap(self->type->resolution_table->types[COLOR_hash_collection__HashMapmore_collections__HashMap3_FT0more_collections__HashMap2more_collections__HashMap3_FT1more_collections__HashMap3_FT2more_collections__HashMap3_FT3]);
5321 ((void (*)(val*))(var->class->vft[COLOR_hash_collection__HashMap__init]))(var) /* init on <var:HashMap[Object, HashMap2[Object, Object, nullable Object]]>*/;
5322 CHECK_NEW_hash_collection__HashMap(var);
5323 self->attrs[COLOR_more_collections__HashMap3___64dlevel1].val = var; /* @level1 on <self:HashMap3[Object, Object, Object, nullable Object] exact> */
5324 return self;
5325 }
5326 /* allocate HashMap3[Object, Object, Object, nullable Object] */
5327 void CHECK_NEW_more_collections__HashMap3(val* self) {
5328 }
5329 /* runtime class opts__OptionText */
5330 /* allocate OptionText */
5331 val* NEW_opts__OptionText(const struct type* type) {
5332 fprintf(stderr, "Runtime error: %s", "OptionText is DEAD");
5333 fprintf(stderr, "\n");
5334 exit(1);
5335 }
5336 /* allocate OptionText */
5337 void CHECK_NEW_opts__OptionText(val* self) {
5338 fprintf(stderr, "Runtime error: %s", "OptionText is DEAD");
5339 fprintf(stderr, "\n");
5340 exit(1);
5341 }
5342 /* runtime class opts__OptionBool */
5343 const struct class class_opts__OptionBool = {
5344 0, /* box_kind */
5345 {
5346 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to opts:OptionBool:kernel#Object#object_id */
5347 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to opts:OptionBool:kernel#Object#is_same_type */
5348 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to opts:OptionBool:kernel#Object#is_same_instance */
5349 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to opts:OptionBool:kernel#Object#== */
5350 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to opts:OptionBool:kernel#Object#!= */
5351 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to opts:OptionBool:kernel#Object#output */
5352 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to opts:OptionBool:kernel#Object#output_class_name */
5353 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to opts:OptionBool:kernel#Object#exit */
5354 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to opts:OptionBool:kernel#Object#sys */
5355 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to opts:OptionBool:kernel#Object#hash */
5356 (nitmethod_t)VIRTUAL_opts__Option__to_s, /* pointer to opts:OptionBool:opts#Option#to_s */
5357 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to opts:OptionBool:string#Object#native_class_name */
5358 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to opts:OptionBool:string#Object#class_name */
5359 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to opts:OptionBool:string#Object#inspect */
5360 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to opts:OptionBool:string#Object#inspect_head */
5361 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to opts:OptionBool:string#Object#args */
5362 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to opts:OptionBool:math#Object#atan2 */
5363 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to opts:OptionBool:math#Object#pi */
5364 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to opts:OptionBool:math#Object#srand_from */
5365 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to opts:OptionBool:math#Object#srand */
5366 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to opts:OptionBool:stream#Object#poll */
5367 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to opts:OptionBool:stream#Object#intern_poll */
5368 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to opts:OptionBool:time#Object#get_time */
5369 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to opts:OptionBool:file#Object#printn */
5370 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to opts:OptionBool:file#Object#print */
5371 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to opts:OptionBool:file#Object#getc */
5372 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to opts:OptionBool:file#Object#gets */
5373 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to opts:OptionBool:file#Object#getcwd */
5374 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to opts:OptionBool:file#Object#file_getcwd */
5375 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to opts:OptionBool:file#Object#stdin */
5376 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to opts:OptionBool:file#Object#stdout */
5377 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to opts:OptionBool:file#Object#stderr */
5378 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to opts:OptionBool:model_base#Object#intrude_visibility */
5379 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to opts:OptionBool:model_base#Object#public_visibility */
5380 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to opts:OptionBool:model_base#Object#protected_visibility */
5381 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to opts:OptionBool:model_base#Object#private_visibility */
5382 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to opts:OptionBool:model_base#Object#none_visibility */
5383 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to opts:OptionBool:model#Object#abstract_kind */
5384 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to opts:OptionBool:model#Object#concrete_kind */
5385 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to opts:OptionBool:model#Object#interface_kind */
5386 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to opts:OptionBool:model#Object#enum_kind */
5387 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to opts:OptionBool:model#Object#extern_kind */
5388 (nitmethod_t)VIRTUAL_opts__Option__names, /* pointer to opts:OptionBool:opts#Option#names */
5389 (nitmethod_t)VIRTUAL_opts__Option__helptext, /* pointer to opts:OptionBool:opts#Option#helptext */
5390 (nitmethod_t)VIRTUAL_opts__Option__errors, /* pointer to opts:OptionBool:opts#Option#errors */
5391 (nitmethod_t)VIRTUAL_opts__Option__mandatory, /* pointer to opts:OptionBool:opts#Option#mandatory */
5392 (nitmethod_t)VIRTUAL_opts__Option__mandatory_61d, /* pointer to opts:OptionBool:opts#Option#mandatory= */
5393 (nitmethod_t)VIRTUAL_opts__Option__read, /* pointer to opts:OptionBool:opts#Option#read */
5394 (nitmethod_t)VIRTUAL_opts__Option__value_61d, /* pointer to opts:OptionBool:opts#Option#value= */
5395 (nitmethod_t)VIRTUAL_opts__Option__value, /* pointer to opts:OptionBool:opts#Option#value */
5396 (nitmethod_t)VIRTUAL_opts__Option__default_value, /* pointer to opts:OptionBool:opts#Option#default_value */
5397 (nitmethod_t)VIRTUAL_opts__Option__default_value_61d, /* pointer to opts:OptionBool:opts#Option#default_value= */
5398 (nitmethod_t)VIRTUAL_opts__Option__init_opt, /* pointer to opts:OptionBool:opts#Option#init_opt */
5399 (nitmethod_t)VIRTUAL_opts__Option__add_aliases, /* pointer to opts:OptionBool:opts#Option#add_aliases */
5400 (nitmethod_t)VIRTUAL_opts__Option__pretty, /* pointer to opts:OptionBool:opts#Option#pretty */
5401 (nitmethod_t)VIRTUAL_opts__Option__pretty_default, /* pointer to opts:OptionBool:opts#Option#pretty_default */
5402 (nitmethod_t)VIRTUAL_opts__OptionBool__read_param, /* pointer to opts:OptionBool:opts#OptionBool#read_param */
5403 (nitmethod_t)VIRTUAL_opts__OptionBool__init, /* pointer to opts:OptionBool:opts#OptionBool#init */
5404 (nitmethod_t)VIRTUAL_opts__Option__read_param, /* pointer to opts:OptionBool:opts#Option#read_param */
5405 }
5406 };
5407 /* allocate OptionBool */
5408 val* NEW_opts__OptionBool(const struct type* type) {
5409 val* self /* : OptionBool */;
5410 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
5411 self->type = type;
5412 self->class = &class_opts__OptionBool;
5413 return self;
5414 }
5415 /* allocate OptionBool */
5416 void CHECK_NEW_opts__OptionBool(val* self) {
5417 val* var /* : Array[String] */;
5418 val* var1 /* : String */;
5419 val* var2 /* : Array[String] */;
5420 short int var3 /* : Bool */;
5421 short int var4 /* : Bool */;
5422 val* var5 /* : nullable Object */;
5423 val* var6 /* : nullable Object */;
5424 var = self->attrs[COLOR_opts__Option___names].val; /* _names on <self:OptionBool> */
5425 if (var == NULL) {
5426 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _names");
5427 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 19);
5428 exit(1);
5429 }
5430 var1 = self->attrs[COLOR_opts__Option___helptext].val; /* _helptext on <self:OptionBool> */
5431 if (var1 == NULL) {
5432 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _helptext");
5433 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 25);
5434 exit(1);
5435 }
5436 var2 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on <self:OptionBool> */
5437 if (var2 == NULL) {
5438 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _errors");
5439 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 28);
5440 exit(1);
5441 }
5442 var3 = self->attrs[COLOR_opts__Option___mandatory].s; /* _mandatory on <self:OptionBool> */
5443 var4 = self->attrs[COLOR_opts__Option___read].s; /* _read on <self:OptionBool> */
5444 var5 = self->attrs[COLOR_opts__Option___value].val; /* _value on <self:OptionBool> */
5445 var6 = self->attrs[COLOR_opts__Option___default_value].val; /* _default_value on <self:OptionBool> */
5446 }
5447 /* runtime class opts__OptionCount */
5448 const struct class class_opts__OptionCount = {
5449 0, /* box_kind */
5450 {
5451 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to opts:OptionCount:kernel#Object#object_id */
5452 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to opts:OptionCount:kernel#Object#is_same_type */
5453 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to opts:OptionCount:kernel#Object#is_same_instance */
5454 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to opts:OptionCount:kernel#Object#== */
5455 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to opts:OptionCount:kernel#Object#!= */
5456 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to opts:OptionCount:kernel#Object#output */
5457 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to opts:OptionCount:kernel#Object#output_class_name */
5458 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to opts:OptionCount:kernel#Object#exit */
5459 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to opts:OptionCount:kernel#Object#sys */
5460 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to opts:OptionCount:kernel#Object#hash */
5461 (nitmethod_t)VIRTUAL_opts__Option__to_s, /* pointer to opts:OptionCount:opts#Option#to_s */
5462 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to opts:OptionCount:string#Object#native_class_name */
5463 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to opts:OptionCount:string#Object#class_name */
5464 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to opts:OptionCount:string#Object#inspect */
5465 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to opts:OptionCount:string#Object#inspect_head */
5466 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to opts:OptionCount:string#Object#args */
5467 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to opts:OptionCount:math#Object#atan2 */
5468 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to opts:OptionCount:math#Object#pi */
5469 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to opts:OptionCount:math#Object#srand_from */
5470 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to opts:OptionCount:math#Object#srand */
5471 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to opts:OptionCount:stream#Object#poll */
5472 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to opts:OptionCount:stream#Object#intern_poll */
5473 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to opts:OptionCount:time#Object#get_time */
5474 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to opts:OptionCount:file#Object#printn */
5475 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to opts:OptionCount:file#Object#print */
5476 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to opts:OptionCount:file#Object#getc */
5477 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to opts:OptionCount:file#Object#gets */
5478 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to opts:OptionCount:file#Object#getcwd */
5479 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to opts:OptionCount:file#Object#file_getcwd */
5480 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to opts:OptionCount:file#Object#stdin */
5481 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to opts:OptionCount:file#Object#stdout */
5482 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to opts:OptionCount:file#Object#stderr */
5483 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to opts:OptionCount:model_base#Object#intrude_visibility */
5484 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to opts:OptionCount:model_base#Object#public_visibility */
5485 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to opts:OptionCount:model_base#Object#protected_visibility */
5486 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to opts:OptionCount:model_base#Object#private_visibility */
5487 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to opts:OptionCount:model_base#Object#none_visibility */
5488 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to opts:OptionCount:model#Object#abstract_kind */
5489 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to opts:OptionCount:model#Object#concrete_kind */
5490 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to opts:OptionCount:model#Object#interface_kind */
5491 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to opts:OptionCount:model#Object#enum_kind */
5492 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to opts:OptionCount:model#Object#extern_kind */
5493 (nitmethod_t)VIRTUAL_opts__Option__names, /* pointer to opts:OptionCount:opts#Option#names */
5494 (nitmethod_t)VIRTUAL_opts__Option__helptext, /* pointer to opts:OptionCount:opts#Option#helptext */
5495 (nitmethod_t)VIRTUAL_opts__Option__errors, /* pointer to opts:OptionCount:opts#Option#errors */
5496 (nitmethod_t)VIRTUAL_opts__Option__mandatory, /* pointer to opts:OptionCount:opts#Option#mandatory */
5497 (nitmethod_t)VIRTUAL_opts__Option__mandatory_61d, /* pointer to opts:OptionCount:opts#Option#mandatory= */
5498 (nitmethod_t)VIRTUAL_opts__Option__read, /* pointer to opts:OptionCount:opts#Option#read */
5499 (nitmethod_t)VIRTUAL_opts__Option__value_61d, /* pointer to opts:OptionCount:opts#Option#value= */
5500 (nitmethod_t)VIRTUAL_opts__Option__value, /* pointer to opts:OptionCount:opts#Option#value */
5501 (nitmethod_t)VIRTUAL_opts__Option__default_value, /* pointer to opts:OptionCount:opts#Option#default_value */
5502 (nitmethod_t)VIRTUAL_opts__Option__default_value_61d, /* pointer to opts:OptionCount:opts#Option#default_value= */
5503 (nitmethod_t)VIRTUAL_opts__Option__init_opt, /* pointer to opts:OptionCount:opts#Option#init_opt */
5504 (nitmethod_t)VIRTUAL_opts__Option__add_aliases, /* pointer to opts:OptionCount:opts#Option#add_aliases */
5505 (nitmethod_t)VIRTUAL_opts__Option__pretty, /* pointer to opts:OptionCount:opts#Option#pretty */
5506 (nitmethod_t)VIRTUAL_opts__Option__pretty_default, /* pointer to opts:OptionCount:opts#Option#pretty_default */
5507 (nitmethod_t)VIRTUAL_opts__OptionCount__read_param, /* pointer to opts:OptionCount:opts#OptionCount#read_param */
5508 (nitmethod_t)VIRTUAL_opts__OptionCount__init, /* pointer to opts:OptionCount:opts#OptionCount#init */
5509 (nitmethod_t)VIRTUAL_opts__Option__read_param, /* pointer to opts:OptionCount:opts#Option#read_param */
5510 }
5511 };
5512 /* allocate OptionCount */
5513 val* NEW_opts__OptionCount(const struct type* type) {
5514 val* self /* : OptionCount */;
5515 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
5516 self->type = type;
5517 self->class = &class_opts__OptionCount;
5518 return self;
5519 }
5520 /* allocate OptionCount */
5521 void CHECK_NEW_opts__OptionCount(val* self) {
5522 val* var /* : Array[String] */;
5523 val* var1 /* : String */;
5524 val* var2 /* : Array[String] */;
5525 short int var3 /* : Bool */;
5526 short int var4 /* : Bool */;
5527 val* var5 /* : nullable Object */;
5528 val* var6 /* : nullable Object */;
5529 var = self->attrs[COLOR_opts__Option___names].val; /* _names on <self:OptionCount> */
5530 if (var == NULL) {
5531 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _names");
5532 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 19);
5533 exit(1);
5534 }
5535 var1 = self->attrs[COLOR_opts__Option___helptext].val; /* _helptext on <self:OptionCount> */
5536 if (var1 == NULL) {
5537 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _helptext");
5538 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 25);
5539 exit(1);
5540 }
5541 var2 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on <self:OptionCount> */
5542 if (var2 == NULL) {
5543 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _errors");
5544 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 28);
5545 exit(1);
5546 }
5547 var3 = self->attrs[COLOR_opts__Option___mandatory].s; /* _mandatory on <self:OptionCount> */
5548 var4 = self->attrs[COLOR_opts__Option___read].s; /* _read on <self:OptionCount> */
5549 var5 = self->attrs[COLOR_opts__Option___value].val; /* _value on <self:OptionCount> */
5550 var6 = self->attrs[COLOR_opts__Option___default_value].val; /* _default_value on <self:OptionCount> */
5551 }
5552 /* runtime class opts__OptionString */
5553 const struct class class_opts__OptionString = {
5554 0, /* box_kind */
5555 {
5556 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to opts:OptionString:kernel#Object#object_id */
5557 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to opts:OptionString:kernel#Object#is_same_type */
5558 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to opts:OptionString:kernel#Object#is_same_instance */
5559 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to opts:OptionString:kernel#Object#== */
5560 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to opts:OptionString:kernel#Object#!= */
5561 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to opts:OptionString:kernel#Object#output */
5562 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to opts:OptionString:kernel#Object#output_class_name */
5563 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to opts:OptionString:kernel#Object#exit */
5564 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to opts:OptionString:kernel#Object#sys */
5565 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to opts:OptionString:kernel#Object#hash */
5566 (nitmethod_t)VIRTUAL_opts__Option__to_s, /* pointer to opts:OptionString:opts#Option#to_s */
5567 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to opts:OptionString:string#Object#native_class_name */
5568 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to opts:OptionString:string#Object#class_name */
5569 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to opts:OptionString:string#Object#inspect */
5570 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to opts:OptionString:string#Object#inspect_head */
5571 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to opts:OptionString:string#Object#args */
5572 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to opts:OptionString:math#Object#atan2 */
5573 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to opts:OptionString:math#Object#pi */
5574 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to opts:OptionString:math#Object#srand_from */
5575 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to opts:OptionString:math#Object#srand */
5576 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to opts:OptionString:stream#Object#poll */
5577 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to opts:OptionString:stream#Object#intern_poll */
5578 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to opts:OptionString:time#Object#get_time */
5579 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to opts:OptionString:file#Object#printn */
5580 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to opts:OptionString:file#Object#print */
5581 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to opts:OptionString:file#Object#getc */
5582 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to opts:OptionString:file#Object#gets */
5583 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to opts:OptionString:file#Object#getcwd */
5584 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to opts:OptionString:file#Object#file_getcwd */
5585 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to opts:OptionString:file#Object#stdin */
5586 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to opts:OptionString:file#Object#stdout */
5587 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to opts:OptionString:file#Object#stderr */
5588 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to opts:OptionString:model_base#Object#intrude_visibility */
5589 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to opts:OptionString:model_base#Object#public_visibility */
5590 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to opts:OptionString:model_base#Object#protected_visibility */
5591 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to opts:OptionString:model_base#Object#private_visibility */
5592 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to opts:OptionString:model_base#Object#none_visibility */
5593 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to opts:OptionString:model#Object#abstract_kind */
5594 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to opts:OptionString:model#Object#concrete_kind */
5595 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to opts:OptionString:model#Object#interface_kind */
5596 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to opts:OptionString:model#Object#enum_kind */
5597 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to opts:OptionString:model#Object#extern_kind */
5598 (nitmethod_t)VIRTUAL_opts__Option__names, /* pointer to opts:OptionString:opts#Option#names */
5599 (nitmethod_t)VIRTUAL_opts__Option__helptext, /* pointer to opts:OptionString:opts#Option#helptext */
5600 (nitmethod_t)VIRTUAL_opts__Option__errors, /* pointer to opts:OptionString:opts#Option#errors */
5601 (nitmethod_t)VIRTUAL_opts__Option__mandatory, /* pointer to opts:OptionString:opts#Option#mandatory */
5602 (nitmethod_t)VIRTUAL_opts__Option__mandatory_61d, /* pointer to opts:OptionString:opts#Option#mandatory= */
5603 (nitmethod_t)VIRTUAL_opts__Option__read, /* pointer to opts:OptionString:opts#Option#read */
5604 (nitmethod_t)VIRTUAL_opts__Option__value_61d, /* pointer to opts:OptionString:opts#Option#value= */
5605 (nitmethod_t)VIRTUAL_opts__Option__value, /* pointer to opts:OptionString:opts#Option#value */
5606 (nitmethod_t)VIRTUAL_opts__Option__default_value, /* pointer to opts:OptionString:opts#Option#default_value */
5607 (nitmethod_t)VIRTUAL_opts__Option__default_value_61d, /* pointer to opts:OptionString:opts#Option#default_value= */
5608 (nitmethod_t)VIRTUAL_opts__Option__init_opt, /* pointer to opts:OptionString:opts#Option#init_opt */
5609 (nitmethod_t)VIRTUAL_opts__Option__add_aliases, /* pointer to opts:OptionString:opts#Option#add_aliases */
5610 (nitmethod_t)VIRTUAL_opts__Option__pretty, /* pointer to opts:OptionString:opts#Option#pretty */
5611 (nitmethod_t)VIRTUAL_opts__Option__pretty_default, /* pointer to opts:OptionString:opts#Option#pretty_default */
5612 (nitmethod_t)VIRTUAL_opts__OptionParameter__read_param, /* pointer to opts:OptionString:opts#OptionParameter#read_param */
5613 (nitmethod_t)VIRTUAL_opts__OptionString__convert, /* pointer to opts:OptionString:opts#OptionString#convert */
5614 (nitmethod_t)VIRTUAL_opts__OptionParameter__parameter_mandatory, /* pointer to opts:OptionString:opts#OptionParameter#parameter_mandatory */
5615 (nitmethod_t)VIRTUAL_opts__OptionParameter__parameter_mandatory_61d, /* pointer to opts:OptionString:opts#OptionParameter#parameter_mandatory= */
5616 (nitmethod_t)VIRTUAL_opts__OptionParameter__init_opt, /* pointer to opts:OptionString:opts#OptionParameter#init_opt */
5617 (nitmethod_t)VIRTUAL_opts__Option__read_param, /* pointer to opts:OptionString:opts#Option#read_param */
5618 (nitmethod_t)VIRTUAL_opts__OptionString__init, /* pointer to opts:OptionString:opts#OptionString#init */
5619 }
5620 };
5621 /* allocate OptionString */
5622 val* NEW_opts__OptionString(const struct type* type) {
5623 val* self /* : OptionString */;
5624 self = nit_alloc(sizeof(struct instance) + 8*sizeof(nitattribute_t));
5625 self->type = type;
5626 self->class = &class_opts__OptionString;
5627 return self;
5628 }
5629 /* allocate OptionString */
5630 void CHECK_NEW_opts__OptionString(val* self) {
5631 val* var /* : Array[String] */;
5632 val* var1 /* : String */;
5633 val* var2 /* : Array[String] */;
5634 short int var3 /* : Bool */;
5635 short int var4 /* : Bool */;
5636 val* var5 /* : nullable Object */;
5637 val* var6 /* : nullable Object */;
5638 short int var7 /* : Bool */;
5639 var = self->attrs[COLOR_opts__Option___names].val; /* _names on <self:OptionString> */
5640 if (var == NULL) {
5641 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _names");
5642 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 19);
5643 exit(1);
5644 }
5645 var1 = self->attrs[COLOR_opts__Option___helptext].val; /* _helptext on <self:OptionString> */
5646 if (var1 == NULL) {
5647 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _helptext");
5648 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 25);
5649 exit(1);
5650 }
5651 var2 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on <self:OptionString> */
5652 if (var2 == NULL) {
5653 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _errors");
5654 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 28);
5655 exit(1);
5656 }
5657 var3 = self->attrs[COLOR_opts__Option___mandatory].s; /* _mandatory on <self:OptionString> */
5658 var4 = self->attrs[COLOR_opts__Option___read].s; /* _read on <self:OptionString> */
5659 var5 = self->attrs[COLOR_opts__Option___value].val; /* _value on <self:OptionString> */
5660 var6 = self->attrs[COLOR_opts__Option___default_value].val; /* _default_value on <self:OptionString> */
5661 var7 = self->attrs[COLOR_opts__OptionParameter___parameter_mandatory].s; /* _parameter_mandatory on <self:OptionString> */
5662 }
5663 /* runtime class opts__OptionEnum */
5664 /* allocate OptionEnum */
5665 val* NEW_opts__OptionEnum(const struct type* type) {
5666 fprintf(stderr, "Runtime error: %s", "OptionEnum is DEAD");
5667 fprintf(stderr, "\n");
5668 exit(1);
5669 }
5670 /* allocate OptionEnum */
5671 void CHECK_NEW_opts__OptionEnum(val* self) {
5672 fprintf(stderr, "Runtime error: %s", "OptionEnum is DEAD");
5673 fprintf(stderr, "\n");
5674 exit(1);
5675 }
5676 /* runtime class opts__OptionInt */
5677 /* allocate OptionInt */
5678 val* NEW_opts__OptionInt(const struct type* type) {
5679 fprintf(stderr, "Runtime error: %s", "OptionInt is DEAD");
5680 fprintf(stderr, "\n");
5681 exit(1);
5682 }
5683 /* allocate OptionInt */
5684 void CHECK_NEW_opts__OptionInt(val* self) {
5685 fprintf(stderr, "Runtime error: %s", "OptionInt is DEAD");
5686 fprintf(stderr, "\n");
5687 exit(1);
5688 }
5689 /* runtime class opts__OptionArray */
5690 const struct class class_opts__OptionArray = {
5691 0, /* box_kind */
5692 {
5693 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to opts:OptionArray:kernel#Object#object_id */
5694 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to opts:OptionArray:kernel#Object#is_same_type */
5695 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to opts:OptionArray:kernel#Object#is_same_instance */
5696 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to opts:OptionArray:kernel#Object#== */
5697 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to opts:OptionArray:kernel#Object#!= */
5698 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to opts:OptionArray:kernel#Object#output */
5699 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to opts:OptionArray:kernel#Object#output_class_name */
5700 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to opts:OptionArray:kernel#Object#exit */
5701 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to opts:OptionArray:kernel#Object#sys */
5702 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to opts:OptionArray:kernel#Object#hash */
5703 (nitmethod_t)VIRTUAL_opts__Option__to_s, /* pointer to opts:OptionArray:opts#Option#to_s */
5704 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to opts:OptionArray:string#Object#native_class_name */
5705 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to opts:OptionArray:string#Object#class_name */
5706 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to opts:OptionArray:string#Object#inspect */
5707 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to opts:OptionArray:string#Object#inspect_head */
5708 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to opts:OptionArray:string#Object#args */
5709 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to opts:OptionArray:math#Object#atan2 */
5710 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to opts:OptionArray:math#Object#pi */
5711 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to opts:OptionArray:math#Object#srand_from */
5712 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to opts:OptionArray:math#Object#srand */
5713 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to opts:OptionArray:stream#Object#poll */
5714 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to opts:OptionArray:stream#Object#intern_poll */
5715 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to opts:OptionArray:time#Object#get_time */
5716 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to opts:OptionArray:file#Object#printn */
5717 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to opts:OptionArray:file#Object#print */
5718 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to opts:OptionArray:file#Object#getc */
5719 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to opts:OptionArray:file#Object#gets */
5720 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to opts:OptionArray:file#Object#getcwd */
5721 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to opts:OptionArray:file#Object#file_getcwd */
5722 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to opts:OptionArray:file#Object#stdin */
5723 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to opts:OptionArray:file#Object#stdout */
5724 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to opts:OptionArray:file#Object#stderr */
5725 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to opts:OptionArray:model_base#Object#intrude_visibility */
5726 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to opts:OptionArray:model_base#Object#public_visibility */
5727 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to opts:OptionArray:model_base#Object#protected_visibility */
5728 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to opts:OptionArray:model_base#Object#private_visibility */
5729 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to opts:OptionArray:model_base#Object#none_visibility */
5730 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to opts:OptionArray:model#Object#abstract_kind */
5731 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to opts:OptionArray:model#Object#concrete_kind */
5732 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to opts:OptionArray:model#Object#interface_kind */
5733 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to opts:OptionArray:model#Object#enum_kind */
5734 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to opts:OptionArray:model#Object#extern_kind */
5735 (nitmethod_t)VIRTUAL_opts__Option__names, /* pointer to opts:OptionArray:opts#Option#names */
5736 (nitmethod_t)VIRTUAL_opts__Option__helptext, /* pointer to opts:OptionArray:opts#Option#helptext */
5737 (nitmethod_t)VIRTUAL_opts__Option__errors, /* pointer to opts:OptionArray:opts#Option#errors */
5738 (nitmethod_t)VIRTUAL_opts__Option__mandatory, /* pointer to opts:OptionArray:opts#Option#mandatory */
5739 (nitmethod_t)VIRTUAL_opts__Option__mandatory_61d, /* pointer to opts:OptionArray:opts#Option#mandatory= */
5740 (nitmethod_t)VIRTUAL_opts__Option__read, /* pointer to opts:OptionArray:opts#Option#read */
5741 (nitmethod_t)VIRTUAL_opts__Option__value_61d, /* pointer to opts:OptionArray:opts#Option#value= */
5742 (nitmethod_t)VIRTUAL_opts__Option__value, /* pointer to opts:OptionArray:opts#Option#value */
5743 (nitmethod_t)VIRTUAL_opts__Option__default_value, /* pointer to opts:OptionArray:opts#Option#default_value */
5744 (nitmethod_t)VIRTUAL_opts__Option__default_value_61d, /* pointer to opts:OptionArray:opts#Option#default_value= */
5745 (nitmethod_t)VIRTUAL_opts__Option__init_opt, /* pointer to opts:OptionArray:opts#Option#init_opt */
5746 (nitmethod_t)VIRTUAL_opts__Option__add_aliases, /* pointer to opts:OptionArray:opts#Option#add_aliases */
5747 (nitmethod_t)VIRTUAL_opts__Option__pretty, /* pointer to opts:OptionArray:opts#Option#pretty */
5748 (nitmethod_t)VIRTUAL_opts__Option__pretty_default, /* pointer to opts:OptionArray:opts#Option#pretty_default */
5749 (nitmethod_t)VIRTUAL_opts__OptionParameter__read_param, /* pointer to opts:OptionArray:opts#OptionParameter#read_param */
5750 (nitmethod_t)VIRTUAL_opts__OptionArray__convert, /* pointer to opts:OptionArray:opts#OptionArray#convert */
5751 (nitmethod_t)VIRTUAL_opts__OptionParameter__parameter_mandatory, /* pointer to opts:OptionArray:opts#OptionParameter#parameter_mandatory */
5752 (nitmethod_t)VIRTUAL_opts__OptionParameter__parameter_mandatory_61d, /* pointer to opts:OptionArray:opts#OptionParameter#parameter_mandatory= */
5753 (nitmethod_t)VIRTUAL_opts__OptionParameter__init_opt, /* pointer to opts:OptionArray:opts#OptionParameter#init_opt */
5754 (nitmethod_t)VIRTUAL_opts__Option__read_param, /* pointer to opts:OptionArray:opts#Option#read_param */
5755 (nitmethod_t)VIRTUAL_opts__OptionArray__init, /* pointer to opts:OptionArray:opts#OptionArray#init */
5756 }
5757 };
5758 /* allocate OptionArray */
5759 val* NEW_opts__OptionArray(const struct type* type) {
5760 val* self /* : OptionArray */;
5761 self = nit_alloc(sizeof(struct instance) + 9*sizeof(nitattribute_t));
5762 self->type = type;
5763 self->class = &class_opts__OptionArray;
5764 return self;
5765 }
5766 /* allocate OptionArray */
5767 void CHECK_NEW_opts__OptionArray(val* self) {
5768 val* var /* : Array[String] */;
5769 val* var1 /* : String */;
5770 val* var2 /* : Array[String] */;
5771 short int var3 /* : Bool */;
5772 short int var4 /* : Bool */;
5773 val* var5 /* : nullable Object */;
5774 val* var6 /* : nullable Object */;
5775 short int var7 /* : Bool */;
5776 val* var8 /* : Array[String] */;
5777 var = self->attrs[COLOR_opts__Option___names].val; /* _names on <self:OptionArray> */
5778 if (var == NULL) {
5779 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _names");
5780 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 19);
5781 exit(1);
5782 }
5783 var1 = self->attrs[COLOR_opts__Option___helptext].val; /* _helptext on <self:OptionArray> */
5784 if (var1 == NULL) {
5785 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _helptext");
5786 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 25);
5787 exit(1);
5788 }
5789 var2 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on <self:OptionArray> */
5790 if (var2 == NULL) {
5791 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _errors");
5792 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 28);
5793 exit(1);
5794 }
5795 var3 = self->attrs[COLOR_opts__Option___mandatory].s; /* _mandatory on <self:OptionArray> */
5796 var4 = self->attrs[COLOR_opts__Option___read].s; /* _read on <self:OptionArray> */
5797 var5 = self->attrs[COLOR_opts__Option___value].val; /* _value on <self:OptionArray> */
5798 var6 = self->attrs[COLOR_opts__Option___default_value].val; /* _default_value on <self:OptionArray> */
5799 var7 = self->attrs[COLOR_opts__OptionParameter___parameter_mandatory].s; /* _parameter_mandatory on <self:OptionArray> */
5800 var8 = self->attrs[COLOR_opts__OptionArray___values].val; /* _values on <self:OptionArray> */
5801 if (var8 == NULL) {
5802 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _values");
5803 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 221);
5804 exit(1);
5805 }
5806 }
5807 /* runtime class opts__OptionContext */
5808 const struct class class_opts__OptionContext = {
5809 0, /* box_kind */
5810 {
5811 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to opts:OptionContext:kernel#Object#object_id */
5812 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to opts:OptionContext:kernel#Object#is_same_type */
5813 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to opts:OptionContext:kernel#Object#is_same_instance */
5814 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to opts:OptionContext:kernel#Object#== */
5815 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to opts:OptionContext:kernel#Object#!= */
5816 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to opts:OptionContext:kernel#Object#output */
5817 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to opts:OptionContext:kernel#Object#output_class_name */
5818 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to opts:OptionContext:kernel#Object#exit */
5819 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to opts:OptionContext:kernel#Object#sys */
5820 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to opts:OptionContext:kernel#Object#hash */
5821 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to opts:OptionContext:string#Object#to_s */
5822 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to opts:OptionContext:string#Object#native_class_name */
5823 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to opts:OptionContext:string#Object#class_name */
5824 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to opts:OptionContext:string#Object#inspect */
5825 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to opts:OptionContext:string#Object#inspect_head */
5826 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to opts:OptionContext:string#Object#args */
5827 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to opts:OptionContext:math#Object#atan2 */
5828 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to opts:OptionContext:math#Object#pi */
5829 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to opts:OptionContext:math#Object#srand_from */
5830 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to opts:OptionContext:math#Object#srand */
5831 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to opts:OptionContext:stream#Object#poll */
5832 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to opts:OptionContext:stream#Object#intern_poll */
5833 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to opts:OptionContext:time#Object#get_time */
5834 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to opts:OptionContext:file#Object#printn */
5835 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to opts:OptionContext:file#Object#print */
5836 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to opts:OptionContext:file#Object#getc */
5837 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to opts:OptionContext:file#Object#gets */
5838 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to opts:OptionContext:file#Object#getcwd */
5839 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to opts:OptionContext:file#Object#file_getcwd */
5840 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to opts:OptionContext:file#Object#stdin */
5841 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to opts:OptionContext:file#Object#stdout */
5842 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to opts:OptionContext:file#Object#stderr */
5843 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to opts:OptionContext:model_base#Object#intrude_visibility */
5844 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to opts:OptionContext:model_base#Object#public_visibility */
5845 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to opts:OptionContext:model_base#Object#protected_visibility */
5846 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to opts:OptionContext:model_base#Object#private_visibility */
5847 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to opts:OptionContext:model_base#Object#none_visibility */
5848 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to opts:OptionContext:model#Object#abstract_kind */
5849 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to opts:OptionContext:model#Object#concrete_kind */
5850 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to opts:OptionContext:model#Object#interface_kind */
5851 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to opts:OptionContext:model#Object#enum_kind */
5852 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to opts:OptionContext:model#Object#extern_kind */
5853 (nitmethod_t)VIRTUAL_opts__OptionContext__options, /* pointer to opts:OptionContext:opts#OptionContext#options */
5854 (nitmethod_t)VIRTUAL_opts__OptionContext__rest, /* pointer to opts:OptionContext:opts#OptionContext#rest */
5855 (nitmethod_t)VIRTUAL_opts__OptionContext__errors, /* pointer to opts:OptionContext:opts#OptionContext#errors */
5856 (nitmethod_t)VIRTUAL_opts__OptionContext__usage, /* pointer to opts:OptionContext:opts#OptionContext#usage */
5857 (nitmethod_t)VIRTUAL_opts__OptionContext__parse, /* pointer to opts:OptionContext:opts#OptionContext#parse */
5858 (nitmethod_t)VIRTUAL_opts__OptionContext__parse_intern, /* pointer to opts:OptionContext:opts#OptionContext#parse_intern */
5859 (nitmethod_t)VIRTUAL_opts__OptionContext__add_option, /* pointer to opts:OptionContext:opts#OptionContext#add_option */
5860 (nitmethod_t)VIRTUAL_opts__OptionContext__init, /* pointer to opts:OptionContext:opts#OptionContext#init */
5861 (nitmethod_t)VIRTUAL_opts__OptionContext__build, /* pointer to opts:OptionContext:opts#OptionContext#build */
5862 (nitmethod_t)VIRTUAL_opts__OptionContext__get_errors, /* pointer to opts:OptionContext:opts#OptionContext#get_errors */
5863 }
5864 };
5865 /* allocate OptionContext */
5866 val* NEW_opts__OptionContext(const struct type* type) {
5867 val* self /* : OptionContext */;
5868 self = nit_alloc(sizeof(struct instance) + 4*sizeof(nitattribute_t));
5869 self->type = type;
5870 self->class = &class_opts__OptionContext;
5871 return self;
5872 }
5873 /* allocate OptionContext */
5874 void CHECK_NEW_opts__OptionContext(val* self) {
5875 val* var /* : Array[Option] */;
5876 val* var1 /* : Array[String] */;
5877 val* var2 /* : Array[String] */;
5878 val* var3 /* : Map[String, Option] */;
5879 var = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on <self:OptionContext> */
5880 if (var == NULL) {
5881 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _options");
5882 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 230);
5883 exit(1);
5884 }
5885 var1 = self->attrs[COLOR_opts__OptionContext___rest].val; /* _rest on <self:OptionContext> */
5886 if (var1 == NULL) {
5887 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _rest");
5888 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 231);
5889 exit(1);
5890 }
5891 var2 = self->attrs[COLOR_opts__OptionContext___errors].val; /* _errors on <self:OptionContext> */
5892 if (var2 == NULL) {
5893 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _errors");
5894 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 232);
5895 exit(1);
5896 }
5897 var3 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on <self:OptionContext> */
5898 if (var3 == NULL) {
5899 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _optmap");
5900 fprintf(stderr, " (%s:%d)\n", "lib/opts.nit", 234);
5901 exit(1);
5902 }
5903 }
5904 /* runtime class toolcontext__Message */
5905 const struct class class_toolcontext__Message = {
5906 0, /* box_kind */
5907 {
5908 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to toolcontext:Message:kernel#Object#object_id */
5909 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to toolcontext:Message:kernel#Object#is_same_type */
5910 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to toolcontext:Message:kernel#Object#is_same_instance */
5911 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to toolcontext:Message:kernel#Object#== */
5912 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to toolcontext:Message:kernel#Object#!= */
5913 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to toolcontext:Message:kernel#Object#output */
5914 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to toolcontext:Message:kernel#Object#output_class_name */
5915 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to toolcontext:Message:kernel#Object#exit */
5916 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to toolcontext:Message:kernel#Object#sys */
5917 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to toolcontext:Message:kernel#Object#hash */
5918 (nitmethod_t)VIRTUAL_toolcontext__Message__to_s, /* pointer to toolcontext:Message:toolcontext#Message#to_s */
5919 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to toolcontext:Message:string#Object#native_class_name */
5920 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to toolcontext:Message:string#Object#class_name */
5921 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to toolcontext:Message:string#Object#inspect */
5922 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to toolcontext:Message:string#Object#inspect_head */
5923 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to toolcontext:Message:string#Object#args */
5924 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to toolcontext:Message:math#Object#atan2 */
5925 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to toolcontext:Message:math#Object#pi */
5926 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to toolcontext:Message:math#Object#srand_from */
5927 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to toolcontext:Message:math#Object#srand */
5928 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to toolcontext:Message:stream#Object#poll */
5929 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to toolcontext:Message:stream#Object#intern_poll */
5930 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to toolcontext:Message:time#Object#get_time */
5931 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to toolcontext:Message:file#Object#printn */
5932 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to toolcontext:Message:file#Object#print */
5933 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to toolcontext:Message:file#Object#getc */
5934 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to toolcontext:Message:file#Object#gets */
5935 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to toolcontext:Message:file#Object#getcwd */
5936 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to toolcontext:Message:file#Object#file_getcwd */
5937 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to toolcontext:Message:file#Object#stdin */
5938 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to toolcontext:Message:file#Object#stdout */
5939 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to toolcontext:Message:file#Object#stderr */
5940 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to toolcontext:Message:model_base#Object#intrude_visibility */
5941 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to toolcontext:Message:model_base#Object#public_visibility */
5942 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to toolcontext:Message:model_base#Object#protected_visibility */
5943 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to toolcontext:Message:model_base#Object#private_visibility */
5944 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to toolcontext:Message:model_base#Object#none_visibility */
5945 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to toolcontext:Message:model#Object#abstract_kind */
5946 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to toolcontext:Message:model#Object#concrete_kind */
5947 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to toolcontext:Message:model#Object#interface_kind */
5948 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to toolcontext:Message:model#Object#enum_kind */
5949 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to toolcontext:Message:model#Object#extern_kind */
5950 (nitmethod_t)VIRTUAL_toolcontext__Message___60d, /* pointer to toolcontext:Message:toolcontext#Message#< */
5951 (nitmethod_t)VIRTUAL_kernel__Comparable___60d_61d, /* pointer to toolcontext:Message:kernel#Comparable#<= */
5952 (nitmethod_t)VIRTUAL_kernel__Comparable___62d_61d, /* pointer to toolcontext:Message:kernel#Comparable#>= */
5953 (nitmethod_t)VIRTUAL_kernel__Comparable___62d, /* pointer to toolcontext:Message:kernel#Comparable#> */
5954 (nitmethod_t)VIRTUAL_kernel__Comparable___60d_61d_62d, /* pointer to toolcontext:Message:kernel#Comparable#<=> */
5955 (nitmethod_t)VIRTUAL_kernel__Comparable__is_between, /* pointer to toolcontext:Message:kernel#Comparable#is_between */
5956 (nitmethod_t)VIRTUAL_kernel__Comparable__max, /* pointer to toolcontext:Message:kernel#Comparable#max */
5957 (nitmethod_t)VIRTUAL_kernel__Comparable__min, /* pointer to toolcontext:Message:kernel#Comparable#min */
5958 (nitmethod_t)VIRTUAL_toolcontext__Message__location, /* pointer to toolcontext:Message:toolcontext#Message#location */
5959 (nitmethod_t)VIRTUAL_toolcontext__Message__location_61d, /* pointer to toolcontext:Message:toolcontext#Message#location= */
5960 (nitmethod_t)VIRTUAL_toolcontext__Message__text, /* pointer to toolcontext:Message:toolcontext#Message#text */
5961 (nitmethod_t)VIRTUAL_toolcontext__Message__text_61d, /* pointer to toolcontext:Message:toolcontext#Message#text= */
5962 (nitmethod_t)VIRTUAL_toolcontext__Message__to_color_string, /* pointer to toolcontext:Message:toolcontext#Message#to_color_string */
5963 (nitmethod_t)VIRTUAL_toolcontext__Message__init, /* pointer to toolcontext:Message:toolcontext#Message#init */
5964 }
5965 };
5966 /* allocate Message */
5967 val* NEW_toolcontext__Message(const struct type* type) {
5968 val* self /* : Message */;
5969 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
5970 self->type = type;
5971 self->class = &class_toolcontext__Message;
5972 return self;
5973 }
5974 /* allocate Message */
5975 void CHECK_NEW_toolcontext__Message(val* self) {
5976 val* var /* : nullable Location */;
5977 val* var1 /* : String */;
5978 var = self->attrs[COLOR_toolcontext__Message___64dlocation].val; /* @location on <self:Message> */
5979 var1 = self->attrs[COLOR_toolcontext__Message___64dtext].val; /* @text on <self:Message> */
5980 if (var1 == NULL) {
5981 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @text");
5982 fprintf(stderr, " (%s:%d)\n", "src/toolcontext.nit", 30);
5983 exit(1);
5984 }
5985 }
5986 /* runtime class toolcontext__ToolContext */
5987 const struct class class_toolcontext__ToolContext = {
5988 0, /* box_kind */
5989 {
5990 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to toolcontext:ToolContext:kernel#Object#object_id */
5991 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to toolcontext:ToolContext:kernel#Object#is_same_type */
5992 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to toolcontext:ToolContext:kernel#Object#is_same_instance */
5993 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to toolcontext:ToolContext:kernel#Object#== */
5994 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to toolcontext:ToolContext:kernel#Object#!= */
5995 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to toolcontext:ToolContext:kernel#Object#output */
5996 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to toolcontext:ToolContext:kernel#Object#output_class_name */
5997 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to toolcontext:ToolContext:kernel#Object#exit */
5998 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to toolcontext:ToolContext:kernel#Object#sys */
5999 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to toolcontext:ToolContext:kernel#Object#hash */
6000 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to toolcontext:ToolContext:string#Object#to_s */
6001 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to toolcontext:ToolContext:string#Object#native_class_name */
6002 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to toolcontext:ToolContext:string#Object#class_name */
6003 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to toolcontext:ToolContext:string#Object#inspect */
6004 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to toolcontext:ToolContext:string#Object#inspect_head */
6005 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to toolcontext:ToolContext:string#Object#args */
6006 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to toolcontext:ToolContext:math#Object#atan2 */
6007 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to toolcontext:ToolContext:math#Object#pi */
6008 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to toolcontext:ToolContext:math#Object#srand_from */
6009 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to toolcontext:ToolContext:math#Object#srand */
6010 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to toolcontext:ToolContext:stream#Object#poll */
6011 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to toolcontext:ToolContext:stream#Object#intern_poll */
6012 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to toolcontext:ToolContext:time#Object#get_time */
6013 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to toolcontext:ToolContext:file#Object#printn */
6014 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to toolcontext:ToolContext:file#Object#print */
6015 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to toolcontext:ToolContext:file#Object#getc */
6016 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to toolcontext:ToolContext:file#Object#gets */
6017 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to toolcontext:ToolContext:file#Object#getcwd */
6018 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to toolcontext:ToolContext:file#Object#file_getcwd */
6019 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to toolcontext:ToolContext:file#Object#stdin */
6020 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to toolcontext:ToolContext:file#Object#stdout */
6021 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to toolcontext:ToolContext:file#Object#stderr */
6022 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to toolcontext:ToolContext:model_base#Object#intrude_visibility */
6023 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to toolcontext:ToolContext:model_base#Object#public_visibility */
6024 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to toolcontext:ToolContext:model_base#Object#protected_visibility */
6025 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to toolcontext:ToolContext:model_base#Object#private_visibility */
6026 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to toolcontext:ToolContext:model_base#Object#none_visibility */
6027 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to toolcontext:ToolContext:model#Object#abstract_kind */
6028 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to toolcontext:ToolContext:model#Object#concrete_kind */
6029 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to toolcontext:ToolContext:model#Object#interface_kind */
6030 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to toolcontext:ToolContext:model#Object#enum_kind */
6031 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to toolcontext:ToolContext:model#Object#extern_kind */
6032 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__error_count, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#error_count */
6033 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__error_count_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#error_count= */
6034 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__warning_count, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#warning_count */
6035 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__warning_count_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#warning_count= */
6036 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__log_directory, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#log_directory */
6037 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__log_directory_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#log_directory= */
6038 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__messages, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#messages */
6039 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__messages_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#messages= */
6040 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__message_sorter, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#message_sorter */
6041 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__message_sorter_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#message_sorter= */
6042 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__check_errors, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#check_errors */
6043 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__error, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#error */
6044 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__fatal_error, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#fatal_error */
6045 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__warning, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#warning */
6046 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__info, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#info */
6047 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__option_context, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#option_context */
6048 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__option_context_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#option_context= */
6049 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_warn, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_warn */
6050 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_warn_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_warn= */
6051 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_quiet, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_quiet */
6052 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_quiet_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_quiet= */
6053 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_log, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_log */
6054 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_log_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_log= */
6055 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_log_dir, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_log_dir */
6056 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_log_dir_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_log_dir= */
6057 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_help, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_help */
6058 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_help_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_help= */
6059 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_version, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_version */
6060 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_version_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_version= */
6061 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_verbose, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_verbose */
6062 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_verbose_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_verbose= */
6063 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_stop_on_first_error, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_stop_on_first_error */
6064 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_stop_on_first_error_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_stop_on_first_error= */
6065 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_no_color, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_no_color */
6066 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__opt_no_color_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#opt_no_color= */
6067 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__verbose_level, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#verbose_level */
6068 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__verbose_level_61d, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#verbose_level= */
6069 (nitmethod_t)VIRTUAL_separate_erasure_compiler__ToolContext__init, /* pointer to toolcontext:ToolContext:separate_erasure_compiler#ToolContext#init */
6070 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__process_options, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#process_options */
6071 (nitmethod_t)VIRTUAL_parser_util__ToolContext__parse_module, /* pointer to toolcontext:ToolContext:parser_util#ToolContext#parse_module */
6072 (nitmethod_t)VIRTUAL_parser_util__ToolContext__parse_classdef, /* pointer to toolcontext:ToolContext:parser_util#ToolContext#parse_classdef */
6073 (nitmethod_t)VIRTUAL_parser_util__ToolContext__parse_propdef, /* pointer to toolcontext:ToolContext:parser_util#ToolContext#parse_propdef */
6074 (nitmethod_t)VIRTUAL_parser_util__ToolContext__parse_stmts, /* pointer to toolcontext:ToolContext:parser_util#ToolContext#parse_stmts */
6075 (nitmethod_t)VIRTUAL_parser_util__ToolContext__parse_expr, /* pointer to toolcontext:ToolContext:parser_util#ToolContext#parse_expr */
6076 (nitmethod_t)VIRTUAL_parser_util__ToolContext__parse_something, /* pointer to toolcontext:ToolContext:parser_util#ToolContext#parse_something */
6077 (nitmethod_t)VIRTUAL_phase__ToolContext__phases, /* pointer to toolcontext:ToolContext:phase#ToolContext#phases */
6078 (nitmethod_t)VIRTUAL_phase__ToolContext__phases_61d, /* pointer to toolcontext:ToolContext:phase#ToolContext#phases= */
6079 (nitmethod_t)VIRTUAL_phase__ToolContext__phases_list, /* pointer to toolcontext:ToolContext:phase#ToolContext#phases_list */
6080 (nitmethod_t)VIRTUAL_phase__ToolContext__run_phases, /* pointer to toolcontext:ToolContext:phase#ToolContext#run_phases */
6081 (nitmethod_t)VIRTUAL_simple_misc_analysis__ToolContext__simple_misc_analysis_phase, /* pointer to toolcontext:ToolContext:simple_misc_analysis#ToolContext#simple_misc_analysis_phase */
6082 (nitmethod_t)VIRTUAL_simple_misc_analysis__ToolContext__simple_misc_analysis_phase_61d, /* pointer to toolcontext:ToolContext:simple_misc_analysis#ToolContext#simple_misc_analysis_phase= */
6083 (nitmethod_t)VIRTUAL_literal__ToolContext__literal_phase, /* pointer to toolcontext:ToolContext:literal#ToolContext#literal_phase */
6084 (nitmethod_t)VIRTUAL_literal__ToolContext__literal_phase_61d, /* pointer to toolcontext:ToolContext:literal#ToolContext#literal_phase= */
6085 (nitmethod_t)VIRTUAL_scope__ToolContext__scope_phase, /* pointer to toolcontext:ToolContext:scope#ToolContext#scope_phase */
6086 (nitmethod_t)VIRTUAL_scope__ToolContext__scope_phase_61d, /* pointer to toolcontext:ToolContext:scope#ToolContext#scope_phase= */
6087 (nitmethod_t)VIRTUAL_flow__ToolContext__flow_phase, /* pointer to toolcontext:ToolContext:flow#ToolContext#flow_phase */
6088 (nitmethod_t)VIRTUAL_flow__ToolContext__flow_phase_61d, /* pointer to toolcontext:ToolContext:flow#ToolContext#flow_phase= */
6089 (nitmethod_t)VIRTUAL_local_var_init__ToolContext__local_var_init_phase, /* pointer to toolcontext:ToolContext:local_var_init#ToolContext#local_var_init_phase */
6090 (nitmethod_t)VIRTUAL_local_var_init__ToolContext__local_var_init_phase_61d, /* pointer to toolcontext:ToolContext:local_var_init#ToolContext#local_var_init_phase= */
6091 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__opt_path, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#opt_path */
6092 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__opt_path_61d, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#opt_path= */
6093 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__opt_only_metamodel, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#opt_only_metamodel */
6094 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__opt_only_metamodel_61d, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#opt_only_metamodel= */
6095 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__opt_only_parse, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#opt_only_parse */
6096 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__opt_only_parse_61d, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#opt_only_parse= */
6097 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__modelbuilder, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#modelbuilder */
6098 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__modelbuilder_real, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#modelbuilder_real */
6099 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__modelbuilder_real_61d, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#modelbuilder_real= */
6100 (nitmethod_t)VIRTUAL_modelize_class__ToolContext__modelize_class_phase, /* pointer to toolcontext:ToolContext:modelize_class#ToolContext#modelize_class_phase */
6101 (nitmethod_t)VIRTUAL_modelize_class__ToolContext__modelize_class_phase_61d, /* pointer to toolcontext:ToolContext:modelize_class#ToolContext#modelize_class_phase= */
6102 (nitmethod_t)VIRTUAL_modelize_property__ToolContext__modelize_property_phase, /* pointer to toolcontext:ToolContext:modelize_property#ToolContext#modelize_property_phase */
6103 (nitmethod_t)VIRTUAL_modelize_property__ToolContext__modelize_property_phase_61d, /* pointer to toolcontext:ToolContext:modelize_property#ToolContext#modelize_property_phase= */
6104 (nitmethod_t)VIRTUAL_cached__ToolContext__cached_phase, /* pointer to toolcontext:ToolContext:cached#ToolContext#cached_phase */
6105 (nitmethod_t)VIRTUAL_cached__ToolContext__cached_phase_61d, /* pointer to toolcontext:ToolContext:cached#ToolContext#cached_phase= */
6106 (nitmethod_t)VIRTUAL_typing__ToolContext__typing_phase, /* pointer to toolcontext:ToolContext:typing#ToolContext#typing_phase */
6107 (nitmethod_t)VIRTUAL_typing__ToolContext__typing_phase_61d, /* pointer to toolcontext:ToolContext:typing#ToolContext#typing_phase= */
6108 (nitmethod_t)VIRTUAL_auto_super_init__ToolContext__auto_super_init_phase, /* pointer to toolcontext:ToolContext:auto_super_init#ToolContext#auto_super_init_phase */
6109 (nitmethod_t)VIRTUAL_auto_super_init__ToolContext__auto_super_init_phase_61d, /* pointer to toolcontext:ToolContext:auto_super_init#ToolContext#auto_super_init_phase= */
6110 (nitmethod_t)VIRTUAL_div_by_zero__ToolContext__div_by_zero_phase, /* pointer to toolcontext:ToolContext:div_by_zero#ToolContext#div_by_zero_phase */
6111 (nitmethod_t)VIRTUAL_div_by_zero__ToolContext__div_by_zero_phase_61d, /* pointer to toolcontext:ToolContext:div_by_zero#ToolContext#div_by_zero_phase= */
6112 (nitmethod_t)VIRTUAL_transform__ToolContext__transform_phase, /* pointer to toolcontext:ToolContext:transform#ToolContext#transform_phase */
6113 (nitmethod_t)VIRTUAL_transform__ToolContext__transform_phase_61d, /* pointer to toolcontext:ToolContext:transform#ToolContext#transform_phase= */
6114 (nitmethod_t)VIRTUAL_frontend__ToolContext__dummy, /* pointer to toolcontext:ToolContext:frontend#ToolContext#dummy */
6115 (nitmethod_t)VIRTUAL_frontend__ToolContext__dummy_61d, /* pointer to toolcontext:ToolContext:frontend#ToolContext#dummy= */
6116 (nitmethod_t)VIRTUAL_frontend__ToolContext__do_dummy, /* pointer to toolcontext:ToolContext:frontend#ToolContext#do_dummy */
6117 (nitmethod_t)VIRTUAL_frontend__ToolContext__run_global_phases, /* pointer to toolcontext:ToolContext:frontend#ToolContext#run_global_phases */
6118 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_output, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_output */
6119 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_output_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_output= */
6120 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_cc, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_cc */
6121 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_cc_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_cc= */
6122 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_cc_path, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_cc_path */
6123 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_cc_path_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_cc_path= */
6124 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_make_flags, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_make_flags */
6125 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_make_flags_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_make_flags= */
6126 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_compile_dir, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_compile_dir */
6127 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_compile_dir_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_compile_dir= */
6128 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_hardening, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_hardening */
6129 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_hardening_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_hardening= */
6130 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_shortcut_range, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_shortcut_range */
6131 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_shortcut_range_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_shortcut_range= */
6132 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_covariance, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_covariance */
6133 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_covariance_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_covariance= */
6134 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_initialization, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_initialization */
6135 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_initialization_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_initialization= */
6136 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_assert, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_assert */
6137 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_assert_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_assert= */
6138 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_autocast, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_autocast */
6139 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_autocast_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_autocast= */
6140 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_other, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_other */
6141 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_no_check_other_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_no_check_other= */
6142 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_typing_test_metrics, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_typing_test_metrics */
6143 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__opt_typing_test_metrics_61d, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#opt_typing_test_metrics= */
6144 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_separate, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_separate */
6145 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_separate_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_separate= */
6146 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_no_inline_intern, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_no_inline_intern */
6147 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_no_inline_intern_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_no_inline_intern= */
6148 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_no_union_attribute, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_no_union_attribute */
6149 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_no_union_attribute_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_no_union_attribute= */
6150 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_no_shortcut_equate, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_no_shortcut_equate */
6151 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_no_shortcut_equate_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_no_shortcut_equate= */
6152 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_inline_coloring_numbers, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_inline_coloring_numbers */
6153 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_inline_coloring_numbers_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_inline_coloring_numbers= */
6154 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_bm_typing, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_bm_typing */
6155 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_bm_typing_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_bm_typing= */
6156 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_phmod_typing, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_phmod_typing */
6157 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_phmod_typing_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_phmod_typing= */
6158 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_phand_typing, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_phand_typing */
6159 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_phand_typing_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_phand_typing= */
6160 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_tables_metrics, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_tables_metrics */
6161 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__opt_tables_metrics_61d, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#opt_tables_metrics= */
6162 (nitmethod_t)VIRTUAL_separate_erasure_compiler__ToolContext__opt_erasure, /* pointer to toolcontext:ToolContext:separate_erasure_compiler#ToolContext#opt_erasure */
6163 (nitmethod_t)VIRTUAL_separate_erasure_compiler__ToolContext__opt_erasure_61d, /* pointer to toolcontext:ToolContext:separate_erasure_compiler#ToolContext#opt_erasure= */
6164 (nitmethod_t)VIRTUAL_separate_erasure_compiler__ToolContext__opt_no_check_erasure_cast, /* pointer to toolcontext:ToolContext:separate_erasure_compiler#ToolContext#opt_no_check_erasure_cast */
6165 (nitmethod_t)VIRTUAL_separate_erasure_compiler__ToolContext__opt_no_check_erasure_cast_61d, /* pointer to toolcontext:ToolContext:separate_erasure_compiler#ToolContext#opt_no_check_erasure_cast= */
6166 (nitmethod_t)VIRTUAL_separate_compiler__ToolContext__init, /* pointer to toolcontext:ToolContext:separate_compiler#ToolContext#init */
6167 (nitmethod_t)VIRTUAL_abstract_compiler__ToolContext__init, /* pointer to toolcontext:ToolContext:abstract_compiler#ToolContext#init */
6168 (nitmethod_t)VIRTUAL_modelbuilder__ToolContext__init, /* pointer to toolcontext:ToolContext:modelbuilder#ToolContext#init */
6169 (nitmethod_t)VIRTUAL_toolcontext__ToolContext__init, /* pointer to toolcontext:ToolContext:toolcontext#ToolContext#init */
6170 }
6171 };
6172 /* allocate ToolContext */
6173 val* NEW_toolcontext__ToolContext(const struct type* type) {
6174 val* self /* : ToolContext */;
6175 long var /* : Int */;
6176 long var1 /* : Int */;
6177 static val* varonce;
6178 val* var2 /* : String */;
6179 char* var3 /* : NativeString */;
6180 long var4 /* : Int */;
6181 val* var5 /* : String */;
6182 val* var6 /* : Array[Message] */;
6183 val* var7 /* : ComparableSorter[Message] */;
6184 val* var8 /* : OptionContext */;
6185 val* var9 /* : OptionCount */;
6186 static val* varonce10;
6187 val* var11 /* : String */;
6188 char* var12 /* : NativeString */;
6189 long var13 /* : Int */;
6190 val* var14 /* : String */;
6191 static val* varonce15;
6192 val* var16 /* : String */;
6193 char* var17 /* : NativeString */;
6194 long var18 /* : Int */;
6195 val* var19 /* : String */;
6196 static val* varonce20;
6197 val* var21 /* : String */;
6198 char* var22 /* : NativeString */;
6199 long var23 /* : Int */;
6200 val* var24 /* : String */;
6201 val* var25 /* : Array[String] */;
6202 long var26 /* : Int */;
6203 val* var27 /* : NativeArray[String] */;
6204 val* var28 /* : OptionBool */;
6205 static val* varonce29;
6206 val* var30 /* : String */;
6207 char* var31 /* : NativeString */;
6208 long var32 /* : Int */;
6209 val* var33 /* : String */;
6210 static val* varonce34;
6211 val* var35 /* : String */;
6212 char* var36 /* : NativeString */;
6213 long var37 /* : Int */;
6214 val* var38 /* : String */;
6215 static val* varonce39;
6216 val* var40 /* : String */;
6217 char* var41 /* : NativeString */;
6218 long var42 /* : Int */;
6219 val* var43 /* : String */;
6220 val* var44 /* : Array[String] */;
6221 long var45 /* : Int */;
6222 val* var46 /* : NativeArray[String] */;
6223 val* var47 /* : OptionBool */;
6224 static val* varonce48;
6225 val* var49 /* : String */;
6226 char* var50 /* : NativeString */;
6227 long var51 /* : Int */;
6228 val* var52 /* : String */;
6229 static val* varonce53;
6230 val* var54 /* : String */;
6231 char* var55 /* : NativeString */;
6232 long var56 /* : Int */;
6233 val* var57 /* : String */;
6234 val* var58 /* : Array[String] */;
6235 long var59 /* : Int */;
6236 val* var60 /* : NativeArray[String] */;
6237 val* var61 /* : OptionString */;
6238 static val* varonce62;
6239 val* var63 /* : String */;
6240 char* var64 /* : NativeString */;
6241 long var65 /* : Int */;
6242 val* var66 /* : String */;
6243 static val* varonce67;
6244 val* var68 /* : String */;
6245 char* var69 /* : NativeString */;
6246 long var70 /* : Int */;
6247 val* var71 /* : String */;
6248 val* var72 /* : Array[String] */;
6249 long var73 /* : Int */;
6250 val* var74 /* : NativeArray[String] */;
6251 val* var75 /* : OptionBool */;
6252 static val* varonce76;
6253 val* var77 /* : String */;
6254 char* var78 /* : NativeString */;
6255 long var79 /* : Int */;
6256 val* var80 /* : String */;
6257 static val* varonce81;
6258 val* var82 /* : String */;
6259 char* var83 /* : NativeString */;
6260 long var84 /* : Int */;
6261 val* var85 /* : String */;
6262 static val* varonce86;
6263 val* var87 /* : String */;
6264 char* var88 /* : NativeString */;
6265 long var89 /* : Int */;
6266 val* var90 /* : String */;
6267 static val* varonce91;
6268 val* var92 /* : String */;
6269 char* var93 /* : NativeString */;
6270 long var94 /* : Int */;
6271 val* var95 /* : String */;
6272 val* var96 /* : Array[String] */;
6273 long var97 /* : Int */;
6274 val* var98 /* : NativeArray[String] */;
6275 val* var99 /* : OptionBool */;
6276 static val* varonce100;
6277 val* var101 /* : String */;
6278 char* var102 /* : NativeString */;
6279 long var103 /* : Int */;
6280 val* var104 /* : String */;
6281 static val* varonce105;
6282 val* var106 /* : String */;
6283 char* var107 /* : NativeString */;
6284 long var108 /* : Int */;
6285 val* var109 /* : String */;
6286 val* var110 /* : Array[String] */;
6287 long var111 /* : Int */;
6288 val* var112 /* : NativeArray[String] */;
6289 val* var113 /* : OptionCount */;
6290 static val* varonce114;
6291 val* var115 /* : String */;
6292 char* var116 /* : NativeString */;
6293 long var117 /* : Int */;
6294 val* var118 /* : String */;
6295 static val* varonce119;
6296 val* var120 /* : String */;
6297 char* var121 /* : NativeString */;
6298 long var122 /* : Int */;
6299 val* var123 /* : String */;
6300 static val* varonce124;
6301 val* var125 /* : String */;
6302 char* var126 /* : NativeString */;
6303 long var127 /* : Int */;
6304 val* var128 /* : String */;
6305 val* var129 /* : Array[String] */;
6306 long var130 /* : Int */;
6307 val* var131 /* : NativeArray[String] */;
6308 val* var132 /* : OptionBool */;
6309 static val* varonce133;
6310 val* var134 /* : String */;
6311 char* var135 /* : NativeString */;
6312 long var136 /* : Int */;
6313 val* var137 /* : String */;
6314 static val* varonce138;
6315 val* var139 /* : String */;
6316 char* var140 /* : NativeString */;
6317 long var141 /* : Int */;
6318 val* var142 /* : String */;
6319 val* var143 /* : Array[String] */;
6320 long var144 /* : Int */;
6321 val* var145 /* : NativeArray[String] */;
6322 val* var146 /* : OptionBool */;
6323 static val* varonce147;
6324 val* var148 /* : String */;
6325 char* var149 /* : NativeString */;
6326 long var150 /* : Int */;
6327 val* var151 /* : String */;
6328 static val* varonce152;
6329 val* var153 /* : String */;
6330 char* var154 /* : NativeString */;
6331 long var155 /* : Int */;
6332 val* var156 /* : String */;
6333 val* var157 /* : Array[String] */;
6334 long var158 /* : Int */;
6335 val* var159 /* : NativeArray[String] */;
6336 long var160 /* : Int */;
6337 val* var161 /* : POSet[Phase] */;
6338 val* var162 /* : SimpleMiscAnalysisPhase */;
6339 val* var163 /* : null */;
6340 val* var164 /* : LiteralPhase */;
6341 val* var165 /* : null */;
6342 val* var166 /* : ScopePhase */;
6343 val* var167 /* : null */;
6344 val* var168 /* : FlowPhase */;
6345 val* var169 /* : Array[Phase] */;
6346 long var170 /* : Int */;
6347 val* var_ /* var : Array[Phase] */;
6348 val* var171 /* : Phase */;
6349 val* var172 /* : LocalVarInitPhase */;
6350 val* var173 /* : Array[Phase] */;
6351 long var174 /* : Int */;
6352 val* var_175 /* var : Array[Phase] */;
6353 val* var176 /* : Phase */;
6354 val* var177 /* : OptionArray */;
6355 static val* varonce178;
6356 val* var179 /* : String */;
6357 char* var180 /* : NativeString */;
6358 long var181 /* : Int */;
6359 val* var182 /* : String */;
6360 static val* varonce183;
6361 val* var184 /* : String */;
6362 char* var185 /* : NativeString */;
6363 long var186 /* : Int */;
6364 val* var187 /* : String */;
6365 static val* varonce188;
6366 val* var189 /* : String */;
6367 char* var190 /* : NativeString */;
6368 long var191 /* : Int */;
6369 val* var192 /* : String */;
6370 val* var193 /* : Array[String] */;
6371 long var194 /* : Int */;
6372 val* var195 /* : NativeArray[String] */;
6373 val* var196 /* : OptionBool */;
6374 static val* varonce197;
6375 val* var198 /* : String */;
6376 char* var199 /* : NativeString */;
6377 long var200 /* : Int */;
6378 val* var201 /* : String */;
6379 static val* varonce202;
6380 val* var203 /* : String */;
6381 char* var204 /* : NativeString */;
6382 long var205 /* : Int */;
6383 val* var206 /* : String */;
6384 val* var207 /* : Array[String] */;
6385 long var208 /* : Int */;
6386 val* var209 /* : NativeArray[String] */;
6387 val* var210 /* : OptionBool */;
6388 static val* varonce211;
6389 val* var212 /* : String */;
6390 char* var213 /* : NativeString */;
6391 long var214 /* : Int */;
6392 val* var215 /* : String */;
6393 static val* varonce216;
6394 val* var217 /* : String */;
6395 char* var218 /* : NativeString */;
6396 long var219 /* : Int */;
6397 val* var220 /* : String */;
6398 val* var221 /* : Array[String] */;
6399 long var222 /* : Int */;
6400 val* var223 /* : NativeArray[String] */;
6401 val* var224 /* : null */;
6402 val* var225 /* : ModelizeClassPhase */;
6403 val* var226 /* : null */;
6404 val* var227 /* : ModelizePropertyPhase */;
6405 val* var228 /* : Array[Phase] */;
6406 long var229 /* : Int */;
6407 val* var_230 /* var : Array[Phase] */;
6408 val* var231 /* : Phase */;
6409 val* var232 /* : CachedPhase */;
6410 val* var233 /* : Array[Phase] */;
6411 long var234 /* : Int */;
6412 val* var_235 /* var : Array[Phase] */;
6413 val* var236 /* : Phase */;
6414 val* var237 /* : TypingPhase */;
6415 val* var238 /* : Array[Phase] */;
6416 long var239 /* : Int */;
6417 val* var_240 /* var : Array[Phase] */;
6418 val* var241 /* : Phase */;
6419 val* var242 /* : Phase */;
6420 val* var243 /* : Phase */;
6421 val* var244 /* : AutoSuperInitPhase */;
6422 val* var245 /* : Array[Phase] */;
6423 long var246 /* : Int */;
6424 val* var_247 /* var : Array[Phase] */;
6425 val* var248 /* : Phase */;
6426 val* var249 /* : DivByZeroPhase */;
6427 val* var250 /* : Array[Phase] */;
6428 long var251 /* : Int */;
6429 val* var_252 /* var : Array[Phase] */;
6430 val* var253 /* : Phase */;
6431 val* var254 /* : Phase */;
6432 val* var255 /* : TransformPhase */;
6433 val* var256 /* : Array[Phase] */;
6434 long var257 /* : Int */;
6435 val* var_258 /* var : Array[Phase] */;
6436 val* var259 /* : Phase */;
6437 val* var260 /* : Phase */;
6438 short int var261 /* : Bool */;
6439 val* var262 /* : OptionString */;
6440 static val* varonce263;
6441 val* var264 /* : String */;
6442 char* var265 /* : NativeString */;
6443 long var266 /* : Int */;
6444 val* var267 /* : String */;
6445 static val* varonce268;
6446 val* var269 /* : String */;
6447 char* var270 /* : NativeString */;
6448 long var271 /* : Int */;
6449 val* var272 /* : String */;
6450 static val* varonce273;
6451 val* var274 /* : String */;
6452 char* var275 /* : NativeString */;
6453 long var276 /* : Int */;
6454 val* var277 /* : String */;
6455 val* var278 /* : Array[String] */;
6456 long var279 /* : Int */;
6457 val* var280 /* : NativeArray[String] */;
6458 val* var281 /* : OptionBool */;
6459 static val* varonce282;
6460 val* var283 /* : String */;
6461 char* var284 /* : NativeString */;
6462 long var285 /* : Int */;
6463 val* var286 /* : String */;
6464 static val* varonce287;
6465 val* var288 /* : String */;
6466 char* var289 /* : NativeString */;
6467 long var290 /* : Int */;
6468 val* var291 /* : String */;
6469 val* var292 /* : Array[String] */;
6470 long var293 /* : Int */;
6471 val* var294 /* : NativeArray[String] */;
6472 val* var295 /* : OptionArray */;
6473 static val* varonce296;
6474 val* var297 /* : String */;
6475 char* var298 /* : NativeString */;
6476 long var299 /* : Int */;
6477 val* var300 /* : String */;
6478 static val* varonce301;
6479 val* var302 /* : String */;
6480 char* var303 /* : NativeString */;
6481 long var304 /* : Int */;
6482 val* var305 /* : String */;
6483 val* var306 /* : Array[String] */;
6484 long var307 /* : Int */;
6485 val* var308 /* : NativeArray[String] */;
6486 val* var309 /* : OptionString */;
6487 static val* varonce310;
6488 val* var311 /* : String */;
6489 char* var312 /* : NativeString */;
6490 long var313 /* : Int */;
6491 val* var314 /* : String */;
6492 static val* varonce315;
6493 val* var316 /* : String */;
6494 char* var317 /* : NativeString */;
6495 long var318 /* : Int */;
6496 val* var319 /* : String */;
6497 val* var320 /* : Array[String] */;
6498 long var321 /* : Int */;
6499 val* var322 /* : NativeArray[String] */;
6500 val* var323 /* : OptionString */;
6501 static val* varonce324;
6502 val* var325 /* : String */;
6503 char* var326 /* : NativeString */;
6504 long var327 /* : Int */;
6505 val* var328 /* : String */;
6506 static val* varonce329;
6507 val* var330 /* : String */;
6508 char* var331 /* : NativeString */;
6509 long var332 /* : Int */;
6510 val* var333 /* : String */;
6511 val* var334 /* : Array[String] */;
6512 long var335 /* : Int */;
6513 val* var336 /* : NativeArray[String] */;
6514 val* var337 /* : OptionBool */;
6515 static val* varonce338;
6516 val* var339 /* : String */;
6517 char* var340 /* : NativeString */;
6518 long var341 /* : Int */;
6519 val* var342 /* : String */;
6520 static val* varonce343;
6521 val* var344 /* : String */;
6522 char* var345 /* : NativeString */;
6523 long var346 /* : Int */;
6524 val* var347 /* : String */;
6525 val* var348 /* : Array[String] */;
6526 long var349 /* : Int */;
6527 val* var350 /* : NativeArray[String] */;
6528 val* var351 /* : OptionBool */;
6529 static val* varonce352;
6530 val* var353 /* : String */;
6531 char* var354 /* : NativeString */;
6532 long var355 /* : Int */;
6533 val* var356 /* : String */;
6534 static val* varonce357;
6535 val* var358 /* : String */;
6536 char* var359 /* : NativeString */;
6537 long var360 /* : Int */;
6538 val* var361 /* : String */;
6539 val* var362 /* : Array[String] */;
6540 long var363 /* : Int */;
6541 val* var364 /* : NativeArray[String] */;
6542 val* var365 /* : OptionBool */;
6543 static val* varonce366;
6544 val* var367 /* : String */;
6545 char* var368 /* : NativeString */;
6546 long var369 /* : Int */;
6547 val* var370 /* : String */;
6548 static val* varonce371;
6549 val* var372 /* : String */;
6550 char* var373 /* : NativeString */;
6551 long var374 /* : Int */;
6552 val* var375 /* : String */;
6553 val* var376 /* : Array[String] */;
6554 long var377 /* : Int */;
6555 val* var378 /* : NativeArray[String] */;
6556 val* var379 /* : OptionBool */;
6557 static val* varonce380;
6558 val* var381 /* : String */;
6559 char* var382 /* : NativeString */;
6560 long var383 /* : Int */;
6561 val* var384 /* : String */;
6562 static val* varonce385;
6563 val* var386 /* : String */;
6564 char* var387 /* : NativeString */;
6565 long var388 /* : Int */;
6566 val* var389 /* : String */;
6567 val* var390 /* : Array[String] */;
6568 long var391 /* : Int */;
6569 val* var392 /* : NativeArray[String] */;
6570 val* var393 /* : OptionBool */;
6571 static val* varonce394;
6572 val* var395 /* : String */;
6573 char* var396 /* : NativeString */;
6574 long var397 /* : Int */;
6575 val* var398 /* : String */;
6576 static val* varonce399;
6577 val* var400 /* : String */;
6578 char* var401 /* : NativeString */;
6579 long var402 /* : Int */;
6580 val* var403 /* : String */;
6581 val* var404 /* : Array[String] */;
6582 long var405 /* : Int */;
6583 val* var406 /* : NativeArray[String] */;
6584 val* var407 /* : OptionBool */;
6585 static val* varonce408;
6586 val* var409 /* : String */;
6587 char* var410 /* : NativeString */;
6588 long var411 /* : Int */;
6589 val* var412 /* : String */;
6590 static val* varonce413;
6591 val* var414 /* : String */;
6592 char* var415 /* : NativeString */;
6593 long var416 /* : Int */;
6594 val* var417 /* : String */;
6595 val* var418 /* : Array[String] */;
6596 long var419 /* : Int */;
6597 val* var420 /* : NativeArray[String] */;
6598 val* var421 /* : OptionBool */;
6599 static val* varonce422;
6600 val* var423 /* : String */;
6601 char* var424 /* : NativeString */;
6602 long var425 /* : Int */;
6603 val* var426 /* : String */;
6604 static val* varonce427;
6605 val* var428 /* : String */;
6606 char* var429 /* : NativeString */;
6607 long var430 /* : Int */;
6608 val* var431 /* : String */;
6609 val* var432 /* : Array[String] */;
6610 long var433 /* : Int */;
6611 val* var434 /* : NativeArray[String] */;
6612 val* var435 /* : OptionBool */;
6613 static val* varonce436;
6614 val* var437 /* : String */;
6615 char* var438 /* : NativeString */;
6616 long var439 /* : Int */;
6617 val* var440 /* : String */;
6618 static val* varonce441;
6619 val* var442 /* : String */;
6620 char* var443 /* : NativeString */;
6621 long var444 /* : Int */;
6622 val* var445 /* : String */;
6623 val* var446 /* : Array[String] */;
6624 long var447 /* : Int */;
6625 val* var448 /* : NativeArray[String] */;
6626 val* var449 /* : OptionBool */;
6627 static val* varonce450;
6628 val* var451 /* : String */;
6629 char* var452 /* : NativeString */;
6630 long var453 /* : Int */;
6631 val* var454 /* : String */;
6632 static val* varonce455;
6633 val* var456 /* : String */;
6634 char* var457 /* : NativeString */;
6635 long var458 /* : Int */;
6636 val* var459 /* : String */;
6637 val* var460 /* : Array[String] */;
6638 long var461 /* : Int */;
6639 val* var462 /* : NativeArray[String] */;
6640 val* var463 /* : OptionBool */;
6641 static val* varonce464;
6642 val* var465 /* : String */;
6643 char* var466 /* : NativeString */;
6644 long var467 /* : Int */;
6645 val* var468 /* : String */;
6646 static val* varonce469;
6647 val* var470 /* : String */;
6648 char* var471 /* : NativeString */;
6649 long var472 /* : Int */;
6650 val* var473 /* : String */;
6651 val* var474 /* : Array[String] */;
6652 long var475 /* : Int */;
6653 val* var476 /* : NativeArray[String] */;
6654 val* var477 /* : OptionBool */;
6655 static val* varonce478;
6656 val* var479 /* : String */;
6657 char* var480 /* : NativeString */;
6658 long var481 /* : Int */;
6659 val* var482 /* : String */;
6660 static val* varonce483;
6661 val* var484 /* : String */;
6662 char* var485 /* : NativeString */;
6663 long var486 /* : Int */;
6664 val* var487 /* : String */;
6665 val* var488 /* : Array[String] */;
6666 long var489 /* : Int */;
6667 val* var490 /* : NativeArray[String] */;
6668 val* var491 /* : OptionBool */;
6669 static val* varonce492;
6670 val* var493 /* : String */;
6671 char* var494 /* : NativeString */;
6672 long var495 /* : Int */;
6673 val* var496 /* : String */;
6674 static val* varonce497;
6675 val* var498 /* : String */;
6676 char* var499 /* : NativeString */;
6677 long var500 /* : Int */;
6678 val* var501 /* : String */;
6679 val* var502 /* : Array[String] */;
6680 long var503 /* : Int */;
6681 val* var504 /* : NativeArray[String] */;
6682 val* var505 /* : OptionBool */;
6683 static val* varonce506;
6684 val* var507 /* : String */;
6685 char* var508 /* : NativeString */;
6686 long var509 /* : Int */;
6687 val* var510 /* : String */;
6688 static val* varonce511;
6689 val* var512 /* : String */;
6690 char* var513 /* : NativeString */;
6691 long var514 /* : Int */;
6692 val* var515 /* : String */;
6693 val* var516 /* : Array[String] */;
6694 long var517 /* : Int */;
6695 val* var518 /* : NativeArray[String] */;
6696 val* var519 /* : OptionBool */;
6697 static val* varonce520;
6698 val* var521 /* : String */;
6699 char* var522 /* : NativeString */;
6700 long var523 /* : Int */;
6701 val* var524 /* : String */;
6702 static val* varonce525;
6703 val* var526 /* : String */;
6704 char* var527 /* : NativeString */;
6705 long var528 /* : Int */;
6706 val* var529 /* : String */;
6707 val* var530 /* : Array[String] */;
6708 long var531 /* : Int */;
6709 val* var532 /* : NativeArray[String] */;
6710 val* var533 /* : OptionBool */;
6711 static val* varonce534;
6712 val* var535 /* : String */;
6713 char* var536 /* : NativeString */;
6714 long var537 /* : Int */;
6715 val* var538 /* : String */;
6716 static val* varonce539;
6717 val* var540 /* : String */;
6718 char* var541 /* : NativeString */;
6719 long var542 /* : Int */;
6720 val* var543 /* : String */;
6721 val* var544 /* : Array[String] */;
6722 long var545 /* : Int */;
6723 val* var546 /* : NativeArray[String] */;
6724 val* var547 /* : OptionBool */;
6725 static val* varonce548;
6726 val* var549 /* : String */;
6727 char* var550 /* : NativeString */;
6728 long var551 /* : Int */;
6729 val* var552 /* : String */;
6730 static val* varonce553;
6731 val* var554 /* : String */;
6732 char* var555 /* : NativeString */;
6733 long var556 /* : Int */;
6734 val* var557 /* : String */;
6735 val* var558 /* : Array[String] */;
6736 long var559 /* : Int */;
6737 val* var560 /* : NativeArray[String] */;
6738 val* var561 /* : OptionBool */;
6739 static val* varonce562;
6740 val* var563 /* : String */;
6741 char* var564 /* : NativeString */;
6742 long var565 /* : Int */;
6743 val* var566 /* : String */;
6744 static val* varonce567;
6745 val* var568 /* : String */;
6746 char* var569 /* : NativeString */;
6747 long var570 /* : Int */;
6748 val* var571 /* : String */;
6749 val* var572 /* : Array[String] */;
6750 long var573 /* : Int */;
6751 val* var574 /* : NativeArray[String] */;
6752 val* var575 /* : OptionBool */;
6753 static val* varonce576;
6754 val* var577 /* : String */;
6755 char* var578 /* : NativeString */;
6756 long var579 /* : Int */;
6757 val* var580 /* : String */;
6758 static val* varonce581;
6759 val* var582 /* : String */;
6760 char* var583 /* : NativeString */;
6761 long var584 /* : Int */;
6762 val* var585 /* : String */;
6763 val* var586 /* : Array[String] */;
6764 long var587 /* : Int */;
6765 val* var588 /* : NativeArray[String] */;
6766 val* var589 /* : OptionBool */;
6767 static val* varonce590;
6768 val* var591 /* : String */;
6769 char* var592 /* : NativeString */;
6770 long var593 /* : Int */;
6771 val* var594 /* : String */;
6772 static val* varonce595;
6773 val* var596 /* : String */;
6774 char* var597 /* : NativeString */;
6775 long var598 /* : Int */;
6776 val* var599 /* : String */;
6777 val* var600 /* : Array[String] */;
6778 long var601 /* : Int */;
6779 val* var602 /* : NativeArray[String] */;
6780 self = nit_alloc(sizeof(struct instance) + 58*sizeof(nitattribute_t));
6781 self->type = type;
6782 self->class = &class_toolcontext__ToolContext;
6783 var = 0;
6784 self->attrs[COLOR_toolcontext__ToolContext___64derror_count].l = var; /* @error_count on <self:ToolContext exact> */
6785 var1 = 0;
6786 self->attrs[COLOR_toolcontext__ToolContext___64dwarning_count].l = var1; /* @warning_count on <self:ToolContext exact> */
6787 if (varonce) {
6788 var2 = varonce;
6789 } else {
6790 var3 = "logs";
6791 var4 = 4;
6792 var5 = string__NativeString__to_s_with_length(var3, var4);
6793 var2 = var5;
6794 varonce = var2;
6795 }
6796 self->attrs[COLOR_toolcontext__ToolContext___64dlog_directory].val = var2; /* @log_directory on <self:ToolContext exact> */
6797 var6 = NEW_array__Array(&type_array__Arraytoolcontext__Message);
6798 ((void (*)(val*))(var6->class->vft[COLOR_array__Array__init]))(var6) /* init on <var6:Array[Message]>*/;
6799 CHECK_NEW_array__Array(var6);
6800 self->attrs[COLOR_toolcontext__ToolContext___64dmessages].val = var6; /* @messages on <self:ToolContext exact> */
6801 var7 = NEW_sorter__ComparableSorter(&type_sorter__ComparableSortertoolcontext__Message);
6802 ((void (*)(val*))(var7->class->vft[COLOR_sorter__ComparableSorter__init]))(var7) /* init on <var7:ComparableSorter[Message]>*/;
6803 CHECK_NEW_sorter__ComparableSorter(var7);
6804 self->attrs[COLOR_toolcontext__ToolContext___64dmessage_sorter].val = var7; /* @message_sorter on <self:ToolContext exact> */
6805 var8 = NEW_opts__OptionContext(&type_opts__OptionContext);
6806 ((void (*)(val*))(var8->class->vft[COLOR_opts__OptionContext__init]))(var8) /* init on <var8:OptionContext>*/;
6807 CHECK_NEW_opts__OptionContext(var8);
6808 self->attrs[COLOR_toolcontext__ToolContext___64doption_context].val = var8; /* @option_context on <self:ToolContext exact> */
6809 var9 = NEW_opts__OptionCount(&type_opts__OptionCount);
6810 if (varonce10) {
6811 var11 = varonce10;
6812 } else {
6813 var12 = "Show warnings";
6814 var13 = 13;
6815 var14 = string__NativeString__to_s_with_length(var12, var13);
6816 var11 = var14;
6817 varonce10 = var11;
6818 }
6819 if (varonce15) {
6820 var16 = varonce15;
6821 } else {
6822 var17 = "-W";
6823 var18 = 2;
6824 var19 = string__NativeString__to_s_with_length(var17, var18);
6825 var16 = var19;
6826 varonce15 = var16;
6827 }
6828 if (varonce20) {
6829 var21 = varonce20;
6830 } else {
6831 var22 = "--warn";
6832 var23 = 6;
6833 var24 = string__NativeString__to_s_with_length(var22, var23);
6834 var21 = var24;
6835 varonce20 = var21;
6836 }
6837 var25 = NEW_array__Array(&type_array__Arraystring__String);
6838 { /* var25 = array_instance Array[String] */
6839 var26 = 2;
6840 var27 = NEW_array__NativeArray(var26, &type_array__NativeArraystring__String);
6841 ((struct instance_array__NativeArray*)var27)->values[0] = (val*) var16;
6842 ((struct instance_array__NativeArray*)var27)->values[1] = (val*) var21;
6843 ((void (*)(val*, val*, long))(var25->class->vft[COLOR_array__Array__with_native]))(var25, var27, var26) /* with_native on <var25:Array[String]>*/;
6844 CHECK_NEW_array__Array(var25);
6845 }
6846 ((void (*)(val*, val*, val*))(var9->class->vft[COLOR_opts__OptionCount__init]))(var9, var11, var25) /* init on <var9:OptionCount>*/;
6847 CHECK_NEW_opts__OptionCount(var9);
6848 self->attrs[COLOR_toolcontext__ToolContext___64dopt_warn].val = var9; /* @opt_warn on <self:ToolContext exact> */
6849 var28 = NEW_opts__OptionBool(&type_opts__OptionBool);
6850 if (varonce29) {
6851 var30 = varonce29;
6852 } else {
6853 var31 = "Do not show warnings";
6854 var32 = 20;
6855 var33 = string__NativeString__to_s_with_length(var31, var32);
6856 var30 = var33;
6857 varonce29 = var30;
6858 }
6859 if (varonce34) {
6860 var35 = varonce34;
6861 } else {
6862 var36 = "-q";
6863 var37 = 2;
6864 var38 = string__NativeString__to_s_with_length(var36, var37);
6865 var35 = var38;
6866 varonce34 = var35;
6867 }
6868 if (varonce39) {
6869 var40 = varonce39;
6870 } else {
6871 var41 = "--quiet";
6872 var42 = 7;
6873 var43 = string__NativeString__to_s_with_length(var41, var42);
6874 var40 = var43;
6875 varonce39 = var40;
6876 }
6877 var44 = NEW_array__Array(&type_array__Arraystring__String);
6878 { /* var44 = array_instance Array[String] */
6879 var45 = 2;
6880 var46 = NEW_array__NativeArray(var45, &type_array__NativeArraystring__String);
6881 ((struct instance_array__NativeArray*)var46)->values[0] = (val*) var35;
6882 ((struct instance_array__NativeArray*)var46)->values[1] = (val*) var40;
6883 ((void (*)(val*, val*, long))(var44->class->vft[COLOR_array__Array__with_native]))(var44, var46, var45) /* with_native on <var44:Array[String]>*/;
6884 CHECK_NEW_array__Array(var44);
6885 }
6886 ((void (*)(val*, val*, val*))(var28->class->vft[COLOR_opts__OptionBool__init]))(var28, var30, var44) /* init on <var28:OptionBool>*/;
6887 CHECK_NEW_opts__OptionBool(var28);
6888 self->attrs[COLOR_toolcontext__ToolContext___64dopt_quiet].val = var28; /* @opt_quiet on <self:ToolContext exact> */
6889 var47 = NEW_opts__OptionBool(&type_opts__OptionBool);
6890 if (varonce48) {
6891 var49 = varonce48;
6892 } else {
6893 var50 = "Generate various log files";
6894 var51 = 26;
6895 var52 = string__NativeString__to_s_with_length(var50, var51);
6896 var49 = var52;
6897 varonce48 = var49;
6898 }
6899 if (varonce53) {
6900 var54 = varonce53;
6901 } else {
6902 var55 = "--log";
6903 var56 = 5;
6904 var57 = string__NativeString__to_s_with_length(var55, var56);
6905 var54 = var57;
6906 varonce53 = var54;
6907 }
6908 var58 = NEW_array__Array(&type_array__Arraystring__String);
6909 { /* var58 = array_instance Array[String] */
6910 var59 = 1;
6911 var60 = NEW_array__NativeArray(var59, &type_array__NativeArraystring__String);
6912 ((struct instance_array__NativeArray*)var60)->values[0] = (val*) var54;
6913 ((void (*)(val*, val*, long))(var58->class->vft[COLOR_array__Array__with_native]))(var58, var60, var59) /* with_native on <var58:Array[String]>*/;
6914 CHECK_NEW_array__Array(var58);
6915 }
6916 ((void (*)(val*, val*, val*))(var47->class->vft[COLOR_opts__OptionBool__init]))(var47, var49, var58) /* init on <var47:OptionBool>*/;
6917 CHECK_NEW_opts__OptionBool(var47);
6918 self->attrs[COLOR_toolcontext__ToolContext___64dopt_log].val = var47; /* @opt_log on <self:ToolContext exact> */
6919 var61 = NEW_opts__OptionString(&type_opts__OptionString);
6920 if (varonce62) {
6921 var63 = varonce62;
6922 } else {
6923 var64 = "Directory where to generate log files";
6924 var65 = 37;
6925 var66 = string__NativeString__to_s_with_length(var64, var65);
6926 var63 = var66;
6927 varonce62 = var63;
6928 }
6929 if (varonce67) {
6930 var68 = varonce67;
6931 } else {
6932 var69 = "--log-dir";
6933 var70 = 9;
6934 var71 = string__NativeString__to_s_with_length(var69, var70);
6935 var68 = var71;
6936 varonce67 = var68;
6937 }
6938 var72 = NEW_array__Array(&type_array__Arraystring__String);
6939 { /* var72 = array_instance Array[String] */
6940 var73 = 1;
6941 var74 = NEW_array__NativeArray(var73, &type_array__NativeArraystring__String);
6942 ((struct instance_array__NativeArray*)var74)->values[0] = (val*) var68;
6943 ((void (*)(val*, val*, long))(var72->class->vft[COLOR_array__Array__with_native]))(var72, var74, var73) /* with_native on <var72:Array[String]>*/;
6944 CHECK_NEW_array__Array(var72);
6945 }
6946 ((void (*)(val*, val*, val*))(var61->class->vft[COLOR_opts__OptionString__init]))(var61, var63, var72) /* init on <var61:OptionString>*/;
6947 CHECK_NEW_opts__OptionString(var61);
6948 self->attrs[COLOR_toolcontext__ToolContext___64dopt_log_dir].val = var61; /* @opt_log_dir on <self:ToolContext exact> */
6949 var75 = NEW_opts__OptionBool(&type_opts__OptionBool);
6950 if (varonce76) {
6951 var77 = varonce76;
6952 } else {
6953 var78 = "Show Help (This screen)";
6954 var79 = 23;
6955 var80 = string__NativeString__to_s_with_length(var78, var79);
6956 var77 = var80;
6957 varonce76 = var77;
6958 }
6959 if (varonce81) {
6960 var82 = varonce81;
6961 } else {
6962 var83 = "-h";
6963 var84 = 2;
6964 var85 = string__NativeString__to_s_with_length(var83, var84);
6965 var82 = var85;
6966 varonce81 = var82;
6967 }
6968 if (varonce86) {
6969 var87 = varonce86;
6970 } else {
6971 var88 = "-?";
6972 var89 = 2;
6973 var90 = string__NativeString__to_s_with_length(var88, var89);
6974 var87 = var90;
6975 varonce86 = var87;
6976 }
6977 if (varonce91) {
6978 var92 = varonce91;
6979 } else {
6980 var93 = "--help";
6981 var94 = 6;
6982 var95 = string__NativeString__to_s_with_length(var93, var94);
6983 var92 = var95;
6984 varonce91 = var92;
6985 }
6986 var96 = NEW_array__Array(&type_array__Arraystring__String);
6987 { /* var96 = array_instance Array[String] */
6988 var97 = 3;
6989 var98 = NEW_array__NativeArray(var97, &type_array__NativeArraystring__String);
6990 ((struct instance_array__NativeArray*)var98)->values[0] = (val*) var82;
6991 ((struct instance_array__NativeArray*)var98)->values[1] = (val*) var87;
6992 ((struct instance_array__NativeArray*)var98)->values[2] = (val*) var92;
6993 ((void (*)(val*, val*, long))(var96->class->vft[COLOR_array__Array__with_native]))(var96, var98, var97) /* with_native on <var96:Array[String]>*/;
6994 CHECK_NEW_array__Array(var96);
6995 }
6996 ((void (*)(val*, val*, val*))(var75->class->vft[COLOR_opts__OptionBool__init]))(var75, var77, var96) /* init on <var75:OptionBool>*/;
6997 CHECK_NEW_opts__OptionBool(var75);
6998 self->attrs[COLOR_toolcontext__ToolContext___64dopt_help].val = var75; /* @opt_help on <self:ToolContext exact> */
6999 var99 = NEW_opts__OptionBool(&type_opts__OptionBool);
7000 if (varonce100) {
7001 var101 = varonce100;
7002 } else {
7003 var102 = "Show version and exit";
7004 var103 = 21;
7005 var104 = string__NativeString__to_s_with_length(var102, var103);
7006 var101 = var104;
7007 varonce100 = var101;
7008 }
7009 if (varonce105) {
7010 var106 = varonce105;
7011 } else {
7012 var107 = "--version";
7013 var108 = 9;
7014 var109 = string__NativeString__to_s_with_length(var107, var108);
7015 var106 = var109;
7016 varonce105 = var106;
7017 }
7018 var110 = NEW_array__Array(&type_array__Arraystring__String);
7019 { /* var110 = array_instance Array[String] */
7020 var111 = 1;
7021 var112 = NEW_array__NativeArray(var111, &type_array__NativeArraystring__String);
7022 ((struct instance_array__NativeArray*)var112)->values[0] = (val*) var106;
7023 ((void (*)(val*, val*, long))(var110->class->vft[COLOR_array__Array__with_native]))(var110, var112, var111) /* with_native on <var110:Array[String]>*/;
7024 CHECK_NEW_array__Array(var110);
7025 }
7026 ((void (*)(val*, val*, val*))(var99->class->vft[COLOR_opts__OptionBool__init]))(var99, var101, var110) /* init on <var99:OptionBool>*/;
7027 CHECK_NEW_opts__OptionBool(var99);
7028 self->attrs[COLOR_toolcontext__ToolContext___64dopt_version].val = var99; /* @opt_version on <self:ToolContext exact> */
7029 var113 = NEW_opts__OptionCount(&type_opts__OptionCount);
7030 if (varonce114) {
7031 var115 = varonce114;
7032 } else {
7033 var116 = "Verbose";
7034 var117 = 7;
7035 var118 = string__NativeString__to_s_with_length(var116, var117);
7036 var115 = var118;
7037 varonce114 = var115;
7038 }
7039 if (varonce119) {
7040 var120 = varonce119;
7041 } else {
7042 var121 = "-v";
7043 var122 = 2;
7044 var123 = string__NativeString__to_s_with_length(var121, var122);
7045 var120 = var123;
7046 varonce119 = var120;
7047 }
7048 if (varonce124) {
7049 var125 = varonce124;
7050 } else {
7051 var126 = "--verbose";
7052 var127 = 9;
7053 var128 = string__NativeString__to_s_with_length(var126, var127);
7054 var125 = var128;
7055 varonce124 = var125;
7056 }
7057 var129 = NEW_array__Array(&type_array__Arraystring__String);
7058 { /* var129 = array_instance Array[String] */
7059 var130 = 2;
7060 var131 = NEW_array__NativeArray(var130, &type_array__NativeArraystring__String);
7061 ((struct instance_array__NativeArray*)var131)->values[0] = (val*) var120;
7062 ((struct instance_array__NativeArray*)var131)->values[1] = (val*) var125;
7063 ((void (*)(val*, val*, long))(var129->class->vft[COLOR_array__Array__with_native]))(var129, var131, var130) /* with_native on <var129:Array[String]>*/;
7064 CHECK_NEW_array__Array(var129);
7065 }
7066 ((void (*)(val*, val*, val*))(var113->class->vft[COLOR_opts__OptionCount__init]))(var113, var115, var129) /* init on <var113:OptionCount>*/;
7067 CHECK_NEW_opts__OptionCount(var113);
7068 self->attrs[COLOR_toolcontext__ToolContext___64dopt_verbose].val = var113; /* @opt_verbose on <self:ToolContext exact> */
7069 var132 = NEW_opts__OptionBool(&type_opts__OptionBool);
7070 if (varonce133) {
7071 var134 = varonce133;
7072 } else {
7073 var135 = "Stop on first error";
7074 var136 = 19;
7075 var137 = string__NativeString__to_s_with_length(var135, var136);
7076 var134 = var137;
7077 varonce133 = var134;
7078 }
7079 if (varonce138) {
7080 var139 = varonce138;
7081 } else {
7082 var140 = "--stop-on-first-error";
7083 var141 = 21;
7084 var142 = string__NativeString__to_s_with_length(var140, var141);
7085 var139 = var142;
7086 varonce138 = var139;
7087 }
7088 var143 = NEW_array__Array(&type_array__Arraystring__String);
7089 { /* var143 = array_instance Array[String] */
7090 var144 = 1;
7091 var145 = NEW_array__NativeArray(var144, &type_array__NativeArraystring__String);
7092 ((struct instance_array__NativeArray*)var145)->values[0] = (val*) var139;
7093 ((void (*)(val*, val*, long))(var143->class->vft[COLOR_array__Array__with_native]))(var143, var145, var144) /* with_native on <var143:Array[String]>*/;
7094 CHECK_NEW_array__Array(var143);
7095 }
7096 ((void (*)(val*, val*, val*))(var132->class->vft[COLOR_opts__OptionBool__init]))(var132, var134, var143) /* init on <var132:OptionBool>*/;
7097 CHECK_NEW_opts__OptionBool(var132);
7098 self->attrs[COLOR_toolcontext__ToolContext___64dopt_stop_on_first_error].val = var132; /* @opt_stop_on_first_error on <self:ToolContext exact> */
7099 var146 = NEW_opts__OptionBool(&type_opts__OptionBool);
7100 if (varonce147) {
7101 var148 = varonce147;
7102 } else {
7103 var149 = "Do not use color to display errors and warnings";
7104 var150 = 47;
7105 var151 = string__NativeString__to_s_with_length(var149, var150);
7106 var148 = var151;
7107 varonce147 = var148;
7108 }
7109 if (varonce152) {
7110 var153 = varonce152;
7111 } else {
7112 var154 = "--no-color";
7113 var155 = 10;
7114 var156 = string__NativeString__to_s_with_length(var154, var155);
7115 var153 = var156;
7116 varonce152 = var153;
7117 }
7118 var157 = NEW_array__Array(&type_array__Arraystring__String);
7119 { /* var157 = array_instance Array[String] */
7120 var158 = 1;
7121 var159 = NEW_array__NativeArray(var158, &type_array__NativeArraystring__String);
7122 ((struct instance_array__NativeArray*)var159)->values[0] = (val*) var153;
7123 ((void (*)(val*, val*, long))(var157->class->vft[COLOR_array__Array__with_native]))(var157, var159, var158) /* with_native on <var157:Array[String]>*/;
7124 CHECK_NEW_array__Array(var157);
7125 }
7126 ((void (*)(val*, val*, val*))(var146->class->vft[COLOR_opts__OptionBool__init]))(var146, var148, var157) /* init on <var146:OptionBool>*/;
7127 CHECK_NEW_opts__OptionBool(var146);
7128 self->attrs[COLOR_toolcontext__ToolContext___64dopt_no_color].val = var146; /* @opt_no_color on <self:ToolContext exact> */
7129 var160 = 0;
7130 self->attrs[COLOR_toolcontext__ToolContext___64dverbose_level].l = var160; /* @verbose_level on <self:ToolContext exact> */
7131 var161 = NEW_poset__POSet(&type_poset__POSetphase__Phase);
7132 ((void (*)(val*))(var161->class->vft[COLOR_poset__POSet__init]))(var161) /* init on <var161:POSet[Phase]>*/;
7133 CHECK_NEW_poset__POSet(var161);
7134 self->attrs[COLOR_phase__ToolContext___64dphases].val = var161; /* @phases on <self:ToolContext exact> */
7135 var162 = NEW_simple_misc_analysis__SimpleMiscAnalysisPhase(&type_simple_misc_analysis__SimpleMiscAnalysisPhase);
7136 var163 = NULL;
7137 ((void (*)(val*, val*, val*))(var162->class->vft[COLOR_phase__Phase__init]))(var162, self, var163) /* init on <var162:SimpleMiscAnalysisPhase>*/;
7138 CHECK_NEW_simple_misc_analysis__SimpleMiscAnalysisPhase(var162);
7139 self->attrs[COLOR_simple_misc_analysis__ToolContext___64dsimple_misc_analysis_phase].val = var162; /* @simple_misc_analysis_phase on <self:ToolContext exact> */
7140 var164 = NEW_literal__LiteralPhase(&type_literal__LiteralPhase);
7141 var165 = NULL;
7142 ((void (*)(val*, val*, val*))(var164->class->vft[COLOR_phase__Phase__init]))(var164, self, var165) /* init on <var164:LiteralPhase>*/;
7143 CHECK_NEW_literal__LiteralPhase(var164);
7144 self->attrs[COLOR_literal__ToolContext___64dliteral_phase].val = var164; /* @literal_phase on <self:ToolContext exact> */
7145 var166 = NEW_scope__ScopePhase(&type_scope__ScopePhase);
7146 var167 = NULL;
7147 ((void (*)(val*, val*, val*))(var166->class->vft[COLOR_phase__Phase__init]))(var166, self, var167) /* init on <var166:ScopePhase>*/;
7148 CHECK_NEW_scope__ScopePhase(var166);
7149 self->attrs[COLOR_scope__ToolContext___64dscope_phase].val = var166; /* @scope_phase on <self:ToolContext exact> */
7150 var168 = NEW_flow__FlowPhase(&type_flow__FlowPhase);
7151 var169 = NEW_array__Array(&type_array__Arrayphase__Phase);
7152 var170 = 1;
7153 ((void (*)(val*, long))(var169->class->vft[COLOR_array__Array__with_capacity]))(var169, var170) /* with_capacity on <var169:Array[Phase]>*/;
7154 CHECK_NEW_array__Array(var169);
7155 var_ = var169;
7156 var171 = ((val* (*)(val*))(self->class->vft[COLOR_scope__ToolContext__scope_phase]))(self) /* scope_phase on <self:ToolContext exact>*/;
7157 ((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__Sequence__push]))(var_, var171) /* push on <var_:Array[Phase]>*/;
7158 ((void (*)(val*, val*, val*))(var168->class->vft[COLOR_phase__Phase__init]))(var168, self, var_) /* init on <var168:FlowPhase>*/;
7159 CHECK_NEW_flow__FlowPhase(var168);
7160 self->attrs[COLOR_flow__ToolContext___64dflow_phase].val = var168; /* @flow_phase on <self:ToolContext exact> */
7161 var172 = NEW_local_var_init__LocalVarInitPhase(&type_local_var_init__LocalVarInitPhase);
7162 var173 = NEW_array__Array(&type_array__Arrayphase__Phase);
7163 var174 = 1;
7164 ((void (*)(val*, long))(var173->class->vft[COLOR_array__Array__with_capacity]))(var173, var174) /* with_capacity on <var173:Array[Phase]>*/;
7165 CHECK_NEW_array__Array(var173);
7166 var_175 = var173;
7167 var176 = ((val* (*)(val*))(self->class->vft[COLOR_flow__ToolContext__flow_phase]))(self) /* flow_phase on <self:ToolContext exact>*/;
7168 ((void (*)(val*, val*))(var_175->class->vft[COLOR_abstract_collection__Sequence__push]))(var_175, var176) /* push on <var_175:Array[Phase]>*/;
7169 ((void (*)(val*, val*, val*))(var172->class->vft[COLOR_phase__Phase__init]))(var172, self, var_175) /* init on <var172:LocalVarInitPhase>*/;
7170 CHECK_NEW_local_var_init__LocalVarInitPhase(var172);
7171 self->attrs[COLOR_local_var_init__ToolContext___64dlocal_var_init_phase].val = var172; /* @local_var_init_phase on <self:ToolContext exact> */
7172 var177 = NEW_opts__OptionArray(&type_opts__OptionArray);
7173 if (varonce178) {
7174 var179 = varonce178;
7175 } else {
7176 var180 = "Set include path for loaders (may be used more than once)";
7177 var181 = 57;
7178 var182 = string__NativeString__to_s_with_length(var180, var181);
7179 var179 = var182;
7180 varonce178 = var179;
7181 }
7182 if (varonce183) {
7183 var184 = varonce183;
7184 } else {
7185 var185 = "-I";
7186 var186 = 2;
7187 var187 = string__NativeString__to_s_with_length(var185, var186);
7188 var184 = var187;
7189 varonce183 = var184;
7190 }
7191 if (varonce188) {
7192 var189 = varonce188;
7193 } else {
7194 var190 = "--path";
7195 var191 = 6;
7196 var192 = string__NativeString__to_s_with_length(var190, var191);
7197 var189 = var192;
7198 varonce188 = var189;
7199 }
7200 var193 = NEW_array__Array(&type_array__Arraystring__String);
7201 { /* var193 = array_instance Array[String] */
7202 var194 = 2;
7203 var195 = NEW_array__NativeArray(var194, &type_array__NativeArraystring__String);
7204 ((struct instance_array__NativeArray*)var195)->values[0] = (val*) var184;
7205 ((struct instance_array__NativeArray*)var195)->values[1] = (val*) var189;
7206 ((void (*)(val*, val*, long))(var193->class->vft[COLOR_array__Array__with_native]))(var193, var195, var194) /* with_native on <var193:Array[String]>*/;
7207 CHECK_NEW_array__Array(var193);
7208 }
7209 ((void (*)(val*, val*, val*))(var177->class->vft[COLOR_opts__OptionArray__init]))(var177, var179, var193) /* init on <var177:OptionArray>*/;
7210 CHECK_NEW_opts__OptionArray(var177);
7211 self->attrs[COLOR_modelbuilder__ToolContext___64dopt_path].val = var177; /* @opt_path on <self:ToolContext exact> */
7212 var196 = NEW_opts__OptionBool(&type_opts__OptionBool);
7213 if (varonce197) {
7214 var198 = varonce197;
7215 } else {
7216 var199 = "Stop after meta-model processing";
7217 var200 = 32;
7218 var201 = string__NativeString__to_s_with_length(var199, var200);
7219 var198 = var201;
7220 varonce197 = var198;
7221 }
7222 if (varonce202) {
7223 var203 = varonce202;
7224 } else {
7225 var204 = "--only-metamodel";
7226 var205 = 16;
7227 var206 = string__NativeString__to_s_with_length(var204, var205);
7228 var203 = var206;
7229 varonce202 = var203;
7230 }
7231 var207 = NEW_array__Array(&type_array__Arraystring__String);
7232 { /* var207 = array_instance Array[String] */
7233 var208 = 1;
7234 var209 = NEW_array__NativeArray(var208, &type_array__NativeArraystring__String);
7235 ((struct instance_array__NativeArray*)var209)->values[0] = (val*) var203;
7236 ((void (*)(val*, val*, long))(var207->class->vft[COLOR_array__Array__with_native]))(var207, var209, var208) /* with_native on <var207:Array[String]>*/;
7237 CHECK_NEW_array__Array(var207);
7238 }
7239 ((void (*)(val*, val*, val*))(var196->class->vft[COLOR_opts__OptionBool__init]))(var196, var198, var207) /* init on <var196:OptionBool>*/;
7240 CHECK_NEW_opts__OptionBool(var196);
7241 self->attrs[COLOR_modelbuilder__ToolContext___64dopt_only_metamodel].val = var196; /* @opt_only_metamodel on <self:ToolContext exact> */
7242 var210 = NEW_opts__OptionBool(&type_opts__OptionBool);
7243 if (varonce211) {
7244 var212 = varonce211;
7245 } else {
7246 var213 = "Only proceed to parse step of loaders";
7247 var214 = 37;
7248 var215 = string__NativeString__to_s_with_length(var213, var214);
7249 var212 = var215;
7250 varonce211 = var212;
7251 }
7252 if (varonce216) {
7253 var217 = varonce216;
7254 } else {
7255 var218 = "--only-parse";
7256 var219 = 12;
7257 var220 = string__NativeString__to_s_with_length(var218, var219);
7258 var217 = var220;
7259 varonce216 = var217;
7260 }
7261 var221 = NEW_array__Array(&type_array__Arraystring__String);
7262 { /* var221 = array_instance Array[String] */
7263 var222 = 1;
7264 var223 = NEW_array__NativeArray(var222, &type_array__NativeArraystring__String);
7265 ((struct instance_array__NativeArray*)var223)->values[0] = (val*) var217;
7266 ((void (*)(val*, val*, long))(var221->class->vft[COLOR_array__Array__with_native]))(var221, var223, var222) /* with_native on <var221:Array[String]>*/;
7267 CHECK_NEW_array__Array(var221);
7268 }
7269 ((void (*)(val*, val*, val*))(var210->class->vft[COLOR_opts__OptionBool__init]))(var210, var212, var221) /* init on <var210:OptionBool>*/;
7270 CHECK_NEW_opts__OptionBool(var210);
7271 self->attrs[COLOR_modelbuilder__ToolContext___64dopt_only_parse].val = var210; /* @opt_only_parse on <self:ToolContext exact> */
7272 var224 = NULL;
7273 self->attrs[COLOR_modelbuilder__ToolContext___64dmodelbuilder_real].val = var224; /* @modelbuilder_real on <self:ToolContext exact> */
7274 var225 = NEW_modelize_class__ModelizeClassPhase(&type_modelize_class__ModelizeClassPhase);
7275 var226 = NULL;
7276 ((void (*)(val*, val*, val*))(var225->class->vft[COLOR_phase__Phase__init]))(var225, self, var226) /* init on <var225:ModelizeClassPhase>*/;
7277 CHECK_NEW_modelize_class__ModelizeClassPhase(var225);
7278 self->attrs[COLOR_modelize_class__ToolContext___64dmodelize_class_phase].val = var225; /* @modelize_class_phase on <self:ToolContext exact> */
7279 var227 = NEW_modelize_property__ModelizePropertyPhase(&type_modelize_property__ModelizePropertyPhase);
7280 var228 = NEW_array__Array(&type_array__Arrayphase__Phase);
7281 var229 = 1;
7282 ((void (*)(val*, long))(var228->class->vft[COLOR_array__Array__with_capacity]))(var228, var229) /* with_capacity on <var228:Array[Phase]>*/;
7283 CHECK_NEW_array__Array(var228);
7284 var_230 = var228;
7285 var231 = ((val* (*)(val*))(self->class->vft[COLOR_modelize_class__ToolContext__modelize_class_phase]))(self) /* modelize_class_phase on <self:ToolContext exact>*/;
7286 ((void (*)(val*, val*))(var_230->class->vft[COLOR_abstract_collection__Sequence__push]))(var_230, var231) /* push on <var_230:Array[Phase]>*/;
7287 ((void (*)(val*, val*, val*))(var227->class->vft[COLOR_phase__Phase__init]))(var227, self, var_230) /* init on <var227:ModelizePropertyPhase>*/;
7288 CHECK_NEW_modelize_property__ModelizePropertyPhase(var227);
7289 self->attrs[COLOR_modelize_property__ToolContext___64dmodelize_property_phase].val = var227; /* @modelize_property_phase on <self:ToolContext exact> */
7290 var232 = NEW_cached__CachedPhase(&type_cached__CachedPhase);
7291 var233 = NEW_array__Array(&type_array__Arrayphase__Phase);
7292 var234 = 1;
7293 ((void (*)(val*, long))(var233->class->vft[COLOR_array__Array__with_capacity]))(var233, var234) /* with_capacity on <var233:Array[Phase]>*/;
7294 CHECK_NEW_array__Array(var233);
7295 var_235 = var233;
7296 var236 = ((val* (*)(val*))(self->class->vft[COLOR_modelize_property__ToolContext__modelize_property_phase]))(self) /* modelize_property_phase on <self:ToolContext exact>*/;
7297 ((void (*)(val*, val*))(var_235->class->vft[COLOR_abstract_collection__Sequence__push]))(var_235, var236) /* push on <var_235:Array[Phase]>*/;
7298 ((void (*)(val*, val*, val*))(var232->class->vft[COLOR_cached__CachedPhase__init]))(var232, self, var_235) /* init on <var232:CachedPhase>*/;
7299 CHECK_NEW_cached__CachedPhase(var232);
7300 self->attrs[COLOR_cached__ToolContext___64dcached_phase].val = var232; /* @cached_phase on <self:ToolContext exact> */
7301 var237 = NEW_typing__TypingPhase(&type_typing__TypingPhase);
7302 var238 = NEW_array__Array(&type_array__Arrayphase__Phase);
7303 var239 = 3;
7304 ((void (*)(val*, long))(var238->class->vft[COLOR_array__Array__with_capacity]))(var238, var239) /* with_capacity on <var238:Array[Phase]>*/;
7305 CHECK_NEW_array__Array(var238);
7306 var_240 = var238;
7307 var241 = ((val* (*)(val*))(self->class->vft[COLOR_flow__ToolContext__flow_phase]))(self) /* flow_phase on <self:ToolContext exact>*/;
7308 ((void (*)(val*, val*))(var_240->class->vft[COLOR_abstract_collection__Sequence__push]))(var_240, var241) /* push on <var_240:Array[Phase]>*/;
7309 var242 = ((val* (*)(val*))(self->class->vft[COLOR_modelize_property__ToolContext__modelize_property_phase]))(self) /* modelize_property_phase on <self:ToolContext exact>*/;
7310 ((void (*)(val*, val*))(var_240->class->vft[COLOR_abstract_collection__Sequence__push]))(var_240, var242) /* push on <var_240:Array[Phase]>*/;
7311 var243 = ((val* (*)(val*))(self->class->vft[COLOR_local_var_init__ToolContext__local_var_init_phase]))(self) /* local_var_init_phase on <self:ToolContext exact>*/;
7312 ((void (*)(val*, val*))(var_240->class->vft[COLOR_abstract_collection__Sequence__push]))(var_240, var243) /* push on <var_240:Array[Phase]>*/;
7313 ((void (*)(val*, val*, val*))(var237->class->vft[COLOR_phase__Phase__init]))(var237, self, var_240) /* init on <var237:TypingPhase>*/;
7314 CHECK_NEW_typing__TypingPhase(var237);
7315 self->attrs[COLOR_typing__ToolContext___64dtyping_phase].val = var237; /* @typing_phase on <self:ToolContext exact> */
7316 var244 = NEW_auto_super_init__AutoSuperInitPhase(&type_auto_super_init__AutoSuperInitPhase);
7317 var245 = NEW_array__Array(&type_array__Arrayphase__Phase);
7318 var246 = 1;
7319 ((void (*)(val*, long))(var245->class->vft[COLOR_array__Array__with_capacity]))(var245, var246) /* with_capacity on <var245:Array[Phase]>*/;
7320 CHECK_NEW_array__Array(var245);
7321 var_247 = var245;
7322 var248 = ((val* (*)(val*))(self->class->vft[COLOR_typing__ToolContext__typing_phase]))(self) /* typing_phase on <self:ToolContext exact>*/;
7323 ((void (*)(val*, val*))(var_247->class->vft[COLOR_abstract_collection__Sequence__push]))(var_247, var248) /* push on <var_247:Array[Phase]>*/;
7324 ((void (*)(val*, val*, val*))(var244->class->vft[COLOR_phase__Phase__init]))(var244, self, var_247) /* init on <var244:AutoSuperInitPhase>*/;
7325 CHECK_NEW_auto_super_init__AutoSuperInitPhase(var244);
7326 self->attrs[COLOR_auto_super_init__ToolContext___64dauto_super_init_phase].val = var244; /* @auto_super_init_phase on <self:ToolContext exact> */
7327 var249 = NEW_div_by_zero__DivByZeroPhase(&type_div_by_zero__DivByZeroPhase);
7328 var250 = NEW_array__Array(&type_array__Arrayphase__Phase);
7329 var251 = 2;
7330 ((void (*)(val*, long))(var250->class->vft[COLOR_array__Array__with_capacity]))(var250, var251) /* with_capacity on <var250:Array[Phase]>*/;
7331 CHECK_NEW_array__Array(var250);
7332 var_252 = var250;
7333 var253 = ((val* (*)(val*))(self->class->vft[COLOR_literal__ToolContext__literal_phase]))(self) /* literal_phase on <self:ToolContext exact>*/;
7334 ((void (*)(val*, val*))(var_252->class->vft[COLOR_abstract_collection__Sequence__push]))(var_252, var253) /* push on <var_252:Array[Phase]>*/;
7335 var254 = ((val* (*)(val*))(self->class->vft[COLOR_typing__ToolContext__typing_phase]))(self) /* typing_phase on <self:ToolContext exact>*/;
7336 ((void (*)(val*, val*))(var_252->class->vft[COLOR_abstract_collection__Sequence__push]))(var_252, var254) /* push on <var_252:Array[Phase]>*/;
7337 ((void (*)(val*, val*, val*))(var249->class->vft[COLOR_phase__Phase__init]))(var249, self, var_252) /* init on <var249:DivByZeroPhase>*/;
7338 CHECK_NEW_div_by_zero__DivByZeroPhase(var249);
7339 self->attrs[COLOR_div_by_zero__ToolContext___64ddiv_by_zero_phase].val = var249; /* @div_by_zero_phase on <self:ToolContext exact> */
7340 var255 = NEW_transform__TransformPhase(&type_transform__TransformPhase);
7341 var256 = NEW_array__Array(&type_array__Arrayphase__Phase);
7342 var257 = 2;
7343 ((void (*)(val*, long))(var256->class->vft[COLOR_array__Array__with_capacity]))(var256, var257) /* with_capacity on <var256:Array[Phase]>*/;
7344 CHECK_NEW_array__Array(var256);
7345 var_258 = var256;
7346 var259 = ((val* (*)(val*))(self->class->vft[COLOR_typing__ToolContext__typing_phase]))(self) /* typing_phase on <self:ToolContext exact>*/;
7347 ((void (*)(val*, val*))(var_258->class->vft[COLOR_abstract_collection__Sequence__push]))(var_258, var259) /* push on <var_258:Array[Phase]>*/;
7348 var260 = ((val* (*)(val*))(self->class->vft[COLOR_auto_super_init__ToolContext__auto_super_init_phase]))(self) /* auto_super_init_phase on <self:ToolContext exact>*/;
7349 ((void (*)(val*, val*))(var_258->class->vft[COLOR_abstract_collection__Sequence__push]))(var_258, var260) /* push on <var_258:Array[Phase]>*/;
7350 ((void (*)(val*, val*, val*))(var255->class->vft[COLOR_phase__Phase__init]))(var255, self, var_258) /* init on <var255:TransformPhase>*/;
7351 CHECK_NEW_transform__TransformPhase(var255);
7352 self->attrs[COLOR_transform__ToolContext___64dtransform_phase].val = var255; /* @transform_phase on <self:ToolContext exact> */
7353 var261 = ((short int (*)(val*))(self->class->vft[COLOR_frontend__ToolContext__do_dummy]))(self) /* do_dummy on <self:ToolContext exact>*/;
7354 self->attrs[COLOR_frontend__ToolContext___64ddummy].s = var261; /* @dummy on <self:ToolContext exact> */
7355 var262 = NEW_opts__OptionString(&type_opts__OptionString);
7356 if (varonce263) {
7357 var264 = varonce263;
7358 } else {
7359 var265 = "Output file";
7360 var266 = 11;
7361 var267 = string__NativeString__to_s_with_length(var265, var266);
7362 var264 = var267;
7363 varonce263 = var264;
7364 }
7365 if (varonce268) {
7366 var269 = varonce268;
7367 } else {
7368 var270 = "-o";
7369 var271 = 2;
7370 var272 = string__NativeString__to_s_with_length(var270, var271);
7371 var269 = var272;
7372 varonce268 = var269;
7373 }
7374 if (varonce273) {
7375 var274 = varonce273;
7376 } else {
7377 var275 = "--output";
7378 var276 = 8;
7379 var277 = string__NativeString__to_s_with_length(var275, var276);
7380 var274 = var277;
7381 varonce273 = var274;
7382 }
7383 var278 = NEW_array__Array(&type_array__Arraystring__String);
7384 { /* var278 = array_instance Array[String] */
7385 var279 = 2;
7386 var280 = NEW_array__NativeArray(var279, &type_array__NativeArraystring__String);
7387 ((struct instance_array__NativeArray*)var280)->values[0] = (val*) var269;
7388 ((struct instance_array__NativeArray*)var280)->values[1] = (val*) var274;
7389 ((void (*)(val*, val*, long))(var278->class->vft[COLOR_array__Array__with_native]))(var278, var280, var279) /* with_native on <var278:Array[String]>*/;
7390 CHECK_NEW_array__Array(var278);
7391 }
7392 ((void (*)(val*, val*, val*))(var262->class->vft[COLOR_opts__OptionString__init]))(var262, var264, var278) /* init on <var262:OptionString>*/;
7393 CHECK_NEW_opts__OptionString(var262);
7394 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_output].val = var262; /* @opt_output on <self:ToolContext exact> */
7395 var281 = NEW_opts__OptionBool(&type_opts__OptionBool);
7396 if (varonce282) {
7397 var283 = varonce282;
7398 } else {
7399 var284 = "Do not invoke C compiler";
7400 var285 = 24;
7401 var286 = string__NativeString__to_s_with_length(var284, var285);
7402 var283 = var286;
7403 varonce282 = var283;
7404 }
7405 if (varonce287) {
7406 var288 = varonce287;
7407 } else {
7408 var289 = "--no-cc";
7409 var290 = 7;
7410 var291 = string__NativeString__to_s_with_length(var289, var290);
7411 var288 = var291;
7412 varonce287 = var288;
7413 }
7414 var292 = NEW_array__Array(&type_array__Arraystring__String);
7415 { /* var292 = array_instance Array[String] */
7416 var293 = 1;
7417 var294 = NEW_array__NativeArray(var293, &type_array__NativeArraystring__String);
7418 ((struct instance_array__NativeArray*)var294)->values[0] = (val*) var288;
7419 ((void (*)(val*, val*, long))(var292->class->vft[COLOR_array__Array__with_native]))(var292, var294, var293) /* with_native on <var292:Array[String]>*/;
7420 CHECK_NEW_array__Array(var292);
7421 }
7422 ((void (*)(val*, val*, val*))(var281->class->vft[COLOR_opts__OptionBool__init]))(var281, var283, var292) /* init on <var281:OptionBool>*/;
7423 CHECK_NEW_opts__OptionBool(var281);
7424 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_no_cc].val = var281; /* @opt_no_cc on <self:ToolContext exact> */
7425 var295 = NEW_opts__OptionArray(&type_opts__OptionArray);
7426 if (varonce296) {
7427 var297 = varonce296;
7428 } else {
7429 var298 = "Set include path for C header files (may be used more than once)";
7430 var299 = 64;
7431 var300 = string__NativeString__to_s_with_length(var298, var299);
7432 var297 = var300;
7433 varonce296 = var297;
7434 }
7435 if (varonce301) {
7436 var302 = varonce301;
7437 } else {
7438 var303 = "--cc-path";
7439 var304 = 9;
7440 var305 = string__NativeString__to_s_with_length(var303, var304);
7441 var302 = var305;
7442 varonce301 = var302;
7443 }
7444 var306 = NEW_array__Array(&type_array__Arraystring__String);
7445 { /* var306 = array_instance Array[String] */
7446 var307 = 1;
7447 var308 = NEW_array__NativeArray(var307, &type_array__NativeArraystring__String);
7448 ((struct instance_array__NativeArray*)var308)->values[0] = (val*) var302;
7449 ((void (*)(val*, val*, long))(var306->class->vft[COLOR_array__Array__with_native]))(var306, var308, var307) /* with_native on <var306:Array[String]>*/;
7450 CHECK_NEW_array__Array(var306);
7451 }
7452 ((void (*)(val*, val*, val*))(var295->class->vft[COLOR_opts__OptionArray__init]))(var295, var297, var306) /* init on <var295:OptionArray>*/;
7453 CHECK_NEW_opts__OptionArray(var295);
7454 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_cc_path].val = var295; /* @opt_cc_path on <self:ToolContext exact> */
7455 var309 = NEW_opts__OptionString(&type_opts__OptionString);
7456 if (varonce310) {
7457 var311 = varonce310;
7458 } else {
7459 var312 = "Additional options to make";
7460 var313 = 26;
7461 var314 = string__NativeString__to_s_with_length(var312, var313);
7462 var311 = var314;
7463 varonce310 = var311;
7464 }
7465 if (varonce315) {
7466 var316 = varonce315;
7467 } else {
7468 var317 = "--make-flags";
7469 var318 = 12;
7470 var319 = string__NativeString__to_s_with_length(var317, var318);
7471 var316 = var319;
7472 varonce315 = var316;
7473 }
7474 var320 = NEW_array__Array(&type_array__Arraystring__String);
7475 { /* var320 = array_instance Array[String] */
7476 var321 = 1;
7477 var322 = NEW_array__NativeArray(var321, &type_array__NativeArraystring__String);
7478 ((struct instance_array__NativeArray*)var322)->values[0] = (val*) var316;
7479 ((void (*)(val*, val*, long))(var320->class->vft[COLOR_array__Array__with_native]))(var320, var322, var321) /* with_native on <var320:Array[String]>*/;
7480 CHECK_NEW_array__Array(var320);
7481 }
7482 ((void (*)(val*, val*, val*))(var309->class->vft[COLOR_opts__OptionString__init]))(var309, var311, var320) /* init on <var309:OptionString>*/;
7483 CHECK_NEW_opts__OptionString(var309);
7484 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_make_flags].val = var309; /* @opt_make_flags on <self:ToolContext exact> */
7485 var323 = NEW_opts__OptionString(&type_opts__OptionString);
7486 if (varonce324) {
7487 var325 = varonce324;
7488 } else {
7489 var326 = "Directory used to generate temporary files";
7490 var327 = 42;
7491 var328 = string__NativeString__to_s_with_length(var326, var327);
7492 var325 = var328;
7493 varonce324 = var325;
7494 }
7495 if (varonce329) {
7496 var330 = varonce329;
7497 } else {
7498 var331 = "--compile-dir";
7499 var332 = 13;
7500 var333 = string__NativeString__to_s_with_length(var331, var332);
7501 var330 = var333;
7502 varonce329 = var330;
7503 }
7504 var334 = NEW_array__Array(&type_array__Arraystring__String);
7505 { /* var334 = array_instance Array[String] */
7506 var335 = 1;
7507 var336 = NEW_array__NativeArray(var335, &type_array__NativeArraystring__String);
7508 ((struct instance_array__NativeArray*)var336)->values[0] = (val*) var330;
7509 ((void (*)(val*, val*, long))(var334->class->vft[COLOR_array__Array__with_native]))(var334, var336, var335) /* with_native on <var334:Array[String]>*/;
7510 CHECK_NEW_array__Array(var334);
7511 }
7512 ((void (*)(val*, val*, val*))(var323->class->vft[COLOR_opts__OptionString__init]))(var323, var325, var334) /* init on <var323:OptionString>*/;
7513 CHECK_NEW_opts__OptionString(var323);
7514 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_compile_dir].val = var323; /* @opt_compile_dir on <self:ToolContext exact> */
7515 var337 = NEW_opts__OptionBool(&type_opts__OptionBool);
7516 if (varonce338) {
7517 var339 = varonce338;
7518 } else {
7519 var340 = "Generate contracts in the C code against bugs in the compiler";
7520 var341 = 61;
7521 var342 = string__NativeString__to_s_with_length(var340, var341);
7522 var339 = var342;
7523 varonce338 = var339;
7524 }
7525 if (varonce343) {
7526 var344 = varonce343;
7527 } else {
7528 var345 = "--hardening";
7529 var346 = 11;
7530 var347 = string__NativeString__to_s_with_length(var345, var346);
7531 var344 = var347;
7532 varonce343 = var344;
7533 }
7534 var348 = NEW_array__Array(&type_array__Arraystring__String);
7535 { /* var348 = array_instance Array[String] */
7536 var349 = 1;
7537 var350 = NEW_array__NativeArray(var349, &type_array__NativeArraystring__String);
7538 ((struct instance_array__NativeArray*)var350)->values[0] = (val*) var344;
7539 ((void (*)(val*, val*, long))(var348->class->vft[COLOR_array__Array__with_native]))(var348, var350, var349) /* with_native on <var348:Array[String]>*/;
7540 CHECK_NEW_array__Array(var348);
7541 }
7542 ((void (*)(val*, val*, val*))(var337->class->vft[COLOR_opts__OptionBool__init]))(var337, var339, var348) /* init on <var337:OptionBool>*/;
7543 CHECK_NEW_opts__OptionBool(var337);
7544 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_hardening].val = var337; /* @opt_hardening on <self:ToolContext exact> */
7545 var351 = NEW_opts__OptionBool(&type_opts__OptionBool);
7546 if (varonce352) {
7547 var353 = varonce352;
7548 } else {
7549 var354 = "Always insantiate a range and its iterator on \'for\' loops";
7550 var355 = 57;
7551 var356 = string__NativeString__to_s_with_length(var354, var355);
7552 var353 = var356;
7553 varonce352 = var353;
7554 }
7555 if (varonce357) {
7556 var358 = varonce357;
7557 } else {
7558 var359 = "--no-shortcut-range";
7559 var360 = 19;
7560 var361 = string__NativeString__to_s_with_length(var359, var360);
7561 var358 = var361;
7562 varonce357 = var358;
7563 }
7564 var362 = NEW_array__Array(&type_array__Arraystring__String);
7565 { /* var362 = array_instance Array[String] */
7566 var363 = 1;
7567 var364 = NEW_array__NativeArray(var363, &type_array__NativeArraystring__String);
7568 ((struct instance_array__NativeArray*)var364)->values[0] = (val*) var358;
7569 ((void (*)(val*, val*, long))(var362->class->vft[COLOR_array__Array__with_native]))(var362, var364, var363) /* with_native on <var362:Array[String]>*/;
7570 CHECK_NEW_array__Array(var362);
7571 }
7572 ((void (*)(val*, val*, val*))(var351->class->vft[COLOR_opts__OptionBool__init]))(var351, var353, var362) /* init on <var351:OptionBool>*/;
7573 CHECK_NEW_opts__OptionBool(var351);
7574 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_no_shortcut_range].val = var351; /* @opt_no_shortcut_range on <self:ToolContext exact> */
7575 var365 = NEW_opts__OptionBool(&type_opts__OptionBool);
7576 if (varonce366) {
7577 var367 = varonce366;
7578 } else {
7579 var368 = "Disable type tests of covariant parameters (dangerous)";
7580 var369 = 54;
7581 var370 = string__NativeString__to_s_with_length(var368, var369);
7582 var367 = var370;
7583 varonce366 = var367;
7584 }
7585 if (varonce371) {
7586 var372 = varonce371;
7587 } else {
7588 var373 = "--no-check-covariance";
7589 var374 = 21;
7590 var375 = string__NativeString__to_s_with_length(var373, var374);
7591 var372 = var375;
7592 varonce371 = var372;
7593 }
7594 var376 = NEW_array__Array(&type_array__Arraystring__String);
7595 { /* var376 = array_instance Array[String] */
7596 var377 = 1;
7597 var378 = NEW_array__NativeArray(var377, &type_array__NativeArraystring__String);
7598 ((struct instance_array__NativeArray*)var378)->values[0] = (val*) var372;
7599 ((void (*)(val*, val*, long))(var376->class->vft[COLOR_array__Array__with_native]))(var376, var378, var377) /* with_native on <var376:Array[String]>*/;
7600 CHECK_NEW_array__Array(var376);
7601 }
7602 ((void (*)(val*, val*, val*))(var365->class->vft[COLOR_opts__OptionBool__init]))(var365, var367, var376) /* init on <var365:OptionBool>*/;
7603 CHECK_NEW_opts__OptionBool(var365);
7604 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_no_check_covariance].val = var365; /* @opt_no_check_covariance on <self:ToolContext exact> */
7605 var379 = NEW_opts__OptionBool(&type_opts__OptionBool);
7606 if (varonce380) {
7607 var381 = varonce380;
7608 } else {
7609 var382 = "Disable isset tests at the end of constructors (dangerous)";
7610 var383 = 58;
7611 var384 = string__NativeString__to_s_with_length(var382, var383);
7612 var381 = var384;
7613 varonce380 = var381;
7614 }
7615 if (varonce385) {
7616 var386 = varonce385;
7617 } else {
7618 var387 = "--no-check-initialization";
7619 var388 = 25;
7620 var389 = string__NativeString__to_s_with_length(var387, var388);
7621 var386 = var389;
7622 varonce385 = var386;
7623 }
7624 var390 = NEW_array__Array(&type_array__Arraystring__String);
7625 { /* var390 = array_instance Array[String] */
7626 var391 = 1;
7627 var392 = NEW_array__NativeArray(var391, &type_array__NativeArraystring__String);
7628 ((struct instance_array__NativeArray*)var392)->values[0] = (val*) var386;
7629 ((void (*)(val*, val*, long))(var390->class->vft[COLOR_array__Array__with_native]))(var390, var392, var391) /* with_native on <var390:Array[String]>*/;
7630 CHECK_NEW_array__Array(var390);
7631 }
7632 ((void (*)(val*, val*, val*))(var379->class->vft[COLOR_opts__OptionBool__init]))(var379, var381, var390) /* init on <var379:OptionBool>*/;
7633 CHECK_NEW_opts__OptionBool(var379);
7634 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_no_check_initialization].val = var379; /* @opt_no_check_initialization on <self:ToolContext exact> */
7635 var393 = NEW_opts__OptionBool(&type_opts__OptionBool);
7636 if (varonce394) {
7637 var395 = varonce394;
7638 } else {
7639 var396 = "Disable the evaluation of explicit \'assert\' and \'as\' (dangerous)";
7640 var397 = 64;
7641 var398 = string__NativeString__to_s_with_length(var396, var397);
7642 var395 = var398;
7643 varonce394 = var395;
7644 }
7645 if (varonce399) {
7646 var400 = varonce399;
7647 } else {
7648 var401 = "--no-check-assert";
7649 var402 = 17;
7650 var403 = string__NativeString__to_s_with_length(var401, var402);
7651 var400 = var403;
7652 varonce399 = var400;
7653 }
7654 var404 = NEW_array__Array(&type_array__Arraystring__String);
7655 { /* var404 = array_instance Array[String] */
7656 var405 = 1;
7657 var406 = NEW_array__NativeArray(var405, &type_array__NativeArraystring__String);
7658 ((struct instance_array__NativeArray*)var406)->values[0] = (val*) var400;
7659 ((void (*)(val*, val*, long))(var404->class->vft[COLOR_array__Array__with_native]))(var404, var406, var405) /* with_native on <var404:Array[String]>*/;
7660 CHECK_NEW_array__Array(var404);
7661 }
7662 ((void (*)(val*, val*, val*))(var393->class->vft[COLOR_opts__OptionBool__init]))(var393, var395, var404) /* init on <var393:OptionBool>*/;
7663 CHECK_NEW_opts__OptionBool(var393);
7664 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_no_check_assert].val = var393; /* @opt_no_check_assert on <self:ToolContext exact> */
7665 var407 = NEW_opts__OptionBool(&type_opts__OptionBool);
7666 if (varonce408) {
7667 var409 = varonce408;
7668 } else {
7669 var410 = "Disable implicit casts on unsafe expression usage (dangerous)";
7670 var411 = 61;
7671 var412 = string__NativeString__to_s_with_length(var410, var411);
7672 var409 = var412;
7673 varonce408 = var409;
7674 }
7675 if (varonce413) {
7676 var414 = varonce413;
7677 } else {
7678 var415 = "--no-check-autocast";
7679 var416 = 19;
7680 var417 = string__NativeString__to_s_with_length(var415, var416);
7681 var414 = var417;
7682 varonce413 = var414;
7683 }
7684 var418 = NEW_array__Array(&type_array__Arraystring__String);
7685 { /* var418 = array_instance Array[String] */
7686 var419 = 1;
7687 var420 = NEW_array__NativeArray(var419, &type_array__NativeArraystring__String);
7688 ((struct instance_array__NativeArray*)var420)->values[0] = (val*) var414;
7689 ((void (*)(val*, val*, long))(var418->class->vft[COLOR_array__Array__with_native]))(var418, var420, var419) /* with_native on <var418:Array[String]>*/;
7690 CHECK_NEW_array__Array(var418);
7691 }
7692 ((void (*)(val*, val*, val*))(var407->class->vft[COLOR_opts__OptionBool__init]))(var407, var409, var418) /* init on <var407:OptionBool>*/;
7693 CHECK_NEW_opts__OptionBool(var407);
7694 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_no_check_autocast].val = var407; /* @opt_no_check_autocast on <self:ToolContext exact> */
7695 var421 = NEW_opts__OptionBool(&type_opts__OptionBool);
7696 if (varonce422) {
7697 var423 = varonce422;
7698 } else {
7699 var424 = "Disable implicit tests: unset attribute, null receiver (dangerous)";
7700 var425 = 66;
7701 var426 = string__NativeString__to_s_with_length(var424, var425);
7702 var423 = var426;
7703 varonce422 = var423;
7704 }
7705 if (varonce427) {
7706 var428 = varonce427;
7707 } else {
7708 var429 = "--no-check-other";
7709 var430 = 16;
7710 var431 = string__NativeString__to_s_with_length(var429, var430);
7711 var428 = var431;
7712 varonce427 = var428;
7713 }
7714 var432 = NEW_array__Array(&type_array__Arraystring__String);
7715 { /* var432 = array_instance Array[String] */
7716 var433 = 1;
7717 var434 = NEW_array__NativeArray(var433, &type_array__NativeArraystring__String);
7718 ((struct instance_array__NativeArray*)var434)->values[0] = (val*) var428;
7719 ((void (*)(val*, val*, long))(var432->class->vft[COLOR_array__Array__with_native]))(var432, var434, var433) /* with_native on <var432:Array[String]>*/;
7720 CHECK_NEW_array__Array(var432);
7721 }
7722 ((void (*)(val*, val*, val*))(var421->class->vft[COLOR_opts__OptionBool__init]))(var421, var423, var432) /* init on <var421:OptionBool>*/;
7723 CHECK_NEW_opts__OptionBool(var421);
7724 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_no_check_other].val = var421; /* @opt_no_check_other on <self:ToolContext exact> */
7725 var435 = NEW_opts__OptionBool(&type_opts__OptionBool);
7726 if (varonce436) {
7727 var437 = varonce436;
7728 } else {
7729 var438 = "Enable static and dynamic count of all type tests";
7730 var439 = 49;
7731 var440 = string__NativeString__to_s_with_length(var438, var439);
7732 var437 = var440;
7733 varonce436 = var437;
7734 }
7735 if (varonce441) {
7736 var442 = varonce441;
7737 } else {
7738 var443 = "--typing-test-metrics";
7739 var444 = 21;
7740 var445 = string__NativeString__to_s_with_length(var443, var444);
7741 var442 = var445;
7742 varonce441 = var442;
7743 }
7744 var446 = NEW_array__Array(&type_array__Arraystring__String);
7745 { /* var446 = array_instance Array[String] */
7746 var447 = 1;
7747 var448 = NEW_array__NativeArray(var447, &type_array__NativeArraystring__String);
7748 ((struct instance_array__NativeArray*)var448)->values[0] = (val*) var442;
7749 ((void (*)(val*, val*, long))(var446->class->vft[COLOR_array__Array__with_native]))(var446, var448, var447) /* with_native on <var446:Array[String]>*/;
7750 CHECK_NEW_array__Array(var446);
7751 }
7752 ((void (*)(val*, val*, val*))(var435->class->vft[COLOR_opts__OptionBool__init]))(var435, var437, var446) /* init on <var435:OptionBool>*/;
7753 CHECK_NEW_opts__OptionBool(var435);
7754 self->attrs[COLOR_abstract_compiler__ToolContext___64dopt_typing_test_metrics].val = var435; /* @opt_typing_test_metrics on <self:ToolContext exact> */
7755 var449 = NEW_opts__OptionBool(&type_opts__OptionBool);
7756 if (varonce450) {
7757 var451 = varonce450;
7758 } else {
7759 var452 = "Use separate compilation";
7760 var453 = 24;
7761 var454 = string__NativeString__to_s_with_length(var452, var453);
7762 var451 = var454;
7763 varonce450 = var451;
7764 }
7765 if (varonce455) {
7766 var456 = varonce455;
7767 } else {
7768 var457 = "--separate";
7769 var458 = 10;
7770 var459 = string__NativeString__to_s_with_length(var457, var458);
7771 var456 = var459;
7772 varonce455 = var456;
7773 }
7774 var460 = NEW_array__Array(&type_array__Arraystring__String);
7775 { /* var460 = array_instance Array[String] */
7776 var461 = 1;
7777 var462 = NEW_array__NativeArray(var461, &type_array__NativeArraystring__String);
7778 ((struct instance_array__NativeArray*)var462)->values[0] = (val*) var456;
7779 ((void (*)(val*, val*, long))(var460->class->vft[COLOR_array__Array__with_native]))(var460, var462, var461) /* with_native on <var460:Array[String]>*/;
7780 CHECK_NEW_array__Array(var460);
7781 }
7782 ((void (*)(val*, val*, val*))(var449->class->vft[COLOR_opts__OptionBool__init]))(var449, var451, var460) /* init on <var449:OptionBool>*/;
7783 CHECK_NEW_opts__OptionBool(var449);
7784 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_separate].val = var449; /* @opt_separate on <self:ToolContext exact> */
7785 var463 = NEW_opts__OptionBool(&type_opts__OptionBool);
7786 if (varonce464) {
7787 var465 = varonce464;
7788 } else {
7789 var466 = "Do not inline call to intern methods";
7790 var467 = 36;
7791 var468 = string__NativeString__to_s_with_length(var466, var467);
7792 var465 = var468;
7793 varonce464 = var465;
7794 }
7795 if (varonce469) {
7796 var470 = varonce469;
7797 } else {
7798 var471 = "--no-inline-intern";
7799 var472 = 18;
7800 var473 = string__NativeString__to_s_with_length(var471, var472);
7801 var470 = var473;
7802 varonce469 = var470;
7803 }
7804 var474 = NEW_array__Array(&type_array__Arraystring__String);
7805 { /* var474 = array_instance Array[String] */
7806 var475 = 1;
7807 var476 = NEW_array__NativeArray(var475, &type_array__NativeArraystring__String);
7808 ((struct instance_array__NativeArray*)var476)->values[0] = (val*) var470;
7809 ((void (*)(val*, val*, long))(var474->class->vft[COLOR_array__Array__with_native]))(var474, var476, var475) /* with_native on <var474:Array[String]>*/;
7810 CHECK_NEW_array__Array(var474);
7811 }
7812 ((void (*)(val*, val*, val*))(var463->class->vft[COLOR_opts__OptionBool__init]))(var463, var465, var474) /* init on <var463:OptionBool>*/;
7813 CHECK_NEW_opts__OptionBool(var463);
7814 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_no_inline_intern].val = var463; /* @opt_no_inline_intern on <self:ToolContext exact> */
7815 var477 = NEW_opts__OptionBool(&type_opts__OptionBool);
7816 if (varonce478) {
7817 var479 = varonce478;
7818 } else {
7819 var480 = "Put primitive attibutes in a box instead of an union";
7820 var481 = 52;
7821 var482 = string__NativeString__to_s_with_length(var480, var481);
7822 var479 = var482;
7823 varonce478 = var479;
7824 }
7825 if (varonce483) {
7826 var484 = varonce483;
7827 } else {
7828 var485 = "--no-union-attribute";
7829 var486 = 20;
7830 var487 = string__NativeString__to_s_with_length(var485, var486);
7831 var484 = var487;
7832 varonce483 = var484;
7833 }
7834 var488 = NEW_array__Array(&type_array__Arraystring__String);
7835 { /* var488 = array_instance Array[String] */
7836 var489 = 1;
7837 var490 = NEW_array__NativeArray(var489, &type_array__NativeArraystring__String);
7838 ((struct instance_array__NativeArray*)var490)->values[0] = (val*) var484;
7839 ((void (*)(val*, val*, long))(var488->class->vft[COLOR_array__Array__with_native]))(var488, var490, var489) /* with_native on <var488:Array[String]>*/;
7840 CHECK_NEW_array__Array(var488);
7841 }
7842 ((void (*)(val*, val*, val*))(var477->class->vft[COLOR_opts__OptionBool__init]))(var477, var479, var488) /* init on <var477:OptionBool>*/;
7843 CHECK_NEW_opts__OptionBool(var477);
7844 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_no_union_attribute].val = var477; /* @opt_no_union_attribute on <self:ToolContext exact> */
7845 var491 = NEW_opts__OptionBool(&type_opts__OptionBool);
7846 if (varonce492) {
7847 var493 = varonce492;
7848 } else {
7849 var494 = "Always call == in a polymorphic way";
7850 var495 = 35;
7851 var496 = string__NativeString__to_s_with_length(var494, var495);
7852 var493 = var496;
7853 varonce492 = var493;
7854 }
7855 if (varonce497) {
7856 var498 = varonce497;
7857 } else {
7858 var499 = "--no-shortcut-equal";
7859 var500 = 19;
7860 var501 = string__NativeString__to_s_with_length(var499, var500);
7861 var498 = var501;
7862 varonce497 = var498;
7863 }
7864 var502 = NEW_array__Array(&type_array__Arraystring__String);
7865 { /* var502 = array_instance Array[String] */
7866 var503 = 1;
7867 var504 = NEW_array__NativeArray(var503, &type_array__NativeArraystring__String);
7868 ((struct instance_array__NativeArray*)var504)->values[0] = (val*) var498;
7869 ((void (*)(val*, val*, long))(var502->class->vft[COLOR_array__Array__with_native]))(var502, var504, var503) /* with_native on <var502:Array[String]>*/;
7870 CHECK_NEW_array__Array(var502);
7871 }
7872 ((void (*)(val*, val*, val*))(var491->class->vft[COLOR_opts__OptionBool__init]))(var491, var493, var502) /* init on <var491:OptionBool>*/;
7873 CHECK_NEW_opts__OptionBool(var491);
7874 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_no_shortcut_equate].val = var491; /* @opt_no_shortcut_equate on <self:ToolContext exact> */
7875 var505 = NEW_opts__OptionBool(&type_opts__OptionBool);
7876 if (varonce506) {
7877 var507 = varonce506;
7878 } else {
7879 var508 = "Inline colors and ids";
7880 var509 = 21;
7881 var510 = string__NativeString__to_s_with_length(var508, var509);
7882 var507 = var510;
7883 varonce506 = var507;
7884 }
7885 if (varonce511) {
7886 var512 = varonce511;
7887 } else {
7888 var513 = "--inline-coloring-numbers";
7889 var514 = 25;
7890 var515 = string__NativeString__to_s_with_length(var513, var514);
7891 var512 = var515;
7892 varonce511 = var512;
7893 }
7894 var516 = NEW_array__Array(&type_array__Arraystring__String);
7895 { /* var516 = array_instance Array[String] */
7896 var517 = 1;
7897 var518 = NEW_array__NativeArray(var517, &type_array__NativeArraystring__String);
7898 ((struct instance_array__NativeArray*)var518)->values[0] = (val*) var512;
7899 ((void (*)(val*, val*, long))(var516->class->vft[COLOR_array__Array__with_native]))(var516, var518, var517) /* with_native on <var516:Array[String]>*/;
7900 CHECK_NEW_array__Array(var516);
7901 }
7902 ((void (*)(val*, val*, val*))(var505->class->vft[COLOR_opts__OptionBool__init]))(var505, var507, var516) /* init on <var505:OptionBool>*/;
7903 CHECK_NEW_opts__OptionBool(var505);
7904 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_inline_coloring_numbers].val = var505; /* @opt_inline_coloring_numbers on <self:ToolContext exact> */
7905 var519 = NEW_opts__OptionBool(&type_opts__OptionBool);
7906 if (varonce520) {
7907 var521 = varonce520;
7908 } else {
7909 var522 = "Colorize items incrementaly, used to simulate binary matrix typing";
7910 var523 = 66;
7911 var524 = string__NativeString__to_s_with_length(var522, var523);
7912 var521 = var524;
7913 varonce520 = var521;
7914 }
7915 if (varonce525) {
7916 var526 = varonce525;
7917 } else {
7918 var527 = "--bm-typing";
7919 var528 = 11;
7920 var529 = string__NativeString__to_s_with_length(var527, var528);
7921 var526 = var529;
7922 varonce525 = var526;
7923 }
7924 var530 = NEW_array__Array(&type_array__Arraystring__String);
7925 { /* var530 = array_instance Array[String] */
7926 var531 = 1;
7927 var532 = NEW_array__NativeArray(var531, &type_array__NativeArraystring__String);
7928 ((struct instance_array__NativeArray*)var532)->values[0] = (val*) var526;
7929 ((void (*)(val*, val*, long))(var530->class->vft[COLOR_array__Array__with_native]))(var530, var532, var531) /* with_native on <var530:Array[String]>*/;
7930 CHECK_NEW_array__Array(var530);
7931 }
7932 ((void (*)(val*, val*, val*))(var519->class->vft[COLOR_opts__OptionBool__init]))(var519, var521, var530) /* init on <var519:OptionBool>*/;
7933 CHECK_NEW_opts__OptionBool(var519);
7934 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_bm_typing].val = var519; /* @opt_bm_typing on <self:ToolContext exact> */
7935 var533 = NEW_opts__OptionBool(&type_opts__OptionBool);
7936 if (varonce534) {
7937 var535 = varonce534;
7938 } else {
7939 var536 = "Replace coloration by perfect hashing (with mod operator)";
7940 var537 = 57;
7941 var538 = string__NativeString__to_s_with_length(var536, var537);
7942 var535 = var538;
7943 varonce534 = var535;
7944 }
7945 if (varonce539) {
7946 var540 = varonce539;
7947 } else {
7948 var541 = "--phmod-typing";
7949 var542 = 14;
7950 var543 = string__NativeString__to_s_with_length(var541, var542);
7951 var540 = var543;
7952 varonce539 = var540;
7953 }
7954 var544 = NEW_array__Array(&type_array__Arraystring__String);
7955 { /* var544 = array_instance Array[String] */
7956 var545 = 1;
7957 var546 = NEW_array__NativeArray(var545, &type_array__NativeArraystring__String);
7958 ((struct instance_array__NativeArray*)var546)->values[0] = (val*) var540;
7959 ((void (*)(val*, val*, long))(var544->class->vft[COLOR_array__Array__with_native]))(var544, var546, var545) /* with_native on <var544:Array[String]>*/;
7960 CHECK_NEW_array__Array(var544);
7961 }
7962 ((void (*)(val*, val*, val*))(var533->class->vft[COLOR_opts__OptionBool__init]))(var533, var535, var544) /* init on <var533:OptionBool>*/;
7963 CHECK_NEW_opts__OptionBool(var533);
7964 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_phmod_typing].val = var533; /* @opt_phmod_typing on <self:ToolContext exact> */
7965 var547 = NEW_opts__OptionBool(&type_opts__OptionBool);
7966 if (varonce548) {
7967 var549 = varonce548;
7968 } else {
7969 var550 = "Replace coloration by perfect hashing (with and operator)";
7970 var551 = 57;
7971 var552 = string__NativeString__to_s_with_length(var550, var551);
7972 var549 = var552;
7973 varonce548 = var549;
7974 }
7975 if (varonce553) {
7976 var554 = varonce553;
7977 } else {
7978 var555 = "--phand-typing";
7979 var556 = 14;
7980 var557 = string__NativeString__to_s_with_length(var555, var556);
7981 var554 = var557;
7982 varonce553 = var554;
7983 }
7984 var558 = NEW_array__Array(&type_array__Arraystring__String);
7985 { /* var558 = array_instance Array[String] */
7986 var559 = 1;
7987 var560 = NEW_array__NativeArray(var559, &type_array__NativeArraystring__String);
7988 ((struct instance_array__NativeArray*)var560)->values[0] = (val*) var554;
7989 ((void (*)(val*, val*, long))(var558->class->vft[COLOR_array__Array__with_native]))(var558, var560, var559) /* with_native on <var558:Array[String]>*/;
7990 CHECK_NEW_array__Array(var558);
7991 }
7992 ((void (*)(val*, val*, val*))(var547->class->vft[COLOR_opts__OptionBool__init]))(var547, var549, var558) /* init on <var547:OptionBool>*/;
7993 CHECK_NEW_opts__OptionBool(var547);
7994 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_phand_typing].val = var547; /* @opt_phand_typing on <self:ToolContext exact> */
7995 var561 = NEW_opts__OptionBool(&type_opts__OptionBool);
7996 if (varonce562) {
7997 var563 = varonce562;
7998 } else {
7999 var564 = "Enable static size measuring of tables used for vft, typing and resolution";
8000 var565 = 74;
8001 var566 = string__NativeString__to_s_with_length(var564, var565);
8002 var563 = var566;
8003 varonce562 = var563;
8004 }
8005 if (varonce567) {
8006 var568 = varonce567;
8007 } else {
8008 var569 = "--tables-metrics";
8009 var570 = 16;
8010 var571 = string__NativeString__to_s_with_length(var569, var570);
8011 var568 = var571;
8012 varonce567 = var568;
8013 }
8014 var572 = NEW_array__Array(&type_array__Arraystring__String);
8015 { /* var572 = array_instance Array[String] */
8016 var573 = 1;
8017 var574 = NEW_array__NativeArray(var573, &type_array__NativeArraystring__String);
8018 ((struct instance_array__NativeArray*)var574)->values[0] = (val*) var568;
8019 ((void (*)(val*, val*, long))(var572->class->vft[COLOR_array__Array__with_native]))(var572, var574, var573) /* with_native on <var572:Array[String]>*/;
8020 CHECK_NEW_array__Array(var572);
8021 }
8022 ((void (*)(val*, val*, val*))(var561->class->vft[COLOR_opts__OptionBool__init]))(var561, var563, var572) /* init on <var561:OptionBool>*/;
8023 CHECK_NEW_opts__OptionBool(var561);
8024 self->attrs[COLOR_separate_compiler__ToolContext___64dopt_tables_metrics].val = var561; /* @opt_tables_metrics on <self:ToolContext exact> */
8025 var575 = NEW_opts__OptionBool(&type_opts__OptionBool);
8026 if (varonce576) {
8027 var577 = varonce576;
8028 } else {
8029 var578 = "Erase generic types";
8030 var579 = 19;
8031 var580 = string__NativeString__to_s_with_length(var578, var579);
8032 var577 = var580;
8033 varonce576 = var577;
8034 }
8035 if (varonce581) {
8036 var582 = varonce581;
8037 } else {
8038 var583 = "--erasure";
8039 var584 = 9;
8040 var585 = string__NativeString__to_s_with_length(var583, var584);
8041 var582 = var585;
8042 varonce581 = var582;
8043 }
8044 var586 = NEW_array__Array(&type_array__Arraystring__String);
8045 { /* var586 = array_instance Array[String] */
8046 var587 = 1;
8047 var588 = NEW_array__NativeArray(var587, &type_array__NativeArraystring__String);
8048 ((struct instance_array__NativeArray*)var588)->values[0] = (val*) var582;
8049 ((void (*)(val*, val*, long))(var586->class->vft[COLOR_array__Array__with_native]))(var586, var588, var587) /* with_native on <var586:Array[String]>*/;
8050 CHECK_NEW_array__Array(var586);
8051 }
8052 ((void (*)(val*, val*, val*))(var575->class->vft[COLOR_opts__OptionBool__init]))(var575, var577, var586) /* init on <var575:OptionBool>*/;
8053 CHECK_NEW_opts__OptionBool(var575);
8054 self->attrs[COLOR_separate_erasure_compiler__ToolContext___64dopt_erasure].val = var575; /* @opt_erasure on <self:ToolContext exact> */
8055 var589 = NEW_opts__OptionBool(&type_opts__OptionBool);
8056 if (varonce590) {
8057 var591 = varonce590;
8058 } else {
8059 var592 = "Disable implicit casts on unsafe return with erasure-typing policy (dangerous)";
8060 var593 = 78;
8061 var594 = string__NativeString__to_s_with_length(var592, var593);
8062 var591 = var594;
8063 varonce590 = var591;
8064 }
8065 if (varonce595) {
8066 var596 = varonce595;
8067 } else {
8068 var597 = "--no-check-erasure-cast";
8069 var598 = 23;
8070 var599 = string__NativeString__to_s_with_length(var597, var598);
8071 var596 = var599;
8072 varonce595 = var596;
8073 }
8074 var600 = NEW_array__Array(&type_array__Arraystring__String);
8075 { /* var600 = array_instance Array[String] */
8076 var601 = 1;
8077 var602 = NEW_array__NativeArray(var601, &type_array__NativeArraystring__String);
8078 ((struct instance_array__NativeArray*)var602)->values[0] = (val*) var596;
8079 ((void (*)(val*, val*, long))(var600->class->vft[COLOR_array__Array__with_native]))(var600, var602, var601) /* with_native on <var600:Array[String]>*/;
8080 CHECK_NEW_array__Array(var600);
8081 }
8082 ((void (*)(val*, val*, val*))(var589->class->vft[COLOR_opts__OptionBool__init]))(var589, var591, var600) /* init on <var589:OptionBool>*/;
8083 CHECK_NEW_opts__OptionBool(var589);
8084 self->attrs[COLOR_separate_erasure_compiler__ToolContext___64dopt_no_check_erasure_cast].val = var589; /* @opt_no_check_erasure_cast on <self:ToolContext exact> */
8085 return self;
8086 }
8087 /* allocate ToolContext */
8088 void CHECK_NEW_toolcontext__ToolContext(val* self) {
8089 }
8090 /* runtime class phase__AnnotationPhaseVisitor */
8091 const struct class class_phase__AnnotationPhaseVisitor = {
8092 0, /* box_kind */
8093 {
8094 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#object_id */
8095 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#is_same_type */
8096 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#is_same_instance */
8097 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#== */
8098 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#!= */
8099 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#output */
8100 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#output_class_name */
8101 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#exit */
8102 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#sys */
8103 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to phase:AnnotationPhaseVisitor:kernel#Object#hash */
8104 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to phase:AnnotationPhaseVisitor:string#Object#to_s */
8105 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to phase:AnnotationPhaseVisitor:string#Object#native_class_name */
8106 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to phase:AnnotationPhaseVisitor:string#Object#class_name */
8107 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to phase:AnnotationPhaseVisitor:string#Object#inspect */
8108 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to phase:AnnotationPhaseVisitor:string#Object#inspect_head */
8109 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to phase:AnnotationPhaseVisitor:string#Object#args */
8110 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to phase:AnnotationPhaseVisitor:math#Object#atan2 */
8111 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to phase:AnnotationPhaseVisitor:math#Object#pi */
8112 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to phase:AnnotationPhaseVisitor:math#Object#srand_from */
8113 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to phase:AnnotationPhaseVisitor:math#Object#srand */
8114 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to phase:AnnotationPhaseVisitor:stream#Object#poll */
8115 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to phase:AnnotationPhaseVisitor:stream#Object#intern_poll */
8116 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to phase:AnnotationPhaseVisitor:time#Object#get_time */
8117 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to phase:AnnotationPhaseVisitor:file#Object#printn */
8118 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to phase:AnnotationPhaseVisitor:file#Object#print */
8119 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to phase:AnnotationPhaseVisitor:file#Object#getc */
8120 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to phase:AnnotationPhaseVisitor:file#Object#gets */
8121 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to phase:AnnotationPhaseVisitor:file#Object#getcwd */
8122 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to phase:AnnotationPhaseVisitor:file#Object#file_getcwd */
8123 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to phase:AnnotationPhaseVisitor:file#Object#stdin */
8124 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to phase:AnnotationPhaseVisitor:file#Object#stdout */
8125 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to phase:AnnotationPhaseVisitor:file#Object#stderr */
8126 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to phase:AnnotationPhaseVisitor:model_base#Object#intrude_visibility */
8127 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to phase:AnnotationPhaseVisitor:model_base#Object#public_visibility */
8128 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to phase:AnnotationPhaseVisitor:model_base#Object#protected_visibility */
8129 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to phase:AnnotationPhaseVisitor:model_base#Object#private_visibility */
8130 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to phase:AnnotationPhaseVisitor:model_base#Object#none_visibility */
8131 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to phase:AnnotationPhaseVisitor:model#Object#abstract_kind */
8132 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to phase:AnnotationPhaseVisitor:model#Object#concrete_kind */
8133 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to phase:AnnotationPhaseVisitor:model#Object#interface_kind */
8134 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to phase:AnnotationPhaseVisitor:model#Object#enum_kind */
8135 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to phase:AnnotationPhaseVisitor:model#Object#extern_kind */
8136 (nitmethod_t)VIRTUAL_phase__AnnotationPhaseVisitor__visit, /* pointer to phase:AnnotationPhaseVisitor:phase#AnnotationPhaseVisitor#visit */
8137 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__enter_visit, /* pointer to phase:AnnotationPhaseVisitor:parser_nodes#Visitor#enter_visit */
8138 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node, /* pointer to phase:AnnotationPhaseVisitor:parser_nodes#Visitor#current_node */
8139 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node_61d, /* pointer to phase:AnnotationPhaseVisitor:parser_nodes#Visitor#current_node= */
8140 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__init, /* pointer to phase:AnnotationPhaseVisitor:parser_nodes#Visitor#init */
8141 (nitmethod_t)VIRTUAL_phase__AnnotationPhaseVisitor__phase, /* pointer to phase:AnnotationPhaseVisitor:phase#AnnotationPhaseVisitor#phase */
8142 (nitmethod_t)VIRTUAL_phase__AnnotationPhaseVisitor__phase_61d, /* pointer to phase:AnnotationPhaseVisitor:phase#AnnotationPhaseVisitor#phase= */
8143 (nitmethod_t)VIRTUAL_phase__AnnotationPhaseVisitor__init, /* pointer to phase:AnnotationPhaseVisitor:phase#AnnotationPhaseVisitor#init */
8144 }
8145 };
8146 /* allocate AnnotationPhaseVisitor */
8147 val* NEW_phase__AnnotationPhaseVisitor(const struct type* type) {
8148 val* self /* : AnnotationPhaseVisitor */;
8149 val* var /* : null */;
8150 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8151 self->type = type;
8152 self->class = &class_phase__AnnotationPhaseVisitor;
8153 var = NULL;
8154 self->attrs[COLOR_parser_nodes__Visitor___current_node].val = var; /* _current_node on <self:AnnotationPhaseVisitor exact> */
8155 return self;
8156 }
8157 /* allocate AnnotationPhaseVisitor */
8158 void CHECK_NEW_phase__AnnotationPhaseVisitor(val* self) {
8159 val* var /* : Phase */;
8160 var = self->attrs[COLOR_phase__AnnotationPhaseVisitor___64dphase].val; /* @phase on <self:AnnotationPhaseVisitor> */
8161 if (var == NULL) {
8162 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @phase");
8163 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 93);
8164 exit(1);
8165 }
8166 }
8167 /* runtime class simple_misc_analysis__SimpleMiscAnalysisPhase */
8168 const struct class class_simple_misc_analysis__SimpleMiscAnalysisPhase = {
8169 0, /* box_kind */
8170 {
8171 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#object_id */
8172 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#is_same_type */
8173 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#is_same_instance */
8174 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#== */
8175 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#!= */
8176 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#output */
8177 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#output_class_name */
8178 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#exit */
8179 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#sys */
8180 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:kernel#Object#hash */
8181 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:string#Object#to_s */
8182 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:string#Object#native_class_name */
8183 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:string#Object#class_name */
8184 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:string#Object#inspect */
8185 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:string#Object#inspect_head */
8186 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:string#Object#args */
8187 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:math#Object#atan2 */
8188 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:math#Object#pi */
8189 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:math#Object#srand_from */
8190 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:math#Object#srand */
8191 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:stream#Object#poll */
8192 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:stream#Object#intern_poll */
8193 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:time#Object#get_time */
8194 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#printn */
8195 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#print */
8196 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#getc */
8197 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#gets */
8198 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#getcwd */
8199 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#file_getcwd */
8200 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#stdin */
8201 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#stdout */
8202 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:file#Object#stderr */
8203 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model_base#Object#intrude_visibility */
8204 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model_base#Object#public_visibility */
8205 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model_base#Object#protected_visibility */
8206 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model_base#Object#private_visibility */
8207 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model_base#Object#none_visibility */
8208 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model#Object#abstract_kind */
8209 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model#Object#concrete_kind */
8210 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model#Object#interface_kind */
8211 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model#Object#enum_kind */
8212 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:model#Object#extern_kind */
8213 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#toolcontext */
8214 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#toolcontext= */
8215 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#in_hierarchy */
8216 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#in_hierarchy= */
8217 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#init */
8218 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscAnalysisPhase__process_nmodule, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:simple_misc_analysis#SimpleMiscAnalysisPhase#process_nmodule */
8219 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#process_nclassdef */
8220 (nitmethod_t)VIRTUAL_phase__Phase__process_npropdef, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#process_npropdef */
8221 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:phase#Phase#process_annotated_node */
8222 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to simple_misc_analysis:SimpleMiscAnalysisPhase:frontend#Phase#process_mainmodule */
8223 }
8224 };
8225 /* allocate SimpleMiscAnalysisPhase */
8226 val* NEW_simple_misc_analysis__SimpleMiscAnalysisPhase(const struct type* type) {
8227 val* self /* : SimpleMiscAnalysisPhase */;
8228 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8229 self->type = type;
8230 self->class = &class_simple_misc_analysis__SimpleMiscAnalysisPhase;
8231 return self;
8232 }
8233 /* allocate SimpleMiscAnalysisPhase */
8234 void CHECK_NEW_simple_misc_analysis__SimpleMiscAnalysisPhase(val* self) {
8235 val* var /* : ToolContext */;
8236 val* var1 /* : POSetElement[Phase] */;
8237 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:SimpleMiscAnalysisPhase> */
8238 if (var == NULL) {
8239 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
8240 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
8241 exit(1);
8242 }
8243 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:SimpleMiscAnalysisPhase> */
8244 if (var1 == NULL) {
8245 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
8246 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
8247 exit(1);
8248 }
8249 }
8250 /* runtime class simple_misc_analysis__SimpleMiscVisitor */
8251 const struct class class_simple_misc_analysis__SimpleMiscVisitor = {
8252 0, /* box_kind */
8253 {
8254 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#object_id */
8255 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#is_same_type */
8256 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#is_same_instance */
8257 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#== */
8258 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#!= */
8259 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#output */
8260 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#output_class_name */
8261 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#exit */
8262 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#sys */
8263 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to simple_misc_analysis:SimpleMiscVisitor:kernel#Object#hash */
8264 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to simple_misc_analysis:SimpleMiscVisitor:string#Object#to_s */
8265 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to simple_misc_analysis:SimpleMiscVisitor:string#Object#native_class_name */
8266 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to simple_misc_analysis:SimpleMiscVisitor:string#Object#class_name */
8267 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to simple_misc_analysis:SimpleMiscVisitor:string#Object#inspect */
8268 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to simple_misc_analysis:SimpleMiscVisitor:string#Object#inspect_head */
8269 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to simple_misc_analysis:SimpleMiscVisitor:string#Object#args */
8270 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to simple_misc_analysis:SimpleMiscVisitor:math#Object#atan2 */
8271 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to simple_misc_analysis:SimpleMiscVisitor:math#Object#pi */
8272 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to simple_misc_analysis:SimpleMiscVisitor:math#Object#srand_from */
8273 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to simple_misc_analysis:SimpleMiscVisitor:math#Object#srand */
8274 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to simple_misc_analysis:SimpleMiscVisitor:stream#Object#poll */
8275 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to simple_misc_analysis:SimpleMiscVisitor:stream#Object#intern_poll */
8276 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to simple_misc_analysis:SimpleMiscVisitor:time#Object#get_time */
8277 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#printn */
8278 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#print */
8279 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#getc */
8280 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#gets */
8281 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#getcwd */
8282 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#file_getcwd */
8283 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#stdin */
8284 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#stdout */
8285 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to simple_misc_analysis:SimpleMiscVisitor:file#Object#stderr */
8286 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model_base#Object#intrude_visibility */
8287 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model_base#Object#public_visibility */
8288 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model_base#Object#protected_visibility */
8289 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model_base#Object#private_visibility */
8290 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model_base#Object#none_visibility */
8291 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model#Object#abstract_kind */
8292 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model#Object#concrete_kind */
8293 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model#Object#interface_kind */
8294 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model#Object#enum_kind */
8295 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to simple_misc_analysis:SimpleMiscVisitor:model#Object#extern_kind */
8296 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscVisitor__visit, /* pointer to simple_misc_analysis:SimpleMiscVisitor:simple_misc_analysis#SimpleMiscVisitor#visit */
8297 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__enter_visit, /* pointer to simple_misc_analysis:SimpleMiscVisitor:parser_nodes#Visitor#enter_visit */
8298 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node, /* pointer to simple_misc_analysis:SimpleMiscVisitor:parser_nodes#Visitor#current_node */
8299 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node_61d, /* pointer to simple_misc_analysis:SimpleMiscVisitor:parser_nodes#Visitor#current_node= */
8300 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__init, /* pointer to simple_misc_analysis:SimpleMiscVisitor:parser_nodes#Visitor#init */
8301 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscVisitor__once_count, /* pointer to simple_misc_analysis:SimpleMiscVisitor:simple_misc_analysis#SimpleMiscVisitor#once_count */
8302 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscVisitor__once_count_61d, /* pointer to simple_misc_analysis:SimpleMiscVisitor:simple_misc_analysis#SimpleMiscVisitor#once_count= */
8303 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscVisitor__toolcontext, /* pointer to simple_misc_analysis:SimpleMiscVisitor:simple_misc_analysis#SimpleMiscVisitor#toolcontext */
8304 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscVisitor__toolcontext_61d, /* pointer to simple_misc_analysis:SimpleMiscVisitor:simple_misc_analysis#SimpleMiscVisitor#toolcontext= */
8305 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscVisitor__warning, /* pointer to simple_misc_analysis:SimpleMiscVisitor:simple_misc_analysis#SimpleMiscVisitor#warning */
8306 (nitmethod_t)VIRTUAL_simple_misc_analysis__SimpleMiscVisitor__init, /* pointer to simple_misc_analysis:SimpleMiscVisitor:simple_misc_analysis#SimpleMiscVisitor#init */
8307 }
8308 };
8309 /* allocate SimpleMiscVisitor */
8310 val* NEW_simple_misc_analysis__SimpleMiscVisitor(const struct type* type) {
8311 val* self /* : SimpleMiscVisitor */;
8312 val* var /* : null */;
8313 long var1 /* : Int */;
8314 self = nit_alloc(sizeof(struct instance) + 3*sizeof(nitattribute_t));
8315 self->type = type;
8316 self->class = &class_simple_misc_analysis__SimpleMiscVisitor;
8317 var = NULL;
8318 self->attrs[COLOR_parser_nodes__Visitor___current_node].val = var; /* _current_node on <self:SimpleMiscVisitor exact> */
8319 var1 = 0;
8320 self->attrs[COLOR_simple_misc_analysis__SimpleMiscVisitor___64donce_count].l = var1; /* @once_count on <self:SimpleMiscVisitor exact> */
8321 return self;
8322 }
8323 /* allocate SimpleMiscVisitor */
8324 void CHECK_NEW_simple_misc_analysis__SimpleMiscVisitor(val* self) {
8325 val* var /* : ToolContext */;
8326 var = self->attrs[COLOR_simple_misc_analysis__SimpleMiscVisitor___64dtoolcontext].val; /* @toolcontext on <self:SimpleMiscVisitor> */
8327 if (var == NULL) {
8328 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
8329 fprintf(stderr, " (%s:%d)\n", "src/simple_misc_analysis.nit", 57);
8330 exit(1);
8331 }
8332 }
8333 /* runtime class literal__LiteralPhase */
8334 const struct class class_literal__LiteralPhase = {
8335 0, /* box_kind */
8336 {
8337 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to literal:LiteralPhase:kernel#Object#object_id */
8338 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to literal:LiteralPhase:kernel#Object#is_same_type */
8339 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to literal:LiteralPhase:kernel#Object#is_same_instance */
8340 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to literal:LiteralPhase:kernel#Object#== */
8341 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to literal:LiteralPhase:kernel#Object#!= */
8342 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to literal:LiteralPhase:kernel#Object#output */
8343 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to literal:LiteralPhase:kernel#Object#output_class_name */
8344 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to literal:LiteralPhase:kernel#Object#exit */
8345 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to literal:LiteralPhase:kernel#Object#sys */
8346 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to literal:LiteralPhase:kernel#Object#hash */
8347 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to literal:LiteralPhase:string#Object#to_s */
8348 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to literal:LiteralPhase:string#Object#native_class_name */
8349 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to literal:LiteralPhase:string#Object#class_name */
8350 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to literal:LiteralPhase:string#Object#inspect */
8351 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to literal:LiteralPhase:string#Object#inspect_head */
8352 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to literal:LiteralPhase:string#Object#args */
8353 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to literal:LiteralPhase:math#Object#atan2 */
8354 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to literal:LiteralPhase:math#Object#pi */
8355 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to literal:LiteralPhase:math#Object#srand_from */
8356 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to literal:LiteralPhase:math#Object#srand */
8357 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to literal:LiteralPhase:stream#Object#poll */
8358 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to literal:LiteralPhase:stream#Object#intern_poll */
8359 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to literal:LiteralPhase:time#Object#get_time */
8360 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to literal:LiteralPhase:file#Object#printn */
8361 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to literal:LiteralPhase:file#Object#print */
8362 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to literal:LiteralPhase:file#Object#getc */
8363 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to literal:LiteralPhase:file#Object#gets */
8364 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to literal:LiteralPhase:file#Object#getcwd */
8365 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to literal:LiteralPhase:file#Object#file_getcwd */
8366 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to literal:LiteralPhase:file#Object#stdin */
8367 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to literal:LiteralPhase:file#Object#stdout */
8368 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to literal:LiteralPhase:file#Object#stderr */
8369 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to literal:LiteralPhase:model_base#Object#intrude_visibility */
8370 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to literal:LiteralPhase:model_base#Object#public_visibility */
8371 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to literal:LiteralPhase:model_base#Object#protected_visibility */
8372 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to literal:LiteralPhase:model_base#Object#private_visibility */
8373 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to literal:LiteralPhase:model_base#Object#none_visibility */
8374 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to literal:LiteralPhase:model#Object#abstract_kind */
8375 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to literal:LiteralPhase:model#Object#concrete_kind */
8376 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to literal:LiteralPhase:model#Object#interface_kind */
8377 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to literal:LiteralPhase:model#Object#enum_kind */
8378 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to literal:LiteralPhase:model#Object#extern_kind */
8379 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to literal:LiteralPhase:phase#Phase#toolcontext */
8380 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to literal:LiteralPhase:phase#Phase#toolcontext= */
8381 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to literal:LiteralPhase:phase#Phase#in_hierarchy */
8382 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to literal:LiteralPhase:phase#Phase#in_hierarchy= */
8383 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to literal:LiteralPhase:phase#Phase#init */
8384 (nitmethod_t)VIRTUAL_literal__LiteralPhase__process_nmodule, /* pointer to literal:LiteralPhase:literal#LiteralPhase#process_nmodule */
8385 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to literal:LiteralPhase:phase#Phase#process_nclassdef */
8386 (nitmethod_t)VIRTUAL_phase__Phase__process_npropdef, /* pointer to literal:LiteralPhase:phase#Phase#process_npropdef */
8387 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to literal:LiteralPhase:phase#Phase#process_annotated_node */
8388 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to literal:LiteralPhase:frontend#Phase#process_mainmodule */
8389 }
8390 };
8391 /* allocate LiteralPhase */
8392 val* NEW_literal__LiteralPhase(const struct type* type) {
8393 val* self /* : LiteralPhase */;
8394 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8395 self->type = type;
8396 self->class = &class_literal__LiteralPhase;
8397 return self;
8398 }
8399 /* allocate LiteralPhase */
8400 void CHECK_NEW_literal__LiteralPhase(val* self) {
8401 val* var /* : ToolContext */;
8402 val* var1 /* : POSetElement[Phase] */;
8403 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:LiteralPhase> */
8404 if (var == NULL) {
8405 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
8406 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
8407 exit(1);
8408 }
8409 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:LiteralPhase> */
8410 if (var1 == NULL) {
8411 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
8412 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
8413 exit(1);
8414 }
8415 }
8416 /* runtime class literal__LiteralVisitor */
8417 const struct class class_literal__LiteralVisitor = {
8418 0, /* box_kind */
8419 {
8420 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to literal:LiteralVisitor:kernel#Object#object_id */
8421 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to literal:LiteralVisitor:kernel#Object#is_same_type */
8422 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to literal:LiteralVisitor:kernel#Object#is_same_instance */
8423 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to literal:LiteralVisitor:kernel#Object#== */
8424 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to literal:LiteralVisitor:kernel#Object#!= */
8425 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to literal:LiteralVisitor:kernel#Object#output */
8426 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to literal:LiteralVisitor:kernel#Object#output_class_name */
8427 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to literal:LiteralVisitor:kernel#Object#exit */
8428 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to literal:LiteralVisitor:kernel#Object#sys */
8429 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to literal:LiteralVisitor:kernel#Object#hash */
8430 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to literal:LiteralVisitor:string#Object#to_s */
8431 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to literal:LiteralVisitor:string#Object#native_class_name */
8432 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to literal:LiteralVisitor:string#Object#class_name */
8433 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to literal:LiteralVisitor:string#Object#inspect */
8434 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to literal:LiteralVisitor:string#Object#inspect_head */
8435 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to literal:LiteralVisitor:string#Object#args */
8436 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to literal:LiteralVisitor:math#Object#atan2 */
8437 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to literal:LiteralVisitor:math#Object#pi */
8438 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to literal:LiteralVisitor:math#Object#srand_from */
8439 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to literal:LiteralVisitor:math#Object#srand */
8440 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to literal:LiteralVisitor:stream#Object#poll */
8441 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to literal:LiteralVisitor:stream#Object#intern_poll */
8442 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to literal:LiteralVisitor:time#Object#get_time */
8443 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to literal:LiteralVisitor:file#Object#printn */
8444 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to literal:LiteralVisitor:file#Object#print */
8445 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to literal:LiteralVisitor:file#Object#getc */
8446 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to literal:LiteralVisitor:file#Object#gets */
8447 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to literal:LiteralVisitor:file#Object#getcwd */
8448 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to literal:LiteralVisitor:file#Object#file_getcwd */
8449 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to literal:LiteralVisitor:file#Object#stdin */
8450 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to literal:LiteralVisitor:file#Object#stdout */
8451 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to literal:LiteralVisitor:file#Object#stderr */
8452 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to literal:LiteralVisitor:model_base#Object#intrude_visibility */
8453 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to literal:LiteralVisitor:model_base#Object#public_visibility */
8454 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to literal:LiteralVisitor:model_base#Object#protected_visibility */
8455 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to literal:LiteralVisitor:model_base#Object#private_visibility */
8456 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to literal:LiteralVisitor:model_base#Object#none_visibility */
8457 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to literal:LiteralVisitor:model#Object#abstract_kind */
8458 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to literal:LiteralVisitor:model#Object#concrete_kind */
8459 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to literal:LiteralVisitor:model#Object#interface_kind */
8460 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to literal:LiteralVisitor:model#Object#enum_kind */
8461 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to literal:LiteralVisitor:model#Object#extern_kind */
8462 (nitmethod_t)VIRTUAL_literal__LiteralVisitor__visit, /* pointer to literal:LiteralVisitor:literal#LiteralVisitor#visit */
8463 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__enter_visit, /* pointer to literal:LiteralVisitor:parser_nodes#Visitor#enter_visit */
8464 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node, /* pointer to literal:LiteralVisitor:parser_nodes#Visitor#current_node */
8465 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node_61d, /* pointer to literal:LiteralVisitor:parser_nodes#Visitor#current_node= */
8466 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__init, /* pointer to literal:LiteralVisitor:parser_nodes#Visitor#init */
8467 (nitmethod_t)VIRTUAL_literal__LiteralVisitor__toolcontext, /* pointer to literal:LiteralVisitor:literal#LiteralVisitor#toolcontext */
8468 (nitmethod_t)VIRTUAL_literal__LiteralVisitor__toolcontext_61d, /* pointer to literal:LiteralVisitor:literal#LiteralVisitor#toolcontext= */
8469 (nitmethod_t)VIRTUAL_literal__LiteralVisitor__init, /* pointer to literal:LiteralVisitor:literal#LiteralVisitor#init */
8470 }
8471 };
8472 /* allocate LiteralVisitor */
8473 val* NEW_literal__LiteralVisitor(const struct type* type) {
8474 val* self /* : LiteralVisitor */;
8475 val* var /* : null */;
8476 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8477 self->type = type;
8478 self->class = &class_literal__LiteralVisitor;
8479 var = NULL;
8480 self->attrs[COLOR_parser_nodes__Visitor___current_node].val = var; /* _current_node on <self:LiteralVisitor exact> */
8481 return self;
8482 }
8483 /* allocate LiteralVisitor */
8484 void CHECK_NEW_literal__LiteralVisitor(val* self) {
8485 val* var /* : ToolContext */;
8486 var = self->attrs[COLOR_literal__LiteralVisitor___64dtoolcontext].val; /* @toolcontext on <self:LiteralVisitor> */
8487 if (var == NULL) {
8488 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
8489 fprintf(stderr, " (%s:%d)\n", "src/literal.nit", 47);
8490 exit(1);
8491 }
8492 }
8493 /* runtime class scope__ScopePhase */
8494 const struct class class_scope__ScopePhase = {
8495 0, /* box_kind */
8496 {
8497 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to scope:ScopePhase:kernel#Object#object_id */
8498 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to scope:ScopePhase:kernel#Object#is_same_type */
8499 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to scope:ScopePhase:kernel#Object#is_same_instance */
8500 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to scope:ScopePhase:kernel#Object#== */
8501 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to scope:ScopePhase:kernel#Object#!= */
8502 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to scope:ScopePhase:kernel#Object#output */
8503 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to scope:ScopePhase:kernel#Object#output_class_name */
8504 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to scope:ScopePhase:kernel#Object#exit */
8505 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to scope:ScopePhase:kernel#Object#sys */
8506 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to scope:ScopePhase:kernel#Object#hash */
8507 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to scope:ScopePhase:string#Object#to_s */
8508 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to scope:ScopePhase:string#Object#native_class_name */
8509 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to scope:ScopePhase:string#Object#class_name */
8510 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to scope:ScopePhase:string#Object#inspect */
8511 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to scope:ScopePhase:string#Object#inspect_head */
8512 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to scope:ScopePhase:string#Object#args */
8513 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to scope:ScopePhase:math#Object#atan2 */
8514 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to scope:ScopePhase:math#Object#pi */
8515 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to scope:ScopePhase:math#Object#srand_from */
8516 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to scope:ScopePhase:math#Object#srand */
8517 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to scope:ScopePhase:stream#Object#poll */
8518 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to scope:ScopePhase:stream#Object#intern_poll */
8519 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to scope:ScopePhase:time#Object#get_time */
8520 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to scope:ScopePhase:file#Object#printn */
8521 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to scope:ScopePhase:file#Object#print */
8522 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to scope:ScopePhase:file#Object#getc */
8523 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to scope:ScopePhase:file#Object#gets */
8524 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to scope:ScopePhase:file#Object#getcwd */
8525 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to scope:ScopePhase:file#Object#file_getcwd */
8526 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to scope:ScopePhase:file#Object#stdin */
8527 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to scope:ScopePhase:file#Object#stdout */
8528 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to scope:ScopePhase:file#Object#stderr */
8529 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to scope:ScopePhase:model_base#Object#intrude_visibility */
8530 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to scope:ScopePhase:model_base#Object#public_visibility */
8531 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to scope:ScopePhase:model_base#Object#protected_visibility */
8532 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to scope:ScopePhase:model_base#Object#private_visibility */
8533 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to scope:ScopePhase:model_base#Object#none_visibility */
8534 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to scope:ScopePhase:model#Object#abstract_kind */
8535 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to scope:ScopePhase:model#Object#concrete_kind */
8536 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to scope:ScopePhase:model#Object#interface_kind */
8537 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to scope:ScopePhase:model#Object#enum_kind */
8538 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to scope:ScopePhase:model#Object#extern_kind */
8539 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to scope:ScopePhase:phase#Phase#toolcontext */
8540 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to scope:ScopePhase:phase#Phase#toolcontext= */
8541 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to scope:ScopePhase:phase#Phase#in_hierarchy */
8542 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to scope:ScopePhase:phase#Phase#in_hierarchy= */
8543 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to scope:ScopePhase:phase#Phase#init */
8544 (nitmethod_t)VIRTUAL_phase__Phase__process_nmodule, /* pointer to scope:ScopePhase:phase#Phase#process_nmodule */
8545 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to scope:ScopePhase:phase#Phase#process_nclassdef */
8546 (nitmethod_t)VIRTUAL_scope__ScopePhase__process_npropdef, /* pointer to scope:ScopePhase:scope#ScopePhase#process_npropdef */
8547 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to scope:ScopePhase:phase#Phase#process_annotated_node */
8548 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to scope:ScopePhase:frontend#Phase#process_mainmodule */
8549 }
8550 };
8551 /* allocate ScopePhase */
8552 val* NEW_scope__ScopePhase(const struct type* type) {
8553 val* self /* : ScopePhase */;
8554 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8555 self->type = type;
8556 self->class = &class_scope__ScopePhase;
8557 return self;
8558 }
8559 /* allocate ScopePhase */
8560 void CHECK_NEW_scope__ScopePhase(val* self) {
8561 val* var /* : ToolContext */;
8562 val* var1 /* : POSetElement[Phase] */;
8563 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:ScopePhase> */
8564 if (var == NULL) {
8565 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
8566 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
8567 exit(1);
8568 }
8569 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:ScopePhase> */
8570 if (var1 == NULL) {
8571 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
8572 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
8573 exit(1);
8574 }
8575 }
8576 /* runtime class scope__Variable */
8577 const struct class class_scope__Variable = {
8578 0, /* box_kind */
8579 {
8580 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to scope:Variable:kernel#Object#object_id */
8581 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to scope:Variable:kernel#Object#is_same_type */
8582 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to scope:Variable:kernel#Object#is_same_instance */
8583 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to scope:Variable:kernel#Object#== */
8584 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to scope:Variable:kernel#Object#!= */
8585 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to scope:Variable:kernel#Object#output */
8586 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to scope:Variable:kernel#Object#output_class_name */
8587 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to scope:Variable:kernel#Object#exit */
8588 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to scope:Variable:kernel#Object#sys */
8589 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to scope:Variable:kernel#Object#hash */
8590 (nitmethod_t)VIRTUAL_scope__Variable__to_s, /* pointer to scope:Variable:scope#Variable#to_s */
8591 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to scope:Variable:string#Object#native_class_name */
8592 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to scope:Variable:string#Object#class_name */
8593 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to scope:Variable:string#Object#inspect */
8594 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to scope:Variable:string#Object#inspect_head */
8595 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to scope:Variable:string#Object#args */
8596 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to scope:Variable:math#Object#atan2 */
8597 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to scope:Variable:math#Object#pi */
8598 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to scope:Variable:math#Object#srand_from */
8599 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to scope:Variable:math#Object#srand */
8600 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to scope:Variable:stream#Object#poll */
8601 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to scope:Variable:stream#Object#intern_poll */
8602 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to scope:Variable:time#Object#get_time */
8603 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to scope:Variable:file#Object#printn */
8604 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to scope:Variable:file#Object#print */
8605 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to scope:Variable:file#Object#getc */
8606 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to scope:Variable:file#Object#gets */
8607 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to scope:Variable:file#Object#getcwd */
8608 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to scope:Variable:file#Object#file_getcwd */
8609 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to scope:Variable:file#Object#stdin */
8610 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to scope:Variable:file#Object#stdout */
8611 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to scope:Variable:file#Object#stderr */
8612 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to scope:Variable:model_base#Object#intrude_visibility */
8613 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to scope:Variable:model_base#Object#public_visibility */
8614 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to scope:Variable:model_base#Object#protected_visibility */
8615 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to scope:Variable:model_base#Object#private_visibility */
8616 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to scope:Variable:model_base#Object#none_visibility */
8617 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to scope:Variable:model#Object#abstract_kind */
8618 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to scope:Variable:model#Object#concrete_kind */
8619 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to scope:Variable:model#Object#interface_kind */
8620 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to scope:Variable:model#Object#enum_kind */
8621 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to scope:Variable:model#Object#extern_kind */
8622 (nitmethod_t)VIRTUAL_scope__Variable__name, /* pointer to scope:Variable:scope#Variable#name */
8623 (nitmethod_t)VIRTUAL_scope__Variable__name_61d, /* pointer to scope:Variable:scope#Variable#name= */
8624 (nitmethod_t)VIRTUAL_scope__Variable__init, /* pointer to scope:Variable:scope#Variable#init */
8625 (nitmethod_t)VIRTUAL_typing__Variable__declared_type, /* pointer to scope:Variable:typing#Variable#declared_type */
8626 (nitmethod_t)VIRTUAL_typing__Variable__declared_type_61d, /* pointer to scope:Variable:typing#Variable#declared_type= */
8627 }
8628 };
8629 /* allocate Variable */
8630 val* NEW_scope__Variable(const struct type* type) {
8631 val* self /* : Variable */;
8632 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8633 self->type = type;
8634 self->class = &class_scope__Variable;
8635 return self;
8636 }
8637 /* allocate Variable */
8638 void CHECK_NEW_scope__Variable(val* self) {
8639 val* var /* : String */;
8640 val* var1 /* : nullable MType */;
8641 var = self->attrs[COLOR_scope__Variable___64dname].val; /* @name on <self:Variable> */
8642 if (var == NULL) {
8643 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @name");
8644 fprintf(stderr, " (%s:%d)\n", "src/scope.nit", 36);
8645 exit(1);
8646 }
8647 var1 = self->attrs[COLOR_typing__Variable___64ddeclared_type].val; /* @declared_type on <self:Variable> */
8648 }
8649 /* runtime class scope__EscapeMark */
8650 const struct class class_scope__EscapeMark = {
8651 0, /* box_kind */
8652 {
8653 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to scope:EscapeMark:kernel#Object#object_id */
8654 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to scope:EscapeMark:kernel#Object#is_same_type */
8655 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to scope:EscapeMark:kernel#Object#is_same_instance */
8656 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to scope:EscapeMark:kernel#Object#== */
8657 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to scope:EscapeMark:kernel#Object#!= */
8658 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to scope:EscapeMark:kernel#Object#output */
8659 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to scope:EscapeMark:kernel#Object#output_class_name */
8660 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to scope:EscapeMark:kernel#Object#exit */
8661 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to scope:EscapeMark:kernel#Object#sys */
8662 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to scope:EscapeMark:kernel#Object#hash */
8663 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to scope:EscapeMark:string#Object#to_s */
8664 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to scope:EscapeMark:string#Object#native_class_name */
8665 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to scope:EscapeMark:string#Object#class_name */
8666 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to scope:EscapeMark:string#Object#inspect */
8667 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to scope:EscapeMark:string#Object#inspect_head */
8668 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to scope:EscapeMark:string#Object#args */
8669 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to scope:EscapeMark:math#Object#atan2 */
8670 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to scope:EscapeMark:math#Object#pi */
8671 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to scope:EscapeMark:math#Object#srand_from */
8672 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to scope:EscapeMark:math#Object#srand */
8673 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to scope:EscapeMark:stream#Object#poll */
8674 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to scope:EscapeMark:stream#Object#intern_poll */
8675 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to scope:EscapeMark:time#Object#get_time */
8676 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to scope:EscapeMark:file#Object#printn */
8677 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to scope:EscapeMark:file#Object#print */
8678 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to scope:EscapeMark:file#Object#getc */
8679 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to scope:EscapeMark:file#Object#gets */
8680 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to scope:EscapeMark:file#Object#getcwd */
8681 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to scope:EscapeMark:file#Object#file_getcwd */
8682 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to scope:EscapeMark:file#Object#stdin */
8683 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to scope:EscapeMark:file#Object#stdout */
8684 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to scope:EscapeMark:file#Object#stderr */
8685 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to scope:EscapeMark:model_base#Object#intrude_visibility */
8686 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to scope:EscapeMark:model_base#Object#public_visibility */
8687 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to scope:EscapeMark:model_base#Object#protected_visibility */
8688 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to scope:EscapeMark:model_base#Object#private_visibility */
8689 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to scope:EscapeMark:model_base#Object#none_visibility */
8690 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to scope:EscapeMark:model#Object#abstract_kind */
8691 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to scope:EscapeMark:model#Object#concrete_kind */
8692 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to scope:EscapeMark:model#Object#interface_kind */
8693 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to scope:EscapeMark:model#Object#enum_kind */
8694 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to scope:EscapeMark:model#Object#extern_kind */
8695 (nitmethod_t)VIRTUAL_scope__EscapeMark__name, /* pointer to scope:EscapeMark:scope#EscapeMark#name */
8696 (nitmethod_t)VIRTUAL_scope__EscapeMark__name_61d, /* pointer to scope:EscapeMark:scope#EscapeMark#name= */
8697 (nitmethod_t)VIRTUAL_scope__EscapeMark__for_loop, /* pointer to scope:EscapeMark:scope#EscapeMark#for_loop */
8698 (nitmethod_t)VIRTUAL_scope__EscapeMark__for_loop_61d, /* pointer to scope:EscapeMark:scope#EscapeMark#for_loop= */
8699 (nitmethod_t)VIRTUAL_scope__EscapeMark__continues, /* pointer to scope:EscapeMark:scope#EscapeMark#continues */
8700 (nitmethod_t)VIRTUAL_scope__EscapeMark__continues_61d, /* pointer to scope:EscapeMark:scope#EscapeMark#continues= */
8701 (nitmethod_t)VIRTUAL_scope__EscapeMark__breaks, /* pointer to scope:EscapeMark:scope#EscapeMark#breaks */
8702 (nitmethod_t)VIRTUAL_scope__EscapeMark__breaks_61d, /* pointer to scope:EscapeMark:scope#EscapeMark#breaks= */
8703 (nitmethod_t)VIRTUAL_scope__EscapeMark__init, /* pointer to scope:EscapeMark:scope#EscapeMark#init */
8704 }
8705 };
8706 /* allocate EscapeMark */
8707 val* NEW_scope__EscapeMark(const struct type* type) {
8708 val* self /* : EscapeMark */;
8709 val* var /* : Array[AContinueExpr] */;
8710 val* var1 /* : Array[ABreakExpr] */;
8711 self = nit_alloc(sizeof(struct instance) + 4*sizeof(nitattribute_t));
8712 self->type = type;
8713 self->class = &class_scope__EscapeMark;
8714 var = NEW_array__Array(&type_array__Arrayparser_nodes__AContinueExpr);
8715 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[AContinueExpr]>*/;
8716 CHECK_NEW_array__Array(var);
8717 self->attrs[COLOR_scope__EscapeMark___64dcontinues].val = var; /* @continues on <self:EscapeMark exact> */
8718 var1 = NEW_array__Array(&type_array__Arrayparser_nodes__ABreakExpr);
8719 ((void (*)(val*))(var1->class->vft[COLOR_array__Array__init]))(var1) /* init on <var1:Array[ABreakExpr]>*/;
8720 CHECK_NEW_array__Array(var1);
8721 self->attrs[COLOR_scope__EscapeMark___64dbreaks].val = var1; /* @breaks on <self:EscapeMark exact> */
8722 return self;
8723 }
8724 /* allocate EscapeMark */
8725 void CHECK_NEW_scope__EscapeMark(val* self) {
8726 val* var /* : nullable String */;
8727 short int var1 /* : Bool */;
8728 var = self->attrs[COLOR_scope__EscapeMark___64dname].val; /* @name on <self:EscapeMark> */
8729 var1 = self->attrs[COLOR_scope__EscapeMark___64dfor_loop].s; /* @for_loop on <self:EscapeMark> */
8730 }
8731 /* runtime class scope__ScopeVisitor */
8732 const struct class class_scope__ScopeVisitor = {
8733 0, /* box_kind */
8734 {
8735 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to scope:ScopeVisitor:kernel#Object#object_id */
8736 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to scope:ScopeVisitor:kernel#Object#is_same_type */
8737 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to scope:ScopeVisitor:kernel#Object#is_same_instance */
8738 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to scope:ScopeVisitor:kernel#Object#== */
8739 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to scope:ScopeVisitor:kernel#Object#!= */
8740 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to scope:ScopeVisitor:kernel#Object#output */
8741 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to scope:ScopeVisitor:kernel#Object#output_class_name */
8742 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to scope:ScopeVisitor:kernel#Object#exit */
8743 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to scope:ScopeVisitor:kernel#Object#sys */
8744 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to scope:ScopeVisitor:kernel#Object#hash */
8745 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to scope:ScopeVisitor:string#Object#to_s */
8746 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to scope:ScopeVisitor:string#Object#native_class_name */
8747 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to scope:ScopeVisitor:string#Object#class_name */
8748 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to scope:ScopeVisitor:string#Object#inspect */
8749 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to scope:ScopeVisitor:string#Object#inspect_head */
8750 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to scope:ScopeVisitor:string#Object#args */
8751 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to scope:ScopeVisitor:math#Object#atan2 */
8752 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to scope:ScopeVisitor:math#Object#pi */
8753 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to scope:ScopeVisitor:math#Object#srand_from */
8754 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to scope:ScopeVisitor:math#Object#srand */
8755 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to scope:ScopeVisitor:stream#Object#poll */
8756 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to scope:ScopeVisitor:stream#Object#intern_poll */
8757 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to scope:ScopeVisitor:time#Object#get_time */
8758 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to scope:ScopeVisitor:file#Object#printn */
8759 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to scope:ScopeVisitor:file#Object#print */
8760 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to scope:ScopeVisitor:file#Object#getc */
8761 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to scope:ScopeVisitor:file#Object#gets */
8762 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to scope:ScopeVisitor:file#Object#getcwd */
8763 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to scope:ScopeVisitor:file#Object#file_getcwd */
8764 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to scope:ScopeVisitor:file#Object#stdin */
8765 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to scope:ScopeVisitor:file#Object#stdout */
8766 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to scope:ScopeVisitor:file#Object#stderr */
8767 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to scope:ScopeVisitor:model_base#Object#intrude_visibility */
8768 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to scope:ScopeVisitor:model_base#Object#public_visibility */
8769 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to scope:ScopeVisitor:model_base#Object#protected_visibility */
8770 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to scope:ScopeVisitor:model_base#Object#private_visibility */
8771 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to scope:ScopeVisitor:model_base#Object#none_visibility */
8772 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to scope:ScopeVisitor:model#Object#abstract_kind */
8773 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to scope:ScopeVisitor:model#Object#concrete_kind */
8774 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to scope:ScopeVisitor:model#Object#interface_kind */
8775 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to scope:ScopeVisitor:model#Object#enum_kind */
8776 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to scope:ScopeVisitor:model#Object#extern_kind */
8777 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__visit, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#visit */
8778 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__enter_visit, /* pointer to scope:ScopeVisitor:parser_nodes#Visitor#enter_visit */
8779 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node, /* pointer to scope:ScopeVisitor:parser_nodes#Visitor#current_node */
8780 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node_61d, /* pointer to scope:ScopeVisitor:parser_nodes#Visitor#current_node= */
8781 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__init, /* pointer to scope:ScopeVisitor:parser_nodes#Visitor#init */
8782 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__toolcontext, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#toolcontext */
8783 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__toolcontext_61d, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#toolcontext= */
8784 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__selfvariable, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#selfvariable */
8785 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__selfvariable_61d, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#selfvariable= */
8786 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__init, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#init */
8787 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__scopes, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#scopes */
8788 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__scopes_61d, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#scopes= */
8789 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__register_variable, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#register_variable */
8790 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__search_variable, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#search_variable */
8791 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__enter_visit_block, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#enter_visit_block */
8792 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__search_label, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#search_label */
8793 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__make_escape_mark, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#make_escape_mark */
8794 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__get_escapemark, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#get_escapemark */
8795 (nitmethod_t)VIRTUAL_scope__ScopeVisitor__error, /* pointer to scope:ScopeVisitor:scope#ScopeVisitor#error */
8796 }
8797 };
8798 /* allocate ScopeVisitor */
8799 val* NEW_scope__ScopeVisitor(const struct type* type) {
8800 val* self /* : ScopeVisitor */;
8801 val* var /* : null */;
8802 val* var1 /* : Variable */;
8803 static val* varonce;
8804 val* var2 /* : String */;
8805 char* var3 /* : NativeString */;
8806 long var4 /* : Int */;
8807 val* var5 /* : String */;
8808 val* var6 /* : List[Scope] */;
8809 self = nit_alloc(sizeof(struct instance) + 4*sizeof(nitattribute_t));
8810 self->type = type;
8811 self->class = &class_scope__ScopeVisitor;
8812 var = NULL;
8813 self->attrs[COLOR_parser_nodes__Visitor___current_node].val = var; /* _current_node on <self:ScopeVisitor exact> */
8814 var1 = NEW_scope__Variable(&type_scope__Variable);
8815 if (varonce) {
8816 var2 = varonce;
8817 } else {
8818 var3 = "self";
8819 var4 = 4;
8820 var5 = string__NativeString__to_s_with_length(var3, var4);
8821 var2 = var5;
8822 varonce = var2;
8823 }
8824 ((void (*)(val*, val*))(var1->class->vft[COLOR_scope__Variable__init]))(var1, var2) /* init on <var1:Variable>*/;
8825 CHECK_NEW_scope__Variable(var1);
8826 self->attrs[COLOR_scope__ScopeVisitor___64dselfvariable].val = var1; /* @selfvariable on <self:ScopeVisitor exact> */
8827 var6 = NEW_list__List(&type_list__Listscope__Scope);
8828 ((void (*)(val*))(var6->class->vft[COLOR_list__List__init]))(var6) /* init on <var6:List[Scope]>*/;
8829 CHECK_NEW_list__List(var6);
8830 self->attrs[COLOR_scope__ScopeVisitor___64dscopes].val = var6; /* @scopes on <self:ScopeVisitor exact> */
8831 return self;
8832 }
8833 /* allocate ScopeVisitor */
8834 void CHECK_NEW_scope__ScopeVisitor(val* self) {
8835 val* var /* : ToolContext */;
8836 var = self->attrs[COLOR_scope__ScopeVisitor___64dtoolcontext].val; /* @toolcontext on <self:ScopeVisitor> */
8837 if (var == NULL) {
8838 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
8839 fprintf(stderr, " (%s:%d)\n", "src/scope.nit", 68);
8840 exit(1);
8841 }
8842 }
8843 /* runtime class scope__Scope */
8844 const struct class class_scope__Scope = {
8845 0, /* box_kind */
8846 {
8847 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to scope:Scope:kernel#Object#object_id */
8848 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to scope:Scope:kernel#Object#is_same_type */
8849 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to scope:Scope:kernel#Object#is_same_instance */
8850 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to scope:Scope:kernel#Object#== */
8851 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to scope:Scope:kernel#Object#!= */
8852 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to scope:Scope:kernel#Object#output */
8853 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to scope:Scope:kernel#Object#output_class_name */
8854 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to scope:Scope:kernel#Object#exit */
8855 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to scope:Scope:kernel#Object#sys */
8856 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to scope:Scope:kernel#Object#hash */
8857 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to scope:Scope:string#Object#to_s */
8858 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to scope:Scope:string#Object#native_class_name */
8859 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to scope:Scope:string#Object#class_name */
8860 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to scope:Scope:string#Object#inspect */
8861 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to scope:Scope:string#Object#inspect_head */
8862 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to scope:Scope:string#Object#args */
8863 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to scope:Scope:math#Object#atan2 */
8864 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to scope:Scope:math#Object#pi */
8865 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to scope:Scope:math#Object#srand_from */
8866 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to scope:Scope:math#Object#srand */
8867 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to scope:Scope:stream#Object#poll */
8868 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to scope:Scope:stream#Object#intern_poll */
8869 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to scope:Scope:time#Object#get_time */
8870 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to scope:Scope:file#Object#printn */
8871 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to scope:Scope:file#Object#print */
8872 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to scope:Scope:file#Object#getc */
8873 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to scope:Scope:file#Object#gets */
8874 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to scope:Scope:file#Object#getcwd */
8875 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to scope:Scope:file#Object#file_getcwd */
8876 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to scope:Scope:file#Object#stdin */
8877 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to scope:Scope:file#Object#stdout */
8878 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to scope:Scope:file#Object#stderr */
8879 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to scope:Scope:model_base#Object#intrude_visibility */
8880 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to scope:Scope:model_base#Object#public_visibility */
8881 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to scope:Scope:model_base#Object#protected_visibility */
8882 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to scope:Scope:model_base#Object#private_visibility */
8883 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to scope:Scope:model_base#Object#none_visibility */
8884 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to scope:Scope:model#Object#abstract_kind */
8885 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to scope:Scope:model#Object#concrete_kind */
8886 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to scope:Scope:model#Object#interface_kind */
8887 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to scope:Scope:model#Object#enum_kind */
8888 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to scope:Scope:model#Object#extern_kind */
8889 (nitmethod_t)VIRTUAL_scope__Scope__variables, /* pointer to scope:Scope:scope#Scope#variables */
8890 (nitmethod_t)VIRTUAL_scope__Scope__variables_61d, /* pointer to scope:Scope:scope#Scope#variables= */
8891 (nitmethod_t)VIRTUAL_scope__Scope__escapemark, /* pointer to scope:Scope:scope#Scope#escapemark */
8892 (nitmethod_t)VIRTUAL_scope__Scope__escapemark_61d, /* pointer to scope:Scope:scope#Scope#escapemark= */
8893 (nitmethod_t)VIRTUAL_scope__Scope__get_variable, /* pointer to scope:Scope:scope#Scope#get_variable */
8894 (nitmethod_t)VIRTUAL_scope__Scope__init, /* pointer to scope:Scope:scope#Scope#init */
8895 }
8896 };
8897 /* allocate Scope */
8898 val* NEW_scope__Scope(const struct type* type) {
8899 val* self /* : Scope */;
8900 val* var /* : HashMap[String, Variable] */;
8901 val* var1 /* : null */;
8902 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8903 self->type = type;
8904 self->class = &class_scope__Scope;
8905 var = NEW_hash_collection__HashMap(&type_hash_collection__HashMapstring__Stringscope__Variable);
8906 ((void (*)(val*))(var->class->vft[COLOR_hash_collection__HashMap__init]))(var) /* init on <var:HashMap[String, Variable]>*/;
8907 CHECK_NEW_hash_collection__HashMap(var);
8908 self->attrs[COLOR_scope__Scope___64dvariables].val = var; /* @variables on <self:Scope exact> */
8909 var1 = NULL;
8910 self->attrs[COLOR_scope__Scope___64descapemark].val = var1; /* @escapemark on <self:Scope exact> */
8911 return self;
8912 }
8913 /* allocate Scope */
8914 void CHECK_NEW_scope__Scope(val* self) {
8915 }
8916 /* runtime class flow__FlowPhase */
8917 const struct class class_flow__FlowPhase = {
8918 0, /* box_kind */
8919 {
8920 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to flow:FlowPhase:kernel#Object#object_id */
8921 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to flow:FlowPhase:kernel#Object#is_same_type */
8922 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to flow:FlowPhase:kernel#Object#is_same_instance */
8923 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to flow:FlowPhase:kernel#Object#== */
8924 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to flow:FlowPhase:kernel#Object#!= */
8925 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to flow:FlowPhase:kernel#Object#output */
8926 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to flow:FlowPhase:kernel#Object#output_class_name */
8927 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to flow:FlowPhase:kernel#Object#exit */
8928 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to flow:FlowPhase:kernel#Object#sys */
8929 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to flow:FlowPhase:kernel#Object#hash */
8930 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to flow:FlowPhase:string#Object#to_s */
8931 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to flow:FlowPhase:string#Object#native_class_name */
8932 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to flow:FlowPhase:string#Object#class_name */
8933 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to flow:FlowPhase:string#Object#inspect */
8934 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to flow:FlowPhase:string#Object#inspect_head */
8935 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to flow:FlowPhase:string#Object#args */
8936 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to flow:FlowPhase:math#Object#atan2 */
8937 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to flow:FlowPhase:math#Object#pi */
8938 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to flow:FlowPhase:math#Object#srand_from */
8939 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to flow:FlowPhase:math#Object#srand */
8940 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to flow:FlowPhase:stream#Object#poll */
8941 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to flow:FlowPhase:stream#Object#intern_poll */
8942 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to flow:FlowPhase:time#Object#get_time */
8943 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to flow:FlowPhase:file#Object#printn */
8944 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to flow:FlowPhase:file#Object#print */
8945 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to flow:FlowPhase:file#Object#getc */
8946 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to flow:FlowPhase:file#Object#gets */
8947 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to flow:FlowPhase:file#Object#getcwd */
8948 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to flow:FlowPhase:file#Object#file_getcwd */
8949 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to flow:FlowPhase:file#Object#stdin */
8950 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to flow:FlowPhase:file#Object#stdout */
8951 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to flow:FlowPhase:file#Object#stderr */
8952 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to flow:FlowPhase:model_base#Object#intrude_visibility */
8953 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to flow:FlowPhase:model_base#Object#public_visibility */
8954 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to flow:FlowPhase:model_base#Object#protected_visibility */
8955 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to flow:FlowPhase:model_base#Object#private_visibility */
8956 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to flow:FlowPhase:model_base#Object#none_visibility */
8957 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to flow:FlowPhase:model#Object#abstract_kind */
8958 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to flow:FlowPhase:model#Object#concrete_kind */
8959 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to flow:FlowPhase:model#Object#interface_kind */
8960 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to flow:FlowPhase:model#Object#enum_kind */
8961 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to flow:FlowPhase:model#Object#extern_kind */
8962 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to flow:FlowPhase:phase#Phase#toolcontext */
8963 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to flow:FlowPhase:phase#Phase#toolcontext= */
8964 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to flow:FlowPhase:phase#Phase#in_hierarchy */
8965 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to flow:FlowPhase:phase#Phase#in_hierarchy= */
8966 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to flow:FlowPhase:phase#Phase#init */
8967 (nitmethod_t)VIRTUAL_phase__Phase__process_nmodule, /* pointer to flow:FlowPhase:phase#Phase#process_nmodule */
8968 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to flow:FlowPhase:phase#Phase#process_nclassdef */
8969 (nitmethod_t)VIRTUAL_flow__FlowPhase__process_npropdef, /* pointer to flow:FlowPhase:flow#FlowPhase#process_npropdef */
8970 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to flow:FlowPhase:phase#Phase#process_annotated_node */
8971 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to flow:FlowPhase:frontend#Phase#process_mainmodule */
8972 }
8973 };
8974 /* allocate FlowPhase */
8975 val* NEW_flow__FlowPhase(const struct type* type) {
8976 val* self /* : FlowPhase */;
8977 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
8978 self->type = type;
8979 self->class = &class_flow__FlowPhase;
8980 return self;
8981 }
8982 /* allocate FlowPhase */
8983 void CHECK_NEW_flow__FlowPhase(val* self) {
8984 val* var /* : ToolContext */;
8985 val* var1 /* : POSetElement[Phase] */;
8986 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:FlowPhase> */
8987 if (var == NULL) {
8988 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
8989 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
8990 exit(1);
8991 }
8992 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:FlowPhase> */
8993 if (var1 == NULL) {
8994 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
8995 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
8996 exit(1);
8997 }
8998 }
8999 /* runtime class flow__FlowVisitor */
9000 const struct class class_flow__FlowVisitor = {
9001 0, /* box_kind */
9002 {
9003 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to flow:FlowVisitor:kernel#Object#object_id */
9004 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to flow:FlowVisitor:kernel#Object#is_same_type */
9005 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to flow:FlowVisitor:kernel#Object#is_same_instance */
9006 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to flow:FlowVisitor:kernel#Object#== */
9007 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to flow:FlowVisitor:kernel#Object#!= */
9008 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to flow:FlowVisitor:kernel#Object#output */
9009 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to flow:FlowVisitor:kernel#Object#output_class_name */
9010 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to flow:FlowVisitor:kernel#Object#exit */
9011 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to flow:FlowVisitor:kernel#Object#sys */
9012 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to flow:FlowVisitor:kernel#Object#hash */
9013 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to flow:FlowVisitor:string#Object#to_s */
9014 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to flow:FlowVisitor:string#Object#native_class_name */
9015 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to flow:FlowVisitor:string#Object#class_name */
9016 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to flow:FlowVisitor:string#Object#inspect */
9017 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to flow:FlowVisitor:string#Object#inspect_head */
9018 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to flow:FlowVisitor:string#Object#args */
9019 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to flow:FlowVisitor:math#Object#atan2 */
9020 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to flow:FlowVisitor:math#Object#pi */
9021 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to flow:FlowVisitor:math#Object#srand_from */
9022 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to flow:FlowVisitor:math#Object#srand */
9023 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to flow:FlowVisitor:stream#Object#poll */
9024 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to flow:FlowVisitor:stream#Object#intern_poll */
9025 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to flow:FlowVisitor:time#Object#get_time */
9026 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to flow:FlowVisitor:file#Object#printn */
9027 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to flow:FlowVisitor:file#Object#print */
9028 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to flow:FlowVisitor:file#Object#getc */
9029 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to flow:FlowVisitor:file#Object#gets */
9030 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to flow:FlowVisitor:file#Object#getcwd */
9031 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to flow:FlowVisitor:file#Object#file_getcwd */
9032 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to flow:FlowVisitor:file#Object#stdin */
9033 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to flow:FlowVisitor:file#Object#stdout */
9034 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to flow:FlowVisitor:file#Object#stderr */
9035 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to flow:FlowVisitor:model_base#Object#intrude_visibility */
9036 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to flow:FlowVisitor:model_base#Object#public_visibility */
9037 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to flow:FlowVisitor:model_base#Object#protected_visibility */
9038 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to flow:FlowVisitor:model_base#Object#private_visibility */
9039 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to flow:FlowVisitor:model_base#Object#none_visibility */
9040 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to flow:FlowVisitor:model#Object#abstract_kind */
9041 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to flow:FlowVisitor:model#Object#concrete_kind */
9042 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to flow:FlowVisitor:model#Object#interface_kind */
9043 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to flow:FlowVisitor:model#Object#enum_kind */
9044 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to flow:FlowVisitor:model#Object#extern_kind */
9045 (nitmethod_t)VIRTUAL_flow__FlowVisitor__visit, /* pointer to flow:FlowVisitor:flow#FlowVisitor#visit */
9046 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__enter_visit, /* pointer to flow:FlowVisitor:parser_nodes#Visitor#enter_visit */
9047 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node, /* pointer to flow:FlowVisitor:parser_nodes#Visitor#current_node */
9048 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node_61d, /* pointer to flow:FlowVisitor:parser_nodes#Visitor#current_node= */
9049 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__init, /* pointer to flow:FlowVisitor:parser_nodes#Visitor#init */
9050 (nitmethod_t)VIRTUAL_flow__FlowVisitor__current_flow_context, /* pointer to flow:FlowVisitor:flow#FlowVisitor#current_flow_context */
9051 (nitmethod_t)VIRTUAL_flow__FlowVisitor__current_flow_context_61d, /* pointer to flow:FlowVisitor:flow#FlowVisitor#current_flow_context= */
9052 (nitmethod_t)VIRTUAL_flow__FlowVisitor__toolcontext, /* pointer to flow:FlowVisitor:flow#FlowVisitor#toolcontext */
9053 (nitmethod_t)VIRTUAL_flow__FlowVisitor__toolcontext_61d, /* pointer to flow:FlowVisitor:flow#FlowVisitor#toolcontext= */
9054 (nitmethod_t)VIRTUAL_flow__FlowVisitor__init, /* pointer to flow:FlowVisitor:flow#FlowVisitor#init */
9055 (nitmethod_t)VIRTUAL_flow__FlowVisitor__first, /* pointer to flow:FlowVisitor:flow#FlowVisitor#first */
9056 (nitmethod_t)VIRTUAL_flow__FlowVisitor__first_61d, /* pointer to flow:FlowVisitor:flow#FlowVisitor#first= */
9057 (nitmethod_t)VIRTUAL_flow__FlowVisitor__visit_expr, /* pointer to flow:FlowVisitor:flow#FlowVisitor#visit_expr */
9058 (nitmethod_t)VIRTUAL_flow__FlowVisitor__flows, /* pointer to flow:FlowVisitor:flow#FlowVisitor#flows */
9059 (nitmethod_t)VIRTUAL_flow__FlowVisitor__flows_61d, /* pointer to flow:FlowVisitor:flow#FlowVisitor#flows= */
9060 (nitmethod_t)VIRTUAL_flow__FlowVisitor__printflow, /* pointer to flow:FlowVisitor:flow#FlowVisitor#printflow */
9061 (nitmethod_t)VIRTUAL_flow__FlowVisitor__make_sub_flow, /* pointer to flow:FlowVisitor:flow#FlowVisitor#make_sub_flow */
9062 (nitmethod_t)VIRTUAL_flow__FlowVisitor__make_merge_flow, /* pointer to flow:FlowVisitor:flow#FlowVisitor#make_merge_flow */
9063 (nitmethod_t)VIRTUAL_flow__FlowVisitor__make_true_false_flow, /* pointer to flow:FlowVisitor:flow#FlowVisitor#make_true_false_flow */
9064 (nitmethod_t)VIRTUAL_flow__FlowVisitor__make_sub_true_false_flow, /* pointer to flow:FlowVisitor:flow#FlowVisitor#make_sub_true_false_flow */
9065 (nitmethod_t)VIRTUAL_flow__FlowVisitor__make_unreachable_flow, /* pointer to flow:FlowVisitor:flow#FlowVisitor#make_unreachable_flow */
9066 (nitmethod_t)VIRTUAL_flow__FlowVisitor__merge_continues_to, /* pointer to flow:FlowVisitor:flow#FlowVisitor#merge_continues_to */
9067 (nitmethod_t)VIRTUAL_flow__FlowVisitor__merge_breaks, /* pointer to flow:FlowVisitor:flow#FlowVisitor#merge_breaks */
9068 }
9069 };
9070 /* allocate FlowVisitor */
9071 val* NEW_flow__FlowVisitor(const struct type* type) {
9072 val* self /* : FlowVisitor */;
9073 val* var /* : null */;
9074 val* var1 /* : Array[FlowContext] */;
9075 self = nit_alloc(sizeof(struct instance) + 5*sizeof(nitattribute_t));
9076 self->type = type;
9077 self->class = &class_flow__FlowVisitor;
9078 var = NULL;
9079 self->attrs[COLOR_parser_nodes__Visitor___current_node].val = var; /* _current_node on <self:FlowVisitor exact> */
9080 var1 = NEW_array__Array(&type_array__Arrayflow__FlowContext);
9081 ((void (*)(val*))(var1->class->vft[COLOR_array__Array__init]))(var1) /* init on <var1:Array[FlowContext]>*/;
9082 CHECK_NEW_array__Array(var1);
9083 self->attrs[COLOR_flow__FlowVisitor___64dflows].val = var1; /* @flows on <self:FlowVisitor exact> */
9084 return self;
9085 }
9086 /* allocate FlowVisitor */
9087 void CHECK_NEW_flow__FlowVisitor(val* self) {
9088 val* var /* : FlowContext */;
9089 val* var1 /* : ToolContext */;
9090 val* var2 /* : nullable ANode */;
9091 var = self->attrs[COLOR_flow__FlowVisitor___64dcurrent_flow_context].val; /* @current_flow_context on <self:FlowVisitor> */
9092 if (var == NULL) {
9093 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @current_flow_context");
9094 fprintf(stderr, " (%s:%d)\n", "src/flow.nit", 39);
9095 exit(1);
9096 }
9097 var1 = self->attrs[COLOR_flow__FlowVisitor___64dtoolcontext].val; /* @toolcontext on <self:FlowVisitor> */
9098 if (var1 == NULL) {
9099 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
9100 fprintf(stderr, " (%s:%d)\n", "src/flow.nit", 41);
9101 exit(1);
9102 }
9103 var2 = self->attrs[COLOR_flow__FlowVisitor___64dfirst].val; /* @first on <self:FlowVisitor> */
9104 }
9105 /* runtime class flow__FlowContext */
9106 const struct class class_flow__FlowContext = {
9107 0, /* box_kind */
9108 {
9109 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to flow:FlowContext:kernel#Object#object_id */
9110 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to flow:FlowContext:kernel#Object#is_same_type */
9111 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to flow:FlowContext:kernel#Object#is_same_instance */
9112 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to flow:FlowContext:kernel#Object#== */
9113 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to flow:FlowContext:kernel#Object#!= */
9114 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to flow:FlowContext:kernel#Object#output */
9115 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to flow:FlowContext:kernel#Object#output_class_name */
9116 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to flow:FlowContext:kernel#Object#exit */
9117 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to flow:FlowContext:kernel#Object#sys */
9118 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to flow:FlowContext:kernel#Object#hash */
9119 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to flow:FlowContext:string#Object#to_s */
9120 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to flow:FlowContext:string#Object#native_class_name */
9121 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to flow:FlowContext:string#Object#class_name */
9122 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to flow:FlowContext:string#Object#inspect */
9123 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to flow:FlowContext:string#Object#inspect_head */
9124 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to flow:FlowContext:string#Object#args */
9125 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to flow:FlowContext:math#Object#atan2 */
9126 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to flow:FlowContext:math#Object#pi */
9127 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to flow:FlowContext:math#Object#srand_from */
9128 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to flow:FlowContext:math#Object#srand */
9129 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to flow:FlowContext:stream#Object#poll */
9130 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to flow:FlowContext:stream#Object#intern_poll */
9131 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to flow:FlowContext:time#Object#get_time */
9132 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to flow:FlowContext:file#Object#printn */
9133 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to flow:FlowContext:file#Object#print */
9134 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to flow:FlowContext:file#Object#getc */
9135 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to flow:FlowContext:file#Object#gets */
9136 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to flow:FlowContext:file#Object#getcwd */
9137 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to flow:FlowContext:file#Object#file_getcwd */
9138 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to flow:FlowContext:file#Object#stdin */
9139 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to flow:FlowContext:file#Object#stdout */
9140 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to flow:FlowContext:file#Object#stderr */
9141 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to flow:FlowContext:model_base#Object#intrude_visibility */
9142 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to flow:FlowContext:model_base#Object#public_visibility */
9143 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to flow:FlowContext:model_base#Object#protected_visibility */
9144 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to flow:FlowContext:model_base#Object#private_visibility */
9145 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to flow:FlowContext:model_base#Object#none_visibility */
9146 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to flow:FlowContext:model#Object#abstract_kind */
9147 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to flow:FlowContext:model#Object#concrete_kind */
9148 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to flow:FlowContext:model#Object#interface_kind */
9149 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to flow:FlowContext:model#Object#enum_kind */
9150 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to flow:FlowContext:model#Object#extern_kind */
9151 (nitmethod_t)VIRTUAL_flow__FlowContext__previous, /* pointer to flow:FlowContext:flow#FlowContext#previous */
9152 (nitmethod_t)VIRTUAL_flow__FlowContext__previous_61d, /* pointer to flow:FlowContext:flow#FlowContext#previous= */
9153 (nitmethod_t)VIRTUAL_flow__FlowContext__loops, /* pointer to flow:FlowContext:flow#FlowContext#loops */
9154 (nitmethod_t)VIRTUAL_flow__FlowContext__loops_61d, /* pointer to flow:FlowContext:flow#FlowContext#loops= */
9155 (nitmethod_t)VIRTUAL_flow__FlowContext__is_marked_unreachable, /* pointer to flow:FlowContext:flow#FlowContext#is_marked_unreachable */
9156 (nitmethod_t)VIRTUAL_flow__FlowContext__is_marked_unreachable_61d, /* pointer to flow:FlowContext:flow#FlowContext#is_marked_unreachable= */
9157 (nitmethod_t)VIRTUAL_flow__FlowContext__is_unreachable, /* pointer to flow:FlowContext:flow#FlowContext#is_unreachable */
9158 (nitmethod_t)VIRTUAL_flow__FlowContext__is_already_unreachable, /* pointer to flow:FlowContext:flow#FlowContext#is_already_unreachable */
9159 (nitmethod_t)VIRTUAL_flow__FlowContext__is_already_unreachable_61d, /* pointer to flow:FlowContext:flow#FlowContext#is_already_unreachable= */
9160 (nitmethod_t)VIRTUAL_flow__FlowContext__is_start, /* pointer to flow:FlowContext:flow#FlowContext#is_start */
9161 (nitmethod_t)VIRTUAL_flow__FlowContext__is_start_61d, /* pointer to flow:FlowContext:flow#FlowContext#is_start= */
9162 (nitmethod_t)VIRTUAL_flow__FlowContext__node, /* pointer to flow:FlowContext:flow#FlowContext#node */
9163 (nitmethod_t)VIRTUAL_flow__FlowContext__node_61d, /* pointer to flow:FlowContext:flow#FlowContext#node= */
9164 (nitmethod_t)VIRTUAL_flow__FlowContext__name, /* pointer to flow:FlowContext:flow#FlowContext#name */
9165 (nitmethod_t)VIRTUAL_flow__FlowContext__name_61d, /* pointer to flow:FlowContext:flow#FlowContext#name= */
9166 (nitmethod_t)VIRTUAL_flow__FlowContext__when_true, /* pointer to flow:FlowContext:flow#FlowContext#when_true */
9167 (nitmethod_t)VIRTUAL_flow__FlowContext__when_true_61d, /* pointer to flow:FlowContext:flow#FlowContext#when_true= */
9168 (nitmethod_t)VIRTUAL_flow__FlowContext__when_false, /* pointer to flow:FlowContext:flow#FlowContext#when_false */
9169 (nitmethod_t)VIRTUAL_flow__FlowContext__when_false_61d, /* pointer to flow:FlowContext:flow#FlowContext#when_false= */
9170 (nitmethod_t)VIRTUAL_flow__FlowContext__add_previous, /* pointer to flow:FlowContext:flow#FlowContext#add_previous */
9171 (nitmethod_t)VIRTUAL_flow__FlowContext__add_loop, /* pointer to flow:FlowContext:flow#FlowContext#add_loop */
9172 (nitmethod_t)VIRTUAL_flow__FlowContext__init, /* pointer to flow:FlowContext:flow#FlowContext#init */
9173 (nitmethod_t)VIRTUAL_local_var_init__FlowContext__set_vars, /* pointer to flow:FlowContext:local_var_init#FlowContext#set_vars */
9174 (nitmethod_t)VIRTUAL_local_var_init__FlowContext__set_vars_61d, /* pointer to flow:FlowContext:local_var_init#FlowContext#set_vars= */
9175 (nitmethod_t)VIRTUAL_local_var_init__FlowContext__is_variable_set, /* pointer to flow:FlowContext:local_var_init#FlowContext#is_variable_set */
9176 (nitmethod_t)VIRTUAL_typing__FlowContext__vars, /* pointer to flow:FlowContext:typing#FlowContext#vars */
9177 (nitmethod_t)VIRTUAL_typing__FlowContext__vars_61d, /* pointer to flow:FlowContext:typing#FlowContext#vars= */
9178 (nitmethod_t)VIRTUAL_typing__FlowContext__cache, /* pointer to flow:FlowContext:typing#FlowContext#cache */
9179 (nitmethod_t)VIRTUAL_typing__FlowContext__cache_61d, /* pointer to flow:FlowContext:typing#FlowContext#cache= */
9180 (nitmethod_t)VIRTUAL_typing__FlowContext__set_var, /* pointer to flow:FlowContext:typing#FlowContext#set_var */
9181 (nitmethod_t)VIRTUAL_typing__FlowContext__collect_types, /* pointer to flow:FlowContext:typing#FlowContext#collect_types */
9182 }
9183 };
9184 /* allocate FlowContext */
9185 val* NEW_flow__FlowContext(const struct type* type) {
9186 val* self /* : FlowContext */;
9187 val* var /* : Array[FlowContext] */;
9188 val* var1 /* : Array[FlowContext] */;
9189 short int var2 /* : Bool */;
9190 short int var3 /* : Bool */;
9191 short int var4 /* : Bool */;
9192 val* var5 /* : null */;
9193 static val* varonce;
9194 val* var6 /* : String */;
9195 char* var7 /* : NativeString */;
9196 long var8 /* : Int */;
9197 val* var9 /* : String */;
9198 val* var10 /* : HashSet[Variable] */;
9199 val* var11 /* : HashMap[Variable, nullable MType] */;
9200 val* var12 /* : HashMap[Variable, nullable Array[nullable MType]] */;
9201 self = nit_alloc(sizeof(struct instance) + 12*sizeof(nitattribute_t));
9202 self->type = type;
9203 self->class = &class_flow__FlowContext;
9204 var = NEW_array__Array(&type_array__Arrayflow__FlowContext);
9205 ((void (*)(val*))(var->class->vft[COLOR_array__Array__init]))(var) /* init on <var:Array[FlowContext]>*/;
9206 CHECK_NEW_array__Array(var);
9207 self->attrs[COLOR_flow__FlowContext___64dprevious].val = var; /* @previous on <self:FlowContext exact> */
9208 var1 = NEW_array__Array(&type_array__Arrayflow__FlowContext);
9209 ((void (*)(val*))(var1->class->vft[COLOR_array__Array__init]))(var1) /* init on <var1:Array[FlowContext]>*/;
9210 CHECK_NEW_array__Array(var1);
9211 self->attrs[COLOR_flow__FlowContext___64dloops].val = var1; /* @loops on <self:FlowContext exact> */
9212 var2 = 0;
9213 self->attrs[COLOR_flow__FlowContext___64dis_marked_unreachable].s = var2; /* @is_marked_unreachable on <self:FlowContext exact> */
9214 var3 = 0;
9215 self->attrs[COLOR_flow__FlowContext___64dis_already_unreachable].s = var3; /* @is_already_unreachable on <self:FlowContext exact> */
9216 var4 = 0;
9217 self->attrs[COLOR_flow__FlowContext___64dis_start].s = var4; /* @is_start on <self:FlowContext exact> */
9218 var5 = NULL;
9219 self->attrs[COLOR_flow__FlowContext___64dnode].val = var5; /* @node on <self:FlowContext exact> */
9220 if (varonce) {
9221 var6 = varonce;
9222 } else {
9223 var7 = "";
9224 var8 = 0;
9225 var9 = string__NativeString__to_s_with_length(var7, var8);
9226 var6 = var9;
9227 varonce = var6;
9228 }
9229 self->attrs[COLOR_flow__FlowContext___64dname].val = var6; /* @name on <self:FlowContext exact> */
9230 self->attrs[COLOR_flow__FlowContext___64dwhen_true].val = self; /* @when_true on <self:FlowContext exact> */
9231 self->attrs[COLOR_flow__FlowContext___64dwhen_false].val = self; /* @when_false on <self:FlowContext exact> */
9232 var10 = NEW_hash_collection__HashSet(&type_hash_collection__HashSetscope__Variable);
9233 ((void (*)(val*))(var10->class->vft[COLOR_hash_collection__HashSet__init]))(var10) /* init on <var10:HashSet[Variable]>*/;
9234 CHECK_NEW_hash_collection__HashSet(var10);
9235 self->attrs[COLOR_local_var_init__FlowContext___64dset_vars].val = var10; /* @set_vars on <self:FlowContext exact> */
9236 var11 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapscope__Variablenullable_model__MType);
9237 ((void (*)(val*))(var11->class->vft[COLOR_hash_collection__HashMap__init]))(var11) /* init on <var11:HashMap[Variable, nullable MType]>*/;
9238 CHECK_NEW_hash_collection__HashMap(var11);
9239 self->attrs[COLOR_typing__FlowContext___64dvars].val = var11; /* @vars on <self:FlowContext exact> */
9240 var12 = NEW_hash_collection__HashMap(&type_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType);
9241 ((void (*)(val*))(var12->class->vft[COLOR_hash_collection__HashMap__init]))(var12) /* init on <var12:HashMap[Variable, nullable Array[nullable MType]]>*/;
9242 CHECK_NEW_hash_collection__HashMap(var12);
9243 self->attrs[COLOR_typing__FlowContext___64dcache].val = var12; /* @cache on <self:FlowContext exact> */
9244 return self;
9245 }
9246 /* allocate FlowContext */
9247 void CHECK_NEW_flow__FlowContext(val* self) {
9248 }
9249 /* runtime class local_var_init__LocalVarInitPhase */
9250 const struct class class_local_var_init__LocalVarInitPhase = {
9251 0, /* box_kind */
9252 {
9253 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#object_id */
9254 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#is_same_type */
9255 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#is_same_instance */
9256 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#== */
9257 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#!= */
9258 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#output */
9259 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#output_class_name */
9260 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#exit */
9261 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#sys */
9262 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to local_var_init:LocalVarInitPhase:kernel#Object#hash */
9263 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to local_var_init:LocalVarInitPhase:string#Object#to_s */
9264 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to local_var_init:LocalVarInitPhase:string#Object#native_class_name */
9265 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to local_var_init:LocalVarInitPhase:string#Object#class_name */
9266 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to local_var_init:LocalVarInitPhase:string#Object#inspect */
9267 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to local_var_init:LocalVarInitPhase:string#Object#inspect_head */
9268 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to local_var_init:LocalVarInitPhase:string#Object#args */
9269 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to local_var_init:LocalVarInitPhase:math#Object#atan2 */
9270 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to local_var_init:LocalVarInitPhase:math#Object#pi */
9271 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to local_var_init:LocalVarInitPhase:math#Object#srand_from */
9272 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to local_var_init:LocalVarInitPhase:math#Object#srand */
9273 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to local_var_init:LocalVarInitPhase:stream#Object#poll */
9274 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to local_var_init:LocalVarInitPhase:stream#Object#intern_poll */
9275 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to local_var_init:LocalVarInitPhase:time#Object#get_time */
9276 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to local_var_init:LocalVarInitPhase:file#Object#printn */
9277 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to local_var_init:LocalVarInitPhase:file#Object#print */
9278 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to local_var_init:LocalVarInitPhase:file#Object#getc */
9279 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to local_var_init:LocalVarInitPhase:file#Object#gets */
9280 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to local_var_init:LocalVarInitPhase:file#Object#getcwd */
9281 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to local_var_init:LocalVarInitPhase:file#Object#file_getcwd */
9282 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to local_var_init:LocalVarInitPhase:file#Object#stdin */
9283 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to local_var_init:LocalVarInitPhase:file#Object#stdout */
9284 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to local_var_init:LocalVarInitPhase:file#Object#stderr */
9285 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to local_var_init:LocalVarInitPhase:model_base#Object#intrude_visibility */
9286 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to local_var_init:LocalVarInitPhase:model_base#Object#public_visibility */
9287 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to local_var_init:LocalVarInitPhase:model_base#Object#protected_visibility */
9288 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to local_var_init:LocalVarInitPhase:model_base#Object#private_visibility */
9289 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to local_var_init:LocalVarInitPhase:model_base#Object#none_visibility */
9290 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to local_var_init:LocalVarInitPhase:model#Object#abstract_kind */
9291 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to local_var_init:LocalVarInitPhase:model#Object#concrete_kind */
9292 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to local_var_init:LocalVarInitPhase:model#Object#interface_kind */
9293 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to local_var_init:LocalVarInitPhase:model#Object#enum_kind */
9294 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to local_var_init:LocalVarInitPhase:model#Object#extern_kind */
9295 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#toolcontext */
9296 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#toolcontext= */
9297 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#in_hierarchy */
9298 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#in_hierarchy= */
9299 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#init */
9300 (nitmethod_t)VIRTUAL_phase__Phase__process_nmodule, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#process_nmodule */
9301 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#process_nclassdef */
9302 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitPhase__process_npropdef, /* pointer to local_var_init:LocalVarInitPhase:local_var_init#LocalVarInitPhase#process_npropdef */
9303 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to local_var_init:LocalVarInitPhase:phase#Phase#process_annotated_node */
9304 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to local_var_init:LocalVarInitPhase:frontend#Phase#process_mainmodule */
9305 }
9306 };
9307 /* allocate LocalVarInitPhase */
9308 val* NEW_local_var_init__LocalVarInitPhase(const struct type* type) {
9309 val* self /* : LocalVarInitPhase */;
9310 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
9311 self->type = type;
9312 self->class = &class_local_var_init__LocalVarInitPhase;
9313 return self;
9314 }
9315 /* allocate LocalVarInitPhase */
9316 void CHECK_NEW_local_var_init__LocalVarInitPhase(val* self) {
9317 val* var /* : ToolContext */;
9318 val* var1 /* : POSetElement[Phase] */;
9319 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:LocalVarInitPhase> */
9320 if (var == NULL) {
9321 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
9322 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
9323 exit(1);
9324 }
9325 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:LocalVarInitPhase> */
9326 if (var1 == NULL) {
9327 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
9328 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
9329 exit(1);
9330 }
9331 }
9332 /* runtime class local_var_init__LocalVarInitVisitor */
9333 const struct class class_local_var_init__LocalVarInitVisitor = {
9334 0, /* box_kind */
9335 {
9336 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#object_id */
9337 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#is_same_type */
9338 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#is_same_instance */
9339 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#== */
9340 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#!= */
9341 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#output */
9342 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#output_class_name */
9343 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#exit */
9344 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#sys */
9345 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to local_var_init:LocalVarInitVisitor:kernel#Object#hash */
9346 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to local_var_init:LocalVarInitVisitor:string#Object#to_s */
9347 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to local_var_init:LocalVarInitVisitor:string#Object#native_class_name */
9348 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to local_var_init:LocalVarInitVisitor:string#Object#class_name */
9349 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to local_var_init:LocalVarInitVisitor:string#Object#inspect */
9350 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to local_var_init:LocalVarInitVisitor:string#Object#inspect_head */
9351 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to local_var_init:LocalVarInitVisitor:string#Object#args */
9352 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to local_var_init:LocalVarInitVisitor:math#Object#atan2 */
9353 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to local_var_init:LocalVarInitVisitor:math#Object#pi */
9354 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to local_var_init:LocalVarInitVisitor:math#Object#srand_from */
9355 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to local_var_init:LocalVarInitVisitor:math#Object#srand */
9356 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to local_var_init:LocalVarInitVisitor:stream#Object#poll */
9357 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to local_var_init:LocalVarInitVisitor:stream#Object#intern_poll */
9358 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to local_var_init:LocalVarInitVisitor:time#Object#get_time */
9359 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#printn */
9360 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#print */
9361 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#getc */
9362 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#gets */
9363 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#getcwd */
9364 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#file_getcwd */
9365 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#stdin */
9366 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#stdout */
9367 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to local_var_init:LocalVarInitVisitor:file#Object#stderr */
9368 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to local_var_init:LocalVarInitVisitor:model_base#Object#intrude_visibility */
9369 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to local_var_init:LocalVarInitVisitor:model_base#Object#public_visibility */
9370 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to local_var_init:LocalVarInitVisitor:model_base#Object#protected_visibility */
9371 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to local_var_init:LocalVarInitVisitor:model_base#Object#private_visibility */
9372 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to local_var_init:LocalVarInitVisitor:model_base#Object#none_visibility */
9373 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to local_var_init:LocalVarInitVisitor:model#Object#abstract_kind */
9374 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to local_var_init:LocalVarInitVisitor:model#Object#concrete_kind */
9375 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to local_var_init:LocalVarInitVisitor:model#Object#interface_kind */
9376 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to local_var_init:LocalVarInitVisitor:model#Object#enum_kind */
9377 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to local_var_init:LocalVarInitVisitor:model#Object#extern_kind */
9378 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__visit, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#visit */
9379 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__enter_visit, /* pointer to local_var_init:LocalVarInitVisitor:parser_nodes#Visitor#enter_visit */
9380 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node, /* pointer to local_var_init:LocalVarInitVisitor:parser_nodes#Visitor#current_node */
9381 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node_61d, /* pointer to local_var_init:LocalVarInitVisitor:parser_nodes#Visitor#current_node= */
9382 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__init, /* pointer to local_var_init:LocalVarInitVisitor:parser_nodes#Visitor#init */
9383 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__toolcontext, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#toolcontext */
9384 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__toolcontext_61d, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#toolcontext= */
9385 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__init, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#init */
9386 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__maybe_unset_vars, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#maybe_unset_vars */
9387 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__maybe_unset_vars_61d, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#maybe_unset_vars= */
9388 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__mark_is_unset, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#mark_is_unset */
9389 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__mark_is_set, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#mark_is_set */
9390 (nitmethod_t)VIRTUAL_local_var_init__LocalVarInitVisitor__check_is_set, /* pointer to local_var_init:LocalVarInitVisitor:local_var_init#LocalVarInitVisitor#check_is_set */
9391 }
9392 };
9393 /* allocate LocalVarInitVisitor */
9394 val* NEW_local_var_init__LocalVarInitVisitor(const struct type* type) {
9395 val* self /* : LocalVarInitVisitor */;
9396 val* var /* : null */;
9397 val* var1 /* : HashSet[Variable] */;
9398 self = nit_alloc(sizeof(struct instance) + 3*sizeof(nitattribute_t));
9399 self->type = type;
9400 self->class = &class_local_var_init__LocalVarInitVisitor;
9401 var = NULL;
9402 self->attrs[COLOR_parser_nodes__Visitor___current_node].val = var; /* _current_node on <self:LocalVarInitVisitor exact> */
9403 var1 = NEW_hash_collection__HashSet(&type_hash_collection__HashSetscope__Variable);
9404 ((void (*)(val*))(var1->class->vft[COLOR_hash_collection__HashSet__init]))(var1) /* init on <var1:HashSet[Variable]>*/;
9405 CHECK_NEW_hash_collection__HashSet(var1);
9406 self->attrs[COLOR_local_var_init__LocalVarInitVisitor___64dmaybe_unset_vars].val = var1; /* @maybe_unset_vars on <self:LocalVarInitVisitor exact> */
9407 return self;
9408 }
9409 /* allocate LocalVarInitVisitor */
9410 void CHECK_NEW_local_var_init__LocalVarInitVisitor(val* self) {
9411 val* var /* : ToolContext */;
9412 var = self->attrs[COLOR_local_var_init__LocalVarInitVisitor___64dtoolcontext].val; /* @toolcontext on <self:LocalVarInitVisitor> */
9413 if (var == NULL) {
9414 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
9415 fprintf(stderr, " (%s:%d)\n", "src/local_var_init.nit", 47);
9416 exit(1);
9417 }
9418 }
9419 /* runtime class typing__TypingPhase */
9420 const struct class class_typing__TypingPhase = {
9421 0, /* box_kind */
9422 {
9423 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to typing:TypingPhase:kernel#Object#object_id */
9424 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to typing:TypingPhase:kernel#Object#is_same_type */
9425 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to typing:TypingPhase:kernel#Object#is_same_instance */
9426 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to typing:TypingPhase:kernel#Object#== */
9427 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to typing:TypingPhase:kernel#Object#!= */
9428 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to typing:TypingPhase:kernel#Object#output */
9429 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to typing:TypingPhase:kernel#Object#output_class_name */
9430 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to typing:TypingPhase:kernel#Object#exit */
9431 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to typing:TypingPhase:kernel#Object#sys */
9432 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to typing:TypingPhase:kernel#Object#hash */
9433 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to typing:TypingPhase:string#Object#to_s */
9434 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to typing:TypingPhase:string#Object#native_class_name */
9435 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to typing:TypingPhase:string#Object#class_name */
9436 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to typing:TypingPhase:string#Object#inspect */
9437 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to typing:TypingPhase:string#Object#inspect_head */
9438 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to typing:TypingPhase:string#Object#args */
9439 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to typing:TypingPhase:math#Object#atan2 */
9440 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to typing:TypingPhase:math#Object#pi */
9441 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to typing:TypingPhase:math#Object#srand_from */
9442 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to typing:TypingPhase:math#Object#srand */
9443 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to typing:TypingPhase:stream#Object#poll */
9444 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to typing:TypingPhase:stream#Object#intern_poll */
9445 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to typing:TypingPhase:time#Object#get_time */
9446 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to typing:TypingPhase:file#Object#printn */
9447 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to typing:TypingPhase:file#Object#print */
9448 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to typing:TypingPhase:file#Object#getc */
9449 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to typing:TypingPhase:file#Object#gets */
9450 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to typing:TypingPhase:file#Object#getcwd */
9451 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to typing:TypingPhase:file#Object#file_getcwd */
9452 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to typing:TypingPhase:file#Object#stdin */
9453 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to typing:TypingPhase:file#Object#stdout */
9454 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to typing:TypingPhase:file#Object#stderr */
9455 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to typing:TypingPhase:model_base#Object#intrude_visibility */
9456 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to typing:TypingPhase:model_base#Object#public_visibility */
9457 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to typing:TypingPhase:model_base#Object#protected_visibility */
9458 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to typing:TypingPhase:model_base#Object#private_visibility */
9459 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to typing:TypingPhase:model_base#Object#none_visibility */
9460 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to typing:TypingPhase:model#Object#abstract_kind */
9461 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to typing:TypingPhase:model#Object#concrete_kind */
9462 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to typing:TypingPhase:model#Object#interface_kind */
9463 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to typing:TypingPhase:model#Object#enum_kind */
9464 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to typing:TypingPhase:model#Object#extern_kind */
9465 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to typing:TypingPhase:phase#Phase#toolcontext */
9466 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to typing:TypingPhase:phase#Phase#toolcontext= */
9467 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to typing:TypingPhase:phase#Phase#in_hierarchy */
9468 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to typing:TypingPhase:phase#Phase#in_hierarchy= */
9469 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to typing:TypingPhase:phase#Phase#init */
9470 (nitmethod_t)VIRTUAL_phase__Phase__process_nmodule, /* pointer to typing:TypingPhase:phase#Phase#process_nmodule */
9471 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to typing:TypingPhase:phase#Phase#process_nclassdef */
9472 (nitmethod_t)VIRTUAL_typing__TypingPhase__process_npropdef, /* pointer to typing:TypingPhase:typing#TypingPhase#process_npropdef */
9473 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to typing:TypingPhase:phase#Phase#process_annotated_node */
9474 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to typing:TypingPhase:frontend#Phase#process_mainmodule */
9475 }
9476 };
9477 /* allocate TypingPhase */
9478 val* NEW_typing__TypingPhase(const struct type* type) {
9479 val* self /* : TypingPhase */;
9480 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
9481 self->type = type;
9482 self->class = &class_typing__TypingPhase;
9483 return self;
9484 }
9485 /* allocate TypingPhase */
9486 void CHECK_NEW_typing__TypingPhase(val* self) {
9487 val* var /* : ToolContext */;
9488 val* var1 /* : POSetElement[Phase] */;
9489 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:TypingPhase> */
9490 if (var == NULL) {
9491 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
9492 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
9493 exit(1);
9494 }
9495 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:TypingPhase> */
9496 if (var1 == NULL) {
9497 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
9498 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
9499 exit(1);
9500 }
9501 }
9502 /* runtime class typing__TypeVisitor */
9503 const struct class class_typing__TypeVisitor = {
9504 0, /* box_kind */
9505 {
9506 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to typing:TypeVisitor:kernel#Object#object_id */
9507 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to typing:TypeVisitor:kernel#Object#is_same_type */
9508 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to typing:TypeVisitor:kernel#Object#is_same_instance */
9509 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to typing:TypeVisitor:kernel#Object#== */
9510 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to typing:TypeVisitor:kernel#Object#!= */
9511 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to typing:TypeVisitor:kernel#Object#output */
9512 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to typing:TypeVisitor:kernel#Object#output_class_name */
9513 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to typing:TypeVisitor:kernel#Object#exit */
9514 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to typing:TypeVisitor:kernel#Object#sys */
9515 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to typing:TypeVisitor:kernel#Object#hash */
9516 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to typing:TypeVisitor:string#Object#to_s */
9517 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to typing:TypeVisitor:string#Object#native_class_name */
9518 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to typing:TypeVisitor:string#Object#class_name */
9519 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to typing:TypeVisitor:string#Object#inspect */
9520 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to typing:TypeVisitor:string#Object#inspect_head */
9521 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to typing:TypeVisitor:string#Object#args */
9522 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to typing:TypeVisitor:math#Object#atan2 */
9523 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to typing:TypeVisitor:math#Object#pi */
9524 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to typing:TypeVisitor:math#Object#srand_from */
9525 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to typing:TypeVisitor:math#Object#srand */
9526 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to typing:TypeVisitor:stream#Object#poll */
9527 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to typing:TypeVisitor:stream#Object#intern_poll */
9528 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to typing:TypeVisitor:time#Object#get_time */
9529 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to typing:TypeVisitor:file#Object#printn */
9530 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to typing:TypeVisitor:file#Object#print */
9531 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to typing:TypeVisitor:file#Object#getc */
9532 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to typing:TypeVisitor:file#Object#gets */
9533 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to typing:TypeVisitor:file#Object#getcwd */
9534 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to typing:TypeVisitor:file#Object#file_getcwd */
9535 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to typing:TypeVisitor:file#Object#stdin */
9536 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to typing:TypeVisitor:file#Object#stdout */
9537 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to typing:TypeVisitor:file#Object#stderr */
9538 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to typing:TypeVisitor:model_base#Object#intrude_visibility */
9539 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to typing:TypeVisitor:model_base#Object#public_visibility */
9540 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to typing:TypeVisitor:model_base#Object#protected_visibility */
9541 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to typing:TypeVisitor:model_base#Object#private_visibility */
9542 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to typing:TypeVisitor:model_base#Object#none_visibility */
9543 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to typing:TypeVisitor:model#Object#abstract_kind */
9544 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to typing:TypeVisitor:model#Object#concrete_kind */
9545 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to typing:TypeVisitor:model#Object#interface_kind */
9546 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to typing:TypeVisitor:model#Object#enum_kind */
9547 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to typing:TypeVisitor:model#Object#extern_kind */
9548 (nitmethod_t)VIRTUAL_typing__TypeVisitor__modelbuilder, /* pointer to typing:TypeVisitor:typing#TypeVisitor#modelbuilder */
9549 (nitmethod_t)VIRTUAL_typing__TypeVisitor__modelbuilder_61d, /* pointer to typing:TypeVisitor:typing#TypeVisitor#modelbuilder= */
9550 (nitmethod_t)VIRTUAL_typing__TypeVisitor__nclassdef, /* pointer to typing:TypeVisitor:typing#TypeVisitor#nclassdef */
9551 (nitmethod_t)VIRTUAL_typing__TypeVisitor__nclassdef_61d, /* pointer to typing:TypeVisitor:typing#TypeVisitor#nclassdef= */
9552 (nitmethod_t)VIRTUAL_typing__TypeVisitor__mpropdef, /* pointer to typing:TypeVisitor:typing#TypeVisitor#mpropdef */
9553 (nitmethod_t)VIRTUAL_typing__TypeVisitor__mpropdef_61d, /* pointer to typing:TypeVisitor:typing#TypeVisitor#mpropdef= */
9554 (nitmethod_t)VIRTUAL_typing__TypeVisitor__selfvariable, /* pointer to typing:TypeVisitor:typing#TypeVisitor#selfvariable */
9555 (nitmethod_t)VIRTUAL_typing__TypeVisitor__selfvariable_61d, /* pointer to typing:TypeVisitor:typing#TypeVisitor#selfvariable= */
9556 (nitmethod_t)VIRTUAL_typing__TypeVisitor__init, /* pointer to typing:TypeVisitor:typing#TypeVisitor#init */
9557 (nitmethod_t)VIRTUAL_typing__TypeVisitor__mmodule, /* pointer to typing:TypeVisitor:typing#TypeVisitor#mmodule */
9558 (nitmethod_t)VIRTUAL_typing__TypeVisitor__anchor, /* pointer to typing:TypeVisitor:typing#TypeVisitor#anchor */
9559 (nitmethod_t)VIRTUAL_typing__TypeVisitor__anchor_to, /* pointer to typing:TypeVisitor:typing#TypeVisitor#anchor_to */
9560 (nitmethod_t)VIRTUAL_typing__TypeVisitor__is_subtype, /* pointer to typing:TypeVisitor:typing#TypeVisitor#is_subtype */
9561 (nitmethod_t)VIRTUAL_typing__TypeVisitor__resolve_for, /* pointer to typing:TypeVisitor:typing#TypeVisitor#resolve_for */
9562 (nitmethod_t)VIRTUAL_typing__TypeVisitor__resolve_signature_for, /* pointer to typing:TypeVisitor:typing#TypeVisitor#resolve_signature_for */
9563 (nitmethod_t)VIRTUAL_typing__TypeVisitor__check_subtype, /* pointer to typing:TypeVisitor:typing#TypeVisitor#check_subtype */
9564 (nitmethod_t)VIRTUAL_typing__TypeVisitor__visit_stmt, /* pointer to typing:TypeVisitor:typing#TypeVisitor#visit_stmt */
9565 (nitmethod_t)VIRTUAL_typing__TypeVisitor__visit_expr, /* pointer to typing:TypeVisitor:typing#TypeVisitor#visit_expr */
9566 (nitmethod_t)VIRTUAL_typing__TypeVisitor__visit_expr_subtype, /* pointer to typing:TypeVisitor:typing#TypeVisitor#visit_expr_subtype */
9567 (nitmethod_t)VIRTUAL_typing__TypeVisitor__visit_expr_bool, /* pointer to typing:TypeVisitor:typing#TypeVisitor#visit_expr_bool */
9568 (nitmethod_t)VIRTUAL_typing__TypeVisitor__visit_expr_cast, /* pointer to typing:TypeVisitor:typing#TypeVisitor#visit_expr_cast */
9569 (nitmethod_t)VIRTUAL_typing__TypeVisitor__try_get_mproperty_by_name2, /* pointer to typing:TypeVisitor:typing#TypeVisitor#try_get_mproperty_by_name2 */
9570 (nitmethod_t)VIRTUAL_typing__TypeVisitor__resolve_mtype, /* pointer to typing:TypeVisitor:typing#TypeVisitor#resolve_mtype */
9571 (nitmethod_t)VIRTUAL_typing__TypeVisitor__try_get_mclass, /* pointer to typing:TypeVisitor:typing#TypeVisitor#try_get_mclass */
9572 (nitmethod_t)VIRTUAL_typing__TypeVisitor__get_mclass, /* pointer to typing:TypeVisitor:typing#TypeVisitor#get_mclass */
9573 (nitmethod_t)VIRTUAL_typing__TypeVisitor__type_bool, /* pointer to typing:TypeVisitor:typing#TypeVisitor#type_bool */
9574 (nitmethod_t)VIRTUAL_typing__TypeVisitor__get_method, /* pointer to typing:TypeVisitor:typing#TypeVisitor#get_method */
9575 (nitmethod_t)VIRTUAL_typing__TypeVisitor__check_signature, /* pointer to typing:TypeVisitor:typing#TypeVisitor#check_signature */
9576 (nitmethod_t)VIRTUAL_typing__TypeVisitor__error, /* pointer to typing:TypeVisitor:typing#TypeVisitor#error */
9577 (nitmethod_t)VIRTUAL_typing__TypeVisitor__get_variable, /* pointer to typing:TypeVisitor:typing#TypeVisitor#get_variable */
9578 (nitmethod_t)VIRTUAL_typing__TypeVisitor__set_variable, /* pointer to typing:TypeVisitor:typing#TypeVisitor#set_variable */
9579 (nitmethod_t)VIRTUAL_typing__TypeVisitor__merge_types, /* pointer to typing:TypeVisitor:typing#TypeVisitor#merge_types */
9580 }
9581 };
9582 /* allocate TypeVisitor */
9583 val* NEW_typing__TypeVisitor(const struct type* type) {
9584 val* self /* : TypeVisitor */;
9585 val* var /* : Variable */;
9586 static val* varonce;
9587 val* var1 /* : String */;
9588 char* var2 /* : NativeString */;
9589 long var3 /* : Int */;
9590 val* var4 /* : String */;
9591 self = nit_alloc(sizeof(struct instance) + 4*sizeof(nitattribute_t));
9592 self->type = type;
9593 self->class = &class_typing__TypeVisitor;
9594 var = NEW_scope__Variable(&type_scope__Variable);
9595 if (varonce) {
9596 var1 = varonce;
9597 } else {
9598 var2 = "self";
9599 var3 = 4;
9600 var4 = string__NativeString__to_s_with_length(var2, var3);
9601 var1 = var4;
9602 varonce = var1;
9603 }
9604 ((void (*)(val*, val*))(var->class->vft[COLOR_scope__Variable__init]))(var, var1) /* init on <var:Variable>*/;
9605 CHECK_NEW_scope__Variable(var);
9606 self->attrs[COLOR_typing__TypeVisitor___64dselfvariable].val = var; /* @selfvariable on <self:TypeVisitor exact> */
9607 return self;
9608 }
9609 /* allocate TypeVisitor */
9610 void CHECK_NEW_typing__TypeVisitor(val* self) {
9611 val* var /* : ModelBuilder */;
9612 val* var1 /* : AClassdef */;
9613 val* var2 /* : MPropDef */;
9614 var = self->attrs[COLOR_typing__TypeVisitor___64dmodelbuilder].val; /* @modelbuilder on <self:TypeVisitor> */
9615 if (var == NULL) {
9616 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @modelbuilder");
9617 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 41);
9618 exit(1);
9619 }
9620 var1 = self->attrs[COLOR_typing__TypeVisitor___64dnclassdef].val; /* @nclassdef on <self:TypeVisitor> */
9621 if (var1 == NULL) {
9622 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @nclassdef");
9623 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 42);
9624 exit(1);
9625 }
9626 var2 = self->attrs[COLOR_typing__TypeVisitor___64dmpropdef].val; /* @mpropdef on <self:TypeVisitor> */
9627 if (var2 == NULL) {
9628 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mpropdef");
9629 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 43);
9630 exit(1);
9631 }
9632 }
9633 /* runtime class typing__CallSite */
9634 const struct class class_typing__CallSite = {
9635 0, /* box_kind */
9636 {
9637 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to typing:CallSite:kernel#Object#object_id */
9638 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to typing:CallSite:kernel#Object#is_same_type */
9639 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to typing:CallSite:kernel#Object#is_same_instance */
9640 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to typing:CallSite:kernel#Object#== */
9641 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to typing:CallSite:kernel#Object#!= */
9642 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to typing:CallSite:kernel#Object#output */
9643 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to typing:CallSite:kernel#Object#output_class_name */
9644 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to typing:CallSite:kernel#Object#exit */
9645 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to typing:CallSite:kernel#Object#sys */
9646 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to typing:CallSite:kernel#Object#hash */
9647 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to typing:CallSite:string#Object#to_s */
9648 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to typing:CallSite:string#Object#native_class_name */
9649 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to typing:CallSite:string#Object#class_name */
9650 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to typing:CallSite:string#Object#inspect */
9651 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to typing:CallSite:string#Object#inspect_head */
9652 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to typing:CallSite:string#Object#args */
9653 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to typing:CallSite:math#Object#atan2 */
9654 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to typing:CallSite:math#Object#pi */
9655 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to typing:CallSite:math#Object#srand_from */
9656 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to typing:CallSite:math#Object#srand */
9657 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to typing:CallSite:stream#Object#poll */
9658 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to typing:CallSite:stream#Object#intern_poll */
9659 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to typing:CallSite:time#Object#get_time */
9660 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to typing:CallSite:file#Object#printn */
9661 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to typing:CallSite:file#Object#print */
9662 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to typing:CallSite:file#Object#getc */
9663 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to typing:CallSite:file#Object#gets */
9664 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to typing:CallSite:file#Object#getcwd */
9665 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to typing:CallSite:file#Object#file_getcwd */
9666 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to typing:CallSite:file#Object#stdin */
9667 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to typing:CallSite:file#Object#stdout */
9668 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to typing:CallSite:file#Object#stderr */
9669 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to typing:CallSite:model_base#Object#intrude_visibility */
9670 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to typing:CallSite:model_base#Object#public_visibility */
9671 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to typing:CallSite:model_base#Object#protected_visibility */
9672 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to typing:CallSite:model_base#Object#private_visibility */
9673 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to typing:CallSite:model_base#Object#none_visibility */
9674 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to typing:CallSite:model#Object#abstract_kind */
9675 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to typing:CallSite:model#Object#concrete_kind */
9676 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to typing:CallSite:model#Object#interface_kind */
9677 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to typing:CallSite:model#Object#enum_kind */
9678 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to typing:CallSite:model#Object#extern_kind */
9679 (nitmethod_t)VIRTUAL_typing__CallSite__node, /* pointer to typing:CallSite:typing#CallSite#node */
9680 (nitmethod_t)VIRTUAL_typing__CallSite__node_61d, /* pointer to typing:CallSite:typing#CallSite#node= */
9681 (nitmethod_t)VIRTUAL_typing__CallSite__recv, /* pointer to typing:CallSite:typing#CallSite#recv */
9682 (nitmethod_t)VIRTUAL_typing__CallSite__recv_61d, /* pointer to typing:CallSite:typing#CallSite#recv= */
9683 (nitmethod_t)VIRTUAL_typing__CallSite__recv_is_self, /* pointer to typing:CallSite:typing#CallSite#recv_is_self */
9684 (nitmethod_t)VIRTUAL_typing__CallSite__recv_is_self_61d, /* pointer to typing:CallSite:typing#CallSite#recv_is_self= */
9685 (nitmethod_t)VIRTUAL_typing__CallSite__mproperty, /* pointer to typing:CallSite:typing#CallSite#mproperty */
9686 (nitmethod_t)VIRTUAL_typing__CallSite__mproperty_61d, /* pointer to typing:CallSite:typing#CallSite#mproperty= */
9687 (nitmethod_t)VIRTUAL_typing__CallSite__mpropdef, /* pointer to typing:CallSite:typing#CallSite#mpropdef */
9688 (nitmethod_t)VIRTUAL_typing__CallSite__mpropdef_61d, /* pointer to typing:CallSite:typing#CallSite#mpropdef= */
9689 (nitmethod_t)VIRTUAL_typing__CallSite__msignature, /* pointer to typing:CallSite:typing#CallSite#msignature */
9690 (nitmethod_t)VIRTUAL_typing__CallSite__msignature_61d, /* pointer to typing:CallSite:typing#CallSite#msignature= */
9691 (nitmethod_t)VIRTUAL_typing__CallSite__erasure_cast, /* pointer to typing:CallSite:typing#CallSite#erasure_cast */
9692 (nitmethod_t)VIRTUAL_typing__CallSite__erasure_cast_61d, /* pointer to typing:CallSite:typing#CallSite#erasure_cast= */
9693 (nitmethod_t)VIRTUAL_typing__CallSite__check_signature, /* pointer to typing:CallSite:typing#CallSite#check_signature */
9694 (nitmethod_t)VIRTUAL_typing__CallSite__init, /* pointer to typing:CallSite:typing#CallSite#init */
9695 }
9696 };
9697 /* allocate CallSite */
9698 val* NEW_typing__CallSite(const struct type* type) {
9699 val* self /* : CallSite */;
9700 self = nit_alloc(sizeof(struct instance) + 7*sizeof(nitattribute_t));
9701 self->type = type;
9702 self->class = &class_typing__CallSite;
9703 return self;
9704 }
9705 /* allocate CallSite */
9706 void CHECK_NEW_typing__CallSite(val* self) {
9707 val* var /* : ANode */;
9708 val* var1 /* : MType */;
9709 short int var2 /* : Bool */;
9710 val* var3 /* : MMethod */;
9711 val* var4 /* : MMethodDef */;
9712 val* var5 /* : MSignature */;
9713 short int var6 /* : Bool */;
9714 var = self->attrs[COLOR_typing__CallSite___64dnode].val; /* @node on <self:CallSite> */
9715 if (var == NULL) {
9716 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @node");
9717 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 391);
9718 exit(1);
9719 }
9720 var1 = self->attrs[COLOR_typing__CallSite___64drecv].val; /* @recv on <self:CallSite> */
9721 if (var1 == NULL) {
9722 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @recv");
9723 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 394);
9724 exit(1);
9725 }
9726 var2 = self->attrs[COLOR_typing__CallSite___64drecv_is_self].s; /* @recv_is_self on <self:CallSite> */
9727 var3 = self->attrs[COLOR_typing__CallSite___64dmproperty].val; /* @mproperty on <self:CallSite> */
9728 if (var3 == NULL) {
9729 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mproperty");
9730 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 402);
9731 exit(1);
9732 }
9733 var4 = self->attrs[COLOR_typing__CallSite___64dmpropdef].val; /* @mpropdef on <self:CallSite> */
9734 if (var4 == NULL) {
9735 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @mpropdef");
9736 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 405);
9737 exit(1);
9738 }
9739 var5 = self->attrs[COLOR_typing__CallSite___64dmsignature].val; /* @msignature on <self:CallSite> */
9740 if (var5 == NULL) {
9741 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @msignature");
9742 fprintf(stderr, " (%s:%d)\n", "src/typing.nit", 409);
9743 exit(1);
9744 }
9745 var6 = self->attrs[COLOR_typing__CallSite___64derasure_cast].s; /* @erasure_cast on <self:CallSite> */
9746 }
9747 /* runtime class modelize_property__ModelizePropertyPhase */
9748 const struct class class_modelize_property__ModelizePropertyPhase = {
9749 0, /* box_kind */
9750 {
9751 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#object_id */
9752 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#is_same_type */
9753 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#is_same_instance */
9754 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#== */
9755 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#!= */
9756 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#output */
9757 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#output_class_name */
9758 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#exit */
9759 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#sys */
9760 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to modelize_property:ModelizePropertyPhase:kernel#Object#hash */
9761 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to modelize_property:ModelizePropertyPhase:string#Object#to_s */
9762 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to modelize_property:ModelizePropertyPhase:string#Object#native_class_name */
9763 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to modelize_property:ModelizePropertyPhase:string#Object#class_name */
9764 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to modelize_property:ModelizePropertyPhase:string#Object#inspect */
9765 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to modelize_property:ModelizePropertyPhase:string#Object#inspect_head */
9766 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to modelize_property:ModelizePropertyPhase:string#Object#args */
9767 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to modelize_property:ModelizePropertyPhase:math#Object#atan2 */
9768 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to modelize_property:ModelizePropertyPhase:math#Object#pi */
9769 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to modelize_property:ModelizePropertyPhase:math#Object#srand_from */
9770 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to modelize_property:ModelizePropertyPhase:math#Object#srand */
9771 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to modelize_property:ModelizePropertyPhase:stream#Object#poll */
9772 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to modelize_property:ModelizePropertyPhase:stream#Object#intern_poll */
9773 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to modelize_property:ModelizePropertyPhase:time#Object#get_time */
9774 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#printn */
9775 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#print */
9776 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#getc */
9777 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#gets */
9778 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#getcwd */
9779 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#file_getcwd */
9780 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#stdin */
9781 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#stdout */
9782 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to modelize_property:ModelizePropertyPhase:file#Object#stderr */
9783 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to modelize_property:ModelizePropertyPhase:model_base#Object#intrude_visibility */
9784 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to modelize_property:ModelizePropertyPhase:model_base#Object#public_visibility */
9785 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to modelize_property:ModelizePropertyPhase:model_base#Object#protected_visibility */
9786 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to modelize_property:ModelizePropertyPhase:model_base#Object#private_visibility */
9787 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to modelize_property:ModelizePropertyPhase:model_base#Object#none_visibility */
9788 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to modelize_property:ModelizePropertyPhase:model#Object#abstract_kind */
9789 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to modelize_property:ModelizePropertyPhase:model#Object#concrete_kind */
9790 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to modelize_property:ModelizePropertyPhase:model#Object#interface_kind */
9791 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to modelize_property:ModelizePropertyPhase:model#Object#enum_kind */
9792 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to modelize_property:ModelizePropertyPhase:model#Object#extern_kind */
9793 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#toolcontext */
9794 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#toolcontext= */
9795 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#in_hierarchy */
9796 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#in_hierarchy= */
9797 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#init */
9798 (nitmethod_t)VIRTUAL_modelize_property__ModelizePropertyPhase__process_nmodule, /* pointer to modelize_property:ModelizePropertyPhase:modelize_property#ModelizePropertyPhase#process_nmodule */
9799 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#process_nclassdef */
9800 (nitmethod_t)VIRTUAL_phase__Phase__process_npropdef, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#process_npropdef */
9801 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to modelize_property:ModelizePropertyPhase:phase#Phase#process_annotated_node */
9802 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to modelize_property:ModelizePropertyPhase:frontend#Phase#process_mainmodule */
9803 }
9804 };
9805 /* allocate ModelizePropertyPhase */
9806 val* NEW_modelize_property__ModelizePropertyPhase(const struct type* type) {
9807 val* self /* : ModelizePropertyPhase */;
9808 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
9809 self->type = type;
9810 self->class = &class_modelize_property__ModelizePropertyPhase;
9811 return self;
9812 }
9813 /* allocate ModelizePropertyPhase */
9814 void CHECK_NEW_modelize_property__ModelizePropertyPhase(val* self) {
9815 val* var /* : ToolContext */;
9816 val* var1 /* : POSetElement[Phase] */;
9817 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:ModelizePropertyPhase> */
9818 if (var == NULL) {
9819 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
9820 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
9821 exit(1);
9822 }
9823 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:ModelizePropertyPhase> */
9824 if (var1 == NULL) {
9825 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
9826 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
9827 exit(1);
9828 }
9829 }
9830 /* runtime class modelize_property__TextCollectorVisitor */
9831 const struct class class_modelize_property__TextCollectorVisitor = {
9832 0, /* box_kind */
9833 {
9834 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#object_id */
9835 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#is_same_type */
9836 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#is_same_instance */
9837 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#== */
9838 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#!= */
9839 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#output */
9840 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#output_class_name */
9841 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#exit */
9842 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#sys */
9843 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to modelize_property:TextCollectorVisitor:kernel#Object#hash */
9844 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to modelize_property:TextCollectorVisitor:string#Object#to_s */
9845 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to modelize_property:TextCollectorVisitor:string#Object#native_class_name */
9846 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to modelize_property:TextCollectorVisitor:string#Object#class_name */
9847 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to modelize_property:TextCollectorVisitor:string#Object#inspect */
9848 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to modelize_property:TextCollectorVisitor:string#Object#inspect_head */
9849 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to modelize_property:TextCollectorVisitor:string#Object#args */
9850 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to modelize_property:TextCollectorVisitor:math#Object#atan2 */
9851 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to modelize_property:TextCollectorVisitor:math#Object#pi */
9852 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to modelize_property:TextCollectorVisitor:math#Object#srand_from */
9853 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to modelize_property:TextCollectorVisitor:math#Object#srand */
9854 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to modelize_property:TextCollectorVisitor:stream#Object#poll */
9855 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to modelize_property:TextCollectorVisitor:stream#Object#intern_poll */
9856 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to modelize_property:TextCollectorVisitor:time#Object#get_time */
9857 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to modelize_property:TextCollectorVisitor:file#Object#printn */
9858 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to modelize_property:TextCollectorVisitor:file#Object#print */
9859 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to modelize_property:TextCollectorVisitor:file#Object#getc */
9860 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to modelize_property:TextCollectorVisitor:file#Object#gets */
9861 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to modelize_property:TextCollectorVisitor:file#Object#getcwd */
9862 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to modelize_property:TextCollectorVisitor:file#Object#file_getcwd */
9863 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to modelize_property:TextCollectorVisitor:file#Object#stdin */
9864 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to modelize_property:TextCollectorVisitor:file#Object#stdout */
9865 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to modelize_property:TextCollectorVisitor:file#Object#stderr */
9866 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to modelize_property:TextCollectorVisitor:model_base#Object#intrude_visibility */
9867 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to modelize_property:TextCollectorVisitor:model_base#Object#public_visibility */
9868 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to modelize_property:TextCollectorVisitor:model_base#Object#protected_visibility */
9869 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to modelize_property:TextCollectorVisitor:model_base#Object#private_visibility */
9870 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to modelize_property:TextCollectorVisitor:model_base#Object#none_visibility */
9871 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to modelize_property:TextCollectorVisitor:model#Object#abstract_kind */
9872 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to modelize_property:TextCollectorVisitor:model#Object#concrete_kind */
9873 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to modelize_property:TextCollectorVisitor:model#Object#interface_kind */
9874 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to modelize_property:TextCollectorVisitor:model#Object#enum_kind */
9875 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to modelize_property:TextCollectorVisitor:model#Object#extern_kind */
9876 (nitmethod_t)VIRTUAL_modelize_property__TextCollectorVisitor__visit, /* pointer to modelize_property:TextCollectorVisitor:modelize_property#TextCollectorVisitor#visit */
9877 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__enter_visit, /* pointer to modelize_property:TextCollectorVisitor:parser_nodes#Visitor#enter_visit */
9878 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node, /* pointer to modelize_property:TextCollectorVisitor:parser_nodes#Visitor#current_node */
9879 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__current_node_61d, /* pointer to modelize_property:TextCollectorVisitor:parser_nodes#Visitor#current_node= */
9880 (nitmethod_t)VIRTUAL_parser_nodes__Visitor__init, /* pointer to modelize_property:TextCollectorVisitor:parser_nodes#Visitor#init */
9881 (nitmethod_t)VIRTUAL_modelize_property__TextCollectorVisitor__text, /* pointer to modelize_property:TextCollectorVisitor:modelize_property#TextCollectorVisitor#text */
9882 (nitmethod_t)VIRTUAL_modelize_property__TextCollectorVisitor__text_61d, /* pointer to modelize_property:TextCollectorVisitor:modelize_property#TextCollectorVisitor#text= */
9883 (nitmethod_t)VIRTUAL_modelize_property__TextCollectorVisitor__init, /* pointer to modelize_property:TextCollectorVisitor:modelize_property#TextCollectorVisitor#init */
9884 }
9885 };
9886 /* allocate TextCollectorVisitor */
9887 val* NEW_modelize_property__TextCollectorVisitor(const struct type* type) {
9888 val* self /* : TextCollectorVisitor */;
9889 val* var /* : null */;
9890 static val* varonce;
9891 val* var1 /* : String */;
9892 char* var2 /* : NativeString */;
9893 long var3 /* : Int */;
9894 val* var4 /* : String */;
9895 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
9896 self->type = type;
9897 self->class = &class_modelize_property__TextCollectorVisitor;
9898 var = NULL;
9899 self->attrs[COLOR_parser_nodes__Visitor___current_node].val = var; /* _current_node on <self:TextCollectorVisitor exact> */
9900 if (varonce) {
9901 var1 = varonce;
9902 } else {
9903 var2 = "";
9904 var3 = 0;
9905 var4 = string__NativeString__to_s_with_length(var2, var3);
9906 var1 = var4;
9907 varonce = var1;
9908 }
9909 self->attrs[COLOR_modelize_property__TextCollectorVisitor___64dtext].val = var1; /* @text on <self:TextCollectorVisitor exact> */
9910 return self;
9911 }
9912 /* allocate TextCollectorVisitor */
9913 void CHECK_NEW_modelize_property__TextCollectorVisitor(val* self) {
9914 }
9915 /* runtime class modelize_class__ModelizeClassPhase */
9916 const struct class class_modelize_class__ModelizeClassPhase = {
9917 0, /* box_kind */
9918 {
9919 (nitmethod_t)VIRTUAL_kernel__Object__object_id, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#object_id */
9920 (nitmethod_t)VIRTUAL_kernel__Object__is_same_type, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#is_same_type */
9921 (nitmethod_t)VIRTUAL_kernel__Object__is_same_instance, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#is_same_instance */
9922 (nitmethod_t)VIRTUAL_kernel__Object___61d_61d, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#== */
9923 (nitmethod_t)VIRTUAL_kernel__Object___33d_61d, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#!= */
9924 (nitmethod_t)VIRTUAL_kernel__Object__output, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#output */
9925 (nitmethod_t)VIRTUAL_kernel__Object__output_class_name, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#output_class_name */
9926 (nitmethod_t)VIRTUAL_kernel__Object__exit, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#exit */
9927 (nitmethod_t)VIRTUAL_kernel__Object__sys, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#sys */
9928 (nitmethod_t)VIRTUAL_kernel__Object__hash, /* pointer to modelize_class:ModelizeClassPhase:kernel#Object#hash */
9929 (nitmethod_t)VIRTUAL_string__Object__to_s, /* pointer to modelize_class:ModelizeClassPhase:string#Object#to_s */
9930 (nitmethod_t)VIRTUAL_string__Object__native_class_name, /* pointer to modelize_class:ModelizeClassPhase:string#Object#native_class_name */
9931 (nitmethod_t)VIRTUAL_string__Object__class_name, /* pointer to modelize_class:ModelizeClassPhase:string#Object#class_name */
9932 (nitmethod_t)VIRTUAL_string__Object__inspect, /* pointer to modelize_class:ModelizeClassPhase:string#Object#inspect */
9933 (nitmethod_t)VIRTUAL_string__Object__inspect_head, /* pointer to modelize_class:ModelizeClassPhase:string#Object#inspect_head */
9934 (nitmethod_t)VIRTUAL_string__Object__args, /* pointer to modelize_class:ModelizeClassPhase:string#Object#args */
9935 (nitmethod_t)VIRTUAL_math__Object__atan2, /* pointer to modelize_class:ModelizeClassPhase:math#Object#atan2 */
9936 (nitmethod_t)VIRTUAL_math__Object__pi, /* pointer to modelize_class:ModelizeClassPhase:math#Object#pi */
9937 (nitmethod_t)VIRTUAL_math__Object__srand_from, /* pointer to modelize_class:ModelizeClassPhase:math#Object#srand_from */
9938 (nitmethod_t)VIRTUAL_math__Object__srand, /* pointer to modelize_class:ModelizeClassPhase:math#Object#srand */
9939 (nitmethod_t)VIRTUAL_stream__Object__poll, /* pointer to modelize_class:ModelizeClassPhase:stream#Object#poll */
9940 (nitmethod_t)VIRTUAL_stream__Object__intern_poll, /* pointer to modelize_class:ModelizeClassPhase:stream#Object#intern_poll */
9941 (nitmethod_t)VIRTUAL_time__Object__get_time, /* pointer to modelize_class:ModelizeClassPhase:time#Object#get_time */
9942 (nitmethod_t)VIRTUAL_file__Object__printn, /* pointer to modelize_class:ModelizeClassPhase:file#Object#printn */
9943 (nitmethod_t)VIRTUAL_file__Object__print, /* pointer to modelize_class:ModelizeClassPhase:file#Object#print */
9944 (nitmethod_t)VIRTUAL_file__Object__getc, /* pointer to modelize_class:ModelizeClassPhase:file#Object#getc */
9945 (nitmethod_t)VIRTUAL_file__Object__gets, /* pointer to modelize_class:ModelizeClassPhase:file#Object#gets */
9946 (nitmethod_t)VIRTUAL_file__Object__getcwd, /* pointer to modelize_class:ModelizeClassPhase:file#Object#getcwd */
9947 (nitmethod_t)VIRTUAL_file__Object__file_getcwd, /* pointer to modelize_class:ModelizeClassPhase:file#Object#file_getcwd */
9948 (nitmethod_t)VIRTUAL_file__Object__stdin, /* pointer to modelize_class:ModelizeClassPhase:file#Object#stdin */
9949 (nitmethod_t)VIRTUAL_file__Object__stdout, /* pointer to modelize_class:ModelizeClassPhase:file#Object#stdout */
9950 (nitmethod_t)VIRTUAL_file__Object__stderr, /* pointer to modelize_class:ModelizeClassPhase:file#Object#stderr */
9951 (nitmethod_t)VIRTUAL_model_base__Object__intrude_visibility, /* pointer to modelize_class:ModelizeClassPhase:model_base#Object#intrude_visibility */
9952 (nitmethod_t)VIRTUAL_model_base__Object__public_visibility, /* pointer to modelize_class:ModelizeClassPhase:model_base#Object#public_visibility */
9953 (nitmethod_t)VIRTUAL_model_base__Object__protected_visibility, /* pointer to modelize_class:ModelizeClassPhase:model_base#Object#protected_visibility */
9954 (nitmethod_t)VIRTUAL_model_base__Object__private_visibility, /* pointer to modelize_class:ModelizeClassPhase:model_base#Object#private_visibility */
9955 (nitmethod_t)VIRTUAL_model_base__Object__none_visibility, /* pointer to modelize_class:ModelizeClassPhase:model_base#Object#none_visibility */
9956 (nitmethod_t)VIRTUAL_model__Object__abstract_kind, /* pointer to modelize_class:ModelizeClassPhase:model#Object#abstract_kind */
9957 (nitmethod_t)VIRTUAL_model__Object__concrete_kind, /* pointer to modelize_class:ModelizeClassPhase:model#Object#concrete_kind */
9958 (nitmethod_t)VIRTUAL_model__Object__interface_kind, /* pointer to modelize_class:ModelizeClassPhase:model#Object#interface_kind */
9959 (nitmethod_t)VIRTUAL_model__Object__enum_kind, /* pointer to modelize_class:ModelizeClassPhase:model#Object#enum_kind */
9960 (nitmethod_t)VIRTUAL_model__Object__extern_kind, /* pointer to modelize_class:ModelizeClassPhase:model#Object#extern_kind */
9961 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#toolcontext */
9962 (nitmethod_t)VIRTUAL_phase__Phase__toolcontext_61d, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#toolcontext= */
9963 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#in_hierarchy */
9964 (nitmethod_t)VIRTUAL_phase__Phase__in_hierarchy_61d, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#in_hierarchy= */
9965 (nitmethod_t)VIRTUAL_phase__Phase__init, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#init */
9966 (nitmethod_t)VIRTUAL_modelize_class__ModelizeClassPhase__process_nmodule, /* pointer to modelize_class:ModelizeClassPhase:modelize_class#ModelizeClassPhase#process_nmodule */
9967 (nitmethod_t)VIRTUAL_phase__Phase__process_nclassdef, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#process_nclassdef */
9968 (nitmethod_t)VIRTUAL_phase__Phase__process_npropdef, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#process_npropdef */
9969 (nitmethod_t)VIRTUAL_phase__Phase__process_annotated_node, /* pointer to modelize_class:ModelizeClassPhase:phase#Phase#process_annotated_node */
9970 (nitmethod_t)VIRTUAL_frontend__Phase__process_mainmodule, /* pointer to modelize_class:ModelizeClassPhase:frontend#Phase#process_mainmodule */
9971 }
9972 };
9973 /* allocate ModelizeClassPhase */
9974 val* NEW_modelize_class__ModelizeClassPhase(const struct type* type) {
9975 val* self /* : ModelizeClassPhase */;
9976 self = nit_alloc(sizeof(struct instance) + 2*sizeof(nitattribute_t));
9977 self->type = type;
9978 self->class = &class_modelize_class__ModelizeClassPhase;
9979 return self;
9980 }
9981 /* allocate ModelizeClassPhase */
9982 void CHECK_NEW_modelize_class__ModelizeClassPhase(val* self) {
9983 val* var /* : ToolContext */;
9984 val* var1 /* : POSetElement[Phase] */;
9985 var = self->attrs[COLOR_phase__Phase___64dtoolcontext].val; /* @toolcontext on <self:ModelizeClassPhase> */
9986 if (var == NULL) {
9987 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @toolcontext");
9988 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 107);
9989 exit(1);
9990 }
9991 var1 = self->attrs[COLOR_phase__Phase___64din_hierarchy].val; /* @in_hierarchy on <self:ModelizeClassPhase> */
9992 if (var1 == NULL) {
9993 fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @in_hierarchy");
9994 fprintf(stderr, " (%s:%d)\n", "src/phase.nit", 110);
9995 exit(1);
9996 }
9997 }