Package proguard.evaluation.value
Class DetailedArrayReferenceValue
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
proguard.evaluation.value.DetailedArrayReferenceValue
This
IdentifiedArrayReferenceValue represents an identified array reference value with
its elements.-
Field Summary
Fields inherited from class proguard.evaluation.value.IdentifiedArrayReferenceValue
id, valuefactoryFields inherited from class proguard.evaluation.value.ArrayReferenceValue
arrayLengthFields 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 -
Method Summary
Modifier and TypeMethodDescriptionvoidarrayStore(IntegerValue indexValue, Value value) Stores the given value at the given index in the given array, assuming this type is an array.Creates a deep copy of the DetailedArrayReferenceValue.static Optional<DetailedArrayReferenceValue>create(String type, Clazz referencedClass, boolean mayBeExtension, IntegerValue arrayLength, ValueFactory valuefactory, int id) If possible it will create a new array reference value with the given ID, otherwise an empty optional is returneddoubleArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an double array.intequal(ReferenceValue other) Returns whether this ReferenceValue is equal to the given other ReferenceValue.booleanfloatArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an float array.generalize(ReferenceValue other) Returns the generalization of this ReferenceValue and the given other ReferenceValue.@NotNull AnalyzedObjectgetValue()inthashCode()integerArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an integer array.booleanReturns whether this Value represents a single particular (known) value.longArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an long array.referenceArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is a reference array.toString()value()Deprecated.Methods inherited from class proguard.evaluation.value.IdentifiedArrayReferenceValue
equal, generalize, isSpecificMethods inherited from class proguard.evaluation.value.ArrayReferenceValue
arrayLength, equal, generalizeMethods inherited from class proguard.evaluation.value.TypedReferenceValue
allowsIncompleteClassHierarchy, cast, equal, generalize, generalizeMayBeNull, getReferencedClass, getType, instanceOf, internalType, isNull, mayBeExtensionMethods inherited from class proguard.evaluation.value.ReferenceValue
computationalType, equal, equal, equal, equal, equal, equal, generalize, generalize, generalize, generalize, generalize, generalize, generalize, isNotNull, notEqual, referenceValueMethods inherited from class proguard.evaluation.value.Category1Value
category1Value, isCategory2Methods inherited from class proguard.evaluation.value.Value
category2Value, doubleValue, floatValue, instructionOffsetValue, integerValue, longValue
-
Method Details
-
value
Deprecated.Deprecated, usegetValue().- Overrides:
valuein classReferenceValue
-
getValue
- Overrides:
getValuein classReferenceValue
-
integerArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is an integer array.- Overrides:
integerArrayLoadin classTypedReferenceValue
-
longArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is an long array.- Overrides:
longArrayLoadin classTypedReferenceValue
-
floatArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is an float array.- Overrides:
floatArrayLoadin classTypedReferenceValue
-
doubleArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is an double array.- Overrides:
doubleArrayLoadin classTypedReferenceValue
-
referenceArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is a reference array.- Overrides:
referenceArrayLoadin classTypedReferenceValue
-
arrayStore
Description copied from class:ReferenceValueStores the given value at the given index in the given array, assuming this type is an array.- Overrides:
arrayStorein classTypedReferenceValue
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other ReferenceValue.- Overrides:
generalizein classIdentifiedArrayReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other ReferenceValue.- Overrides:
equalin classIdentifiedArrayReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
isParticular
public boolean isParticular()Description copied from class:ValueReturns whether this Value represents a single particular (known) value.- Overrides:
isParticularin classTypedReferenceValue
-
copyIfMutable
Creates a deep copy of the DetailedArrayReferenceValue.- Overrides:
copyIfMutablein classValue
-
equals
- Overrides:
equalsin classIdentifiedArrayReferenceValue
-
hashCode
public int hashCode()- Overrides:
hashCodein classIdentifiedArrayReferenceValue
-
toString
- Overrides:
toStringin classIdentifiedArrayReferenceValue
-
create
public static Optional<DetailedArrayReferenceValue> create(String type, Clazz referencedClass, boolean mayBeExtension, IntegerValue arrayLength, ValueFactory valuefactory, int id) If possible it will create a new array reference value with the given ID, otherwise an empty optional is returned
-