edu.umd.cs.findbugs.ba
Class PruneInfeasibleExceptionEdges
public
class
PruneInfeasibleExceptionEdges
extends Object
implements EdgeTypes
Prune a CFG to remove infeasible exception edges.
In order to determine what kinds of exceptions can be thrown by
explicit ATHROW instructions, type analysis must first be
performed on the unpruned CFG.
Author: David Hovemeyer
See Also: CFG TypeAnalysis
public PruneInfeasibleExceptionEdges(
CFG cfg, MethodGen methodGen,
TypeDataflow typeDataflow)
Constructor.
Parameters: cfg the CFG to prune methodGen the method typeDataflow initialized TypeDataflow object for the CFG,
indicating the types of all stack locations
public void execute()
Prune infeasible exception edges from the CFG.
If the method returns normally, then the operation
was successful, and the CFG should no longer contain infeasible
exception edges. If ClassNotFoundException or DataflowAnalysisException
are thrown, then the operation was unsuccessful,
but the CFG is still valid because it was not modified.
If a runtime exception is thrown, then the CFG may be
partially modified and should be considered invalid.
public boolean wasCFGModified()
Returns: true if modified
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.