|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.umd.cs.findbugs.ba.PruneInfeasibleExceptionEdges
public class PruneInfeasibleExceptionEdges
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.
CFG
,
TypeAnalysis
Field Summary |
---|
Fields inherited from interface edu.umd.cs.findbugs.ba.EdgeTypes |
---|
BACKEDGE_SOURCE_EDGE, BACKEDGE_TARGET_EDGE, CHECKED_EXCEPTIONS_FLAG, EXIT_EDGE, EXPLICIT_EXCEPTIONS_FLAG, FALL_THROUGH_EDGE, GOTO_EDGE, HANDLED_EXCEPTION_EDGE, IFCMP_EDGE, JSR_EDGE, RET_EDGE, RETURN_EDGE, START_EDGE, SWITCH_DEFAULT_EDGE, SWITCH_EDGE, UNHANDLED_EXCEPTION_EDGE, UNKNOWN_EDGE |
Constructor Summary | |
---|---|
PruneInfeasibleExceptionEdges(CFG cfg,
org.apache.bcel.generic.MethodGen methodGen,
TypeDataflow typeDataflow)
Constructor. |
Method Summary | |
---|---|
void |
execute()
Prune infeasible exception edges from the CFG. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public PruneInfeasibleExceptionEdges(CFG cfg, org.apache.bcel.generic.MethodGen methodGen, TypeDataflow typeDataflow)
cfg
- the CFG to prunemethodGen
- the methodtypeDataflow
- initialized TypeDataflow object for the CFG,
indicating the types of all stack locationsMethod Detail |
---|
public void execute() throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |