Package proguard.evaluation.value
Class DoubleValue
- java.lang.Object
-
- proguard.evaluation.value.Value
-
- proguard.evaluation.value.Category2Value
-
- proguard.evaluation.value.DoubleValue
-
- Direct Known Subclasses:
SpecificDoubleValue,UnknownDoubleValue
public abstract class DoubleValue extends Category2Value
Representation of a partially evaluated double 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 DoubleValue()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract DoubleValueadd(DoubleValue other)Returns the sum of this DoubleValue and the given DoubleValue.DoubleValueadd(ParticularDoubleValue other)Returns the sum of this DoubleValue and the given ParticularDoubleValue.DoubleValueadd(SpecificDoubleValue other)Returns the sum of this DoubleValue and the given SpecificDoubleValue.abstract IntegerValuecompare(DoubleValue other)Returns an IntegerValue with value -1, 0, or 1, if this DoubleValue is less than, equal to, or greater than the given DoubleValue, respectively.IntegerValuecompare(ParticularDoubleValue other)Returns an IntegerValue with value -1, 0, or 1, if this DoubleValue is less than, equal to, or greater than the given ParticularDoubleValue, respectively.IntegerValuecompare(SpecificDoubleValue other)Returns an IntegerValue with value -1, 0, or 1, if this DoubleValue is less than, equal to, or greater than the given SpecificDoubleValue, respectively.IntegerValuecompareReverse(DoubleValue other)Returns an IntegerValue with value 1, 0, or -1, if this DoubleValue is less than, equal to, or greater than the given DoubleValue, respectively.IntegerValuecompareReverse(ParticularDoubleValue other)Returns an IntegerValue with value 1, 0, or -1, if this DoubleValue is less than, equal to, or greater than the given ParticularDoubleValue, respectively.IntegerValuecompareReverse(SpecificDoubleValue other)Returns an IntegerValue with value 1, 0, or -1, if this DoubleValue is less than, equal to, or greater than the given SpecificDoubleValue, respectively.intcomputationalType()Returns the computational type of this Value.abstract FloatValueconvertToFloat()Converts this DoubleValue to a FloatValue.abstract IntegerValueconvertToInteger()Converts this DoubleValue to an IntegerValue.abstract LongValueconvertToLong()Converts this DoubleValue to a LongValue.abstract DoubleValuedivide(DoubleValue other)Returns the quotient of this DoubleValue and the given DoubleValue.DoubleValuedivide(ParticularDoubleValue other)Returns the quotient of this DoubleValue and the given ParticularDoubleValue.DoubleValuedivide(SpecificDoubleValue other)Returns the quotient of this DoubleValue and the given SpecificDoubleValue.abstract DoubleValuedivideOf(DoubleValue other)Returns the quotient of the given DoubleValue and this DoubleValue.DoubleValuedivideOf(ParticularDoubleValue other)Returns the quotient of the given ParticularDoubleValue and this DoubleValue.DoubleValuedivideOf(SpecificDoubleValue other)Returns the quotient of the given SpecificDoubleValue and this DoubleValue.DoubleValuedoubleValue()Returns this Value as a DoubleValue.abstract DoubleValuegeneralize(DoubleValue other)Returns the generalization of this DoubleValue and the given other DoubleValue.DoubleValuegeneralize(ParticularDoubleValue other)Returns the generalization of this DoubleValue and the given other ParticularDoubleValue.DoubleValuegeneralize(SpecificDoubleValue other)Returns the generalization of this DoubleValue and the given other SpecificDoubleValue.Valuegeneralize(Value other)Returns the generalization of this Value and the given other Value.java.lang.StringinternalType()Returns the internal type of this Value.abstract DoubleValuemultiply(DoubleValue other)Returns the product of this DoubleValue and the given DoubleValue.DoubleValuemultiply(ParticularDoubleValue other)Returns the product of this DoubleValue and the given ParticularDoubleValue.DoubleValuemultiply(SpecificDoubleValue other)Returns the product of this DoubleValue and the given SpecificDoubleValue.abstract DoubleValuenegate()Returns the negated value of this DoubleValue.abstract DoubleValueremainder(DoubleValue other)Returns the remainder of this DoubleValue divided by the given DoubleValue.DoubleValueremainder(ParticularDoubleValue other)Returns the remainder of this DoubleValue divided by the given ParticularDoubleValue.DoubleValueremainder(SpecificDoubleValue other)Returns the remainder of this DoubleValue divided by the given SpecificDoubleValue.abstract DoubleValueremainderOf(DoubleValue other)Returns the remainder of the given DoubleValue divided by this DoubleValue.DoubleValueremainderOf(ParticularDoubleValue other)Returns the remainder of the given ParticularDoubleValue and this DoubleValue.DoubleValueremainderOf(SpecificDoubleValue other)Returns the remainder of the given SpecificDoubleValue and this DoubleValue.abstract DoubleValuesubtract(DoubleValue other)Returns the difference of this DoubleValue and the given DoubleValue.DoubleValuesubtract(ParticularDoubleValue other)Returns the difference of this DoubleValue and the given ParticularDoubleValue.DoubleValuesubtract(SpecificDoubleValue other)Returns the difference of this DoubleValue and the given SpecificDoubleValue.abstract DoubleValuesubtractFrom(DoubleValue other)Returns the difference of the given DoubleValue and this DoubleValue.DoubleValuesubtractFrom(ParticularDoubleValue other)Returns the difference of the given ParticularDoubleValue and this DoubleValue.DoubleValuesubtractFrom(SpecificDoubleValue other)Returns the difference of the given SpecificDoubleValue and this DoubleValue.doublevalue()Returns the specific double value, if applicable.-
Methods inherited from class proguard.evaluation.value.Category2Value
category2Value, isCategory2
-
Methods inherited from class proguard.evaluation.value.Value
category1Value, copyIfMutable, floatValue, instructionOffsetValue, integerValue, isParticular, isSpecific, longValue, referenceValue
-
-
-
-
Method Detail
-
value
public double value()
Returns the specific double value, if applicable.
-
negate
public abstract DoubleValue negate()
Returns the negated value of this DoubleValue.
-
convertToInteger
public abstract IntegerValue convertToInteger()
Converts this DoubleValue to an IntegerValue.
-
convertToLong
public abstract LongValue convertToLong()
Converts this DoubleValue to a LongValue.
-
convertToFloat
public abstract FloatValue convertToFloat()
Converts this DoubleValue to a FloatValue.
-
generalize
public abstract DoubleValue generalize(DoubleValue other)
Returns the generalization of this DoubleValue and the given other DoubleValue.
-
add
public abstract DoubleValue add(DoubleValue other)
Returns the sum of this DoubleValue and the given DoubleValue.
-
subtract
public abstract DoubleValue subtract(DoubleValue other)
Returns the difference of this DoubleValue and the given DoubleValue.
-
subtractFrom
public abstract DoubleValue subtractFrom(DoubleValue other)
Returns the difference of the given DoubleValue and this DoubleValue.
-
multiply
public abstract DoubleValue multiply(DoubleValue other)
Returns the product of this DoubleValue and the given DoubleValue.
-
divide
public abstract DoubleValue divide(DoubleValue other)
Returns the quotient of this DoubleValue and the given DoubleValue.
-
divideOf
public abstract DoubleValue divideOf(DoubleValue other)
Returns the quotient of the given DoubleValue and this DoubleValue.
-
remainder
public abstract DoubleValue remainder(DoubleValue other)
Returns the remainder of this DoubleValue divided by the given DoubleValue.
-
remainderOf
public abstract DoubleValue remainderOf(DoubleValue other)
Returns the remainder of the given DoubleValue divided by this DoubleValue.
-
compare
public abstract IntegerValue compare(DoubleValue other)
Returns an IntegerValue with value -1, 0, or 1, if this DoubleValue is less than, equal to, or greater than the given DoubleValue, respectively.
-
compareReverse
public final IntegerValue compareReverse(DoubleValue other)
Returns an IntegerValue with value 1, 0, or -1, if this DoubleValue is less than, equal to, or greater than the given DoubleValue, respectively.
-
generalize
public DoubleValue generalize(SpecificDoubleValue other)
Returns the generalization of this DoubleValue and the given other SpecificDoubleValue.
-
add
public DoubleValue add(SpecificDoubleValue other)
Returns the sum of this DoubleValue and the given SpecificDoubleValue.
-
subtract
public DoubleValue subtract(SpecificDoubleValue other)
Returns the difference of this DoubleValue and the given SpecificDoubleValue.
-
subtractFrom
public DoubleValue subtractFrom(SpecificDoubleValue other)
Returns the difference of the given SpecificDoubleValue and this DoubleValue.
-
multiply
public DoubleValue multiply(SpecificDoubleValue other)
Returns the product of this DoubleValue and the given SpecificDoubleValue.
-
divide
public DoubleValue divide(SpecificDoubleValue other)
Returns the quotient of this DoubleValue and the given SpecificDoubleValue.
-
divideOf
public DoubleValue divideOf(SpecificDoubleValue other)
Returns the quotient of the given SpecificDoubleValue and this DoubleValue.
-
remainder
public DoubleValue remainder(SpecificDoubleValue other)
Returns the remainder of this DoubleValue divided by the given SpecificDoubleValue.
-
remainderOf
public DoubleValue remainderOf(SpecificDoubleValue other)
Returns the remainder of the given SpecificDoubleValue and this DoubleValue.
-
compare
public IntegerValue compare(SpecificDoubleValue other)
Returns an IntegerValue with value -1, 0, or 1, if this DoubleValue is less than, equal to, or greater than the given SpecificDoubleValue, respectively.
-
compareReverse
public final IntegerValue compareReverse(SpecificDoubleValue other)
Returns an IntegerValue with value 1, 0, or -1, if this DoubleValue is less than, equal to, or greater than the given SpecificDoubleValue, respectively.
-
generalize
public DoubleValue generalize(ParticularDoubleValue other)
Returns the generalization of this DoubleValue and the given other ParticularDoubleValue.
-
add
public DoubleValue add(ParticularDoubleValue other)
Returns the sum of this DoubleValue and the given ParticularDoubleValue.
-
subtract
public DoubleValue subtract(ParticularDoubleValue other)
Returns the difference of this DoubleValue and the given ParticularDoubleValue.
-
subtractFrom
public DoubleValue subtractFrom(ParticularDoubleValue other)
Returns the difference of the given ParticularDoubleValue and this DoubleValue.
-
multiply
public DoubleValue multiply(ParticularDoubleValue other)
Returns the product of this DoubleValue and the given ParticularDoubleValue.
-
divide
public DoubleValue divide(ParticularDoubleValue other)
Returns the quotient of this DoubleValue and the given ParticularDoubleValue.
-
divideOf
public DoubleValue divideOf(ParticularDoubleValue other)
Returns the quotient of the given ParticularDoubleValue and this DoubleValue.
-
remainder
public DoubleValue remainder(ParticularDoubleValue other)
Returns the remainder of this DoubleValue divided by the given ParticularDoubleValue.
-
remainderOf
public DoubleValue remainderOf(ParticularDoubleValue other)
Returns the remainder of the given ParticularDoubleValue and this DoubleValue.
-
compare
public IntegerValue compare(ParticularDoubleValue other)
Returns an IntegerValue with value -1, 0, or 1, if this DoubleValue is less than, equal to, or greater than the given ParticularDoubleValue, respectively.
-
compareReverse
public final IntegerValue compareReverse(ParticularDoubleValue other)
Returns an IntegerValue with value 1, 0, or -1, if this DoubleValue is less than, equal to, or greater than the given ParticularDoubleValue, respectively.
-
doubleValue
public final DoubleValue doubleValue()
Description copied from class:ValueReturns this Value as a DoubleValue.- Overrides:
doubleValuein classValue
-
generalize
public final Value generalize(Value other)
Description copied from class:ValueReturns the generalization of this Value and the given other Value.- Specified by:
generalizein classValue
-
computationalType
public final int computationalType()
Description copied from class:ValueReturns the computational type of this Value.- Specified by:
computationalTypein classValue- Returns:
TYPE_INTEGER,TYPE_LONG,TYPE_FLOAT,TYPE_DOUBLE,TYPE_REFERENCE, orTYPE_INSTRUCTION_OFFSET.
-
internalType
public final java.lang.String 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).
-
-