public abstract class AbstractRefinementPolicy extends java.lang.Object implements RefinementPolicy
RefinementPolicy implementation, delegating to some provided FieldRefinePolicy and CallGraphRefinePolicy| Modifier and Type | Field and Description |
|---|---|
protected int[] |
budgetPerPass |
protected CallGraphRefinePolicy |
cgRefinePolicy |
protected static int |
DEFAULT_NUM_PASSES |
protected FieldRefinePolicy |
fieldRefinePolicy |
protected static int |
LONGER_PASS_BUDGET |
protected int |
numPasses |
| Constructor and Description |
|---|
AbstractRefinementPolicy(FieldRefinePolicy fieldRefinePolicy,
CallGraphRefinePolicy cgRefinePolicy) |
AbstractRefinementPolicy(FieldRefinePolicy fieldRefinePolicy,
CallGraphRefinePolicy cgRefinePolicy,
int numPasses,
int[] budgetPerPass) |
| Modifier and Type | Method and Description |
|---|---|
int |
getBudgetForPass(int passNum) |
CallGraphRefinePolicy |
getCallGraphRefinePolicy() |
FieldRefinePolicy |
getFieldRefinePolicy() |
int |
getNumPasses() |
boolean |
nextPass() |
protected static final int DEFAULT_NUM_PASSES
protected static final int LONGER_PASS_BUDGET
protected final FieldRefinePolicy fieldRefinePolicy
protected final CallGraphRefinePolicy cgRefinePolicy
protected final int numPasses
protected final int[] budgetPerPass
public AbstractRefinementPolicy(FieldRefinePolicy fieldRefinePolicy, CallGraphRefinePolicy cgRefinePolicy, int numPasses, int[] budgetPerPass)
public AbstractRefinementPolicy(FieldRefinePolicy fieldRefinePolicy, CallGraphRefinePolicy cgRefinePolicy)
public int getBudgetForPass(int passNum)
getBudgetForPass in interface RefinementPolicypassNumpublic CallGraphRefinePolicy getCallGraphRefinePolicy()
getCallGraphRefinePolicy in interface RefinementPolicypublic FieldRefinePolicy getFieldRefinePolicy()
getFieldRefinePolicy in interface RefinementPolicypublic int getNumPasses()
getNumPasses in interface RefinementPolicypublic boolean nextPass()
nextPass in interface RefinementPolicytrue if more refinement can be done, and hence another pass can be attempted;
false otherwise