类 Value
java.lang.Object
proguard.evaluation.value.Value
- 直接已知子类:
Category1Value,Category2Value,TracingValue,UnknownValue
This abstract class represents a partially evaluated value.
-
字段概要
字段修饰符和类型字段说明static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final int -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明Returns this Value as a Category1Value.Returns this Value as a Category2Value.abstract intReturns the computational type of this Value.Returns a deep copy of the value if it mutable, returns the value itself otherwise.Returns this Value as a DoubleValue.Returns this Value as a FloatValue.abstract Valuegeneralize(Value other) Returns the generalization of this Value and the given other Value.Returns this Value as an InstructionOffsetValue.Returns this Value as an IntegerValue.abstract StringReturns the internal type of this Value.abstract booleanReturns whether the computational type of this Value is a category 2 type.booleanReturns whether this Value represents a single particular (known) value.booleanReturns whether this Value represents a single specific (but possibly unknown) value.Returns this Value as a LongValue.Returns this Value as a ReferenceValue.
-
字段详细资料
-
NEVER
public static final int NEVER- 另请参阅:
-
MAYBE
public static final int MAYBE- 另请参阅:
-
ALWAYS
public static final int ALWAYS- 另请参阅:
-
TYPE_UNKNOWN
public static final int TYPE_UNKNOWN- 另请参阅:
-
TYPE_INTEGER
public static final int TYPE_INTEGER- 另请参阅:
-
TYPE_LONG
public static final int TYPE_LONG- 另请参阅:
-
TYPE_FLOAT
public static final int TYPE_FLOAT- 另请参阅:
-
TYPE_DOUBLE
public static final int TYPE_DOUBLE- 另请参阅:
-
TYPE_REFERENCE
public static final int TYPE_REFERENCE- 另请参阅:
-
TYPE_INSTRUCTION_OFFSET
public static final int TYPE_INSTRUCTION_OFFSET- 另请参阅:
-
TYPE_TOP
public static final int TYPE_TOP- 另请参阅:
-
-
构造器详细资料
-
Value
public Value()
-
-
方法详细资料
-
category1Value
Returns this Value as a Category1Value. -
category2Value
Returns this Value as a Category2Value. -
integerValue
Returns this Value as an IntegerValue. -
longValue
Returns this Value as a LongValue. -
floatValue
Returns this Value as a FloatValue. -
doubleValue
Returns this Value as a DoubleValue. -
referenceValue
Returns this Value as a ReferenceValue. -
instructionOffsetValue
Returns this Value as an InstructionOffsetValue. -
isSpecific
public boolean isSpecific()Returns whether this Value represents a single specific (but possibly unknown) value. -
isParticular
public boolean isParticular()Returns whether this Value represents a single particular (known) value. -
generalize
Returns the generalization of this Value and the given other Value. -
isCategory2
public abstract boolean isCategory2()Returns whether the computational type of this Value is a category 2 type. This means that it takes up the space of two category 1 types on the stack, for instance. -
computationalType
public abstract int computationalType()Returns the computational type of this Value.- 返回:
TYPE_INTEGER,TYPE_LONG,TYPE_FLOAT,TYPE_DOUBLE,TYPE_REFERENCE, orTYPE_INSTRUCTION_OFFSET.
-
internalType
Returns the internal type of this Value.- 返回:
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).
-
copyIfMutable
Returns a deep copy of the value if it mutable, returns the value itself otherwise.
-