FindBugs™ 1.3.9

edu.umd.cs.findbugs.ba
Class PostDominatorsAnalysis

java.lang.Object
  extended by edu.umd.cs.findbugs.ba.BasicAbstractDataflowAnalysis<java.util.BitSet>
      extended by edu.umd.cs.findbugs.ba.AbstractDominatorsAnalysis
          extended by edu.umd.cs.findbugs.ba.PostDominatorsAnalysis
All Implemented Interfaces:
DataflowAnalysis<java.util.BitSet>
Direct Known Subclasses:
NonExceptionPostdominatorsAnalysis, NonImplicitExceptionPostDominatorsAnalysis

public class PostDominatorsAnalysis
extends AbstractDominatorsAnalysis

Dataflow analysis to compute postdominator sets for a CFG.

Author:
David Hovemeyer
See Also:
CFG, AbstractDominatorsAnalysis

Constructor Summary
protected PostDominatorsAnalysis(CFG cfg, ReverseDepthFirstSearch rdfs, DepthFirstSearch dfs, boolean ignoreExceptionEdges)
          Constructor.
protected PostDominatorsAnalysis(CFG cfg, ReverseDepthFirstSearch rdfs, DepthFirstSearch dfs, EdgeChooser edgeChooser)
          Constructor.
 
Method Summary
 BlockOrder getBlockOrder(CFG cfg)
          Return the BlockOrder specifying the order in which BasicBlocks should be visited in the main dataflow loop.
 boolean isForwards()
          Returns true if the analysis is forwards, false if backwards.
 
Methods inherited from class edu.umd.cs.findbugs.ba.AbstractDominatorsAnalysis
copy, createFact, getAllDominatedBy, getAllDominatorsOf, initEntryFact, isTop, makeFactTop, meetInto, same, transfer
 
Methods inherited from class edu.umd.cs.findbugs.ba.BasicAbstractDataflowAnalysis
edgeTransfer, factToString, finishIteration, getFactAfterLocation, getFactAtLocation, 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
 

Constructor Detail

PostDominatorsAnalysis

protected PostDominatorsAnalysis(CFG cfg,
                                 ReverseDepthFirstSearch rdfs,
                                 DepthFirstSearch dfs,
                                 EdgeChooser edgeChooser)
Constructor.

Parameters:
cfg - the CFG to compute dominator relationships for
rdfs - the ReverseDepthFirstSearch on the CFG
dfs - the DepthFirstSearch on the CFG
edgeChooser - EdgeChooser to choose which Edges to consider significant

PostDominatorsAnalysis

protected PostDominatorsAnalysis(CFG cfg,
                                 ReverseDepthFirstSearch rdfs,
                                 DepthFirstSearch dfs,
                                 boolean ignoreExceptionEdges)
Constructor.

Parameters:
cfg - the CFG to compute dominator relationships for
rdfs - the ReverseDepthFirstSearch on the CFG
dfs - the DepthFirstSearch on the CFG
ignoreExceptionEdges - true if exception edges should be ignored
Method Detail

isForwards

public boolean isForwards()
Description copied from interface: DataflowAnalysis
Returns true if the analysis is forwards, false if backwards.


getBlockOrder

public BlockOrder getBlockOrder(CFG cfg)
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

FindBugs™ 1.3.9

FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.