[squeak-dev] The Trunk: Tools-eem.1059.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Jul 1 21:33:29 UTC 2021


Eliot Miranda uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-eem.1059.mcz

==================== Summary ====================

Name: Tools-eem.1059
Author: eem
Time: 1 July 2021, 2:33:26.752346 pm
UUID: 5344c155-ba05-4999-b9de-58c6c31c2aa7
Ancestors: Tools-mt.1058

Have the Debugger reset the context to the new method when doing toggle bre4ak on entry when stopped at a break.
Hack MessageTrace to display Stores into foo when browsing assignments, rather than Senders of foo.

=============== Diff against Tools-mt.1058 ===============

Item was added:
+ ----- Method: Debugger>>toggleBreakOnEntry (in category 'breakpoints') -----
+ toggleBreakOnEntry
+ 	"Override to rset to the new breakless method if stopped at a break point.
+ 	 N.B. does not (yet) do the reverse."
+ 	| ctxt prevPC bytecodeMessage atInitialBreak newMethod |
+ 	((ctxt := self selectedContext) isNil
+ 	or: [(prevPC := ctxt previousPc) isNil]) ifTrue:
+ 		[^super toggleBreakOnEntry].
+ 
+ 	bytecodeMessage := ctxt method abstractBytecodeMessageAt: ctxt previousPc.
+ 	atInitialBreak := bytecodeMessage selector = #send:super:numArgs:
+ 					and: [bytecodeMessage arguments = #(break false 0)].
+ 	super toggleBreakOnEntry.
+ 	((newMethod := ctxt method methodReference compiledMethod) notNil
+ 	and: [newMethod ~~ ctxt method]) ifTrue:
+ 		[ctxt privRefreshWith: newMethod.
+ 		 self resetContext: ctxt.
+ 		 self debug]!

Item was changed:
  ----- Method: MessageTrace>>windowLabelAt: (in category 'private accessing') -----
  windowLabelAt: anInteger
  	"return a suitable window label when there is an actual list item selected; work out what it should be based upon the array of autoSelectStrings or the current selection"
  
  	^(autoSelectStrings at: anInteger)
+ 		ifNil:
+ 			['Implementors of ',
- 		ifNil: [ 'Implementors of ',
  				(self class
  					parse: self selection
+ 					toClassAndSelector: [ :class :selector | selector ])]
+ 		ifNotNil:
+ 			[:str| (windowLabel endsWith: str)
+ 					ifTrue: [windowLabel]
+ 					ifFalse: ['Senders of ', str]]!
- 					toClassAndSelector: [ :class :selector | selector ])
- 			]
- 		ifNotNil: [:str|  'Senders of ', str ]
- !



More information about the Squeak-dev mailing list