Marcel Taeumel uploaded a new version of System to project The Trunk: http://source.squeak.org/trunk/System-mt.1073.mcz
==================== Summary ====================
Name: System-mt.1073 Author: mt Time: 22 July 2019, 11:44:51.098271 am UUID: 03eef6f8-69b5-4a5b-8b2b-9e47fccae8f2 Ancestors: System-mt.1072
Adds support for class bindings to system navigation.
Not sure about "self environment" vs. "aClass environment" because tools will usually create a system navigation with the correct environment set.
=============== Diff against System-mt.1072 ===============
Item was changed: ----- Method: SystemNavigation>>allCallsOnClass: (in category 'query') ----- + allCallsOnClass: aBehaviorOrBinding - allCallsOnClass: aBehavior "Answer a sorted collection of all the methods that refer to aBehavior." + | binding thisClass result | + binding := aBehaviorOrBinding isBehavior + ifTrue: [self environment bindingOf: aBehaviorOrBinding theNonMetaClass name] + ifFalse: [aBehaviorOrBinding]. + thisClass := binding value. + - | theClass result | - theClass := aBehavior theNonMetaClass. result := self + allCallsOn: binding - allCallsOn: (theClass environment bindingOf: theClass name) fromBehaviors: self allBehaviors sorted: false. + + self environment allClassesDo: [:otherClass | + (otherClass sharedPools includes: thisClass) ifTrue: [ + result add: (ClassReference class: otherClass) ] ]. + + ^ result sort! - theClass environment allClassesDo: [ :class | - (class sharedPools includes: theClass) ifTrue: [ - result add: (ClassReference class: class) ] ]. - ^result sort!
Item was changed: ----- Method: SystemNavigation>>browseAllCallsOnClass: (in category 'browse') ----- + browseAllCallsOnClass: aBehaviorOrBinding - browseAllCallsOnClass: aBehavior "Create and schedule a message browser on each method that refers to aBehavior." "self default browseAllCallsOnClass: Array" | behaviorName | + behaviorName := aBehaviorOrBinding isBehavior + ifTrue: [aBehaviorOrBinding theNonMetaClass name] + ifFalse: [aBehaviorOrBinding key]. - behaviorName := aBehavior theNonMetaClass name. self + browseMessageList: [ self allCallsOnClass: aBehaviorOrBinding ] - browseMessageList: [ self allCallsOnClass: aBehavior ] name: 'Users of ', behaviorName autoSelect: behaviorName!
packages@lists.squeakfoundation.org