So igor is thinking about ephemerons and object formats.
Because we are going over all the weak on:do: and rewriting the ones we can.


whenListChanged: aBlock
        "Specify a block to value after the contents of the list has changed"

        "Basically when you set a new list of items"

        <api: #event>
        | block |
        block := [ :announcement :ann | 
        aBlock
                cull: announcement newContents
                cull: announcement oldContents
                cull: announcement
                cull: ann ].
        listAnnouncer weak
                on: ValueChanged
                do: block


On Aug 4, 2013, at 4:16 PM, Stéphane Ducasse <[email protected]> wrote:

> addDependent: anObject
> 
>       self announcer 
>               on: MorphChanged
>               do: [ :ann | anObject update: ann selector ].
>               
>       self announcer 
>               on: MorphChangedWithArguments
>               do: [ :ann | anObject update: ann selector with: ann arguments 
> ].
>                       
>       ^ anObject
> 
> is an example of the problem because addDependent: was holding also weakly 
> its dependent and now
> we cannot use weak with blocks.
> 
> Stef


Reply via email to