public static interface ExceptionalGraph.ExceptionDest<N>
Data structure to represent the fact that
a given Trap
will catch some subset of the exceptions
which may be thrown by a given graph node.
Note that these ``destinations'' are different from the
edges in the CFG proper which are returned by
getSuccsOf()
and getPredsOf()
. An
edge from a
to b
in the CFG
represents the fact that after node a
executes
(perhaps only partially, if it throws an exception after
producing a side effect), execution may proceed to
node b
. An ExceptionDest from a
to
b
, on the other hand, says that when
a
fails to execute, execution may proceed
to b
instead.
Modifier and Type | Method and Description |
---|---|
N |
getHandlerNode()
Returns the CFG node corresponding to the beginning of
the exception handler that catches the exceptions (that is,
the node that includes
trap().getBeginUnit() ). |
ThrowableSet |
getThrowables()
Returns the exceptions thrown to this destination.
|
Trap |
getTrap()
Returns the trap corresponding to this destination.
|
Trap getTrap()
Trap
representing the handler that
catches the exceptions, if there is such a handler within
the method, or null
if there is no such
handler and the exceptions cause the method to terminate
abruptly.ThrowableSet getThrowables()
ThrowableSet
representing
the exceptions which may be caught by this
ExceptionDest
's trap.N getHandlerNode()
trap().getBeginUnit()
).null
if there is no such handler and the
exceptions cause the method to terminate abruptly.