Package proguard.evaluation.value
Class TracedReferenceValue
java.lang.Object
proguard.evaluation.value.Value
proguard.evaluation.value.Category1Value
proguard.evaluation.value.ReferenceValue
proguard.evaluation.value.TracedReferenceValue
This
ReferenceValue represents a reference value that is tagged with a trace value.-
Field Summary
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
ConstructorsConstructorDescriptionTracedReferenceValue(ReferenceValue referenceValue, Value traceValue) Creates a new reference value with the given ID. -
Method Summary
Modifier and TypeMethodDescriptionarrayLength(ValueFactory valueFactory) Returns the length of the array, assuming this type is an array.voidarrayStore(IntegerValue indexValue, Value value) Stores the given value at the given index in the given array, assuming this type is an array.cast(String type, Clazz referencedClass, ValueFactory valueFactory, boolean alwaysCast) Returns this ReferenceValue, cast to the given type.doubleArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an double array.intequal(ArrayReferenceValue other) Returns whether this ReferenceValue is equal to the given other ArrayReferenceValue.intequal(DetailedArrayReferenceValue other) Returns whether this ReferenceValue is equal to the given other DetailedArrayReferenceValue.intReturns whether this ReferenceValue is equal to the given other IdentifiedArrayReferenceValue.intequal(IdentifiedReferenceValue other) Returns whether this ReferenceValue is equal to the given other IdentifiedReferenceValue.intequal(ReferenceValue other) Returns whether this ReferenceValue is equal to the given other ReferenceValue.intequal(TracedReferenceValue other) Returns whether this ReferenceValue is equal to the given other TracedReferenceValue.intequal(TypedReferenceValue other) Returns whether this ReferenceValue is equal to the given other TypedReferenceValue.intequal(UnknownReferenceValue other) Returns whether this ReferenceValue is equal to the given other UnknownReferenceValue.booleanfloatArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an float array.generalize(ArrayReferenceValue other) Returns the generalization of this ReferenceValue and the given other ArrayReferenceValue.Returns the generalization of this ReferenceValue and the given other DetailedArrayReferenceValue.Returns the generalization of this ReferenceValue and the given other IdentifiedArrayReferenceValue.Returns the generalization of this ReferenceValue and the given other IdentifiedReferenceValue.generalize(ReferenceValue other) Returns the generalization of this ReferenceValue and the given other ReferenceValue.generalize(TracedReferenceValue other) Returns the generalization of this ReferenceValue and the given other TracedReferenceValue.generalize(TypedReferenceValue other) Returns the generalization of this ReferenceValue and the given other TypedReferenceValue.generalize(UnknownReferenceValue other) Returns the generalization of this ReferenceValue and the given other UnknownReferenceValue.Returns the class that is referenced by the type.Returns the reference value.Returns the trace value.getType()Returns the type.inthashCode()intinstanceOf(String otherType, Clazz otherReferencedClass) Returns whether the type is an instance of the given type.integerArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an integer array.Returns the internal type of this Value.intisNull()Returns whether this ReferenceValue isnull.booleanReturns whether this Value represents a single particular (known) value.booleanReturns whether this Value represents a single specific (but possibly unknown) value.longArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is an long array.booleanReturns whether the actual type of this ReferenceValue may be an extension of its type.referenceArrayLoad(IntegerValue indexValue, ValueFactory valueFactory) Returns the value of the array at the given index, assuming this type is a reference array.toString()Methods inherited from class proguard.evaluation.value.ReferenceValue
computationalType, equal, equal, 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, longValue
-
Constructor Details
-
TracedReferenceValue
Creates a new reference value with the given ID.
-
-
Method Details
-
getReferenceValue
Returns the reference value. -
getTraceValue
Returns the trace value. -
getType
Description copied from class:ReferenceValueReturns the type.- Specified by:
getTypein classReferenceValue
-
getReferencedClass
Description copied from class:ReferenceValueReturns the class that is referenced by the type.- Specified by:
getReferencedClassin classReferenceValue
-
mayBeExtension
public boolean mayBeExtension()Description copied from class:ReferenceValueReturns whether the actual type of this ReferenceValue may be an extension of its type.- Specified by:
mayBeExtensionin classReferenceValue
-
isNull
public int isNull()Description copied from class:ReferenceValueReturns whether this ReferenceValue isnull.- Specified by:
isNullin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
instanceOf
Description copied from class:ReferenceValueReturns whether the type is an instance of the given type.- Specified by:
instanceOfin classReferenceValue
-
cast
public ReferenceValue cast(String type, Clazz referencedClass, ValueFactory valueFactory, boolean alwaysCast) Description copied from class:ReferenceValueReturns this ReferenceValue, cast to the given type.- Specified by:
castin classReferenceValue
-
arrayLength
Description copied from class:ReferenceValueReturns the length of the array, assuming this type is an array.- Overrides:
arrayLengthin 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 classReferenceValue
-
longArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is an long array.- Overrides:
longArrayLoadin classReferenceValue
-
floatArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is an float array.- Overrides:
floatArrayLoadin classReferenceValue
-
doubleArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is an double array.- Overrides:
doubleArrayLoadin classReferenceValue
-
referenceArrayLoad
Description copied from class:ReferenceValueReturns the value of the array at the given index, assuming this type is a reference array.- Overrides:
referenceArrayLoadin classReferenceValue
-
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 classReferenceValue
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other ReferenceValue.- Specified by:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other ReferenceValue.- Specified by:
equalin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other UnknownReferenceValue.- Overrides:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other UnknownReferenceValue.- Overrides:
equalin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other TypedReferenceValue.- Overrides:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other TypedReferenceValue.- Overrides:
equalin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other IdentifiedReferenceValue.- Overrides:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other IdentifiedReferenceValue.- Overrides:
equalin classReferenceValue- 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.
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other IdentifiedArrayReferenceValue.- Overrides:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other IdentifiedArrayReferenceValue.- Overrides:
equalin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other DetailedArrayReferenceValue.- Overrides:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other DetailedArrayReferenceValue.- Overrides:
equalin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
generalize
Description copied from class:ReferenceValueReturns the generalization of this ReferenceValue and the given other TracedReferenceValue.- Overrides:
generalizein classReferenceValue
-
equal
Description copied from class:ReferenceValueReturns whether this ReferenceValue is equal to the given other TracedReferenceValue.- Overrides:
equalin classReferenceValue- Returns:
NEVER,MAYBE, orALWAYS.
-
isSpecific
public boolean isSpecific()Description copied from class:ValueReturns whether this Value represents a single specific (but possibly unknown) value.- Overrides:
isSpecificin classValue
-
isParticular
public boolean isParticular()Description copied from class:ValueReturns whether this Value represents a single particular (known) value.- Overrides:
isParticularin classValue
-
internalType
Description copied from class:ValueReturns the internal type of this Value.- Specified by:
internalTypein classValue- Returns:
TypeConstants.BOOLEAN,TypeConstants.BYTE,TypeConstants.CHAR,TypeConstants.SHORT,TypeConstants.INT,TypeConstants.LONG,TypeConstants.FLOAT,TypeConstants.DOUBLE,TypeConstants.CLASS_START ... TypeConstants.CLASS_END, or an array type containing any of these types (always as String).
-
equals
- Overrides:
equalsin classReferenceValue
-
hashCode
public int hashCode()- Overrides:
hashCodein classReferenceValue
-
toString
- Overrides:
toStringin classReferenceValue
-