Package edu.umd.cs.findbugs.ba
Class ForwardDataflowAnalysis<Fact>
- java.lang.Object
-
- edu.umd.cs.findbugs.ba.BasicAbstractDataflowAnalysis<Fact>
-
- edu.umd.cs.findbugs.ba.AbstractDataflowAnalysis<Fact>
-
- edu.umd.cs.findbugs.ba.ForwardDataflowAnalysis<Fact>
-
- All Implemented Interfaces:
DataflowAnalysis<Fact>
- Direct Known Subclasses:
FieldSetAnalysis,FrameDataflowAnalysis,LockAnalysis,ObligationAnalysis,ReturnPathAnalysis,StackDepthAnalysis
public abstract class ForwardDataflowAnalysis<Fact> extends AbstractDataflowAnalysis<Fact>
Abstract base class for forward dataflow analyses. Provides convenient implementations for isForwards() and getBlockOrder() methods.- See Also:
Dataflow,DataflowAnalysis
-
-
Field Summary
Fields Modifier and Type Field Description private DepthFirstSearchdfs
-
Constructor Summary
Constructors Modifier Constructor Description protectedForwardDataflowAnalysis(DepthFirstSearch dfs)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BlockOrdergetBlockOrder(CFG cfg)Return the BlockOrder specifying the order in which BasicBlocks should be visited in the main dataflow loop.protected DepthFirstSearchgetDepthFirstSearch()booleanisForwards()Returns true if the analysis is forwards, false if backwards.-
Methods inherited from class edu.umd.cs.findbugs.ba.AbstractDataflowAnalysis
getFactAfterLocation, getFactAtLocation, isFactValid, transfer, transferInstruction
-
Methods inherited from class edu.umd.cs.findbugs.ba.BasicAbstractDataflowAnalysis
edgeTransfer, factToString, finishIteration, getFactOnEdge, getLastUpdateTimestamp, getResultFact, getStartFact, resultFactIterator, setLastUpdateTimestamp, startIteration
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface edu.umd.cs.findbugs.ba.DataflowAnalysis
copy, createFact, initEntryFact, isTop, makeFactTop, meetInto, same
-
-
-
-
Field Detail
-
dfs
private final DepthFirstSearch dfs
-
-
Constructor Detail
-
ForwardDataflowAnalysis
protected ForwardDataflowAnalysis(DepthFirstSearch dfs)
-
-
Method Detail
-
getDepthFirstSearch
protected DepthFirstSearch getDepthFirstSearch()
-
isForwards
public boolean isForwards()
Description copied from interface:DataflowAnalysisReturns true if the analysis is forwards, false if backwards.
-
getBlockOrder
public BlockOrder getBlockOrder(CFG cfg)
Description copied from interface:DataflowAnalysisReturn the BlockOrder specifying the order in which BasicBlocks should be visited in the main dataflow loop.- Parameters:
cfg- the CFG upon which we're performing dataflow analysis
-
-