[squeak-dev] The Inbox: System-jr.948.mcz

Levente Uzonyi leves at caesar.elte.hu
Tue May 16 21:19:54 UTC 2017


On Tue, 16 May 2017, commits at source.squeak.org wrote:

> A new version of System was added to project The Inbox:
> http://source.squeak.org/inbox/System-jr.948.mcz
>
> ==================== Summary ====================
>
> Name: System-jr.948
> Author: jr
> Time: 5 May 2017, 12:08:58.857884 am
> UUID: 4a19b143-6a23-b549-ab15-0d548da859f4
> Ancestors: System-ul.947
>
> incorporate behaviors from other environments in allBehaviorsDo:
>
> This enables senders/implementors and method searches across environments.

Wasn't the idea to have each environment its own SystemNavigation?
This change would break that.

Levente

>
> =============== Diff against System-ul.947 ===============
>
> Item was changed:
>  ----- Method: SystemNavigation>>allBehaviorsDo: (in category 'query') -----
>  allBehaviorsDo: aBlock
>  	"Evaluate the argument, aBlock, for each kind of Behavior in the system
>  	(that is, Object and its subclasses and Traits).
>  	ar 7/15/1999: The code below will not enumerate any obsolete or anonymous
>  	behaviors for which the following should be executed:
>
>  		Smalltalk allObjectsDo:[:obj| obj isBehavior ifTrue:[aBlock value: obj]].
>
>  	but what follows is way faster than enumerating all objects."
> 
> + 	Environment allInstancesDo: [:environment |
> + 		environment allClassesAndTraitsDo: [ :class |
> + 			aBlock value: class.
> + 			class isTrait ifFalse: [ "class of a Trait is Trait, there are no MetaTraits"
> + 				aBlock value: class class ] ] ]!
> - 	self environment allClassesAndTraitsDo: [ :class |
> - 		aBlock value: class.
> - 		class isTrait ifFalse: [ "class of a Trait is Trait, there are no MetaTraits"
> - 			aBlock value: class class ] ]!


More information about the Squeak-dev mailing list