public class ConstantContextSensitiveObject extends ContextSensitiveAnalysisObject
AnalysisObject.AnalysisObjectKindarrayElementsTypeStore, EMPTY_ARRAY, id, instanceFieldsTypeStore, kind, merged, objectsTypeComparator, type| Constructor and Description |
|---|
ConstantContextSensitiveObject(PointsToAnalysis bb,
AnalysisType type)
Constructor used for the merged constant object, i.e., after the number of individual
constant objects for a type has reached the maximum number of recorded constants threshold.
|
ConstantContextSensitiveObject(PointsToAnalysis bb,
AnalysisType type,
JavaConstant constant) |
| Modifier and Type | Method and Description |
|---|---|
JavaConstant |
asConstant() |
protected List<AnalysisObject> |
getAllObjectsMergedWith()
This returns all the objects this object was ever merged with.
|
boolean |
isEmptyObjectArrayConstant(PointsToAnalysis bb)
Check if a constant object wraps the empty array constant, e.g.
|
boolean |
isMergedConstantObject()
Test if this is the merged constant object for its type.
|
void |
noteMerge(PointsToAnalysis bb)
The object has been in contact with an context insensitive object in an union operation.
|
void |
setMergedWithUniqueConstantObject() |
String |
toString() |
getArrayElementsFlow, getInstanceFieldFilterFlow, getInstanceFieldFlow, linkFieldFlows, mergeInstanceFieldFlow, mergeInstanceFieldsFlowscompareTo, equals, getArrayElementsTypeStore, getId, getInstanceFieldFlow, getTypeId, getUnsafeWriteSinkFrozenFilterFlow, hashCode, isAllocationContextSensitiveObject, isContextInsensitiveObject, isEmptyObjectArrayConstant, isObjectArray, isPrimitiveArray, prefix, typepublic ConstantContextSensitiveObject(PointsToAnalysis bb, AnalysisType type)
public ConstantContextSensitiveObject(PointsToAnalysis bb, AnalysisType type, JavaConstant constant)
public JavaConstant asConstant()
asConstant in class AnalysisObjectpublic boolean isMergedConstantObject()
public void setMergedWithUniqueConstantObject()
public void noteMerge(PointsToAnalysis bb)
noteMerge in class ContextSensitiveAnalysisObjectprotected List<AnalysisObject> getAllObjectsMergedWith()
ContextSensitiveAnalysisObjectgetAllObjectsMergedWith in class ContextSensitiveAnalysisObjectpublic boolean isEmptyObjectArrayConstant(PointsToAnalysis bb)
AnalysisObject static final Object[]
EMPTY_ELEMENTDATA = {} for ArrayList;isEmptyObjectArrayConstant in class AnalysisObjectpublic String toString()
toString in class AnalysisObject