Package proguard.evaluation.value
Class IdentifiedArrayReferenceValue
- java.lang.Object
-
- proguard.evaluation.value.Value
-
- proguard.evaluation.value.Category1Value
-
- proguard.evaluation.value.ReferenceValue
-
- proguard.evaluation.value.TypedReferenceValue
-
- proguard.evaluation.value.ArrayReferenceValue
-
- proguard.evaluation.value.IdentifiedArrayReferenceValue
-
- Direct Known Subclasses:
DetailedArrayReferenceValue
public class IdentifiedArrayReferenceValue extends ArrayReferenceValue
ThisArrayReferenceValue
represents an array reference value that is identified by a unique ID.
-
-
Field Summary
Fields Modifier and Type Field Description int
id
protected ValueFactory
valuefactory
-
Fields inherited from class proguard.evaluation.value.ArrayReferenceValue
arrayLength
-
Fields inherited from class proguard.evaluation.value.TypedReferenceValue
ALLOW_INCOMPLETE_CLASS_HIERARCHY, INCOMPLETE_CLASS_HIERARCHY, mayBeExtension, mayBeNull, referencedClass, type, WARN_INCOMPLETE_CLASS_HIERARCHY
-
Fields inherited from class proguard.evaluation.value.Value
ALWAYS, MAYBE, NEVER, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INSTRUCTION_OFFSET, TYPE_INTEGER, TYPE_LONG, TYPE_REFERENCE, TYPE_TOP, TYPE_UNKNOWN
-
-
Constructor Summary
Constructors Constructor Description IdentifiedArrayReferenceValue(java.lang.String type, Clazz referencedClass, boolean mayBeExtension, IntegerValue arrayLength, ValueFactory valuefactory, int id)
Creates a new array reference value with the given ID.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
equal(IdentifiedArrayReferenceValue other)
Returns whether this ReferenceValue is equal to the given other IdentifiedArrayReferenceValue.int
equal(ReferenceValue other)
Returns whether this ReferenceValue is equal to the given other ReferenceValue.boolean
equals(java.lang.Object object)
ReferenceValue
generalize(IdentifiedArrayReferenceValue other)
Returns the generalization of this ReferenceValue and the given other IdentifiedArrayReferenceValue.ReferenceValue
generalize(ReferenceValue other)
Returns the generalization of this ReferenceValue and the given other ReferenceValue.int
hashCode()
boolean
isSpecific()
Returns whether this Value represents a single specific (but possibly unknown) value.java.lang.String
toString()
-
Methods inherited from class proguard.evaluation.value.ArrayReferenceValue
arrayLength, equal, generalize
-
Methods inherited from class proguard.evaluation.value.TypedReferenceValue
allowsIncompleteClassHierarchy, arrayStore, cast, doubleArrayLoad, equal, floatArrayLoad, generalize, generalizeMayBeNull, getReferencedClass, getType, instanceOf, integerArrayLoad, internalType, isNull, isParticular, longArrayLoad, mayBeExtension, referenceArrayLoad
-
Methods inherited from class proguard.evaluation.value.ReferenceValue
computationalType, equal, equal, equal, equal, equal, equal, generalize, generalize, generalize, generalize, generalize, generalize, generalize, getValue, isNotNull, notEqual, referenceValue, value
-
Methods inherited from class proguard.evaluation.value.Category1Value
category1Value, isCategory2
-
Methods inherited from class proguard.evaluation.value.Value
category2Value, copyIfMutable, doubleValue, floatValue, instructionOffsetValue, integerValue, longValue
-
-
-
-
Field Detail
-
valuefactory
protected final ValueFactory valuefactory
-
id
public final int id
-
-
Constructor Detail
-
IdentifiedArrayReferenceValue
public IdentifiedArrayReferenceValue(java.lang.String type, Clazz referencedClass, boolean mayBeExtension, IntegerValue arrayLength, ValueFactory valuefactory, int id)
Creates a new array reference value with the given ID.
-
-
Method Detail
-
generalize
public ReferenceValue generalize(ReferenceValue other)
Description copied from class:ReferenceValue
Returns the generalization of this ReferenceValue and the given other ReferenceValue.- Overrides:
generalize
in classArrayReferenceValue
-
equal
public int equal(ReferenceValue other)
Description copied from class:ReferenceValue
Returns whether this ReferenceValue is equal to the given other ReferenceValue.- Overrides:
equal
in classArrayReferenceValue
- Returns:
NEVER
,MAYBE
, orALWAYS
.
-
generalize
public ReferenceValue generalize(IdentifiedArrayReferenceValue other)
Description copied from class:ReferenceValue
Returns the generalization of this ReferenceValue and the given other IdentifiedArrayReferenceValue.- Overrides:
generalize
in classReferenceValue
-
equal
public int equal(IdentifiedArrayReferenceValue other)
Description copied from class:ReferenceValue
Returns whether this ReferenceValue is equal to the given other IdentifiedArrayReferenceValue.- Overrides:
equal
in classReferenceValue
- Returns:
NEVER
,MAYBE
, orALWAYS
.
-
isSpecific
public boolean isSpecific()
Description copied from class:Value
Returns whether this Value represents a single specific (but possibly unknown) value.- Overrides:
isSpecific
in classValue
-
equals
public boolean equals(java.lang.Object object)
- Overrides:
equals
in classArrayReferenceValue
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classArrayReferenceValue
-
toString
public java.lang.String toString()
- Overrides:
toString
in classArrayReferenceValue
-
-