Class PropagationCallGraphBuilder.InstanceArrayStoreOperator
java.lang.Object
com.ibm.wala.fixpoint.AbstractOperator<PointsToSetVariable>
com.ibm.wala.fixpoint.UnaryOperator<PointsToSetVariable>
com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.InstanceArrayStoreOperator
- All Implemented Interfaces:
FixedPointConstants, IPointerOperator
- Enclosing class:
PropagationCallGraphBuilder
public final class PropagationCallGraphBuilder.InstanceArrayStoreOperator
extends UnaryOperator<PointsToSetVariable>
implements IPointerOperator
Update the points-to-set for an array contents to include a particular instance key.
-
Field Summary
Fields inherited from interface FixedPointConstants
CHANGED, CHANGED_AND_FIXED, CHANGED_MASK, FIXED_MASK, NOT_CHANGED, NOT_CHANGED_AND_FIXED, SIDE_EFFECT_MASKModifier and TypeFieldDescriptionstatic final byteA return value which indicates that a lhs has changed, and the statement might need to be evaluated again.static final byteA return value which indicates that lhs has changed, and the statement need not be evaluated again.static final intThe bit-mask which defines the "CHANGED" flagstatic final intThe bit-mask which defines the "FIXED" flagstatic final byteA return value which indicates that lhs has not changed, and the statement might need to be evaluated again.static final byteA return value which indicates that lhs has not changed, and the statement need not be evaluated again.static final intThe bit-mask which defines the "SIDE EFFECT" flag -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanbyteevaluate(PointsToSetVariable dummyLHS, PointsToSetVariable arrayref) Simply add the instance to each relevant points-to set.inthashCode()booleanIs the operator complex; i.e., might it give rise to new constraints?toString()Methods inherited from class UnaryOperator
evaluate, isIdentity, makeEquationModifier and TypeMethodDescriptionbyteevaluate(PointsToSetVariable lhs, PointsToSetVariable[] rhs) Evaluate this equation, setting a new value for the left-hand side.booleanCreate an equation which uses this operator Override in subclasses for efficiency.
-
Constructor Details
-
InstanceArrayStoreOperator
-
-
Method Details
-
toString
- Specified by:
toStringin classAbstractOperator<PointsToSetVariable>
-
evaluate
Simply add the instance to each relevant points-to set.- Specified by:
evaluatein classUnaryOperator<PointsToSetVariable>- Returns:
- a constant defined by
FixedPointConstantsthat reflects whether the lhs value changed
-
hashCode
public int hashCode()- Specified by:
hashCodein classAbstractOperator<PointsToSetVariable>
-
equals
- Specified by:
equalsin classAbstractOperator<PointsToSetVariable>
-
isComplex
public boolean isComplex()Description copied from interface:IPointerOperatorIs the operator complex; i.e., might it give rise to new constraints?- Specified by:
isComplexin interfaceIPointerOperator
-