Package proguard.evaluation.value
Class ArrayReferenceValue
java.lang.Object
proguard.evaluation.value.Value
proguard.evaluation.value.Category1Value
proguard.evaluation.value.ReferenceValue
proguard.evaluation.value.TypedReferenceValue
proguard.evaluation.value.ArrayReferenceValue
- Direct Known Subclasses:
IdentifiedArrayReferenceValue
This
ReferenceValue represents a partially evaluated array. It has an array length and
possibly array values (up to a fixed maximum number). It is not immutable.-
Field Summary
FieldsFields inherited from class proguard.evaluation.value.TypedReferenceValue
ALLOW_INCOMPLETE_CLASS_HIERARCHY, INCOMPLETE_CLASS_HIERARCHY, mayBeExtension, mayBeNull, referencedClass, type, WARN_INCOMPLETE_CLASS_HIERARCHYFields 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
ConstructorsConstructorDescriptionArrayReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, IntegerValue arrayLength) Creates a new ArrayReferenceValue. -
Method Summary
Modifier and TypeMethodDescriptionarrayLength(ValueFactory valueFactory) Returns the length of the array, assuming this type is an array.intequal(ArrayReferenceValue other) Returns whether this ReferenceValue is equal to the given other ArrayReferenceValue.intequal(ReferenceValue other) Returns whether this ReferenceValue is equal to the given other ReferenceValue.booleangeneralize(ArrayReferenceValue other) Returns the generalization of this ReferenceValue and the given other ArrayReferenceValue.generalize(ReferenceValue other) Returns the generalization of this ReferenceValue and the given other ReferenceValue.inthashCode()toString()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, referenceArrayLoadMethods inherited from class proguard.evaluation.value.ReferenceValue
computationalType, equal, equal, equal, equal, equal, equal, equal, generalize, generalize, generalize, generalize, generalize, generalize, generalize, generalize, getValue, isNotNull, notEqual, referenceValue, valueMethods inherited from class proguard.evaluation.value.Category1Value
category1Value, isCategory2Methods inherited from class proguard.evaluation.value.Value
category2Value, copyIfMutable, doubleValue, floatValue, instructionOffsetValue, integerValue, isSpecific, longValue
-
Field Details
-
arrayLength
-
-
Constructor Details
-
ArrayReferenceValue
public ArrayReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, IntegerValue arrayLength) Creates a new ArrayReferenceValue.
-
-
Method Details
-
arrayLength
Description copied from class:ReferenceValueReturns the length of the array, assuming this type is an array.- Overrides:
arrayLengthin classReferenceValue
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other ReferenceValue.- Overrides:
generalizein classTypedReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other ReferenceValue.- Overrides:
equalin classTypedReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other ArrayReferenceValue.- Overrides:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other ArrayReferenceValue.- Overrides:
equalin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
equals
- Overrides:
equalsin classTypedReferenceValue
-
hashCode
public int hashCode()- Overrides:
hashCodein classTypedReferenceValue
-
toString
- Overrides:
toStringin classTypedReferenceValue
-