Class AlwaysRefineFieldsPolicy

java.lang.Object
com.ibm.wala.demandpa.alg.refinepolicy.AlwaysRefineFieldsPolicy
All Implemented Interfaces:
FieldRefinePolicy

public class AlwaysRefineFieldsPolicy extends Object implements FieldRefinePolicy
A policy that always refines handling of field accesses by checking for an alias path corresponding to each match edge.
Author:
Manu Sridharan
  • Constructor Details

    • AlwaysRefineFieldsPolicy

      public AlwaysRefineFieldsPolicy()
  • Method Details

    • shouldRefine

      public boolean shouldRefine(IField field, PointerKey basePtr, PointerKey val, IFlowLabel label, StateMachine.State state)
      Specified by:
      shouldRefine in interface FieldRefinePolicy
      Parameters:
      field - the accessed field
      basePtr - the base pointer of the access
      Returns:
      true if match edges for the field access should be refined. Otherwise, false is returned, indicating that the field can be handled with match edges.
    • nextPass

      public boolean nextPass()
      Specified by:
      nextPass in interface FieldRefinePolicy
      Returns:
      true if more refinement can be done, and hence another pass can be attempted; false otherwise