Package proguard.evaluation
Class ParticularReferenceValueFactory
java.lang.Object
proguard.evaluation.value.BasicValueFactory
proguard.evaluation.value.TypedReferenceValueFactory
proguard.evaluation.ParticularReferenceValueFactory
- All Implemented Interfaces:
ValueFactory
- Direct Known Subclasses:
JvmCfaReferenceValueFactory
This
TypedReferenceValueFactory creates reference values that also represent their
content.
Like IdentifiedValueFactory, it tracks IdentifiedReferenceValues with a unique
integer ID.
Calling a `createReferenceValue` method will increment the internal referencedID counter and
return an object representing that Value with that new referenceID.
Calling a `createReferenceForId` method will return an object representing that Value
with the specified ID.
-
Field Summary
Fields inherited from class proguard.evaluation.value.BasicValueFactory
DOUBLE_VALUE, FLOAT_VALUE, INTEGER_VALUE, LONG_VALUE, REFERENCE_VALUE, UNKNOWN_VALUE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull) Creates a new ReferenceValue that represents the given type.createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object value) Deprecated.createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, CodeLocation creationLocation) Creates a new ReferenceValue that represents the given type, created at the specified code location.createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Clazz creationClass, Method creationMethod, int creationOffset) Deprecated.createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Clazz creationClass, Method creationMethod, int creationOffset, Object value) Deprecated.createReferenceValue(Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, @NotNull AnalyzedObject value) Creates a new ReferenceValue that represents the given type.createReferenceValue(Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, CodeLocation creationLocation, @NotNull AnalyzedObject value) Creates a new ReferenceValue that represents the given type, created at the specified code location.createReferenceValueForId(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object id) Creates a new ReferenceValue that represents the given type with a specified ID.createReferenceValueForId(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object id, Object value) Deprecated.createReferenceValueForId(Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object id, @NotNull AnalyzedObject value) Creates a new ReferenceValue that represents the given type with a specified ID.Methods inherited from class proguard.evaluation.value.TypedReferenceValueFactory
createArrayReferenceValue, createArrayReferenceValue, createReferenceValueNullMethods inherited from class proguard.evaluation.value.BasicValueFactory
checkCreationLocation, checkReferenceValue, createDoubleValue, createDoubleValue, createFloatValue, createFloatValue, createIntegerValue, createIntegerValue, createIntegerValue, createLongValue, createLongValue, createReferenceValue, createValueMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface proguard.evaluation.value.ValueFactory
createReferenceValue, createReferenceValue, createReferenceValue
-
Constructor Details
-
ParticularReferenceValueFactory
public ParticularReferenceValueFactory()
-
-
Method Details
-
createReferenceValue
@Deprecated public ReferenceValue createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Clazz creationClass, Method creationMethod, int creationOffset) Deprecated.- Specified by:
createReferenceValuein interfaceValueFactory- Overrides:
createReferenceValuein classBasicValueFactory
-
createReferenceValue
public ReferenceValue createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, CodeLocation creationLocation) Description copied from interface:ValueFactoryCreates a new ReferenceValue that represents the given type, created at the specified code location. The type must be an internal class name or an array type. If the type isnull, the ReferenceValue representsnull.- Specified by:
createReferenceValuein interfaceValueFactory- Overrides:
createReferenceValuein classBasicValueFactory
-
createReferenceValue
@Deprecated public ReferenceValue createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Clazz creationClass, Method creationMethod, int creationOffset, Object value) Deprecated.- Specified by:
createReferenceValuein interfaceValueFactory- Overrides:
createReferenceValuein classBasicValueFactory
-
createReferenceValue
public ReferenceValue createReferenceValue(Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, CodeLocation creationLocation, @NotNull @NotNull AnalyzedObject value) Description copied from interface:ValueFactoryCreates a new ReferenceValue that represents the given type, created at the specified code location. The type must be an internal class name or an array type. If the type isnull, the ReferenceValue representsnull.The object wrapped by
AnalyzedObjectis either the value of the reference during execution or aModelof it.- Specified by:
createReferenceValuein interfaceValueFactory- Overrides:
createReferenceValuein classBasicValueFactory
-
createReferenceValue
public ReferenceValue createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull) Description copied from interface:ValueFactoryCreates a new ReferenceValue that represents the given type. The type must be an internal class name or an array type. If the type isnull, the ReferenceValue representsnull.- Specified by:
createReferenceValuein interfaceValueFactory- Overrides:
createReferenceValuein classTypedReferenceValueFactory
-
createReferenceValue
@Deprecated public ReferenceValue createReferenceValue(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object value) Deprecated.Deprecated, usecreateReferenceValue(Clazz, boolean, boolean, AnalyzedObject).- Specified by:
createReferenceValuein interfaceValueFactory- Overrides:
createReferenceValuein classBasicValueFactory
-
createReferenceValue
public ReferenceValue createReferenceValue(Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, @NotNull @NotNull AnalyzedObject value) Description copied from interface:ValueFactoryCreates a new ReferenceValue that represents the given type. The type must be an internal class name or an array type. If the type isnull, the ReferenceValue representsnull.The object wrapped by
AnalyzedObjectis either the value of the reference during execution or aModelof it.- Specified by:
createReferenceValuein interfaceValueFactory- Overrides:
createReferenceValuein classBasicValueFactory
-
createReferenceValueForId
public ReferenceValue createReferenceValueForId(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object id) Description copied from interface:ValueFactoryCreates a new ReferenceValue that represents the given type with a specified ID. The type must be an internal class name or an array type. If the type isnull, the ReferenceValue representsnull.- Specified by:
createReferenceValueForIdin interfaceValueFactory- Overrides:
createReferenceValueForIdin classBasicValueFactory
-
createReferenceValueForId
@Deprecated public ReferenceValue createReferenceValueForId(String type, Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object id, Object value) Deprecated.- Specified by:
createReferenceValueForIdin interfaceValueFactory- Overrides:
createReferenceValueForIdin classBasicValueFactory
-
createReferenceValueForId
public ReferenceValue createReferenceValueForId(Clazz referencedClass, boolean mayBeExtension, boolean mayBeNull, Object id, @NotNull @NotNull AnalyzedObject value) Description copied from interface:ValueFactoryCreates a new ReferenceValue that represents the given type with a specified ID. The type must be an internal class name or an array type. If the type isnull, the ReferenceValue representsnull.The object wrapped by
AnalyzedObjectis either the value of the reference during execution or aModelof it.- Specified by:
createReferenceValueForIdin interfaceValueFactory- Overrides:
createReferenceValueForIdin classBasicValueFactory
-