[squeak-dev] The Trunk: Tools-eem.736.mcz
Chris Muller
asqueaker at gmail.com
Fri Dec 16 23:06:20 UTC 2016
You broke it. ;) Not only is there no #isMethodReference in my
image, but even after I added it, the formatting of MessageTrace is
totally broken. I think we at least need to update those
"stringVersion" on the incoming MethodReferences...
On Fri, Dec 16, 2016 at 1:28 PM, <commits at source.squeak.org> wrote:
> Eliot Miranda uploaded a new version of Tools to project The Trunk:
> http://source.squeak.org/trunk/Tools-eem.736.mcz
>
> ==================== Summary ====================
>
> Name: Tools-eem.736
> Author: eem
> Time: 16 December 2016, 11:28:21.691735 am
> UUID: edf74efa-cdf2-4a15-8526-40f44f02273b
> Ancestors: Tools-eem.735
>
> Stop MessageSet>>initializeMessageList: from installng new MethodReferences when given a list of MethodReferences. The substitution breaks schemes such as constructing MessageSets for variants of MethodReference that hold edited versions of code, e.g. for viewing potential edits from the rewrite engine.
>
> =============== Diff against Tools-eem.735 ===============
>
> Item was changed:
> ----- Method: MessageSet>>initializeMessageList: (in category 'private') -----
> initializeMessageList: anArray
> + "Initialize my messageList from the given list of MethodReference or string objects. NB: special handling for uniclasses.
> + Do /not/ replace the elements of anArray if they are already MethodReferences, so as to allow users to construct richer
> + systems, such as differencers between existing and edited versions of code."
> - "Initialize my messageList from the given list of MethodReference or string objects. NB: special handling for uniclasses."
> -
>
> messageList := OrderedCollection new.
> + anArray do:
> + [:each |
> + each isMethodReference
> + ifTrue: [messageList addLast: each]
> + ifFalse:
> + [MessageSet
> + parse: each
> + toClassAndSelector: [ :class :sel | | s |
> + class ifNotNil:
> + [class isUniClass
> + ifTrue:
> + [s := class typicalInstanceName, ' ', sel]
> + ifFalse:
> + [s := class name , ' ' , sel , ' {' ,
> + ((class organization categoryOfElement: sel) ifNil: ['']) , '}' ,
> + ' {', class category, '}'].
> + messageList addLast: (
> + MethodReference new
> + setClass: class
> + methodSymbol: sel
> + stringVersion: s)]]]].
> - anArray do: [ :each |
> - MessageSet
> - parse: each
> - toClassAndSelector: [ :class :sel | | s |
> - class ifNotNil:
> - [class isUniClass
> - ifTrue:
> - [s := class typicalInstanceName, ' ', sel]
> - ifFalse:
> - [s := class name , ' ' , sel , ' {' ,
> - ((class organization categoryOfElement: sel) ifNil: ['']) , '}' ,
> - ' {', class category, '}'].
> - messageList add: (
> - MethodReference new
> - setClass: class
> - methodSymbol: sel
> - stringVersion: s)]]].
> messageListIndex := messageList isEmpty ifTrue: [0] ifFalse: [1].
> contents := ''!
>
>
More information about the Squeak-dev
mailing list
|