Interface RefinementPolicy
-
- All Known Implementing Classes:
AbstractRefinementPolicy
,ManualRefinementPolicy
,SinglePassRefinementPolicy
,TunedRefinementPolicy
public interface RefinementPolicy
A complete refinement policy for a points-to analysis. Specifies aFieldRefinePolicy
, aCallGraphRefinePolicy
, and budgets for analysis passes.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
getBudgetForPass(int passNum)
CallGraphRefinePolicy
getCallGraphRefinePolicy()
FieldRefinePolicy
getFieldRefinePolicy()
int
getNumPasses()
boolean
nextPass()
-
-
-
Method Detail
-
getNumPasses
int getNumPasses()
- Returns:
- the maximum number of refinement iterations for the query
-
getBudgetForPass
int getBudgetForPass(int passNum)
- Parameters:
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
-
-