[squeak-dev] Accessing temp variables bindings in a BlockClosure

Stéphane Rollandin lecteur at zogotounga.net
Sun Apr 19 23:09:21 UTC 2020


> PS: Just saw your screenshot. If you do not need to access 
> temporaries/args that are local to the blocks, shouldn't you be fine 
> with aBlock outerContext tempsAndValues?

Yes, thanks for this pointer. It seems that the #tempBindings 
implementation I got from it works for me at this point (it is attached, 
this time...).

Stef


-------------- next part --------------
'From Squeak5.3 of 3 March 2020 [latest update: #19431] on 20 April 2020 at 1:05:15 am'!

!BlockClosure methodsFor: '*ModularAgency' stamp: 'spfa 4/20/2020 00:34'!
tempBindings

	| ctxt debuggerMap |

  	debuggerMap := (ctxt := self simulateValueWithArguments: (Array new: self numArgs) caller: self outerContext) debuggerMap.

	^ Array streamContents: [:str |
		(debuggerMap tempNamesForContext: ctxt) doWithIndex: [:title :index |
			str nextPut: title ->  (debuggerMap namedTempAt: index in: ctxt)]]! !


More information about the Squeak-dev mailing list