A simple question: How to copy the instance variables of an
object to another - already existing - object
bert at impara.de
Sun Jul 31 20:20:55 UTC 2005
Am 31.07.2005 um 21:35 schrieb Rudi Bichler:
> I need some kind of copyTo: functionality, which copies a complete
> object (i.e. all instance variables) to another object. I need this
> to "convert" an object of class A into an object of a subclass of
> A. Something like:
> Object subclass: #MyClass
> instanceVariableNames: 'var1 var2' ...
> MyClass subclass: #MySubcl
> instanceVariableNames: 'var3' ...
> MySubcl class >> newCopyFrom: original
> "create an object of class MySubcl with is - as MyClass - identical
> to original"
> An example of such a functionality is FormCanvas asBalloonCanvas.
> This method is implemented by creating a BalloonCanvas and
> initializing it "by hand". I am looking for a generic way -
> something like copy in Object. Any idea?
Looking into the #copy method in Object you'll notice it calls
#shallowCopy, which implements a generic copy of all instance
variables - take a look!
- Bert -
More information about the Squeak-dev