Hi,

Yesterday we improved #haltOnce to be more like a “once” BreakPoint:

        -> state per *each* haltOnce send
                (this means you can put two in one method and they are 
independent)
        -> when putting a haltOnce, it is enabled by default
        -> The global menu entry just resets all haltOnce to be active again.

Interesting is how trivial this was to implement… in class Halt 
once
    | node |
    node := thisContext sender sender sourceNodeExecuted.
    (node hasProperty: #haltOnce) ifTrue: [^self]. 
    node propertyAt: #haltOnce put: true.
    ^ self signal.


This means, we get the AST node of the “haltOnce” message send. Then we put an 
annotation there.
To reset all (enable all), the global many just does:

        #haltOnce senders do: #recompile.

Done.

This will be in 60082.

        Marcus



Reply via email to