Class 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.
Author:
David Hovemeyer
See Also:
  • Constructor Details

    • ForwardDataflowAnalysis

      public ForwardDataflowAnalysis(DepthFirstSearch dfs)
  • Method Details

    • getDepthFirstSearch

      protected DepthFirstSearch getDepthFirstSearch()
    • 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