public class Dataflow<Fact,AnalysisType extends DataflowAnalysis<Fact>>
extends java.lang.Object
CFG
,
DataflowAnalysis
Modifier and Type | Field and Description |
---|---|
static boolean |
DEBUG |
Constructor and Description |
---|
Dataflow(CFG cfg,
AnalysisType analysis)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
dumpDataflow(AnalysisType analysis) |
void |
execute()
Run the algorithm.
|
AnalysisType |
getAnalysis()
Get the analysis object.
|
CFG |
getCFG()
Get the CFG object.
|
Fact |
getFactAfterLocation(Location location)
Get the dataflow fact representing the point just after given Location.
|
Fact |
getFactAtLocation(Location location)
Get dataflow fact at (just before) given Location.
|
Fact |
getFactOnEdge(Edge edge)
Get the fact that is true on the given control edge.
|
int |
getNumIterations()
Return the number of iterations of the main execution loop.
|
Fact |
getResultFact(BasicBlock block)
Get dataflow facts for end of given block.
|
Fact |
getStartFact(BasicBlock block)
Get dataflow facts for start of given block.
|
public Dataflow(CFG cfg, AnalysisType analysis)
cfg
- the control flow graphanalysis
- the DataflowAnalysis to be runpublic void execute() throws DataflowAnalysisException
DataflowAnalysisException
public int getNumIterations()
public Fact getStartFact(BasicBlock block)
public Fact getResultFact(BasicBlock block)
public Fact getFactAtLocation(Location location) throws DataflowAnalysisException
location
- the LocationDataflowAnalysisException
public Fact getFactAfterLocation(Location location) throws DataflowAnalysisException
location
- the LocationDataflowAnalysisException
public Fact getFactOnEdge(Edge edge) throws DataflowAnalysisException
edge
- the edgeDataflowAnalysisException
public AnalysisType getAnalysis()
public CFG getCFG()
public void dumpDataflow(AnalysisType analysis)
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.