Marcel Taeumel uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-mt.1042.mcz==================== Summary ====================
Name: Tools-mt.1042
Author: mt
Time: 18 April 2021, 6:43:53.338254 pm
UUID: 3fd43581-c48b-154a-9dfa-7d666d9d5076
Ancestors: Tools-nice.1041
In change records, make info about removal more robust and extensible.
=============== Diff against Tools-nice.1041 ===============
Item was changed:
----- Method: ChangeSorter>>browseVersions (in category 'message list') -----
browseVersions
"Create and schedule a changelist browser on the versions of the
selected message."
| class selector method category pair sourcePointer |
(selector := self selectedMessageName) ifNil: [^ self].
class := self selectedClassOrMetaClass.
(class includesSelector: selector)
ifTrue: [method := class compiledMethodAt: selector.
category := class whichCategoryIncludesSelector: selector.
sourcePointer := nil]
ifFalse: [pair := myChangeSet methodInfoFromRemoval: {class name. selector}.
pair ifNil: [^ nil].
sourcePointer := pair first.
method := CompiledMethod toReturnSelfTrailerBytes:
(CompiledMethodTrailer new sourcePointer: sourcePointer).
+ category := pair second].
- category := pair last].
VersionsBrowser
browseVersionsOf: method
class: self selectedClass meta: class isMeta
category: category selector: selector
lostMethodPointer: sourcePointer.
!
Item was changed:
----- Method: StandardToolSet class>>browseVersionsOf:selector: (in category 'browsing') -----
browseVersionsOf: class selector: selector
"Open and answer a browser on versions of the method.
If the method doesn't exist try and find version from the current change set.
If not found there, answer nil."
| methodOrNil methodCategory |
methodOrNil := class compiledMethodAt: selector ifAbsent: [].
methodOrNil ifNil:
[(ChangeSet current methodInfoFromRemoval: {class name. selector})
ifNil: [^nil]
ifNotNil:
[:pair|
methodOrNil := CompiledMethod toReturnSelfTrailerBytes:
(CompiledMethodTrailer new sourcePointer: pair first).
+ methodCategory := pair second]].
- methodCategory := pair last]].
^VersionsBrowser
browseVersionsOf: methodOrNil
class: class theNonMetaClass
meta: class isMeta
category: (methodCategory ifNil: [class organization categoryOfElement: selector])
selector: selector!