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