[squeak-dev] The Trunk: System-ul.784.mcz

commits at source.squeak.org commits at source.squeak.org
Sun Jan 10 21:02:59 UTC 2016


Levente Uzonyi uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-ul.784.mcz

==================== Summary ====================

Name: System-ul.784
Author: ul
Time: 9 January 2016, 11:57:40.562643 am
UUID: 69182e71-9ad2-4bed-ac33-f0c56794b197
Ancestors: System-eem.783

Let PseudoClass behave more like a class, especially when #realClass exists in the image.

=============== Diff against System-eem.783 ===============

Item was changed:
  ----- Method: PseudoClass>>allInstVarNames (in category 'accessing') -----
  allInstVarNames
+ 
+ 	self realClass ifNotNil: [ :realClass | ^realClass allInstVarNames ].
  	^#()!

Item was changed:
  ----- Method: PseudoClass>>compilerClass (in category 'accessing') -----
  compilerClass
+ 
+ 	^self realClass
+ 		ifNil: [ Compiler ]
+ 		ifNotNil: [ :realClass | realClass compilerClass ]!
- 	^ (Smalltalk at: name ifAbsent: [^ Compiler]) compilerClass!

Item was changed:
  ----- Method: PseudoClass>>instVarNames (in category 'accessing') -----
  instVarNames
+ 
+ 	self realClass ifNotNil: [ :realClass | ^realClass instVarNames ].
+ 	^#()!
- 	^ #()!

Item was changed:
  ----- Method: PseudoClass>>parserClass (in category 'private') -----
  parserClass
  
+ 	^self compilerClass parserClass!
- 	^ Compiler parserClass!

Item was changed:
  ----- Method: PseudoClass>>realClass (in category 'accessing') -----
  realClass
+ 
+ 	^Smalltalk globals classNamed: self name!
- 	^Smalltalk at: self name asSymbol ifAbsent: []!

Item was added:
+ ----- Method: PseudoClass>>withAllSubAndSuperclassesDo: (in category 'enumerating') -----
+ withAllSubAndSuperclassesDo: aBlock
+ 
+ 	self realClass ifNotNil: [ :realClass | ^realClass withAllSubAndSuperclassesDo: aBlock ].
+ 	^aBlock value: self!

Item was added:
+ ----- Method: PseudoClass>>withAllSuperclassesDo: (in category 'enumerating') -----
+ withAllSuperclassesDo: aBlock
+ 
+ 	self realClass ifNotNil: [ :realClass | ^realClass withAllSuperclassesDo: aBlock ].
+ 	^aBlock value: self!



More information about the Squeak-dev mailing list