Class PointsToSetVariable
java.lang.Object
com.ibm.wala.util.graph.impl.NodeWithNumber
com.ibm.wala.fixpoint.AbstractVariable<PointsToSetVariable>
com.ibm.wala.fixpoint.IntSetVariable<PointsToSetVariable>
com.ibm.wala.ipa.callgraph.propagation.PointsToSetVariable
- All Implemented Interfaces:
IVariable<PointsToSetVariable>, INodeWithNumber
Representation of a points-to set during an andersen-style analysis.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final booleanif set, emits a warning whenever a points-to set grows bigger thanSIZE_THRESHOLDstatic MutableMapping<InstanceKey> used only for paranoid checking.static final booleanif set, check that all instance keys in a points-to set are consistent with the type of the corresponding pointer keystatic final intstatic final booleanPrint names of types of instance keys -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanadd(int b) Set a particular bitbooleanaddAll(PointsToSetVariable other) Add all integers from the other int set variable.booleanAdd all integers from the set BbooleanvoidsetPointerKey(PointerKey pointerKey) Use this with extreme care, to add filters to this variable..toString()Methods inherited from class IntSetVariable
addAllInIntersection, addAllInIntersection, contains, containsAny, copyState, getValue, remove, removeAll, sameValue, sizeMethods inherited from class AbstractVariable
getOrderNumber, hashCode, nextHash, setOrderNumberMethods inherited from class NodeWithNumber
getGraphNodeId, setGraphNodeIdMethods inherited from interface INodeWithNumber
getGraphNodeId, setGraphNodeId
-
Field Details
-
CRY_ABOUT_BIG_POINTSTO_SETS
public static final boolean CRY_ABOUT_BIG_POINTSTO_SETSif set, emits a warning whenever a points-to set grows bigger thanSIZE_THRESHOLD- See Also:
-
SIZE_THRESHOLD
public static final int SIZE_THRESHOLD- See Also:
-
PARANOID
public static final boolean PARANOIDif set, check that all instance keys in a points-to set are consistent with the type of the corresponding pointer key- See Also:
-
VERBOSE_PRINT
public static final boolean VERBOSE_PRINTPrint names of types of instance keys- See Also:
-
instanceKeys
used only for paranoid checking. a bit ugly, but avoids adding an instance field just for debugging
-
-
Constructor Details
-
PointsToSetVariable
-
-
Method Details
-
getPointerKey
-
equals
- Overrides:
equalsin classAbstractVariable<PointsToSetVariable>
-
add
public boolean add(int b) Description copied from class:IntSetVariableSet a particular bit- Overrides:
addin classIntSetVariable<PointsToSetVariable>- Parameters:
b- the bit to set
-
addAll
Description copied from class:IntSetVariableAdd all integers from the set B- Overrides:
addAllin classIntSetVariable<PointsToSetVariable>- Returns:
- true iff the value of this changes
-
addAll
Description copied from class:IntSetVariableAdd all integers from the other int set variable.- Overrides:
addAllin classIntSetVariable<PointsToSetVariable>- Returns:
- true iff the contents of this variable changes.
-
setPointerKey
Use this with extreme care, to add filters to this variable..- Parameters:
pointerKey- The pointerKey to set.
-
toString
- Overrides:
toStringin classIntSetVariable<PointsToSetVariable>
-