Class DelegatingFieldRefinePolicy
java.lang.Object
com.ibm.wala.demandpa.alg.refinepolicy.DelegatingFieldRefinePolicy
- All Implemented Interfaces:
FieldRefinePolicy
A field refine policy that first checks with A, then delegates to B
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleannextPass()booleanshouldRefine(IField field, PointerKey basePtr, PointerKey val, IFlowLabel label, StateMachine.State state) returnstrueifA.shouldRefine(field) || B.shouldRefine(field).
-
Constructor Details
-
DelegatingFieldRefinePolicy
-
-
Method Details
-
nextPass
public boolean nextPass()- Specified by:
nextPassin interfaceFieldRefinePolicy- Returns:
trueif more refinement can be done, and hence another pass can be attempted;falseotherwise
-
shouldRefine
public boolean shouldRefine(IField field, PointerKey basePtr, PointerKey val, IFlowLabel label, StateMachine.State state) returnstrueifA.shouldRefine(field) || B.shouldRefine(field). Note that ifA.shouldRefine(field)istrue,B.shouldRefine(field)is not called.- Specified by:
shouldRefinein interfaceFieldRefinePolicy- Parameters:
field- the accessed fieldbasePtr- the base pointer of the access- Returns:
trueif match edges for the field access should be refined. Otherwise,falseis returned, indicating that the field can be handled with match edges.
-