[etoys-dev] Etoys: Kernel-bf.5.mcz
commits at source.squeak.org
commits at source.squeak.org
Sat Aug 14 16:01:52 EDT 2010
Bert Freudenberg uploaded a new version of Kernel to project Etoys:
http://source.squeak.org/etoys/Kernel-bf.5.mcz
==================== Summary ====================
Name: Kernel-bf.5
Author: bf
Time: 14 August 2010, 10:00:48 pm
UUID: 57df54f3-6c03-425a-9b9b-2b6878027948
Ancestors: Kernel-Richo.4
- do not ask about removing class vars while filing in code
=============== Diff against Kernel-Richo.4 ===============
Item was changed:
----- Method: Class>>removeClassVarName: (in category 'class variables') -----
removeClassVarName: aString
"Remove the class variable whose name is the argument, aString, from
the names defined in the receiver, a class. Create an error notification if
aString is not a class variable or if it is still being used in the code of
the class."
| aSymbol |
+ aSymbol := aString asSymbol.
- aSymbol _ aString asSymbol.
(classPool includesKey: aSymbol)
ifFalse: [^self error: aString, ' is not a class variable'].
self withAllSubclasses do:[:subclass |
(Array with: subclass with: subclass class) do:[:classOrMeta |
(classOrMeta whichSelectorsReferTo: (classPool associationAt: aSymbol))
isEmpty ifFalse: [
+ InMidstOfFileinNotification signal ifTrue: [
+ Transcript cr; show: self name, ' (' , aString , ' is Undeclared) '.
+ ^Undeclared declare: aSymbol from: classPool].
(self confirm: (aString,' is still used in code of class ', classOrMeta name,
'.\Is it okay to move it to Undeclared?') withCRs)
ifTrue:[^Undeclared declare: aSymbol from: classPool]
ifFalse:[^self]]]].
classPool removeKey: aSymbol.
+ classPool isEmpty ifTrue: [classPool := nil].
- classPool isEmpty ifTrue: [classPool _ nil].
!
More information about the etoys-dev
mailing list