[squeak-dev] The Trunk: 61Deprecated-mt.4.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Jan 18 16:09:13 UTC 2023


Marcel Taeumel uploaded a new version of 61Deprecated to project The Trunk:
http://source.squeak.org/trunk/61Deprecated-mt.4.mcz

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

Name: 61Deprecated-mt.4
Author: mt
Time: 18 January 2023, 5:09:13.400866 pm
UUID: 276eb5aa-b8e9-164b-84df-39cbb43f2c2a
Ancestors: 61Deprecated-ct.3

*** Debugger Refactoring - Step 3 of 2 ***

Remove and/or deprecate the old interface.

=============== Diff against 61Deprecated-ct.3 ===============

Item was added:
+ SystemOrganization addCategory: #'61Deprecated-ST80-Support'!
+ SystemOrganization addCategory: #'61Deprecated-Morphic-Support'!

Item was added:
+ ----- Method: Debugger class>>informExistingDebugger:label: (in category '*61Deprecated-instance creation') -----
+ informExistingDebugger: aContext label: aString
+ 	"Walking the context chain, we try to find out if we're in a debugger stepping situation.
+ 	 If we find the relevant contexts, we must rearrange them so they look just like they would
+ 	 if the methods were executed outside of the debugger.
+ 	 hmm 8/3/2001 13:05"
+ 	| ctx quickStepMethod oldSender baseContext |
+ 	self flag: #deprecated. "mt: Not needed anymore. Code simulation and step-over shortcut
+ 	handle unhandled errors themselves. See Context >> #runUntilErrorOrReturnFrom:."
+ 	ctx := thisContext.
+ 	quickStepMethod := Context
+ 							compiledMethodAt: #quickSend:to:with:lookupIn:
+ 							ifAbsent: [Context compiledMethodAt: #quickSend:to:with:super:].
+ 	[ctx sender == nil or: [ctx sender method == quickStepMethod]] whileFalse:
+ 		[ctx := ctx sender].
+ 	ctx sender ifNil: [^self].
+ 	baseContext := ctx.
+ 	"baseContext is now the context created by the #quickSend... method."
+ 	oldSender := ctx := ctx sender home sender.
+ 	"oldSender is the context which originally sent the #quickSend... method"
+ 	[ctx == nil or: [(ctx objectClass: ctx receiver) includesBehavior: self]] whileFalse:
+ 		[ctx := ctx sender].
+ 	ctx ifNil: [^self].
+ 	"ctx is the context of the Debugger method #doStep"
+ 	ctx receiver
+ 		labelString: aString;
+ 		proceedValue: aContext receiver.
+ 	baseContext swapSender: baseContext sender sender sender.	"remove intervening contexts"
+ 	thisContext swapSender: oldSender.	"make myself return to debugger"
+ 	^ aContext!

Item was added:
+ ----- Method: Debugger>>doNothing: (in category '*61Deprecated-accessing') -----
+ doNothing: newText
+ 	"Notifier window can't accept text"
+ 	
+ 	self deprecated.!

Item was added:
+ Debugger subclass: #MVCDebugger
+ 	instanceVariableNames: 'interruptedController'
+ 	classVariableNames: ''
+ 	poolDictionaries: ''
+ 	category: '61Deprecated-ST80-Support'!

Item was added:
+ Debugger subclass: #MorphicDebugger
+ 	instanceVariableNames: 'errorWasInUIProcess'
+ 	classVariableNames: ''
+ 	poolDictionaries: ''
+ 	category: '61Deprecated-Morphic-Support'!

Item was added:
+ ----- Method: MorphicDebugger>>errorWasInUIProcess (in category 'accessing') -----
+ errorWasInUIProcess
+ 
+ 	^ errorWasInUIProcess!

Item was added:
+ ----- Method: MorphicDebugger>>errorWasInUIProcess: (in category 'accessing') -----
+ errorWasInUIProcess: boolean
+ 
+ 	errorWasInUIProcess := boolean!

Item was added:
+ ----- Method: MorphicDebugger>>initialize (in category 'initialize') -----
+ initialize
+ 
+ 	super initialize.
+ 	
+ 	errorWasInUIProcess := false.!



More information about the Squeak-dev mailing list