Package proguard.evaluation.value
Class SpecificLongValue
- java.lang.Object
-
- proguard.evaluation.value.Value
-
- proguard.evaluation.value.Category2Value
-
- proguard.evaluation.value.LongValue
-
- proguard.evaluation.value.SpecificLongValue
-
- Direct Known Subclasses:
CompositeLongValue
,ConvertedLongValue
,IdentifiedLongValue
,NegatedLongValue
,ParticularLongValue
public abstract class SpecificLongValue extends LongValue
ThisLongValue
represents a specific long 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
Constructors Constructor Description SpecificLongValue()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LongValue
add(LongValue other)
Returns the sum of this LongValue and the given LongValue.LongValue
add(SpecificLongValue other)
Returns the sum of this LongValue and the given SpecificLongValue.LongValue
and(LongValue other)
Returns the logical and of this LongValue and the given LongValue.LongValue
and(SpecificLongValue other)
Returns the logical and of this LongValue and the given SpecificLongValue.IntegerValue
compare(LongValue other)
Returns an IntegerValue with value -1, 0, or 1, if this LongValue is less than, equal to, or greater than the given LongValue, respectively.IntegerValue
compare(SpecificLongValue other)
Returns an IntegerValue with value -1, 0, or 1, if this LongValue is less than, equal to, or greater than the given SpecificLongValue, respectively.DoubleValue
convertToDouble()
Converts this LongValue to a DoubleValue.FloatValue
convertToFloat()
Converts this LongValue to a FloatValue.IntegerValue
convertToInteger()
Converts this LongValue to an IntegerValue.LongValue
divide(LongValue other)
Returns the quotient of this LongValue and the given LongValue.LongValue
divide(SpecificLongValue other)
Returns the quotient of this LongValue and the given SpecificLongValue.LongValue
divideOf(LongValue other)
Returns the quotient of the given LongValue and this LongValue.LongValue
divideOf(SpecificLongValue other)
Returns the quotient of the given SpecificLongValue and this LongValue.boolean
equals(java.lang.Object object)
LongValue
generalize(LongValue other)
Returns the generalization of this LongValue and the given other LongValue.LongValue
generalize(SpecificLongValue other)
Returns the generalization of this LongValue and the given other SpecificLongValue.int
hashCode()
boolean
isSpecific()
Returns whether this Value represents a single specific (but possibly unknown) value.LongValue
multiply(LongValue other)
Returns the product of this LongValue and the given LongValue.LongValue
multiply(SpecificLongValue other)
Returns the product of this LongValue and the given SpecificLongValue.LongValue
negate()
Returns the negated value of this LongValue.LongValue
or(LongValue other)
Returns the logical or of this LongValue and the given LongValue.LongValue
or(SpecificLongValue other)
Returns the logical or of this LongValue and the given SpecificLongValue.LongValue
remainder(LongValue other)
Returns the remainder of this LongValue divided by the given LongValue.LongValue
remainder(SpecificLongValue other)
Returns the remainder of this LongValue divided by the given SpecificLongValue.LongValue
remainderOf(LongValue other)
Returns the remainder of the given LongValue divided by this LongValue.LongValue
remainderOf(SpecificLongValue other)
Returns the remainder of the given SpecificLongValue divided by this LongValue.LongValue
shiftLeft(IntegerValue other)
Returns this LongValue, shifted left by the given IntegerValue.LongValue
shiftLeft(SpecificLongValue other)
Returns this LongValue, shifted left by the given SpecificLongValue.LongValue
shiftRight(IntegerValue other)
Returns this LongValue, shifted right by the given IntegerValue.LongValue
shiftRight(SpecificLongValue other)
Returns this LongValue, shifted right by the given SpecificLongValue.LongValue
subtract(LongValue other)
Returns the difference of this LongValue and the given LongValue.LongValue
subtract(SpecificLongValue other)
Returns the difference of this LongValue and the given SpecificLongValue.LongValue
subtractFrom(LongValue other)
Returns the difference of the given LongValue and this LongValue.LongValue
subtractFrom(SpecificLongValue other)
Returns the difference of the given SpecificLongValue and this LongValue.LongValue
unsignedShiftRight(IntegerValue other)
Returns this unsigned LongValue, shifted left by the given IntegerValue.LongValue
unsignedShiftRight(SpecificLongValue other)
Returns this unsigned LongValue, shifted right by the given SpecificLongValue.LongValue
xor(LongValue other)
Returns the logical xor of this LongValue and the given LongValue.LongValue
xor(SpecificLongValue other)
Returns the logical xor of this LongValue and the given SpecificLongValue.-
Methods inherited from class proguard.evaluation.value.LongValue
add, and, compare, compareReverse, compareReverse, compareReverse, computationalType, divide, divideOf, generalize, generalize, internalType, longValue, multiply, or, remainder, remainderOf, shiftLeft, shiftRight, subtract, subtractFrom, unsignedShiftRight, value, xor
-
Methods inherited from class proguard.evaluation.value.Category2Value
category2Value, isCategory2
-
Methods inherited from class proguard.evaluation.value.Value
category1Value, copyIfMutable, doubleValue, floatValue, instructionOffsetValue, integerValue, isParticular, referenceValue
-
-
-
-
Method Detail
-
negate
public LongValue negate()
Description copied from class:LongValue
Returns the negated value of this LongValue.
-
convertToInteger
public IntegerValue convertToInteger()
Description copied from class:LongValue
Converts this LongValue to an IntegerValue.- Specified by:
convertToInteger
in classLongValue
-
convertToFloat
public FloatValue convertToFloat()
Description copied from class:LongValue
Converts this LongValue to a FloatValue.- Specified by:
convertToFloat
in classLongValue
-
convertToDouble
public DoubleValue convertToDouble()
Description copied from class:LongValue
Converts this LongValue to a DoubleValue.- Specified by:
convertToDouble
in classLongValue
-
generalize
public LongValue generalize(LongValue other)
Description copied from class:LongValue
Returns the generalization of this LongValue and the given other LongValue.- Overrides:
generalize
in classLongValue
-
add
public LongValue add(LongValue other)
Description copied from class:LongValue
Returns the sum of this LongValue and the given LongValue.
-
subtract
public LongValue subtract(LongValue other)
Description copied from class:LongValue
Returns the difference of this LongValue and the given LongValue.
-
subtractFrom
public LongValue subtractFrom(LongValue other)
Description copied from class:LongValue
Returns the difference of the given LongValue and this LongValue.- Overrides:
subtractFrom
in classLongValue
-
multiply
public LongValue multiply(LongValue other)
Description copied from class:LongValue
Returns the product of this LongValue and the given LongValue.
-
divide
public LongValue divide(LongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the quotient of this LongValue and the given LongValue.
-
divideOf
public LongValue divideOf(LongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the quotient of the given LongValue and this LongValue.
-
remainder
public LongValue remainder(LongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the remainder of this LongValue divided by the given LongValue.
-
remainderOf
public LongValue remainderOf(LongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the remainder of the given LongValue divided by this LongValue.- Overrides:
remainderOf
in classLongValue
- Throws:
java.lang.ArithmeticException
-
shiftLeft
public LongValue shiftLeft(IntegerValue other)
Description copied from class:LongValue
Returns this LongValue, shifted left by the given IntegerValue.
-
shiftRight
public LongValue shiftRight(IntegerValue other)
Description copied from class:LongValue
Returns this LongValue, shifted right by the given IntegerValue.- Overrides:
shiftRight
in classLongValue
-
unsignedShiftRight
public LongValue unsignedShiftRight(IntegerValue other)
Description copied from class:LongValue
Returns this unsigned LongValue, shifted left by the given IntegerValue.- Overrides:
unsignedShiftRight
in classLongValue
-
and
public LongValue and(LongValue other)
Description copied from class:LongValue
Returns the logical and of this LongValue and the given LongValue.
-
or
public LongValue or(LongValue other)
Description copied from class:LongValue
Returns the logical or of this LongValue and the given LongValue.
-
xor
public LongValue xor(LongValue other)
Description copied from class:LongValue
Returns the logical xor of this LongValue and the given LongValue.
-
compare
public IntegerValue compare(LongValue other)
Description copied from class:LongValue
Returns an IntegerValue with value -1, 0, or 1, if this LongValue is less than, equal to, or greater than the given LongValue, respectively.
-
generalize
public LongValue generalize(SpecificLongValue other)
Description copied from class:LongValue
Returns the generalization of this LongValue and the given other SpecificLongValue.- Overrides:
generalize
in classLongValue
-
add
public LongValue add(SpecificLongValue other)
Description copied from class:LongValue
Returns the sum of this LongValue and the given SpecificLongValue.
-
subtract
public LongValue subtract(SpecificLongValue other)
Description copied from class:LongValue
Returns the difference of this LongValue and the given SpecificLongValue.
-
subtractFrom
public LongValue subtractFrom(SpecificLongValue other)
Description copied from class:LongValue
Returns the difference of the given SpecificLongValue and this LongValue.- Overrides:
subtractFrom
in classLongValue
-
multiply
public LongValue multiply(SpecificLongValue other)
Description copied from class:LongValue
Returns the product of this LongValue and the given SpecificLongValue.
-
divide
public LongValue divide(SpecificLongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the quotient of this LongValue and the given SpecificLongValue.
-
divideOf
public LongValue divideOf(SpecificLongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the quotient of the given SpecificLongValue and this LongValue.
-
remainder
public LongValue remainder(SpecificLongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the remainder of this LongValue divided by the given SpecificLongValue.
-
remainderOf
public LongValue remainderOf(SpecificLongValue other) throws java.lang.ArithmeticException
Description copied from class:LongValue
Returns the remainder of the given SpecificLongValue divided by this LongValue.- Overrides:
remainderOf
in classLongValue
- Throws:
java.lang.ArithmeticException
-
shiftLeft
public LongValue shiftLeft(SpecificLongValue other)
Description copied from class:LongValue
Returns this LongValue, shifted left by the given SpecificLongValue.
-
shiftRight
public LongValue shiftRight(SpecificLongValue other)
Description copied from class:LongValue
Returns this LongValue, shifted right by the given SpecificLongValue.- Overrides:
shiftRight
in classLongValue
-
unsignedShiftRight
public LongValue unsignedShiftRight(SpecificLongValue other)
Description copied from class:LongValue
Returns this unsigned LongValue, shifted right by the given SpecificLongValue.- Overrides:
unsignedShiftRight
in classLongValue
-
and
public LongValue and(SpecificLongValue other)
Description copied from class:LongValue
Returns the logical and of this LongValue and the given SpecificLongValue.
-
or
public LongValue or(SpecificLongValue other)
Description copied from class:LongValue
Returns the logical or of this LongValue and the given SpecificLongValue.
-
xor
public LongValue xor(SpecificLongValue other)
Description copied from class:LongValue
Returns the logical xor of this LongValue and the given SpecificLongValue.
-
compare
public IntegerValue compare(SpecificLongValue other)
Description copied from class:LongValue
Returns an IntegerValue with value -1, 0, or 1, if this LongValue is less than, equal to, or greater than the given SpecificLongValue, respectively.
-
isSpecific
public boolean isSpecific()
Description copied from class:Value
Returns whether this Value represents a single specific (but possibly unknown) value.- Overrides:
isSpecific
in classValue
-
equals
public boolean equals(java.lang.Object object)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-