| java.lang.Object edu.umd.cs.findbugs.ba.BasicAbstractDataflowAnalysis
BasicAbstractDataflowAnalysis | abstract public class BasicAbstractDataflowAnalysis implements DataflowAnalysis<Fact>(Code) | | A useful starting point for defining a dataflow analysis.
Handles access and caching of start and result facts for
basic blocks.
Subclasses that model instructions within basic blocks
should extend AbstractDataflowAnalysis.
author: David Hovemeyer |
BasicAbstractDataflowAnalysis | public BasicAbstractDataflowAnalysis()(Code) | | Constructor.
|
finishIteration | public void finishIteration()(Code) | | |
getFactAfterLocation | public Fact getFactAfterLocation(Location location) throws DataflowAnalysisException(Code) | | Get the dataflow fact representing the point just after given Location.
Note "after" is meant in the logical sense, so for backward analyses,
after means before the location in the control flow sense.
The default implementation ignores instructions within basic blocks.
Subclasses that model individual instructions must override this method.
Parameters: location - the Location the dataflow value after given Location throws: DataflowAnalysisException - |
getFactAtLocation | public Fact getFactAtLocation(Location location) throws DataflowAnalysisException(Code) | | Get dataflow fact at (just before) given Location.
Note "before" is meant in the logical sense, so for backward analyses,
before means after the location in the control flow sense.
The default implementation ignores instructions within basic blocks.
Subclasses that model individual instructions must override this method.
Parameters: location - the Location the dataflow value at given Location throws: DataflowAnalysisException - |
getFactOnEdge | public Fact getFactOnEdge(Edge edge) throws DataflowAnalysisException(Code) | | Get the fact that is true on the given control edge,
after applying the edge transfer function (if any).
Parameters: edge - the edge the fact that is true after applying the edge transfer function throws: DataflowAnalysisException - |
getLastUpdateTimestamp | public int getLastUpdateTimestamp(Fact fact)(Code) | | |
resultFactIterator | public Iterator<Fact> resultFactIterator()(Code) | | Get an iterator over the result facts.
|
setLastUpdateTimestamp | public void setLastUpdateTimestamp(Fact fact, int lastUpdateTimestamp)(Code) | | |
startIteration | public void startIteration()(Code) | | |
|
|