Interface RefinementPolicy

All Known Implementing Classes:
AbstractRefinementPolicy, ManualRefinementPolicy, SinglePassRefinementPolicy, TunedRefinementPolicy

public interface RefinementPolicy
A complete refinement policy for a points-to analysis. Specifies a FieldRefinePolicy, a CallGraphRefinePolicy, and budgets for analysis passes.
Author:
Manu Sridharan
  • Method Details

    • getNumPasses

      int getNumPasses()
      Returns:
      the maximum number of refinement iterations for the query
    • getBudgetForPass

      int getBudgetForPass(int passNum)
      Returns:
      the maximum number of nodes to traverse in pass passNum
    • getFieldRefinePolicy

      FieldRefinePolicy getFieldRefinePolicy()
      Returns:
      the field refinement policy
    • getCallGraphRefinePolicy

      CallGraphRefinePolicy getCallGraphRefinePolicy()
      Returns:
      the call graph refinement policy
    • nextPass

      boolean nextPass()
      Returns:
      true if more refinement can be done, and hence another pass can be attempted; false otherwise