A changeset that is sure to be somewhat controversial.
from preamble:
"Change Set: IfUnhandledError-nk
Date: 27 June 2003
Author: Ned Konz
This changeset:
- edits all callers of BlockContext>>ifError: to use something else,
usually #ifUnhandledError:
- adds BlockContext>>ifUnhandledError: (see below)
- marks BlockContext>>ifError: as deprecated
- edits all callers of Semaphore>>critical:ifError: to use something
else.
- marks Semaphore>>critical:ifError: as deprecated
- edits most callers of
on: Error do: [ ... ]
to use something else, mostly #ifUnhandledError:
- restores the behavior of removing step messages from the WorldState
step list when the step messages have an error (the 'start stepping
again' debug menu choice will restart them)
I wrote #ifUnhandledError:, which allows enclosing scopes to handle
exceptions. This behaves exactly the same as #ifError:, except that:
- if there is an outer exception handler, that handler gets to handle
the exception instead, and
- there is now a one-argument form as well as the 0 and 2 argument forms
that gets passed the exception itself.
"!