Package edu.umd.cs.findbugs.ba
Class BackwardDataflowAnalysis<Fact>
java.lang.Object
edu.umd.cs.findbugs.ba.BasicAbstractDataflowAnalysis<Fact>
edu.umd.cs.findbugs.ba.AbstractDataflowAnalysis<Fact>
edu.umd.cs.findbugs.ba.BackwardDataflowAnalysis<Fact>
- All Implemented Interfaces:
DataflowAnalysis<Fact>
- Direct Known Subclasses:
LiveLocalStoreAnalysis
,UnconditionalValueDerefAnalysis
Abstract base class for backward dataflow analyses. Provides convenient
implementations for isForwards() and getBlockOrder() methods.
- Author:
- David Hovemeyer
- See Also:
-
Constructor Summary
ConstructorDescription -
Method Summary
Modifier and TypeMethodDescriptiongetBlockOrder
(CFG cfg) Return the BlockOrder specifying the order in which BasicBlocks should be visited in the main dataflow loop.protected ReverseDepthFirstSearch
boolean
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
-
Constructor Details
-
BackwardDataflowAnalysis
-
-
Method Details
-
getReverseDepthFirstSearch
-
isForwards
public boolean isForwards()Description copied from interface:DataflowAnalysis
Returns true if the analysis is forwards, false if backwards. -
getBlockOrder
Description copied from interface:DataflowAnalysis
Return 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
-