Add a first comment line for files generated by nitc.
[nit.git] / c_src / abstract_collection._sep.c
1 /* This C file is generated by NIT to compile module abstract_collection. */
2 #include "abstract_collection._sep.h"
3 val_t abstract_collection___Collection___iterator(val_t self) {
4 struct trace_t trace = {NULL, "abstract_collection::Collection::iterator (bin/../lib/standard//abstract_collection.nit:42,2--43:26)"};
5 trace.prev = tracehead; tracehead = &trace;
6 fprintf(stderr, "Deferred method iterator called (bin/../lib/standard//abstract_collection.nit:42,2)\n");
7 nit_exit(1);
8 tracehead = trace.prev;
9 return NIT_NULL;
10 }
11 val_t abstract_collection___Collection___is_empty(val_t self) {
12 struct trace_t trace = {NULL, "abstract_collection::Collection::is_empty (bin/../lib/standard//abstract_collection.nit:45,2--46:20)"};
13 trace.prev = tracehead; tracehead = &trace;
14 fprintf(stderr, "Deferred method is_empty called (bin/../lib/standard//abstract_collection.nit:45,2)\n");
15 nit_exit(1);
16 tracehead = trace.prev;
17 return NIT_NULL;
18 }
19 val_t abstract_collection___Collection___length(val_t self) {
20 struct trace_t trace = {NULL, "abstract_collection::Collection::length (bin/../lib/standard//abstract_collection.nit:48,2--49:17)"};
21 trace.prev = tracehead; tracehead = &trace;
22 fprintf(stderr, "Deferred method length called (bin/../lib/standard//abstract_collection.nit:48,2)\n");
23 nit_exit(1);
24 tracehead = trace.prev;
25 return NIT_NULL;
26 }
27 val_t abstract_collection___Collection___has(val_t self, val_t param0) {
28 struct trace_t trace = {NULL, "abstract_collection::Collection::has (bin/../lib/standard//abstract_collection.nit:51,2--53:24)"};
29 trace.prev = tracehead; tracehead = &trace;
30 fprintf(stderr, "Deferred method has called (bin/../lib/standard//abstract_collection.nit:51,2)\n");
31 nit_exit(1);
32 tracehead = trace.prev;
33 return NIT_NULL;
34 }
35 val_t abstract_collection___Collection___has_only(val_t self, val_t param0) {
36 struct trace_t trace = {NULL, "abstract_collection::Collection::has_only (bin/../lib/standard//abstract_collection.nit:55,2--58:29)"};
37 trace.prev = tracehead; tracehead = &trace;
38 fprintf(stderr, "Deferred method has_only called (bin/../lib/standard//abstract_collection.nit:55,2)\n");
39 nit_exit(1);
40 tracehead = trace.prev;
41 return NIT_NULL;
42 }
43 val_t abstract_collection___Collection___count(val_t self, val_t param0) {
44 struct trace_t trace = {NULL, "abstract_collection::Collection::count (bin/../lib/standard//abstract_collection.nit:60,2--62:25)"};
45 trace.prev = tracehead; tracehead = &trace;
46 fprintf(stderr, "Deferred method count called (bin/../lib/standard//abstract_collection.nit:60,2)\n");
47 nit_exit(1);
48 tracehead = trace.prev;
49 return NIT_NULL;
50 }
51 val_t abstract_collection___Collection___first(val_t self) {
52 struct trace_t trace = {NULL, "abstract_collection::Collection::first (bin/../lib/standard//abstract_collection.nit:64,2--65:14)"};
53 trace.prev = tracehead; tracehead = &trace;
54 fprintf(stderr, "Deferred method first called (bin/../lib/standard//abstract_collection.nit:64,2)\n");
55 nit_exit(1);
56 tracehead = trace.prev;
57 return NIT_NULL;
58 }
59 val_t abstract_collection___NaiveCollection___is_empty(val_t self) {
60 struct trace_t trace = {NULL, "abstract_collection::NaiveCollection::is_empty (bin/../lib/standard//abstract_collection.nit:72,2--42)"};
61 val_t variable0;
62 trace.prev = tracehead; tracehead = &trace;
63 variable0 = ((abstract_collection___NaiveCollection___length_t)CALL( self,COLOR_abstract_collection___Collection___length))( self) /*NaiveCollection::length*/;
64 variable0 = TAG_Bool((variable0)==( TAG_Int(0)));
65 goto return_label0;
66 return_label0: while(false);
67 tracehead = trace.prev;
68 return variable0;
69 }
70 val_t abstract_collection___NaiveCollection___length(val_t self) {
71 struct trace_t trace = {NULL, "abstract_collection::NaiveCollection::length (bin/../lib/standard//abstract_collection.nit:74,2--78:11)"};
72 val_t variable0;
73 val_t variable1;
74 val_t variable2;
75 trace.prev = tracehead; tracehead = &trace;
76 variable0 = TAG_Int(0);
77 variable1 = ((abstract_collection___Collection___iterator_t)CALL( self,COLOR_abstract_collection___Collection___iterator))( self) /*NaiveCollection::iterator*/;
78 while (true) { /*for*/
79 variable2 = ((abstract_collection___Iterator___is_ok_t)CALL(variable1,COLOR_abstract_collection___Iterator___is_ok))(variable1) /*Iterator::is_ok*/;
80 if (!UNTAG_Bool(variable2)) break; /*for*/
81 variable2 = ((abstract_collection___Iterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*Iterator::item*/;
82 variable0 = TAG_Int(UNTAG_Int(variable0)+UNTAG_Int( variable0 /*nb*/)) /*nb*/;
83 continue_2: while(0);
84 ((abstract_collection___Iterator___next_t)CALL(variable1,COLOR_abstract_collection___Iterator___next))(variable1) /*Iterator::next*/;
85 }
86 break_2: while(0);
87 variable0 = variable0 /*nb*/;
88 goto return_label1;
89 return_label1: while(false);
90 tracehead = trace.prev;
91 return variable0;
92 }
93 val_t abstract_collection___NaiveCollection___has(val_t self, val_t param0) {
94 struct trace_t trace = {NULL, "abstract_collection::NaiveCollection::has (bin/../lib/standard//abstract_collection.nit:81,2--84:14)"};
95 val_t variable0;
96 val_t variable1;
97 val_t variable2;
98 val_t variable3;
99 trace.prev = tracehead; tracehead = &trace;
100 variable0 = param0;
101 variable1 = ((abstract_collection___Collection___iterator_t)CALL( self,COLOR_abstract_collection___Collection___iterator))( self) /*NaiveCollection::iterator*/;
102 while (true) { /*for*/
103 variable2 = ((abstract_collection___Iterator___is_ok_t)CALL(variable1,COLOR_abstract_collection___Iterator___is_ok))(variable1) /*Iterator::is_ok*/;
104 if (!UNTAG_Bool(variable2)) break; /*for*/
105 variable2 = ((abstract_collection___Iterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*Iterator::item*/;
106 variable3 = TAG_Bool(( variable2 /*i*/ == variable0 /*item*/) || (( variable2 /*i*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable2 /*i*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable2 /*i*/, variable0 /*item*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable2 /*i*/,COLOR_kernel___Object_____eqeq))( variable2 /*i*/, variable0 /*item*/) /*Object::==*/)))));
107 if (UNTAG_Bool(variable3)) { /*if*/
108 variable1 = TAG_Bool(true);
109 goto return_label3;
110 }
111 continue_4: while(0);
112 ((abstract_collection___Iterator___next_t)CALL(variable1,COLOR_abstract_collection___Iterator___next))(variable1) /*Iterator::next*/;
113 }
114 break_4: while(0);
115 variable1 = TAG_Bool(false);
116 goto return_label3;
117 return_label3: while(false);
118 tracehead = trace.prev;
119 return variable1;
120 }
121 val_t abstract_collection___NaiveCollection___has_only(val_t self, val_t param0) {
122 struct trace_t trace = {NULL, "abstract_collection::NaiveCollection::has_only (bin/../lib/standard//abstract_collection.nit:87,2--90:13)"};
123 val_t variable0;
124 val_t variable1;
125 val_t variable2;
126 val_t variable3;
127 trace.prev = tracehead; tracehead = &trace;
128 variable0 = param0;
129 variable1 = ((abstract_collection___Collection___iterator_t)CALL( self,COLOR_abstract_collection___Collection___iterator))( self) /*NaiveCollection::iterator*/;
130 while (true) { /*for*/
131 variable2 = ((abstract_collection___Iterator___is_ok_t)CALL(variable1,COLOR_abstract_collection___Iterator___is_ok))(variable1) /*Iterator::is_ok*/;
132 if (!UNTAG_Bool(variable2)) break; /*for*/
133 variable2 = ((abstract_collection___Iterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*Iterator::item*/;
134 variable3 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable2 /*i*/ == variable0 /*item*/) || (( variable2 /*i*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable2 /*i*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable2 /*i*/, variable0 /*item*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable2 /*i*/,COLOR_kernel___Object_____eqeq))( variable2 /*i*/, variable0 /*item*/) /*Object::==*/)))))));
135 if (UNTAG_Bool(variable3)) { /*if*/
136 variable1 = TAG_Bool(false);
137 goto return_label5;
138 }
139 continue_6: while(0);
140 ((abstract_collection___Iterator___next_t)CALL(variable1,COLOR_abstract_collection___Iterator___next))(variable1) /*Iterator::next*/;
141 }
142 break_6: while(0);
143 variable1 = TAG_Bool(true);
144 goto return_label5;
145 return_label5: while(false);
146 tracehead = trace.prev;
147 return variable1;
148 }
149 val_t abstract_collection___NaiveCollection___count(val_t self, val_t param0) {
150 struct trace_t trace = {NULL, "abstract_collection::NaiveCollection::count (bin/../lib/standard//abstract_collection.nit:93,2--97:11)"};
151 val_t variable0;
152 val_t variable1;
153 val_t variable2;
154 val_t variable3;
155 val_t variable4;
156 trace.prev = tracehead; tracehead = &trace;
157 variable0 = param0;
158 variable1 = TAG_Int(0);
159 variable2 = ((abstract_collection___Collection___iterator_t)CALL( self,COLOR_abstract_collection___Collection___iterator))( self) /*NaiveCollection::iterator*/;
160 while (true) { /*for*/
161 variable3 = ((abstract_collection___Iterator___is_ok_t)CALL(variable2,COLOR_abstract_collection___Iterator___is_ok))(variable2) /*Iterator::is_ok*/;
162 if (!UNTAG_Bool(variable3)) break; /*for*/
163 variable3 = ((abstract_collection___Iterator___item_t)CALL(variable2,COLOR_abstract_collection___Iterator___item))(variable2) /*Iterator::item*/;
164 variable4 = TAG_Bool(( variable3 /*i*/ == variable0 /*item*/) || (( variable3 /*i*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable3 /*i*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable3 /*i*/, variable0 /*item*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable3 /*i*/,COLOR_kernel___Object_____eqeq))( variable3 /*i*/, variable0 /*item*/) /*Object::==*/)))));
165 if (UNTAG_Bool(variable4)) { /*if*/
166 variable1 = TAG_Int(UNTAG_Int(variable1)+UNTAG_Int( TAG_Int(1))) /*nb*/;
167 }
168 continue_8: while(0);
169 ((abstract_collection___Iterator___next_t)CALL(variable2,COLOR_abstract_collection___Iterator___next))(variable2) /*Iterator::next*/;
170 }
171 break_8: while(0);
172 variable1 = variable1 /*nb*/;
173 goto return_label7;
174 return_label7: while(false);
175 tracehead = trace.prev;
176 return variable1;
177 }
178 val_t abstract_collection___NaiveCollection___first(val_t self) {
179 struct trace_t trace = {NULL, "abstract_collection::NaiveCollection::first (bin/../lib/standard//abstract_collection.nit:100,2--103:22)"};
180 val_t variable0;
181 trace.prev = tracehead; tracehead = &trace;
182 variable0 = ((abstract_collection___NaiveCollection___length_t)CALL( self,COLOR_abstract_collection___Collection___length))( self) /*NaiveCollection::length*/;
183 variable0 = TAG_Bool(UNTAG_Int(variable0)>UNTAG_Int( TAG_Int(0)));
184 if (!UNTAG_Bool(variable0)) { fprintf(stderr, "Assert failed: bin/../lib/standard//abstract_collection.nit:102,3--19\n"); nit_exit(1);}
185 variable0 = ((abstract_collection___Collection___iterator_t)CALL( self,COLOR_abstract_collection___Collection___iterator))( self) /*NaiveCollection::iterator*/;
186 variable0 = ((abstract_collection___Iterator___item_t)CALL(variable0,COLOR_abstract_collection___Iterator___item))(variable0) /*Iterator::item*/;
187 goto return_label9;
188 return_label9: while(false);
189 tracehead = trace.prev;
190 return variable0;
191 }
192 val_t abstract_collection___Iterator___item(val_t self) {
193 struct trace_t trace = {NULL, "abstract_collection::Iterator::item (bin/../lib/standard//abstract_collection.nit:110,2--112:13)"};
194 trace.prev = tracehead; tracehead = &trace;
195 fprintf(stderr, "Deferred method item called (bin/../lib/standard//abstract_collection.nit:110,2)\n");
196 nit_exit(1);
197 tracehead = trace.prev;
198 return NIT_NULL;
199 }
200 void abstract_collection___Iterator___next(val_t self) {
201 struct trace_t trace = {NULL, "abstract_collection::Iterator::next (bin/../lib/standard//abstract_collection.nit:114,2--116:10)"};
202 trace.prev = tracehead; tracehead = &trace;
203 fprintf(stderr, "Deferred method next called (bin/../lib/standard//abstract_collection.nit:114,2)\n");
204 nit_exit(1);
205 tracehead = trace.prev;
206 return;
207 }
208 val_t abstract_collection___Iterator___is_ok(val_t self) {
209 struct trace_t trace = {NULL, "abstract_collection::Iterator::is_ok (bin/../lib/standard//abstract_collection.nit:118,2--119:17)"};
210 trace.prev = tracehead; tracehead = &trace;
211 fprintf(stderr, "Deferred method is_ok called (bin/../lib/standard//abstract_collection.nit:118,2)\n");
212 nit_exit(1);
213 tracehead = trace.prev;
214 return NIT_NULL;
215 }
216 val_t abstract_collection___Container___first(val_t self) {
217 struct trace_t trace = {NULL, "abstract_collection::Container::first (bin/../lib/standard//abstract_collection.nit:126,2--33)"};
218 val_t variable0;
219 trace.prev = tracehead; tracehead = &trace;
220 variable0 = ATTR_abstract_collection___Container____item( self) /*Container::_item*/;
221 goto return_label10;
222 return_label10: while(false);
223 tracehead = trace.prev;
224 return variable0;
225 }
226 val_t abstract_collection___Container___is_empty(val_t self) {
227 struct trace_t trace = {NULL, "abstract_collection::Container::is_empty (bin/../lib/standard//abstract_collection.nit:128,2--36)"};
228 val_t variable0;
229 trace.prev = tracehead; tracehead = &trace;
230 variable0 = TAG_Bool(false);
231 goto return_label11;
232 return_label11: while(false);
233 tracehead = trace.prev;
234 return variable0;
235 }
236 val_t abstract_collection___Container___length(val_t self) {
237 struct trace_t trace = {NULL, "abstract_collection::Container::length (bin/../lib/standard//abstract_collection.nit:130,2--30)"};
238 val_t variable0;
239 trace.prev = tracehead; tracehead = &trace;
240 variable0 = TAG_Int(1);
241 goto return_label12;
242 return_label12: while(false);
243 tracehead = trace.prev;
244 return variable0;
245 }
246 val_t abstract_collection___Container___has(val_t self, val_t param0) {
247 struct trace_t trace = {NULL, "abstract_collection::Container::has (bin/../lib/standard//abstract_collection.nit:132,2--51)"};
248 val_t variable0;
249 val_t variable1;
250 trace.prev = tracehead; tracehead = &trace;
251 variable0 = param0;
252 variable1 = ATTR_abstract_collection___Container____item( self) /*Container::_item*/;
253 variable1 = TAG_Bool((variable1 == variable0 /*an_item*/) || ((variable1 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable1, variable0 /*an_item*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, variable0 /*an_item*/) /*Object::==*/)))));
254 goto return_label13;
255 return_label13: while(false);
256 tracehead = trace.prev;
257 return variable1;
258 }
259 val_t abstract_collection___Container___has_only(val_t self, val_t param0) {
260 struct trace_t trace = {NULL, "abstract_collection::Container::has_only (bin/../lib/standard//abstract_collection.nit:134,2--56)"};
261 val_t variable0;
262 val_t variable1;
263 trace.prev = tracehead; tracehead = &trace;
264 variable0 = param0;
265 variable1 = ATTR_abstract_collection___Container____item( self) /*Container::_item*/;
266 variable1 = TAG_Bool((variable1 == variable0 /*an_item*/) || ((variable1 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable1, variable0 /*an_item*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, variable0 /*an_item*/) /*Object::==*/)))));
267 goto return_label14;
268 return_label14: while(false);
269 tracehead = trace.prev;
270 return variable1;
271 }
272 val_t abstract_collection___Container___count(val_t self, val_t param0) {
273 struct trace_t trace = {NULL, "abstract_collection::Container::count (bin/../lib/standard//abstract_collection.nit:136,2--141:11)"};
274 val_t variable0;
275 val_t variable1;
276 trace.prev = tracehead; tracehead = &trace;
277 variable0 = param0;
278 variable1 = ATTR_abstract_collection___Container____item( self) /*Container::_item*/;
279 variable1 = TAG_Bool((variable1 == variable0 /*an_item*/) || ((variable1 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable1, variable0 /*an_item*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, variable0 /*an_item*/) /*Object::==*/)))));
280 if (UNTAG_Bool(variable1)) { /*if*/
281 variable1 = TAG_Int(1);
282 goto return_label15;
283 } else { /*if*/
284 variable1 = TAG_Int(0);
285 goto return_label15;
286 }
287 return_label15: while(false);
288 tracehead = trace.prev;
289 return variable1;
290 }
291 val_t abstract_collection___Container___iterator(val_t self) {
292 struct trace_t trace = {NULL, "abstract_collection::Container::iterator (bin/../lib/standard//abstract_collection.nit:145,2--60)"};
293 val_t variable0;
294 trace.prev = tracehead; tracehead = &trace;
295 variable0 = NEW_abstract_collection___ContainerIterator___init( self); /*new ContainerIterator[E]*/
296 goto return_label16;
297 return_label16: while(false);
298 tracehead = trace.prev;
299 return variable0;
300 }
301 void abstract_collection___Container___init(val_t self, val_t param0, int* init_table) {
302 struct trace_t trace = {NULL, "abstract_collection::Container::init (bin/../lib/standard//abstract_collection.nit:147,2--148:24)"};
303 val_t variable0;
304 trace.prev = tracehead; tracehead = &trace;
305 variable0 = param0;
306 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Container].i]) return;
307 ATTR_abstract_collection___Container____item( self) /*Container::_item*/ = variable0 /*e*/;
308 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Container].i] = 1;
309 tracehead = trace.prev;
310 return;
311 }
312 val_t abstract_collection___Container___item(val_t self) {
313 struct trace_t trace = {NULL, "abstract_collection::Container::item (bin/../lib/standard//abstract_collection.nit:150,2--151:32)"};
314 trace.prev = tracehead; tracehead = &trace;
315 tracehead = trace.prev;
316 return ATTR_abstract_collection___Container____item( self) /*Container::_item*/;
317 }
318 void abstract_collection___Container___item__eq(val_t self, val_t param0) {
319 struct trace_t trace = {NULL, "abstract_collection::Container::item= (bin/../lib/standard//abstract_collection.nit:150,2--151:32)"};
320 trace.prev = tracehead; tracehead = &trace;
321 ATTR_abstract_collection___Container____item( self) /*Container::_item*/ = param0;
322 tracehead = trace.prev;
323 return;
324 }
325 val_t abstract_collection___ContainerIterator___item(val_t self) {
326 struct trace_t trace = {NULL, "abstract_collection::ContainerIterator::item (bin/../lib/standard//abstract_collection.nit:157,2--42)"};
327 val_t variable0;
328 trace.prev = tracehead; tracehead = &trace;
329 variable0 = ATTR_abstract_collection___ContainerIterator____container( self) /*ContainerIterator::_container*/;
330 variable0 = ((abstract_collection___Container___item_t)CALL(variable0,COLOR_abstract_collection___Container___item))(variable0) /*Container::item*/;
331 goto return_label18;
332 return_label18: while(false);
333 tracehead = trace.prev;
334 return variable0;
335 }
336 void abstract_collection___ContainerIterator___next(val_t self) {
337 struct trace_t trace = {NULL, "abstract_collection::ContainerIterator::next (bin/../lib/standard//abstract_collection.nit:159,2--34)"};
338 trace.prev = tracehead; tracehead = &trace;
339 ATTR_abstract_collection___ContainerIterator____is_ok( self) /*ContainerIterator::_is_ok*/ = TAG_Bool(false);
340 tracehead = trace.prev;
341 return;
342 }
343 void abstract_collection___ContainerIterator___init(val_t self, val_t param0, int* init_table) {
344 struct trace_t trace = {NULL, "abstract_collection::ContainerIterator::init (bin/../lib/standard//abstract_collection.nit:161,2--40)"};
345 val_t variable0;
346 trace.prev = tracehead; tracehead = &trace;
347 variable0 = param0;
348 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ContainerIterator].i]) return;
349 ATTR_abstract_collection___ContainerIterator____container( self) /*ContainerIterator::_container*/ = variable0 /*c*/;
350 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ContainerIterator].i] = 1;
351 tracehead = trace.prev;
352 return;
353 }
354 val_t abstract_collection___ContainerIterator___is_ok(val_t self) {
355 struct trace_t trace = {NULL, "abstract_collection::ContainerIterator::is_ok (bin/../lib/standard//abstract_collection.nit:163,2--40)"};
356 trace.prev = tracehead; tracehead = &trace;
357 tracehead = trace.prev;
358 return ATTR_abstract_collection___ContainerIterator____is_ok( self) /*ContainerIterator::_is_ok*/;
359 }
360 void abstract_collection___RemovableCollection___clear(val_t self) {
361 struct trace_t trace = {NULL, "abstract_collection::RemovableCollection::clear (bin/../lib/standard//abstract_collection.nit:171,2--172:11)"};
362 trace.prev = tracehead; tracehead = &trace;
363 fprintf(stderr, "Deferred method clear called (bin/../lib/standard//abstract_collection.nit:171,2)\n");
364 nit_exit(1);
365 tracehead = trace.prev;
366 return;
367 }
368 void abstract_collection___RemovableCollection___remove(val_t self, val_t param0) {
369 struct trace_t trace = {NULL, "abstract_collection::RemovableCollection::remove (bin/../lib/standard//abstract_collection.nit:174,2--175:20)"};
370 trace.prev = tracehead; tracehead = &trace;
371 fprintf(stderr, "Deferred method remove called (bin/../lib/standard//abstract_collection.nit:174,2)\n");
372 nit_exit(1);
373 tracehead = trace.prev;
374 return;
375 }
376 void abstract_collection___RemovableCollection___remove_all(val_t self, val_t param0) {
377 struct trace_t trace = {NULL, "abstract_collection::RemovableCollection::remove_all (bin/../lib/standard//abstract_collection.nit:177,2--178:59)"};
378 val_t variable0;
379 val_t variable1;
380 trace.prev = tracehead; tracehead = &trace;
381 variable0 = param0;
382 while (true) { /*while*/
383 variable1 = ((abstract_collection___Collection___has_t)CALL( self,COLOR_abstract_collection___Collection___has))( self, variable0 /*item*/) /*RemovableCollection::has*/;
384 if (!UNTAG_Bool(variable1)) break; /* while*/
385 ((abstract_collection___RemovableCollection___remove_t)CALL( self,COLOR_abstract_collection___RemovableCollection___remove))( self, variable0 /*item*/) /*RemovableCollection::remove*/;
386 continue_22: while(0);
387 }
388 break_22: while(0);
389 tracehead = trace.prev;
390 return;
391 }
392 void abstract_collection___SimpleCollection___add(val_t self, val_t param0) {
393 struct trace_t trace = {NULL, "abstract_collection::SimpleCollection::add (bin/../lib/standard//abstract_collection.nit:184,2--186:17)"};
394 trace.prev = tracehead; tracehead = &trace;
395 fprintf(stderr, "Deferred method add called (bin/../lib/standard//abstract_collection.nit:184,2)\n");
396 nit_exit(1);
397 tracehead = trace.prev;
398 return;
399 }
400 void abstract_collection___SimpleCollection___add_all(val_t self, val_t param0) {
401 struct trace_t trace = {NULL, "abstract_collection::SimpleCollection::add_all (bin/../lib/standard//abstract_collection.nit:188,2--189:81)"};
402 val_t variable0;
403 val_t variable1;
404 val_t variable2;
405 trace.prev = tracehead; tracehead = &trace;
406 variable0 = param0;
407 variable1 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0 /*coll*/ == NIT_NULL /*null*/) || (( variable0 /*coll*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable0 /*coll*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable0 /*coll*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable0 /*coll*/,COLOR_kernel___Object_____eqeq))( variable0 /*coll*/, NIT_NULL /*null*/) /*Collection::==*/)))))));
408 if (UNTAG_Bool(variable1)) { /*if*/
409 variable1 = ((abstract_collection___Collection___iterator_t)CALL( variable0 /*coll*/,COLOR_abstract_collection___Collection___iterator))( variable0 /*coll*/) /*Collection::iterator*/;
410 while (true) { /*for*/
411 variable2 = ((abstract_collection___Iterator___is_ok_t)CALL(variable1,COLOR_abstract_collection___Iterator___is_ok))(variable1) /*Iterator::is_ok*/;
412 if (!UNTAG_Bool(variable2)) break; /*for*/
413 variable2 = ((abstract_collection___Iterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*Iterator::item*/;
414 ((abstract_collection___SimpleCollection___add_t)CALL( self,COLOR_abstract_collection___SimpleCollection___add))( self, variable2 /*i*/) /*SimpleCollection::add*/;
415 continue_24: while(0);
416 ((abstract_collection___Iterator___next_t)CALL(variable1,COLOR_abstract_collection___Iterator___next))(variable1) /*Iterator::next*/;
417 }
418 break_24: while(0);
419 }
420 tracehead = trace.prev;
421 return;
422 }
423 val_t abstract_collection___Set___has_only(val_t self, val_t param0) {
424 struct trace_t trace = {NULL, "abstract_collection::Set::has_only (bin/../lib/standard//abstract_collection.nit:204,2--212:15)"};
425 val_t variable0;
426 val_t variable1;
427 val_t variable2;
428 trace.prev = tracehead; tracehead = &trace;
429 variable0 = param0;
430 variable2 = ((abstract_collection___Collection___length_t)CALL( self,COLOR_abstract_collection___Collection___length))( self) /*Set::length*/;
431 variable1 = variable2;
432 variable2 = TAG_Bool(( variable1 /*l*/)==( TAG_Int(1)));
433 if (UNTAG_Bool(variable2)) { /*if*/
434 variable2 = ((abstract_collection___Collection___has_t)CALL( self,COLOR_abstract_collection___Collection___has))( self, variable0 /*item*/) /*Set::has*/;
435 variable1 = variable2;
436 goto return_label25;
437 } else { /*if*/
438 variable2 = TAG_Bool(( variable1 /*l*/)==( TAG_Int(0)));
439 if (UNTAG_Bool(variable2)) { /*if*/
440 variable1 = TAG_Bool(true);
441 goto return_label25;
442 } else { /*if*/
443 variable1 = TAG_Bool(false);
444 goto return_label25;
445 }
446 }
447 return_label25: while(false);
448 tracehead = trace.prev;
449 return variable1;
450 }
451 val_t abstract_collection___Set___count(val_t self, val_t param0) {
452 struct trace_t trace = {NULL, "abstract_collection::Set::count (bin/../lib/standard//abstract_collection.nit:216,2--222:11)"};
453 val_t variable0;
454 val_t variable1;
455 trace.prev = tracehead; tracehead = &trace;
456 variable0 = param0;
457 variable1 = ((abstract_collection___Collection___has_t)CALL( self,COLOR_abstract_collection___Collection___has))( self, variable0 /*item*/) /*Set::has*/;
458 if (UNTAG_Bool(variable1)) { /*if*/
459 variable1 = TAG_Int(1);
460 goto return_label26;
461 } else { /*if*/
462 variable1 = TAG_Int(0);
463 goto return_label26;
464 }
465 return_label26: while(false);
466 tracehead = trace.prev;
467 return variable1;
468 }
469 void abstract_collection___Set___remove_all(val_t self, val_t param0) {
470 struct trace_t trace = {NULL, "abstract_collection::Set::remove_all (bin/../lib/standard//abstract_collection.nit:226,2--227:43)"};
471 val_t variable0;
472 trace.prev = tracehead; tracehead = &trace;
473 variable0 = param0;
474 ((abstract_collection___RemovableCollection___remove_t)CALL( self,COLOR_abstract_collection___RemovableCollection___remove))( self, variable0 /*item*/) /*Set::remove*/;
475 tracehead = trace.prev;
476 return;
477 }
478 val_t abstract_collection___Map_____bra(val_t self, val_t param0) {
479 struct trace_t trace = {NULL, "abstract_collection::Map::[] (bin/../lib/standard//abstract_collection.nit:244,2--245:19)"};
480 trace.prev = tracehead; tracehead = &trace;
481 fprintf(stderr, "Deferred method [] called (bin/../lib/standard//abstract_collection.nit:244,2)\n");
482 nit_exit(1);
483 tracehead = trace.prev;
484 return NIT_NULL;
485 }
486 void abstract_collection___Map_____braeq(val_t self, val_t param0, val_t param1) {
487 struct trace_t trace = {NULL, "abstract_collection::Map::[]= (bin/../lib/standard//abstract_collection.nit:247,2--248:25)"};
488 trace.prev = tracehead; tracehead = &trace;
489 fprintf(stderr, "Deferred method []= called (bin/../lib/standard//abstract_collection.nit:247,2)\n");
490 nit_exit(1);
491 tracehead = trace.prev;
492 return;
493 }
494 val_t abstract_collection___Map___has_key(val_t self, val_t param0) {
495 struct trace_t trace = {NULL, "abstract_collection::Map::has_key (bin/../lib/standard//abstract_collection.nit:250,2--251:27)"};
496 trace.prev = tracehead; tracehead = &trace;
497 fprintf(stderr, "Deferred method has_key called (bin/../lib/standard//abstract_collection.nit:250,2)\n");
498 nit_exit(1);
499 tracehead = trace.prev;
500 return NIT_NULL;
501 }
502 void abstract_collection___Map___remove_at(val_t self, val_t param0) {
503 struct trace_t trace = {NULL, "abstract_collection::Map::remove_at (bin/../lib/standard//abstract_collection.nit:253,2--254:22)"};
504 trace.prev = tracehead; tracehead = &trace;
505 fprintf(stderr, "Deferred method remove_at called (bin/../lib/standard//abstract_collection.nit:253,2)\n");
506 nit_exit(1);
507 tracehead = trace.prev;
508 return;
509 }
510 void abstract_collection___Map___recover_with(val_t self, val_t param0) {
511 struct trace_t trace = {NULL, "abstract_collection::Map::recover_with (bin/../lib/standard//abstract_collection.nit:256,2--263:9)"};
512 val_t variable0;
513 val_t variable1;
514 val_t variable2;
515 val_t variable3;
516 trace.prev = tracehead; tracehead = &trace;
517 variable0 = param0;
518 variable2 = ((abstract_collection___Map___iterator_t)CALL( variable0 /*map*/,COLOR_abstract_collection___Collection___iterator))( variable0 /*map*/) /*Map::iterator*/;
519 variable1 = variable2;
520 while (true) { /*while*/
521 variable2 = ((abstract_collection___Iterator___is_ok_t)CALL( variable1 /*i*/,COLOR_abstract_collection___Iterator___is_ok))( variable1 /*i*/) /*MapIterator::is_ok*/;
522 if (!UNTAG_Bool(variable2)) break; /* while*/
523 variable2 = ((abstract_collection___MapIterator___key_t)CALL( variable1 /*i*/,COLOR_abstract_collection___MapIterator___key))( variable1 /*i*/) /*MapIterator::key*/;
524 variable3 = ((abstract_collection___Iterator___item_t)CALL( variable1 /*i*/,COLOR_abstract_collection___Iterator___item))( variable1 /*i*/) /*MapIterator::item*/;
525 ((abstract_collection___Map_____braeq_t)CALL( self,COLOR_abstract_collection___Map_____braeq))( self, variable2, variable3) /*Map::[]=*/;
526 ((abstract_collection___Iterator___next_t)CALL( variable1 /*i*/,COLOR_abstract_collection___Iterator___next))( variable1 /*i*/) /*MapIterator::next*/;
527 continue_29: while(0);
528 }
529 break_29: while(0);
530 tracehead = trace.prev;
531 return;
532 }
533 val_t abstract_collection___Map___iterator(val_t self) {
534 struct trace_t trace = {NULL, "abstract_collection::Map::iterator (bin/../lib/standard//abstract_collection.nit:267,2--38)"};
535 trace.prev = tracehead; tracehead = &trace;
536 fprintf(stderr, "Deferred method iterator called (bin/../lib/standard//abstract_collection.nit:267,2)\n");
537 nit_exit(1);
538 tracehead = trace.prev;
539 return NIT_NULL;
540 }
541 val_t abstract_collection___MapIterator___key(val_t self) {
542 struct trace_t trace = {NULL, "abstract_collection::MapIterator::key (bin/../lib/standard//abstract_collection.nit:273,2--274:12)"};
543 trace.prev = tracehead; tracehead = &trace;
544 fprintf(stderr, "Deferred method key called (bin/../lib/standard//abstract_collection.nit:273,2)\n");
545 nit_exit(1);
546 tracehead = trace.prev;
547 return NIT_NULL;
548 }
549 void abstract_collection___MapIterator___item__eq(val_t self, val_t param0) {
550 struct trace_t trace = {NULL, "abstract_collection::MapIterator::item= (bin/../lib/standard//abstract_collection.nit:276,2--277:19)"};
551 trace.prev = tracehead; tracehead = &trace;
552 fprintf(stderr, "Deferred method item= called (bin/../lib/standard//abstract_collection.nit:276,2)\n");
553 nit_exit(1);
554 tracehead = trace.prev;
555 return;
556 }
557 val_t abstract_collection___IndexedCollection___first(val_t self) {
558 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::first (bin/../lib/standard//abstract_collection.nit:285,2--290:15)"};
559 val_t variable0;
560 trace.prev = tracehead; tracehead = &trace;
561 variable0 = ((abstract_collection___Collection___is_empty_t)CALL( self,COLOR_abstract_collection___Collection___is_empty))( self) /*IndexedCollection::is_empty*/;
562 if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable0)))) { fprintf(stderr, "Assert 'not_empty' failed: bin/../lib/standard//abstract_collection.nit:289,3--32\n"); nit_exit(1);}
563 variable0 = ((abstract_collection___Map_____bra_t)CALL( self,COLOR_abstract_collection___Map_____bra))( self, TAG_Int(0)) /*IndexedCollection::[]*/;
564 goto return_label30;
565 return_label30: while(false);
566 tracehead = trace.prev;
567 return variable0;
568 }
569 void abstract_collection___IndexedCollection___first__eq(val_t self, val_t param0) {
570 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::first= (bin/../lib/standard//abstract_collection.nit:293,2--296:18)"};
571 val_t variable0;
572 trace.prev = tracehead; tracehead = &trace;
573 variable0 = param0;
574 ((abstract_collection___Map_____braeq_t)CALL( self,COLOR_abstract_collection___Map_____braeq))( self, TAG_Int(0), variable0 /*item*/) /*IndexedCollection::[]=*/;
575 tracehead = trace.prev;
576 return;
577 }
578 val_t abstract_collection___IndexedCollection___last(val_t self) {
579 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::last (bin/../lib/standard//abstract_collection.nit:298,2--303:22)"};
580 val_t variable0;
581 trace.prev = tracehead; tracehead = &trace;
582 variable0 = ((abstract_collection___Collection___is_empty_t)CALL( self,COLOR_abstract_collection___Collection___is_empty))( self) /*IndexedCollection::is_empty*/;
583 if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable0)))) { fprintf(stderr, "Assert 'not_empty' failed: bin/../lib/standard//abstract_collection.nit:302,3--32\n"); nit_exit(1);}
584 variable0 = ((abstract_collection___Collection___length_t)CALL( self,COLOR_abstract_collection___Collection___length))( self) /*IndexedCollection::length*/;
585 variable0 = TAG_Int(UNTAG_Int(variable0)-UNTAG_Int( TAG_Int(1)));
586 variable0 = ((abstract_collection___Map_____bra_t)CALL( self,COLOR_abstract_collection___Map_____bra))( self, variable0) /*IndexedCollection::[]*/;
587 goto return_label32;
588 return_label32: while(false);
589 tracehead = trace.prev;
590 return variable0;
591 }
592 void abstract_collection___IndexedCollection___last__eq(val_t self, val_t param0) {
593 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::last= (bin/../lib/standard//abstract_collection.nit:306,2--314:17)"};
594 val_t variable0;
595 val_t variable1;
596 val_t variable2;
597 trace.prev = tracehead; tracehead = &trace;
598 variable0 = param0;
599 variable2 = ((abstract_collection___Collection___length_t)CALL( self,COLOR_abstract_collection___Collection___length))( self) /*IndexedCollection::length*/;
600 variable1 = variable2;
601 variable2 = TAG_Bool(UNTAG_Int( variable1 /*l*/)>UNTAG_Int( TAG_Int(0)));
602 if (UNTAG_Bool(variable2)) { /*if*/
603 variable2 = TAG_Int(UNTAG_Int( variable1 /*l*/)-UNTAG_Int( TAG_Int(1)));
604 ((abstract_collection___Map_____braeq_t)CALL( self,COLOR_abstract_collection___Map_____braeq))( self, variable2, variable0 /*item*/) /*IndexedCollection::[]=*/;
605 } else { /*if*/
606 ((abstract_collection___Map_____braeq_t)CALL( self,COLOR_abstract_collection___Map_____braeq))( self, TAG_Int(0), variable0 /*item*/) /*IndexedCollection::[]=*/;
607 }
608 tracehead = trace.prev;
609 return;
610 }
611 void abstract_collection___IndexedCollection___add(val_t self, val_t param0) {
612 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::add (bin/../lib/standard//abstract_collection.nit:318,2--319:28)"};
613 val_t variable0;
614 trace.prev = tracehead; tracehead = &trace;
615 variable0 = param0;
616 ((abstract_collection___IndexedCollection___push_t)CALL( self,COLOR_abstract_collection___IndexedCollection___push))( self, variable0 /*e*/) /*IndexedCollection::push*/;
617 tracehead = trace.prev;
618 return;
619 }
620 void abstract_collection___IndexedCollection___push(val_t self, val_t param0) {
621 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::push (bin/../lib/standard//abstract_collection.nit:321,2--322:15)"};
622 trace.prev = tracehead; tracehead = &trace;
623 fprintf(stderr, "Deferred method push called (bin/../lib/standard//abstract_collection.nit:321,2)\n");
624 nit_exit(1);
625 tracehead = trace.prev;
626 return;
627 }
628 void abstract_collection___IndexedCollection___append(val_t self, val_t param0) {
629 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::append (bin/../lib/standard//abstract_collection.nit:324,2--325:81)"};
630 val_t variable0;
631 val_t variable1;
632 val_t variable2;
633 trace.prev = tracehead; tracehead = &trace;
634 variable0 = param0;
635 variable1 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0 /*coll*/ == NIT_NULL /*null*/) || (( variable0 /*coll*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable0 /*coll*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable0 /*coll*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable0 /*coll*/,COLOR_kernel___Object_____eqeq))( variable0 /*coll*/, NIT_NULL /*null*/) /*Collection::==*/)))))));
636 if (UNTAG_Bool(variable1)) { /*if*/
637 variable1 = ((abstract_collection___Collection___iterator_t)CALL( variable0 /*coll*/,COLOR_abstract_collection___Collection___iterator))( variable0 /*coll*/) /*Collection::iterator*/;
638 while (true) { /*for*/
639 variable2 = ((abstract_collection___Iterator___is_ok_t)CALL(variable1,COLOR_abstract_collection___Iterator___is_ok))(variable1) /*Iterator::is_ok*/;
640 if (!UNTAG_Bool(variable2)) break; /*for*/
641 variable2 = ((abstract_collection___Iterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*Iterator::item*/;
642 ((abstract_collection___IndexedCollection___push_t)CALL( self,COLOR_abstract_collection___IndexedCollection___push))( self, variable2 /*i*/) /*IndexedCollection::push*/;
643 continue_36: while(0);
644 ((abstract_collection___Iterator___next_t)CALL(variable1,COLOR_abstract_collection___Iterator___next))(variable1) /*Iterator::next*/;
645 }
646 break_36: while(0);
647 }
648 tracehead = trace.prev;
649 return;
650 }
651 val_t abstract_collection___IndexedCollection___pop(val_t self) {
652 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::pop (bin/../lib/standard//abstract_collection.nit:327,2--328:12)"};
653 trace.prev = tracehead; tracehead = &trace;
654 fprintf(stderr, "Deferred method pop called (bin/../lib/standard//abstract_collection.nit:327,2)\n");
655 nit_exit(1);
656 tracehead = trace.prev;
657 return NIT_NULL;
658 }
659 void abstract_collection___IndexedCollection___unshift(val_t self, val_t param0) {
660 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::unshift (bin/../lib/standard//abstract_collection.nit:330,2--331:18)"};
661 trace.prev = tracehead; tracehead = &trace;
662 fprintf(stderr, "Deferred method unshift called (bin/../lib/standard//abstract_collection.nit:330,2)\n");
663 nit_exit(1);
664 tracehead = trace.prev;
665 return;
666 }
667 val_t abstract_collection___IndexedCollection___shift(val_t self) {
668 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::shift (bin/../lib/standard//abstract_collection.nit:333,2--335:14)"};
669 trace.prev = tracehead; tracehead = &trace;
670 fprintf(stderr, "Deferred method shift called (bin/../lib/standard//abstract_collection.nit:333,2)\n");
671 nit_exit(1);
672 tracehead = trace.prev;
673 return NIT_NULL;
674 }
675 val_t abstract_collection___IndexedCollection___index_of(val_t self, val_t param0) {
676 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::index_of (bin/../lib/standard//abstract_collection.nit:337,2--346:11)"};
677 val_t variable0;
678 val_t variable1;
679 val_t variable2;
680 trace.prev = tracehead; tracehead = &trace;
681 variable0 = param0;
682 variable2 = ((abstract_collection___IndexedCollection___iterator_t)CALL( self,COLOR_abstract_collection___Collection___iterator))( self) /*IndexedCollection::iterator*/;
683 variable1 = variable2;
684 while (true) { /*while*/
685 variable2 = ((abstract_collection___Iterator___is_ok_t)CALL( variable1 /*i*/,COLOR_abstract_collection___Iterator___is_ok))( variable1 /*i*/) /*IndexedIterator::is_ok*/;
686 if (!UNTAG_Bool(variable2)) break; /* while*/
687 variable2 = ((abstract_collection___Iterator___item_t)CALL( variable1 /*i*/,COLOR_abstract_collection___Iterator___item))( variable1 /*i*/) /*IndexedIterator::item*/;
688 variable2 = TAG_Bool((variable2 == variable0 /*item*/) || ((variable2 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable2, variable0 /*item*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))(variable2, variable0 /*item*/) /*Object::==*/)))));
689 if (UNTAG_Bool(variable2)) { /*if*/
690 variable2 = ((abstract_collection___IndexedIterator___index_t)CALL( variable1 /*i*/,COLOR_abstract_collection___IndexedIterator___index))( variable1 /*i*/) /*IndexedIterator::index*/;
691 variable1 = variable2;
692 goto return_label37;
693 }
694 ((abstract_collection___Iterator___next_t)CALL( variable1 /*i*/,COLOR_abstract_collection___Iterator___next))( variable1 /*i*/) /*IndexedIterator::next*/;
695 continue_38: while(0);
696 }
697 break_38: while(0);
698 variable2 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
699 variable1 = variable2;
700 goto return_label37;
701 return_label37: while(false);
702 tracehead = trace.prev;
703 return variable1;
704 }
705 val_t abstract_collection___IndexedCollection___iterator(val_t self) {
706 struct trace_t trace = {NULL, "abstract_collection::IndexedCollection::iterator (bin/../lib/standard//abstract_collection.nit:349,2--39)"};
707 trace.prev = tracehead; tracehead = &trace;
708 fprintf(stderr, "Deferred method iterator called (bin/../lib/standard//abstract_collection.nit:349,2)\n");
709 nit_exit(1);
710 tracehead = trace.prev;
711 return NIT_NULL;
712 }
713 val_t abstract_collection___IndexedIterator___index(val_t self) {
714 struct trace_t trace = {NULL, "abstract_collection::IndexedIterator::index (bin/../lib/standard//abstract_collection.nit:355,2--356:16)"};
715 trace.prev = tracehead; tracehead = &trace;
716 fprintf(stderr, "Deferred method index called (bin/../lib/standard//abstract_collection.nit:355,2)\n");
717 nit_exit(1);
718 tracehead = trace.prev;
719 return NIT_NULL;
720 }
721 val_t abstract_collection___IndexedIterator___key(val_t self) {
722 struct trace_t trace = {NULL, "abstract_collection::IndexedIterator::key (bin/../lib/standard//abstract_collection.nit:358,2--359:31)"};
723 val_t variable0;
724 trace.prev = tracehead; tracehead = &trace;
725 variable0 = ((abstract_collection___IndexedIterator___index_t)CALL( self,COLOR_abstract_collection___IndexedIterator___index))( self) /*IndexedIterator::index*/;
726 goto return_label39;
727 return_label39: while(false);
728 tracehead = trace.prev;
729 return variable0;
730 }
731 val_t abstract_collection___CoupleMap___couple_at(val_t self, val_t param0) {
732 struct trace_t trace = {NULL, "abstract_collection::CoupleMap::couple_at (bin/../lib/standard//abstract_collection.nit:365,2--367:46)"};
733 trace.prev = tracehead; tracehead = &trace;
734 fprintf(stderr, "Deferred method couple_at called (bin/../lib/standard//abstract_collection.nit:365,2)\n");
735 nit_exit(1);
736 tracehead = trace.prev;
737 return NIT_NULL;
738 }
739 val_t abstract_collection___CoupleMap_____bra(val_t self, val_t param0) {
740 struct trace_t trace = {NULL, "abstract_collection::CoupleMap::[] (bin/../lib/standard//abstract_collection.nit:369,2--375:18)"};
741 val_t variable0;
742 val_t variable1;
743 val_t variable2;
744 trace.prev = tracehead; tracehead = &trace;
745 variable0 = param0;
746 variable2 = ((abstract_collection___CoupleMap___couple_at_t)CALL( self,COLOR_abstract_collection___CoupleMap___couple_at))( self, variable0 /*key*/) /*CoupleMap::couple_at*/;
747 variable1 = variable2;
748 variable2 = TAG_Bool(( variable1 /*c*/ == NIT_NULL /*null*/) || (( variable1 /*c*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable1 /*c*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable1 /*c*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable1 /*c*/,COLOR_kernel___Object_____eqeq))( variable1 /*c*/, NIT_NULL /*null*/) /*Couple::==*/)))));
749 if (UNTAG_Bool(variable2)) { /*if*/
750 variable1 = NIT_NULL /*null*/;
751 goto return_label40;
752 } else { /*if*/
753 variable2 = ((abstract_collection___Couple___second_t)CALL( variable1 /*c*/,COLOR_abstract_collection___Couple___second))( variable1 /*c*/) /*Couple::second*/;
754 variable1 = variable2;
755 goto return_label40;
756 }
757 return_label40: while(false);
758 tracehead = trace.prev;
759 return variable1;
760 }
761 val_t abstract_collection___CoupleMap___has_key(val_t self, val_t param0) {
762 struct trace_t trace = {NULL, "abstract_collection::CoupleMap::has_key (bin/../lib/standard//abstract_collection.nit:379,2--57)"};
763 val_t variable0;
764 val_t variable1;
765 trace.prev = tracehead; tracehead = &trace;
766 variable0 = param0;
767 variable1 = ((abstract_collection___CoupleMap___couple_at_t)CALL( self,COLOR_abstract_collection___CoupleMap___couple_at))( self, variable0 /*key*/) /*CoupleMap::couple_at*/;
768 variable1 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1 == NIT_NULL /*null*/) || ((variable1 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable1, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, NIT_NULL /*null*/) /*Couple::==*/)))))));
769 goto return_label41;
770 return_label41: while(false);
771 tracehead = trace.prev;
772 return variable1;
773 }
774 val_t abstract_collection___CoupleMapIterator___item(val_t self) {
775 struct trace_t trace = {NULL, "abstract_collection::CoupleMapIterator::item (bin/../lib/standard//abstract_collection.nit:387,2--44)"};
776 val_t variable0;
777 trace.prev = tracehead; tracehead = &trace;
778 variable0 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
779 variable0 = ((abstract_collection___Iterator___item_t)CALL(variable0,COLOR_abstract_collection___Iterator___item))(variable0) /*Iterator::item*/;
780 variable0 = ((abstract_collection___Couple___second_t)CALL(variable0,COLOR_abstract_collection___Couple___second))(variable0) /*Couple::second*/;
781 goto return_label42;
782 return_label42: while(false);
783 tracehead = trace.prev;
784 return variable0;
785 }
786 void abstract_collection___CoupleMapIterator___item__eq(val_t self, val_t param0) {
787 struct trace_t trace = {NULL, "abstract_collection::CoupleMapIterator::item= (bin/../lib/standard//abstract_collection.nit:389,2--45)"};
788 val_t variable0;
789 val_t variable1;
790 trace.prev = tracehead; tracehead = &trace;
791 variable0 = param0;
792 variable1 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
793 variable1 = ((abstract_collection___Iterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*Iterator::item*/;
794 ((abstract_collection___Couple___second__eq_t)CALL(variable1,COLOR_abstract_collection___Couple___second__eq))(variable1, variable0 /*e*/) /*Couple::second=*/;
795 tracehead = trace.prev;
796 return;
797 }
798 val_t abstract_collection___CoupleMapIterator___key(val_t self) {
799 struct trace_t trace = {NULL, "abstract_collection::CoupleMapIterator::key (bin/../lib/standard//abstract_collection.nit:391,2--42)"};
800 val_t variable0;
801 trace.prev = tracehead; tracehead = &trace;
802 variable0 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
803 variable0 = ((abstract_collection___Iterator___item_t)CALL(variable0,COLOR_abstract_collection___Iterator___item))(variable0) /*Iterator::item*/;
804 variable0 = ((abstract_collection___Couple___first_t)CALL(variable0,COLOR_abstract_collection___Couple___first))(variable0) /*Couple::first*/;
805 goto return_label44;
806 return_label44: while(false);
807 tracehead = trace.prev;
808 return variable0;
809 }
810 val_t abstract_collection___CoupleMapIterator___is_ok(val_t self) {
811 struct trace_t trace = {NULL, "abstract_collection::CoupleMapIterator::is_ok (bin/../lib/standard//abstract_collection.nit:393,2--39)"};
812 val_t variable0;
813 trace.prev = tracehead; tracehead = &trace;
814 variable0 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
815 variable0 = ((abstract_collection___Iterator___is_ok_t)CALL(variable0,COLOR_abstract_collection___Iterator___is_ok))(variable0) /*Iterator::is_ok*/;
816 goto return_label45;
817 return_label45: while(false);
818 tracehead = trace.prev;
819 return variable0;
820 }
821 void abstract_collection___CoupleMapIterator___next(val_t self) {
822 struct trace_t trace = {NULL, "abstract_collection::CoupleMapIterator::next (bin/../lib/standard//abstract_collection.nit:395,2--398:56)"};
823 val_t variable0;
824 val_t variable1;
825 trace.prev = tracehead; tracehead = &trace;
826 variable0 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
827 ((abstract_collection___Iterator___next_t)CALL(variable0,COLOR_abstract_collection___Iterator___next))(variable0) /*Iterator::next*/;
828 while (true) { /*while*/
829 variable0 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
830 variable0 = ((abstract_collection___Iterator___is_ok_t)CALL(variable0,COLOR_abstract_collection___Iterator___is_ok))(variable0) /*Iterator::is_ok*/;
831 variable1 = variable0;
832 if (UNTAG_Bool(variable1)) { /* and */
833 variable1 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
834 variable1 = ((abstract_collection___Iterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*Iterator::item*/;
835 variable1 = TAG_Bool((variable1 == NIT_NULL /*null*/) || ((variable1 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable1, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, NIT_NULL /*null*/) /*Couple::==*/)))));
836 }
837 variable0 = variable1;
838 if (!UNTAG_Bool(variable0)) break; /* while*/
839 variable0 = ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/;
840 ((abstract_collection___Iterator___next_t)CALL(variable0,COLOR_abstract_collection___Iterator___next))(variable0) /*Iterator::next*/;
841 continue_47: while(0);
842 }
843 break_47: while(0);
844 tracehead = trace.prev;
845 return;
846 }
847 void abstract_collection___CoupleMapIterator___init(val_t self, val_t param0, int* init_table) {
848 struct trace_t trace = {NULL, "abstract_collection::CoupleMapIterator::init (bin/../lib/standard//abstract_collection.nit:403,2--44)"};
849 val_t variable0;
850 trace.prev = tracehead; tracehead = &trace;
851 variable0 = param0;
852 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_CoupleMapIterator].i]) return;
853 ATTR_abstract_collection___CoupleMapIterator____iter( self) /*CoupleMapIterator::_iter*/ = variable0 /*i*/;
854 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_CoupleMapIterator].i] = 1;
855 tracehead = trace.prev;
856 return;
857 }
858 val_t abstract_collection___Couple___first(val_t self) {
859 struct trace_t trace = {NULL, "abstract_collection::Couple::first (bin/../lib/standard//abstract_collection.nit:411,2--412:33)"};
860 trace.prev = tracehead; tracehead = &trace;
861 tracehead = trace.prev;
862 return ATTR_abstract_collection___Couple____first( self) /*Couple::_first*/;
863 }
864 void abstract_collection___Couple___first__eq(val_t self, val_t param0) {
865 struct trace_t trace = {NULL, "abstract_collection::Couple::first= (bin/../lib/standard//abstract_collection.nit:411,2--412:33)"};
866 trace.prev = tracehead; tracehead = &trace;
867 ATTR_abstract_collection___Couple____first( self) /*Couple::_first*/ = param0;
868 tracehead = trace.prev;
869 return;
870 }
871 val_t abstract_collection___Couple___second(val_t self) {
872 struct trace_t trace = {NULL, "abstract_collection::Couple::second (bin/../lib/standard//abstract_collection.nit:414,2--415:34)"};
873 trace.prev = tracehead; tracehead = &trace;
874 tracehead = trace.prev;
875 return ATTR_abstract_collection___Couple____second( self) /*Couple::_second*/;
876 }
877 void abstract_collection___Couple___second__eq(val_t self, val_t param0) {
878 struct trace_t trace = {NULL, "abstract_collection::Couple::second= (bin/../lib/standard//abstract_collection.nit:414,2--415:34)"};
879 trace.prev = tracehead; tracehead = &trace;
880 ATTR_abstract_collection___Couple____second( self) /*Couple::_second*/ = param0;
881 tracehead = trace.prev;
882 return;
883 }
884 void abstract_collection___Couple___init(val_t self, val_t param0, val_t param1, int* init_table) {
885 struct trace_t trace = {NULL, "abstract_collection::Couple::init (bin/../lib/standard//abstract_collection.nit:417,2--421:13)"};
886 val_t variable0;
887 val_t variable1;
888 trace.prev = tracehead; tracehead = &trace;
889 variable0 = param0;
890 variable1 = param1;
891 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Couple].i]) return;
892 ATTR_abstract_collection___Couple____first( self) /*Couple::_first*/ = variable0 /*f*/;
893 ATTR_abstract_collection___Couple____second( self) /*Couple::_second*/ = variable1 /*s*/;
894 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Couple].i] = 1;
895 tracehead = trace.prev;
896 return;
897 }