/* generated by Id 1.1 at ,$ */ /* with the command: -I../stage1/ -c Collection.st -o ../stage2/Collection.o.c */ #include static struct __libid *_libid= 0; #ifdef ID_DEBUG # define _enter(info) void *__id_debug= _libid->enter(info) # define _line(lno) _libid->line(lno) # define _leave() _libid->leave(__id_debug) # define _backtrace() _libid->backtrace() #else # define _enter(info) (void)info # define _line(lno) # define _leave() # define _backtrace() "(no debugging information)\n" #endif #define _return _leave(); return #define _sendv(MSG, N, RCV, ARG...) ({ \ struct __send _s= { (MSG), (N), (RCV) }; \ ((_imp_t)(_libid->bindv(&_s)))(&_s, _s.receiver, _s.receiver, ##ARG); \ }) #define _superv(TYP, MSG, N, RCV, ARG...) ({ \ struct __send _s= { (MSG), (N), (TYP) }; \ _imp_t _imp= _libid->bindv(&_s); \ _s.receiver= (RCV); \ _imp(&_s, _s.receiver, _s.receiver, ##ARG); \ }) static oop s_as_= 0; static oop s_notEmpty= 0; static oop s_yourself= 0; static oop s_bitXor_= 0; static oop s_collect_= 0; static oop s_size= 0; static oop s_value_value_= 0; static oop s_do_separatedBy_= 0; static oop s_subclassResponsibility_= 0; static oop s_size_5f_value_5f_= 0; static oop s_initialize_= 0; static oop s_isCollection= 0; static oop s_with_= 0; static oop s_new= 0; static oop s_bitAnd_= 0; static oop s_ifTrue_ifFalse_= 0; static oop s_inject_into_= 0; static oop s__2a= 0; static oop s_addAll_= 0; static oop s_not= 0; static oop s_function_5f_arity_5f_= 0; static oop s_function_5f_arity_5f_outer_state_nlr_5f_= 0; static oop s_growSize= 0; static oop s_remove_ifAbsent_= 0; static oop s_errorNotFound_= 0; static oop s_errorEmptyCollection= 0; static oop s_doWithIndex_= 0; static oop s_detect_ifNone_= 0; static oop s_errorNotFound= 0; static oop s_printOn_= 0; static oop s_max_= 0; static oop s_printNameOn_= 0; static oop s_new_5f_= 0; static oop s_new_= 0; static oop s_hash= 0; static oop s_printElementsOn_= 0; static oop s_nextPutAll_= 0; static oop s_space= 0; static oop s_value_5f_= 0; static oop s_species= 0; static oop s__5fimport_= 0; static oop s_print_= 0; static oop s_do_= 0; static oop s_ifFalse_= 0; static oop s_skip_= 0; static oop s_remove_= 0; static oop s_familyHash= 0; static oop s_ifTrue_= 0; static oop s__2b= 0; static oop s_emptyCheck= 0; static oop s__3d_3d= 0; static oop s_add_= 0; static oop s__3d= 0; static oop s_isEmpty= 0; static oop s__5fvtable= 0; static oop s_and_= 0; static oop s__3e= 0; static oop s_detect_= 0; static oop s_withAll_= 0; static oop s_value_= 0; static oop s_includes_= 0; static oop s_anyOne= 0; static oop s_value= 0; static struct _Selector { const char *name; oop *addr; } _Selectors[]= { { "as:", &s_as_ }, { "notEmpty", &s_notEmpty }, { "yourself", &s_yourself }, { "bitXor:", &s_bitXor_ }, { "collect:", &s_collect_ }, { "size", &s_size }, { "value:value:", &s_value_value_ }, { "do:separatedBy:", &s_do_separatedBy_ }, { "subclassResponsibility:", &s_subclassResponsibility_ }, { "size_:value_:", &s_size_5f_value_5f_ }, { "initialize:", &s_initialize_ }, { "isCollection", &s_isCollection }, { "with:", &s_with_ }, { "new", &s_new }, { "bitAnd:", &s_bitAnd_ }, { "ifTrue:ifFalse:", &s_ifTrue_ifFalse_ }, { "inject:into:", &s_inject_into_ }, { "*", &s__2a }, { "addAll:", &s_addAll_ }, { "not", &s_not }, { "function_:arity_:", &s_function_5f_arity_5f_ }, { "function_:arity_:outer:state:nlr_:", &s_function_5f_arity_5f_outer_state_nlr_5f_ }, { "growSize", &s_growSize }, { "remove:ifAbsent:", &s_remove_ifAbsent_ }, { "errorNotFound:", &s_errorNotFound_ }, { "errorEmptyCollection", &s_errorEmptyCollection }, { "doWithIndex:", &s_doWithIndex_ }, { "detect:ifNone:", &s_detect_ifNone_ }, { "errorNotFound", &s_errorNotFound }, { "printOn:", &s_printOn_ }, { "max:", &s_max_ }, { "printNameOn:", &s_printNameOn_ }, { "new_:", &s_new_5f_ }, { "new:", &s_new_ }, { "hash", &s_hash }, { "printElementsOn:", &s_printElementsOn_ }, { "nextPutAll:", &s_nextPutAll_ }, { "space", &s_space }, { "value_:", &s_value_5f_ }, { "species", &s_species }, { "_import:", &s__5fimport_ }, { "print:", &s_print_ }, { "do:", &s_do_ }, { "ifFalse:", &s_ifFalse_ }, { "skip:", &s_skip_ }, { "remove:", &s_remove_ }, { "familyHash", &s_familyHash }, { "ifTrue:", &s_ifTrue_ }, { "+", &s__2b }, { "emptyCheck", &s_emptyCheck }, { "==", &s__3d_3d }, { "add:", &s_add_ }, { "=", &s__3d }, { "isEmpty", &s_isEmpty }, { "_vtable", &s__5fvtable }, { "and:", &s_and_ }, { ">", &s__3e }, { "detect:", &s_detect_ }, { "withAll:", &s_withAll_ }, { "value:", &s_value_ }, { "includes:", &s_includes_ }, { "anyOne", &s_anyOne }, { "value", &s_value }, { 0, 0 } }; struct t__object { struct _vtable *_vtable[0]; }; struct t__selector { struct _vtable *_vtable[0]; oop v__size; oop v__elements; }; struct t__assoc { struct _vtable *_vtable[0]; oop v_key; oop v_value; }; struct t__closure { struct _vtable *_vtable[0]; oop v__method; oop v_data; }; struct t__vector { struct _vtable *_vtable[0]; oop v__size; }; struct t__vtable { struct _vtable *_vtable[0]; oop v__tally; oop v_bindings; oop v_delegate; }; struct t_Object { struct _vtable *_vtable[0]; }; struct t_UndefinedObject { struct _vtable *_vtable[0]; }; struct t_StaticBlockClosure { struct _vtable *_vtable[0]; oop v__function; oop v__arity; }; struct t_BlockClosure { struct _vtable *_vtable[0]; oop v__function; oop v__arity; oop v_outer; oop v_state; oop v__nlr; }; struct t_Magnitude { struct _vtable *_vtable[0]; }; struct t_Character { struct _vtable *_vtable[0]; oop v_value; }; struct t_Number { struct _vtable *_vtable[0]; }; struct t_Fraction { struct _vtable *_vtable[0]; oop v_numerator; oop v_denominator; }; struct t_Float { struct _vtable *_vtable[0]; }; struct t_Integer { struct _vtable *_vtable[0]; }; struct t_SmallInteger { struct _vtable *_vtable[0]; }; struct t_LargePositiveInteger { struct _vtable *_vtable[0]; oop v_bytes; }; struct t_LargeNegativeInteger { struct _vtable *_vtable[0]; oop v_bytes; }; struct t_Collection { struct _vtable *_vtable[0]; }; struct t_SequenceableCollection { struct _vtable *_vtable[0]; }; struct t_ArrayedCollection { struct _vtable *_vtable[0]; oop v_size; }; struct t_Array { struct _vtable *_vtable[0]; oop v_size; oop v__pointers; }; struct t_ImmutableArray { struct _vtable *_vtable[0]; oop v_size; oop v__pointers; }; struct t_WordArray { struct _vtable *_vtable[0]; oop v_size; oop v__words; }; struct t_ImmutableWordArray { struct _vtable *_vtable[0]; oop v_size; oop v__words; }; struct t_ByteArray { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_ImmutableByteArray { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_String { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_ImmutableString { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_Symbol { struct _vtable *_vtable[0]; oop v_size; oop v__bytes; }; struct t_nil { struct _vtable *_vtable[0]; }; struct t_true { struct _vtable *_vtable[0]; }; struct t_false { struct _vtable *_vtable[0]; }; struct t_CharacterTable { struct _vtable *_vtable[0]; oop v_size; oop v__pointers; }; static oop l_5= 0; static oop l_7= 0; static oop l_9= 0; static oop l_11= 0; static oop l_15= 0; static oop l_18= 0; static oop l_19= 0; static oop l_21= 0; static oop l_20= 0; static oop l_28= 0; static oop l_35= 0; static oop l_37= 0; static oop l_40= 0; static oop l_54= 0; static oop l_56= 0; static oop l_57= 0; static oop v__object= 0; static oop v__vector= 0; static oop v_Object= 0; static oop v_UndefinedObject= 0; static oop v_StaticBlockClosure= 0; static oop v_BlockClosure= 0; static oop v_Magnitude= 0; static oop v_Number= 0; static oop v_Integer= 0; static oop v_SmallInteger= 0; static oop v_LargePositiveInteger= 0; static oop v_Collection= 0; static oop v_SequenceableCollection= 0; static oop v_ArrayedCollection= 0; static oop v_Array= 0; static oop v_WordArray= 0; static oop v_ByteArray= 0; static oop v_String= 0; static oop v_ImmutableString= 0; static oop v_true= 0; static oop v_false= 0; static struct __methodinfo __info1= { "isCollection", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 25, 26, 0 }; static oop Collection__isCollection(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info1); oop _1= 0; _line(25); _1= v_true; _leave(); return _1; _leave(); } static struct __methodinfo __info2= { "isCollection", "Object", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 26, 28, &__info1 }; static oop Object__isCollection(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info2); oop _1= 0; _line(26); _1= v_false; _leave(); return _1; _leave(); } static struct __methodinfo __info3= { "initialize:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 28, 30, &__info2 }; static oop Collection__initialize_(oop v__closure, oop v_stateful_self, oop v_self, oop v_anInteger) { _enter(&__info3); oop _1= 0; _line(28); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info4= { "species", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 30, 31, &__info3 }; static oop Collection__species(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info4); oop _1= 0; oop _2= 0; _line(30); _1= v_self; _2= l_5; _line(30); _1=_sendv(s_subclassResponsibility_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info6= { "add:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 31, 32, &__info4 }; static oop Collection__add_(oop v__closure, oop v_stateful_self, oop v_self, oop v_anObject) { _enter(&__info6); oop _1= 0; oop _2= 0; _line(31); _1= v_self; _2= l_7; _line(31); _1=_sendv(s_subclassResponsibility_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info8= { "do:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 32, 33, &__info6 }; static oop Collection__do_(oop v__closure, oop v_stateful_self, oop v_self, oop v_unaryBlock) { _enter(&__info8); oop _1= 0; oop _2= 0; _line(32); _1= v_self; _2= l_9; _line(32); _1=_sendv(s_subclassResponsibility_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info10= { "size", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 33, 35, &__info8 }; static oop Collection__size(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info10); oop _1= 0; oop _2= 0; _line(33); _1= v_self; _2= l_11; _line(33); _1=_sendv(s_subclassResponsibility_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info12= { "with:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 35, 36, &__info10 }; static oop Collection__with_(oop v__closure, oop v_stateful_self, oop v_self, oop v_anObject) { _enter(&__info12); oop _1= 0; oop _2= 0; _line(35); _1= v_self; _line(35); _1=_sendv(s_new, 1, _1); _2= v_anObject; _line(35); _sendv(s_add_, 2, _1, _2); _1=_sendv(s_yourself, 1, _1); _leave(); return _1; _leave(); } static struct __methodinfo __info13= { "withAll:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 36, 38, &__info12 }; static oop Collection__withAll_(oop v__closure, oop v_stateful_self, oop v_self, oop v_aCollection) { _enter(&__info13); oop _1= 0; oop _2= 0; _line(36); _1= v_self; _line(36); _1=_sendv(s_new, 1, _1); _2= v_aCollection; _line(36); _sendv(s_addAll_, 2, _1, _2); _1=_sendv(s_yourself, 1, _1); _leave(); return _1; _leave(); } static struct __methodinfo __info14= { "isEmpty", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 38, 39, &__info13 }; static oop Collection__isEmpty(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info14); oop _1= 0; oop _2= 0; _line(38); _1= v_self; _line(38); _1=_sendv(s_size, 1, _1); _2= l_15; _1= (_1 == _2) ? v_true : v_false; _leave(); return _1; _leave(); } static struct __methodinfo __info16= { "notEmpty", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 39, 41, &__info14 }; static oop Collection__notEmpty(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info16); oop _1= 0; _line(39); _1= v_self; _line(39); _1=_sendv(s_isEmpty, 1, _1); _line(39); _1=_sendv(s_not, 1, _1); _leave(); return _1; _leave(); } static struct __methodinfo __info20= { "[] hash", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 41, 52, &__info16 }; static oop b_20(oop v__closure, oop v__self, oop v_prev, oop v_elt) { _enter(&__info20); oop _1= 0; oop _2= 0; _line(48); _1= v_prev; _2= v_elt; _line(48); _2=_sendv(s_hash, 1, _2); if ((1 & (long)_1 & (long)_2) && (_1 > 0) && (_2 > 0)) { _1= (oop)(((long)_1 ^ (long)_2) | 1); } else _1= _sendv(s_bitXor_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info17= { "hash", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 41, 52, &__info20 }; static oop Collection__hash(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info17); oop _1= 0; oop _2= 0; oop _3= 0; _line(41); /* ifTrue:ifFalse: */ _1= v_self; _line(46); _1=_sendv(s_size, 1, _1); _2= l_18; if (1 & (long)_1) { _1= (((long)_1 > (long)_2) ? v_true : v_false); } else _1= _sendv(s__3e, 2, _1, _2); if (!_1) goto _l1; { _1= v_self; _line(47); _1=_sendv(s__5fvtable, 1, _1); _line(47); _1=_sendv(s_familyHash, 1, _1); } goto _l2; _l1:; { _1= v_self; _2= v_self; _line(48); _2=_sendv(s_size, 1, _2); _3= l_19; { int _l= (long)_2 >> 1; int _r= (long)_3 >> 1; int _s= (_l * _r); if ((1 & (long)_2) && ((_r == 0) || (_s / _r == _l)) && ((_s ^ (_s << 1)) >= 0)) _2= (oop)(long)(_s << 1 | 1); else _2= _sendv(s__2a, 2, _2, _3); } _3= v_self; _line(48); _3=_sendv(s_familyHash, 1, _3); { int _l= (long)_2 >> 1; int _r= (long)_3 >> 1; int _s= _l + _r; if ((1 & (long)_2 & (long)_3) && ((_s ^ (_s << 1)) >= 0)) _2= (oop)(long)(_s << 1 | 1); else _2= _sendv(s__2b, 2, _2, _3); } _3= l_20; _line(48); _1=_sendv(s_inject_into_, 3, _1, _2, _3); } _l2:; _2= l_21; if ((1 & (long)_1) && (_1 > 0) && (_2 > 0)) { _1= (oop)((long)_1 & (long)_2); } else _1= _sendv(s_bitAnd_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info23= { "[] =", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 52, 60, &__info17 }; static oop b_23(oop v__closure, oop v__self, oop v_elt) { _enter(&__info23); oop _1= 0; oop _2= 0; oop _3= 0; _line(56); /* ifFalse: */ _1= 0; _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* aCollection */ _3= v_elt; _line(56); _2=_sendv(s_includes_, 2, _2, _3); if (_2) goto _l3; { _1= v_false; _leave(); return _libid->nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1); } _l3:; _leave(); return _1; _leave(); } static struct __methodinfo __info22= { "=", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 52, 60, &__info23 }; static oop Collection___3d(oop v__closure, oop v_stateful_self, oop v_self, oop v_aCollection) { _enter(&__info22); oop _state1= _sendv(s_new_5f_, 2, v__vector, 2); oop _1= 0; oop _2= 0; oop _3= 0; jmp_buf __nlr; oop _nlr; ((oop *)_state1)[1]= v_aCollection; _nlr= (oop)&__nlr; if (setjmp(__nlr)) { return _libid->nlresult(); } _line(52); /* ifTrue: */ _1= 0; _2= v_self; _3= ((oop *)_state1)[1]; /* aCollection */ _2= (_2 == _3) ? v_true : v_false; if (!_2) goto _l4; { _1= v_true; _leave(); return _1; } _l4:; /* ifFalse: */ _1= 0; /* and: */ _2= ((oop *)_state1)[1]; /* aCollection */ _line(55); _2=_sendv(s_isCollection, 1, _2); if (!_2) goto _l6; { /* and: */ _2= v_self; _line(55); _2=_sendv(s_species, 1, _2); _3= ((oop *)_state1)[1]; /* aCollection */ _line(55); _3=_sendv(s_species, 1, _3); _2= (_2 == _3) ? v_true : v_false; if (!_2) goto _l7; { _2= v_self; _line(55); _2=_sendv(s_size, 1, _2); _3= ((oop *)_state1)[1]; /* aCollection */ _line(55); _3=_sendv(s_size, 1, _3); _2= (_2 == _3) ? v_true : v_false; } _l7:; } _l6:; if (_2) goto _l5; { _1= v_false; _leave(); return _1; } _l5:; _1= v_self; /* Scope('elt'->ArgumentVariableNode) */ /* Scope('aCollection'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_23, 1, 0, ((oop *)_state1), _nlr); _line(56); _1=_sendv(s_do_, 2, _1, _2); _1= v_true; _leave(); return _1; _leave(); } static struct __methodinfo __info24= { "as:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 60, 65, &__info22 }; static oop Collection__as_(oop v__closure, oop v_stateful_self, oop v_self, oop v_collectionType) { _enter(&__info24); oop _1= 0; oop _2= 0; _line(60); _1= v_collectionType; _2= v_self; _line(62); _1=_sendv(s_withAll_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info26= { "[] addAll:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 65, 70, &__info24 }; static oop b_26(oop v__closure, oop v__self, oop v_e) { _enter(&__info26); oop _1= 0; oop _2= 0; _line(67); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* self */ _2= v_e; _line(67); _1=_sendv(s_add_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info25= { "addAll:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 65, 70, &__info26 }; static oop Collection__addAll_(oop v__closure, oop v_stateful_self, oop v_self, oop v_aCollection) { _enter(&__info25); oop _state1= _sendv(s_new_5f_, 2, v__vector, 3); oop _1= 0; oop _2= 0; ((oop *)_state1)[2]= v_stateful_self; ((oop *)_state1)[1]= v_self; _line(65); _1= v_aCollection; /* Scope('e'->ArgumentVariableNode) */ /* Scope('aCollection'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_26, 1, 0, ((oop *)_state1), 0); _line(67); _1=_sendv(s_do_, 2, _1, _2); _1= ((oop *)_state1)[1]; /* self */ _leave(); return _1; _leave(); } static struct __methodinfo __info27= { "growSize", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 70, 72, &__info25 }; static oop Collection__growSize(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info27); oop _1= 0; oop _2= 0; _line(70); _1= v_self; _line(70); _1=_sendv(s_size, 1, _1); _2= l_28; _line(70); _1=_sendv(s_max_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info30= { "[] remove:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 72, 77, &__info27 }; static oop b_30(oop v__closure, oop v__self) { _enter(&__info30); oop _1= 0; oop _2= 0; _line(74); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* self */ _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[3]; /* oldObject */ _line(74); _1=_sendv(s_errorNotFound_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info29= { "remove:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 72, 77, &__info30 }; static oop Collection__remove_(oop v__closure, oop v_stateful_self, oop v_self, oop v_oldObject) { _enter(&__info29); oop _state1= _sendv(s_new_5f_, 2, v__vector, 4); oop _1= 0; oop _2= 0; oop _3= 0; ((oop *)_state1)[2]= v_stateful_self; ((oop *)_state1)[1]= v_self; ((oop *)_state1)[3]= v_oldObject; _line(72); _1= ((oop *)_state1)[1]; /* self */ _2= ((oop *)_state1)[3]; /* oldObject */ /* Scope() */ /* Scope('oldObject'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _3= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_30, 0, 0, ((oop *)_state1), 0); _line(74); _1=_sendv(s_remove_ifAbsent_, 3, _1, _2, _3); _leave(); return _1; _leave(); } static struct __methodinfo __info32= { "[] anyOne", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 77, 83, &__info29 }; static oop b_32(oop v__closure, oop v__self, oop v_element) { _enter(&__info32); oop _1= 0; _line(80); _1= v_element; _leave(); return _libid->nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1); _leave(); } static struct __methodinfo __info31= { "anyOne", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 77, 83, &__info32 }; static oop Collection__anyOne(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info31); oop _1= 0; oop _2= 0; jmp_buf __nlr; oop _nlr; _nlr= (oop)&__nlr; if (setjmp(__nlr)) { return _libid->nlresult(); } _line(77); _1= v_self; _line(79); _1=_sendv(s_emptyCheck, 1, _1); _1= v_self; /* Scope('element'->ArgumentVariableNode) */ /* Scope('stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_32, 1, 0, 0, _nlr); _line(80); _1=_sendv(s_do_, 2, _1, _2); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info33= { "emptyCheck", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 83, 88, &__info31 }; static oop Collection__emptyCheck(oop v__closure, oop v_stateful_self, oop v_self) { _enter(&__info33); oop _1= 0; oop _2= 0; _line(83); /* ifTrue: */ _1= 0; _2= v_self; _line(85); _2=_sendv(s_isEmpty, 1, _2); if (!_2) goto _l8; { _1= v_self; _line(85); _1=_sendv(s_errorEmptyCollection, 1, _1); _leave(); return _1; } _l8:; _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info36= { "[] doWithIndex:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 88, 95, &__info33 }; static oop b_36(oop v__closure, oop v__self, oop v_elt) { _enter(&__info36); oop _1= 0; oop _2= 0; oop _3= 0; oop _4= 0; _line(92); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* binaryBlock */ _2= v_elt; _3= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2]; /* index */ _4= l_37; { int _l= (long)_3 >> 1; int _r= (long)_4 >> 1; int _s= _l + _r; if ((1 & (long)_3) && ((_s ^ (_s << 1)) >= 0)) _3= (oop)(long)(_s << 1 | 1); else _3= _sendv(s__2b, 2, _3, _4); } ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2]= _3; /* index */ _line(92); _1=_sendv(s_value_value_, 3, _1, _2, _3); _leave(); return _1; _leave(); } static struct __methodinfo __info34= { "doWithIndex:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 88, 95, &__info36 }; static oop Collection__doWithIndex_(oop v__closure, oop v_stateful_self, oop v_self, oop v_binaryBlock) { _enter(&__info34); oop _state1= _sendv(s_new_5f_, 2, v__vector, 3); oop _1= 0; oop _2= 0; ((oop *)_state1)[1]= v_binaryBlock; _line(88); _1= l_35; ((oop *)_state1)[2]= _1; /* index */ _1= v_self; /* Scope('elt'->ArgumentVariableNode) */ /* Scope('index'->TemporaryVariableNode 'self'->ArgumentVariableNode 'binaryBlock'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_36, 1, 0, ((oop *)_state1), 0); _line(92); _1=_sendv(s_do_, 2, _1, _2); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info39= { "[] do:separatedBy:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 95, 102, &__info34 }; static oop b_39(oop v__closure, oop v__self, oop v_element, oop v_index) { _enter(&__info39); oop _1= 0; oop _2= 0; oop _3= 0; _line(97); /* ifTrue: */ _1= 0; _2= v_index; _3= l_40; if (1 & (long)_2) { _2= (((long)_2 > (long)_3) ? v_true : v_false); } else _2= _sendv(s__3e, 2, _2, _3); if (!_2) goto _l9; { _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* aBlock */ _line(98); _1=_sendv(s_value, 1, _1); } _l9:; _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2]; /* unaryBlock */ _2= v_element; _line(99); _1=_sendv(s_value_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info38= { "do:separatedBy:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 95, 102, &__info39 }; static oop Collection__do_separatedBy_(oop v__closure, oop v_stateful_self, oop v_self, oop v_unaryBlock, oop v_aBlock) { _enter(&__info38); oop _state1= _sendv(s_new_5f_, 2, v__vector, 3); oop _1= 0; oop _2= 0; ((oop *)_state1)[2]= v_unaryBlock; ((oop *)_state1)[1]= v_aBlock; _line(95); _1= v_self; /* Scope('element'->ArgumentVariableNode 'index'->ArgumentVariableNode) */ /* Scope('self'->ArgumentVariableNode 'aBlock'->ArgumentVariableNode 'unaryBlock'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_39, 2, 0, ((oop *)_state1), 0); _line(97); _1=_sendv(s_doWithIndex_, 2, _1, _2); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info42= { "[] includes:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 102, 108, &__info38 }; static oop b_42(oop v__closure, oop v__self, oop v_elt) { _enter(&__info42); oop _1= 0; oop _2= 0; oop _3= 0; _line(104); /* ifTrue: */ _1= 0; _2= v_elt; _3= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* anObject */ if (1 & (long)_2 & (long)_3) { _2= (((long)_2 == (long)_3) ? v_true : v_false); } else _2= _sendv(s__3d, 2, _2, _3); if (!_2) goto _l10; { _1= v_true; _leave(); return _libid->nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1); } _l10:; _leave(); return _1; _leave(); } static struct __methodinfo __info41= { "includes:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 102, 108, &__info42 }; static oop Collection__includes_(oop v__closure, oop v_stateful_self, oop v_self, oop v_anObject) { _enter(&__info41); oop _state1= _sendv(s_new_5f_, 2, v__vector, 2); oop _1= 0; oop _2= 0; jmp_buf __nlr; oop _nlr; ((oop *)_state1)[1]= v_anObject; _nlr= (oop)&__nlr; if (setjmp(__nlr)) { return _libid->nlresult(); } _line(102); _1= v_self; /* Scope('elt'->ArgumentVariableNode) */ /* Scope('anObject'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_42, 1, 0, ((oop *)_state1), _nlr); _line(104); _1=_sendv(s_do_, 2, _1, _2); _1= v_false; _leave(); return _1; _leave(); } static struct __methodinfo __info44= { "[] collect:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 108, 116, &__info41 }; static oop b_44(oop v__closure, oop v__self, oop v_elt) { _enter(&__info44); oop _1= 0; oop _2= 0; oop _3= 0; _line(112); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* answer */ _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2]; /* unaryBlock */ _3= v_elt; _line(112); _2=_sendv(s_value_, 2, _2, _3); _line(112); _1=_sendv(s_add_, 2, _1, _2); _leave(); return _1; _leave(); } static struct __methodinfo __info43= { "collect:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 108, 116, &__info44 }; static oop Collection__collect_(oop v__closure, oop v_stateful_self, oop v_self, oop v_unaryBlock) { _enter(&__info43); oop _state1= _sendv(s_new_5f_, 2, v__vector, 3); oop _1= 0; oop _2= 0; ((oop *)_state1)[2]= v_unaryBlock; _line(108); _1= v_self; _line(111); _1=_sendv(s_species, 1, _1); _2= v_self; _line(111); _2=_sendv(s_size, 1, _2); _line(111); _1=_sendv(s_new_, 2, _1, _2); ((oop *)_state1)[1]= _1; /* answer */ _1= v_self; /* Scope('elt'->ArgumentVariableNode) */ /* Scope('self'->ArgumentVariableNode 'answer'->TemporaryVariableNode 'unaryBlock'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_44, 1, 0, ((oop *)_state1), 0); _line(112); _1=_sendv(s_do_, 2, _1, _2); _1= ((oop *)_state1)[1]; /* answer */ _leave(); return _1; _leave(); } static struct __methodinfo __info46= { "[] detect:ifNone:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 116, 122, &__info43 }; static oop b_46(oop v__closure, oop v__self, oop v_elt) { _enter(&__info46); oop _1= 0; oop _2= 0; oop _3= 0; _line(118); /* ifTrue: */ _1= 0; _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* unaryBlock */ _3= v_elt; _line(118); _2=_sendv(s_value_, 2, _2, _3); if (!_2) goto _l11; { _1= v_elt; _leave(); return _libid->nlreturn(((struct t_BlockClosure *)v__self)->v__nlr, _1); } _l11:; _leave(); return _1; _leave(); } static struct __methodinfo __info45= { "detect:ifNone:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 116, 122, &__info46 }; static oop Collection__detect_ifNone_(oop v__closure, oop v_stateful_self, oop v_self, oop v_unaryBlock, oop v_errorBlock) { _enter(&__info45); oop _state1= _sendv(s_new_5f_, 2, v__vector, 2); oop _1= 0; oop _2= 0; jmp_buf __nlr; oop _nlr; ((oop *)_state1)[1]= v_unaryBlock; _nlr= (oop)&__nlr; if (setjmp(__nlr)) { return _libid->nlresult(); } _line(116); _1= v_self; /* Scope('elt'->ArgumentVariableNode) */ /* Scope('self'->ArgumentVariableNode 'errorBlock'->ArgumentVariableNode 'unaryBlock'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_46, 1, 0, ((oop *)_state1), _nlr); _line(118); _1=_sendv(s_do_, 2, _1, _2); _1= v_errorBlock; _line(119); _1=_sendv(s_value, 1, _1); _leave(); return _1; _leave(); } static struct __methodinfo __info48= { "[] detect:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 122, 127, &__info45 }; static oop b_48(oop v__closure, oop v__self) { _enter(&__info48); oop _1= 0; _line(124); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* self */ _line(124); _1=_sendv(s_errorNotFound, 1, _1); _leave(); return _1; _leave(); } static struct __methodinfo __info47= { "detect:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 122, 127, &__info48 }; static oop Collection__detect_(oop v__closure, oop v_stateful_self, oop v_self, oop v_unaryBlock) { _enter(&__info47); oop _state1= _sendv(s_new_5f_, 2, v__vector, 3); oop _1= 0; oop _2= 0; oop _3= 0; ((oop *)_state1)[2]= v_stateful_self; ((oop *)_state1)[1]= v_self; _line(122); _1= ((oop *)_state1)[1]; /* self */ _2= v_unaryBlock; /* Scope() */ /* Scope('unaryBlock'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _3= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_48, 0, 0, ((oop *)_state1), 0); _line(124); _1=_sendv(s_detect_ifNone_, 3, _1, _2, _3); _1= ((oop *)_state1)[1]; /* self */ _leave(); return _1; _leave(); } static struct __methodinfo __info50= { "[] inject:into:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 127, 135, &__info47 }; static oop b_50(oop v__closure, oop v__self, oop v_elt) { _enter(&__info50); oop _1= 0; oop _2= 0; oop _3= 0; _line(131); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* binaryBlock */ _2= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2]; /* result */ _3= v_elt; _line(131); _1=_sendv(s_value_value_, 3, _1, _2, _3); ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[2]= _1; /* result */ _leave(); return _1; _leave(); } static struct __methodinfo __info49= { "inject:into:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 127, 135, &__info50 }; static oop Collection__inject_into_(oop v__closure, oop v_stateful_self, oop v_self, oop v_value, oop v_binaryBlock) { _enter(&__info49); oop _state1= _sendv(s_new_5f_, 2, v__vector, 3); oop _1= 0; oop _2= 0; ((oop *)_state1)[1]= v_binaryBlock; _line(127); _1= v_value; ((oop *)_state1)[2]= _1; /* result */ _1= v_self; /* Scope('elt'->ArgumentVariableNode) */ /* Scope('result'->TemporaryVariableNode 'self'->ArgumentVariableNode 'value'->ArgumentVariableNode 'binaryBlock'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_50, 1, 0, ((oop *)_state1), 0); _line(131); _1=_sendv(s_do_, 2, _1, _2); _1= ((oop *)_state1)[2]; /* result */ _leave(); return _1; _leave(); } static struct __methodinfo __info51= { "printOn:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 135, 142, &__info49 }; static oop Collection__printOn_(oop v__closure, oop v_stateful_self, oop v_self, oop v_aStream) { _enter(&__info51); oop _1= 0; oop _2= 0; _line(135); _1= v_self; _2= v_aStream; _line(138); _sendv(s_printNameOn_, 2, _1, _2); _2= v_aStream; _1=_sendv(s_printElementsOn_, 2, _1, _2); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info52= { "printNameOn:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 142, 147, &__info51 }; static oop Collection__printNameOn_(oop v__closure, oop v_stateful_self, oop v_self, oop v_aStream) { _enter(&__info52); oop _1= 0; oop _2= 0; _line(142); _1= v_self; _2= v_aStream; _line(144); _1=_superv(v_Object, s_printOn_, 2, _1, _2); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info55= { "[] printElementsOn:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 147, 155, &__info52 }; static oop b_55(oop v__closure, oop v__self, oop v_element) { _enter(&__info55); oop _1= 0; oop _2= 0; _line(150); _1= ((oop *)((struct t_BlockClosure *)((struct t_BlockClosure *)v__self)->v_state))[1]; /* aStream */ _2= v_element; _line(150); _sendv(s_print_, 2, _1, _2); _1=_sendv(s_space, 1, _1); _leave(); return _1; _leave(); } static struct __methodinfo __info53= { "printElementsOn:", "Collection", "/Users/piumarta/src/idst/object/st80/Collection.st", 0, 147, 155, &__info55 }; static oop Collection__printElementsOn_(oop v__closure, oop v_stateful_self, oop v_self, oop v_aStream) { _enter(&__info53); oop _state1= _sendv(s_new_5f_, 2, v__vector, 2); oop _1= 0; oop _2= 0; ((oop *)_state1)[1]= v_aStream; _line(147); _1= ((oop *)_state1)[1]; /* aStream */ _2= l_54; _line(149); _1=_sendv(s_nextPutAll_, 2, _1, _2); _1= v_self; /* Scope('element'->ArgumentVariableNode) */ /* Scope('aStream'->ArgumentVariableNode 'stateful_self'->ArgumentVariableNode 'self'->ArgumentVariableNode) */ /* nil */ /* 2 */ /* 1 */ _2= _sendv(s_function_5f_arity_5f_outer_state_nlr_5f_, 6, v_BlockClosure, (oop)b_55, 1, 0, ((oop *)_state1), 0); _line(150); _1=_sendv(s_do_, 2, _1, _2); /* ifFalse: */ _1= 0; _2= v_self; _line(151); _2=_sendv(s_isEmpty, 1, _2); if (_2) goto _l12; { _1= ((oop *)_state1)[1]; /* aStream */ _2= l_56; _line(151); _1=_sendv(s_skip_, 2, _1, _2); } _l12:; _1= ((oop *)_state1)[1]; /* aStream */ _2= l_57; _line(152); _1=_sendv(s_nextPutAll_, 2, _1, _2); _1= v_self; _leave(); return _1; _leave(); } static struct __methodinfo __info= { "__id__init__", "", "Collection.st", 0, 0, 0, &__info53 }; void __id__init__Collection(struct __libid *__libid) { if (_libid) return; if (!(_libid= __libid)) { fprintf(stderr, "init _libid %p\n", __libid); abort(); } # define GC_add_roots _libid->gc_addRoots GC_INIT(); { struct _Selector *s= 0; for (s= _Selectors; s->name; ++s) *s->addr= _libid->intern(s->name); } _enter(&__info); _libid->infos(&__info, &__info1); _sendv(s__5fimport_, 3, _libid->_object, "Object", "__id__init__Object"); v__object= _libid->import("_object"); v__vector= _libid->import("_vector"); v_Object= _libid->import("Object"); v_UndefinedObject= _libid->import("UndefinedObject"); v_StaticBlockClosure= _libid->import("StaticBlockClosure"); v_BlockClosure= _libid->import("BlockClosure"); v_Magnitude= _libid->import("Magnitude"); v_Number= _libid->import("Number"); v_Integer= _libid->import("Integer"); v_SmallInteger= _libid->import("SmallInteger"); v_LargePositiveInteger= _libid->import("LargePositiveInteger"); v_Collection= _libid->import("Collection"); v_SequenceableCollection= _libid->import("SequenceableCollection"); v_ArrayedCollection= _libid->import("ArrayedCollection"); v_Array= _libid->import("Array"); v_WordArray= _libid->import("WordArray"); v_ByteArray= _libid->import("ByteArray"); v_String= _libid->import("String"); v_ImmutableString= _libid->import("ImmutableString"); v_true= _libid->import("true"); v_false= _libid->import("false"); _libid->method(v_Collection, s_isCollection, (_imp_t)Collection__isCollection); _libid->method(v_Object, s_isCollection, (_imp_t)Object__isCollection); _libid->method(v_Collection, s_initialize_, (_imp_t)Collection__initialize_); l_5= _sendv(s_size_5f_value_5f_, 3, v_ImmutableString, 7, "species"); _libid->method(v_Collection, s_species, (_imp_t)Collection__species); l_7= _sendv(s_size_5f_value_5f_, 3, v_ImmutableString, 4, "add:"); _libid->method(v_Collection, s_add_, (_imp_t)Collection__add_); l_9= _sendv(s_size_5f_value_5f_, 3, v_ImmutableString, 3, "do:"); _libid->method(v_Collection, s_do_, (_imp_t)Collection__do_); l_11= _sendv(s_size_5f_value_5f_, 3, v_ImmutableString, 4, "size"); _libid->method(v_Collection, s_size, (_imp_t)Collection__size); _libid->method(v_Collection, s_with_, (_imp_t)Collection__with_); _libid->method(v_Collection, s_withAll_, (_imp_t)Collection__withAll_); l_15= _sendv(s_value_5f_, 2, v_SmallInteger, 0); _libid->method(v_Collection, s_isEmpty, (_imp_t)Collection__isEmpty); _libid->method(v_Collection, s_notEmpty, (_imp_t)Collection__notEmpty); l_18= _sendv(s_value_5f_, 2, v_SmallInteger, 10); l_19= _sendv(s_value_5f_, 2, v_SmallInteger, 275604541); l_21= _sendv(s_value_5f_, 2, v_SmallInteger, 1073741823); l_20= _sendv(s_function_5f_arity_5f_, 3, v_StaticBlockClosure, b_20, 2); _libid->method(v_Collection, s_hash, (_imp_t)Collection__hash); _libid->method(v_Collection, s__3d, (_imp_t)Collection___3d); _libid->method(v_Collection, s_as_, (_imp_t)Collection__as_); _libid->method(v_Collection, s_addAll_, (_imp_t)Collection__addAll_); l_28= _sendv(s_value_5f_, 2, v_SmallInteger, 2); _libid->method(v_Collection, s_growSize, (_imp_t)Collection__growSize); _libid->method(v_Collection, s_remove_, (_imp_t)Collection__remove_); _libid->method(v_Collection, s_anyOne, (_imp_t)Collection__anyOne); _libid->method(v_Collection, s_emptyCheck, (_imp_t)Collection__emptyCheck); l_35= _sendv(s_value_5f_, 2, v_SmallInteger, 0); l_37= _sendv(s_value_5f_, 2, v_SmallInteger, 1); _libid->method(v_Collection, s_doWithIndex_, (_imp_t)Collection__doWithIndex_); l_40= _sendv(s_value_5f_, 2, v_SmallInteger, 1); _libid->method(v_Collection, s_do_separatedBy_, (_imp_t)Collection__do_separatedBy_); _libid->method(v_Collection, s_includes_, (_imp_t)Collection__includes_); _libid->method(v_Collection, s_collect_, (_imp_t)Collection__collect_); _libid->method(v_Collection, s_detect_ifNone_, (_imp_t)Collection__detect_ifNone_); _libid->method(v_Collection, s_detect_, (_imp_t)Collection__detect_); _libid->method(v_Collection, s_inject_into_, (_imp_t)Collection__inject_into_); _libid->method(v_Collection, s_printOn_, (_imp_t)Collection__printOn_); _libid->method(v_Collection, s_printNameOn_, (_imp_t)Collection__printNameOn_); l_54= _sendv(s_size_5f_value_5f_, 3, v_ImmutableString, 1, "("); l_56= _sendv(s_value_5f_, 2, v_SmallInteger, -1); l_57= _sendv(s_size_5f_value_5f_, 3, v_ImmutableString, 1, ")"); _libid->method(v_Collection, s_printElementsOn_, (_imp_t)Collection__printElementsOn_); _leave(); }