class: Metaclass
authorClaus Gittinger <cg@exept.de>
Fri, 11 Jul 2014 14:22:12 +0200
changeset 16769 3ef6b678e97d
parent 16768 8e18352458b6
child 16770 9ac0b20cef5f
class: Metaclass changed: #instanceVariableNames: (send #rebuildForChangedClassInstanceVariables instead of #rebuildForChangedInstanceVariables)
Metaclass.st
--- a/Metaclass.st	Fri Jul 11 14:22:02 2014 +0200
+++ b/Metaclass.st	Fri Jul 11 14:22:12 2014 +0200
@@ -127,7 +127,6 @@
     "Created: / 1.11.1997 / 13:16:45 / cg"
 ! !
 
-
 !Metaclass methodsFor:'autoload check'!
 
 isLoaded
@@ -144,12 +143,13 @@
 instanceVariableNames:aString
     "changing / adding class-inst vars -
      this actually creates a new metaclass and class, leaving the original
-     classes around as obsolete classes. This may also be true for all subclasses,
-     if class instance variables are added/removed.
-     Existing instances continue to be defined by their original classes.
+     class hanging around as obsolete classes. 
+     This may also be true for all subclasses, if class instance variables are added/removed in a superclass.
+     Existing instances (i.e. insts of the class) are migrated to become instances of the new class(es).
 
-     Time will show, if this is an acceptable behavior or if we should migrate
-     instances to become insts. of the new classes."
+     However, if the old class is referenced somewhere (in a collection),
+     that reference will still point to the old, now obsolete class.
+     Time will show, if that is a problem and will be fixed."
 
     |builder|
 
@@ -157,7 +157,7 @@
 
     builder := ClassBuilder new.
     builder oldMetaclass:self instanceVariableNames:aString.
-    builder rebuildForChangedInstanceVariables.
+    builder rebuildForChangedClassInstanceVariables.
 ! !
 
 !Metaclass methodsFor:'compiler interface'!
@@ -918,7 +918,7 @@
 !Metaclass class methodsFor:'documentation'!
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libbasic/Metaclass.st,v 1.213 2014-03-06 17:28:18 vrany Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Metaclass.st,v 1.214 2014-07-11 12:22:12 cg Exp $'
 ! !