public class TracingValue extends Value
ALWAYS, MAYBE, NEVER, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INSTRUCTION_OFFSET, TYPE_INTEGER, TYPE_LONG, TYPE_REFERENCE, TYPE_TOP, TYPE_UNKNOWN
Constructor and Description |
---|
TracingValue(Value traceValue,
Value value)
Creates a new TracingValue with the given trace value and value.
|
Modifier and Type | Method and Description |
---|---|
Category1Value |
category1Value()
Returns this Value as a Category1Value.
|
Category2Value |
category2Value()
Returns this Value as a Category2Value.
|
int |
computationalType()
Returns the computational type of this Value.
|
DoubleValue |
doubleValue()
Returns this Value as a DoubleValue.
|
boolean |
equals(java.lang.Object object) |
FloatValue |
floatValue()
Returns this Value as a FloatValue.
|
TracingValue |
generalize(TracingValue other)
Returns the generalization of this TracingValue and the given other TracingValue.
|
Value |
generalize(Value other)
Returns the generalization of this Value and the given other Value.
|
int |
hashCode() |
InstructionOffsetValue |
instructionOffsetValue()
Returns this Value as an InstructionOffsetValue.
|
IntegerValue |
integerValue()
Returns this Value as an IntegerValue.
|
java.lang.String |
internalType()
Returns the internal type of this Value.
|
boolean |
isCategory2()
Returns whether the computational type of this Value is a category 2 type.
|
boolean |
isParticular()
Returns whether this Value represents a single particular (known) value.
|
boolean |
isSpecific()
Returns whether this Value represents a single specific (but possibly unknown) value.
|
LongValue |
longValue()
Returns this Value as a LongValue.
|
ReferenceValue |
referenceValue()
Returns this Value as a ReferenceValue.
|
java.lang.String |
toString() |
copyIfMutable
public final TracingValue generalize(TracingValue other)
public Category1Value category1Value()
Value
category1Value
in class Value
public Category2Value category2Value()
Value
category2Value
in class Value
public IntegerValue integerValue()
Value
integerValue
in class Value
public LongValue longValue()
Value
public FloatValue floatValue()
Value
floatValue
in class Value
public DoubleValue doubleValue()
Value
doubleValue
in class Value
public ReferenceValue referenceValue()
Value
referenceValue
in class Value
public final InstructionOffsetValue instructionOffsetValue()
Value
instructionOffsetValue
in class Value
public boolean isSpecific()
Value
isSpecific
in class Value
public boolean isParticular()
Value
isParticular
in class Value
public final Value generalize(Value other)
Value
generalize
in class Value
public boolean isCategory2()
Value
isCategory2
in class Value
public final int computationalType()
Value
computationalType
in class Value
TYPE_INTEGER
, TYPE_LONG
, TYPE_FLOAT
,
TYPE_DOUBLE
, TYPE_REFERENCE
, or TYPE_INSTRUCTION_OFFSET
.public final java.lang.String internalType()
Value
internalType
in class 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).public boolean equals(java.lang.Object object)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object