[squeak-dev] How do I replace a call SmalltalkImage>>associationAt:ifAbsent:? (Environments)

Levente Uzonyi leves at caesar.elte.hu
Mon Oct 9 16:03:12 UTC 2017


On Mon, 9 Oct 2017, H. Hirzel wrote:

> Hello
>
> How do I replace a call SmalltalkImage>>associationAt:ifAbsent:?

What image do you use? The receiver of #associationAt:ifAbsent: must not 
be a SmalltalkImage but an Environment.

Levente

>
> ScriptEncoder>>associationForClass
> 	| assoc |
> 	assoc := self environment associationAt: cue getClass name ifAbsent: [nil].
> 	^assoc value == cue getClass
> 		ifTrue: [assoc]
> 		ifFalse: [Association new value: cue getClass]
>
>
>
> SmalltalkImage>>associationAt: key ifAbsent: aBlock
> 	"Obsoleted."
>
> 	self deprecated: 'Use Smalltalk globals'.
> 	^globals associationAt: key ifAbsent: aBlock
>
>
> A direct replacement does not work.
>
>
> Kind regards
>
> Hannes


More information about the Squeak-dev mailing list