#become: swaps the two pointers, so both objects continue to exist. Use the asymmetric variant #becomeForward: to get rid of an object.
And you probably also need a "Smalltalk garbageCollect" to make the object really disappear. Lukas 2009/12/2 Stéphane Ducasse <[email protected]>: > become: changes the pointer pointing to the objects not the object itself. > So I'm not sure that instance should be changed. > > If I remember correctly what allinstances does is that it use nextObject to > iterate over the object spaces. > > Stef > > On Dec 2, 2009, at 10:21 AM, Mariano Martinez Peck wrote: > >> Hi! Look this peace of code: >> >> | instance | >> instance := TestCase new. >> Transcript show: TestCase allInstances size; cr. >> instance become: 'aString'. >> Transcript show: TestCase allInstances size; cr. >> >> >> The size of TestCase instances is always the same. Although I used become: >> (and changed to an instance of another class) to one of its instances. >> >> So, my main question is, is this correct ? Or the message allInstances to >> TestCase should not take into account the instance I sent the message >> become: ? >> >> Thanks in advance. >> >> Mariano >> >> _______________________________________________ >> Pharo-project mailing list >> [email protected] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > _______________________________________________ > Pharo-project mailing list > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
