public interface ExceptionPruningAnalysis<I,T extends IBasicBlock<I>>
Modifier and Type | Method and Description |
---|---|
int |
compute(MonitorUtil.IProgressMonitor progress)
Computes impossible control flow that is due to exceptions that definitely
will not appear or that will always be thrown.
|
ControlFlowGraph<I,T> |
getCFG()
Returns the result of the analysis: A control flow graph where impossible
control flow has been removed.
|
NullPointerState |
getState(T bb)
Returns the state of a node.
|
boolean |
hasExceptions()
Returns true if the corresponding method contains instructions that may
throw an exception which is not caught in the same method.
|
int compute(MonitorUtil.IProgressMonitor progress) throws GraphIntegrity.UnsoundGraphException, CancelException
progress
- A progress monitor that is used to display the progress of the
analysis. It can also be used to detect a cancel request from the
user. The common behavior is to cancel the method if
progress.isCanceled() is true by throwing a CancelException.GraphIntegrity.UnsoundGraphException
- Thrown if the original CFG contains inconsistencies.CancelException
- Thrown if the user requested cancellation through the progress
monitor.ControlFlowGraph<I,T> getCFG()
boolean hasExceptions()
NullPointerState getState(T bb)
bb
- Node