Interface ForwardAnalysis<V extends AbstractValue<V>,S extends Store<S>,T extends ForwardTransferFunction<V,S>>

Type Parameters:
V - the abstract value type to be tracked by the analysis
S - the store type used in the analysis
T - the forward transfer function type that is used to approximated runtime behavior
All Superinterfaces:
Analysis<V,S,T>
All Known Implementing Classes:
AccumulationAnalysis, CalledMethodsAnalysis, CFAbstractAnalysis, CFAnalysis, ForwardAnalysisImpl, InitializationAnalysis, KeyForAnalysis, LockAnalysis, NullnessNoInitAnalysis, ResourceLeakAnalysis

public interface ForwardAnalysis<V extends AbstractValue<V>,S extends Store<S>,T extends ForwardTransferFunction<V,S>> extends Analysis<V,S,T>
This interface defines a forward analysis, given a control flow graph and a forward transfer function.
  • Method Details

    • getReturnStatementStores

      List<org.plumelib.util.IPair<ReturnNode,@Nullable TransferResult<V,S>>> getReturnStatementStores()
      Get stores at return statements. These stores are transfer results at return node. Thus for a forward analysis, these stores contain the analyzed flow information from entry nodes to return nodes.
      Returns:
      the transfer results for each return node in the CFG