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 := ''! |
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, <[hidden email]> 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 := ''! > > |
Hi Chris,
On Fri, Dec 16, 2016 at 3:06 PM, Chris Muller <[hidden email]> wrote: You broke it. ;) Not only is there no #isMethodReference in my Oh, I'm sorry. I did not think and simply assumed my VMMaker image (which is at least regularly updated) was close to trunk. Forgive me.
_,,,^..^,,,_ best, Eliot |
Free forum by Nabble | Edit this page |