Package proguard.evaluation.value
Class FloatValue
- java.lang.Object
-
- proguard.evaluation.value.Value
-
- proguard.evaluation.value.Category1Value
-
- proguard.evaluation.value.FloatValue
-
- Direct Known Subclasses:
SpecificFloatValue
,UnknownFloatValue
public abstract class FloatValue extends Category1Value
Representation of a partially evaluated float 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 FloatValue()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract FloatValue
add(FloatValue other)
Returns the sum of this FloatValue and the given FloatValue.FloatValue
add(ParticularFloatValue other)
Returns the sum of this FloatValue and the given ParticularFloatValue.FloatValue
add(SpecificFloatValue other)
Returns the sum of this FloatValue and the given SpecificFloatValue.abstract IntegerValue
compare(FloatValue other)
Returns an IntegerValue with value -1, 0, or 1, if this FloatValue is less than, equal to, or greater than the given FloatValue, respectively.IntegerValue
compare(ParticularFloatValue other)
Returns an IntegerValue with value -1, 0, or 1, if this FloatValue is less than, equal to, or greater than the given ParticularFloatValue, respectively.IntegerValue
compare(SpecificFloatValue other)
Returns an IntegerValue with value -1, 0, or 1, if this FloatValue is less than, equal to, or greater than the given SpecificFloatValue, respectively.IntegerValue
compareReverse(FloatValue other)
Returns an IntegerValue with value 1, 0, or -1, if this FloatValue is less than, equal to, or greater than the given FloatValue, respectively.IntegerValue
compareReverse(ParticularFloatValue other)
Returns an IntegerValue with value 1, 0, or -1, if this FloatValue is less than, equal to, or greater than the given ParticularFloatValue, respectively.IntegerValue
compareReverse(SpecificFloatValue other)
Returns an IntegerValue with value 1, 0, or -1, if this FloatValue is less than, equal to, or greater than the given SpecificFloatValue, respectively.int
computationalType()
Returns the computational type of this Value.abstract DoubleValue
convertToDouble()
Converts this FloatValue to a DoubleValue.abstract IntegerValue
convertToInteger()
Converts this FloatValue to an IntegerValue.abstract LongValue
convertToLong()
Converts this FloatValue to a LongValue.abstract FloatValue
divide(FloatValue other)
Returns the quotient of this FloatValue and the given FloatValue.FloatValue
divide(ParticularFloatValue other)
Returns the quotient of this FloatValue and the given ParticularFloatValue.FloatValue
divide(SpecificFloatValue other)
Returns the quotient of this FloatValue and the given SpecificFloatValue.abstract FloatValue
divideOf(FloatValue other)
Returns the quotient of the given FloatValue and this FloatValue.FloatValue
divideOf(ParticularFloatValue other)
Returns the quotient of the given ParticularFloatValue and this FloatValue.FloatValue
divideOf(SpecificFloatValue other)
Returns the quotient of the given SpecificFloatValue and this FloatValue.FloatValue
floatValue()
Returns this Value as a FloatValue.abstract FloatValue
generalize(FloatValue other)
Returns the generalization of this FloatValue and the given other FloatValue.FloatValue
generalize(ParticularFloatValue other)
Returns the generalization of this FloatValue and the given other ParticularFloatValue.FloatValue
generalize(SpecificFloatValue other)
Returns the generalization of this FloatValue and the given other SpecificFloatValue.Value
generalize(Value other)
Returns the generalization of this Value and the given other Value.java.lang.String
internalType()
Returns the internal type of this Value.abstract FloatValue
multiply(FloatValue other)
Returns the product of this FloatValue and the given FloatValue.FloatValue
multiply(ParticularFloatValue other)
Returns the product of this FloatValue and the given ParticularFloatValue.FloatValue
multiply(SpecificFloatValue other)
Returns the product of this FloatValue and the given SpecificFloatValue.abstract FloatValue
negate()
Returns the negated value of this FloatValue.abstract FloatValue
remainder(FloatValue other)
Returns the remainder of this FloatValue divided by the given FloatValue.FloatValue
remainder(ParticularFloatValue other)
Returns the remainder of this FloatValue divided by the given ParticularFloatValue.FloatValue
remainder(SpecificFloatValue other)
Returns the remainder of this FloatValue divided by the given SpecificFloatValue.abstract FloatValue
remainderOf(FloatValue other)
Returns the remainder of the given FloatValue divided by this FloatValue.FloatValue
remainderOf(ParticularFloatValue other)
Returns the remainder of the given ParticularFloatValue and this FloatValue.FloatValue
remainderOf(SpecificFloatValue other)
Returns the remainder of the given SpecificFloatValue and this FloatValue.abstract FloatValue
subtract(FloatValue other)
Returns the difference of this FloatValue and the given FloatValue.FloatValue
subtract(ParticularFloatValue other)
Returns the difference of this FloatValue and the given ParticularFloatValue.FloatValue
subtract(SpecificFloatValue other)
Returns the difference of this FloatValue and the given SpecificFloatValue.abstract FloatValue
subtractFrom(FloatValue other)
Returns the difference of the given FloatValue and this FloatValue.FloatValue
subtractFrom(ParticularFloatValue other)
Returns the difference of the given ParticularFloatValue and this FloatValue.FloatValue
subtractFrom(SpecificFloatValue other)
Returns the difference of the given SpecificFloatValue and this FloatValue.float
value()
Returns the specific float value, if applicable.-
Methods inherited from class proguard.evaluation.value.Category1Value
category1Value, isCategory2
-
Methods inherited from class proguard.evaluation.value.Value
category2Value, copyIfMutable, doubleValue, instructionOffsetValue, integerValue, isParticular, isSpecific, longValue, referenceValue
-
-
-
-
Method Detail
-
value
public float value()
Returns the specific float value, if applicable.
-
negate
public abstract FloatValue negate()
Returns the negated value of this FloatValue.
-
convertToInteger
public abstract IntegerValue convertToInteger()
Converts this FloatValue to an IntegerValue.
-
convertToLong
public abstract LongValue convertToLong()
Converts this FloatValue to a LongValue.
-
convertToDouble
public abstract DoubleValue convertToDouble()
Converts this FloatValue to a DoubleValue.
-
generalize
public abstract FloatValue generalize(FloatValue other)
Returns the generalization of this FloatValue and the given other FloatValue.
-
add
public abstract FloatValue add(FloatValue other)
Returns the sum of this FloatValue and the given FloatValue.
-
subtract
public abstract FloatValue subtract(FloatValue other)
Returns the difference of this FloatValue and the given FloatValue.
-
subtractFrom
public abstract FloatValue subtractFrom(FloatValue other)
Returns the difference of the given FloatValue and this FloatValue.
-
multiply
public abstract FloatValue multiply(FloatValue other)
Returns the product of this FloatValue and the given FloatValue.
-
divide
public abstract FloatValue divide(FloatValue other)
Returns the quotient of this FloatValue and the given FloatValue.
-
divideOf
public abstract FloatValue divideOf(FloatValue other)
Returns the quotient of the given FloatValue and this FloatValue.
-
remainder
public abstract FloatValue remainder(FloatValue other)
Returns the remainder of this FloatValue divided by the given FloatValue.
-
remainderOf
public abstract FloatValue remainderOf(FloatValue other)
Returns the remainder of the given FloatValue divided by this FloatValue.
-
compare
public abstract IntegerValue compare(FloatValue other)
Returns an IntegerValue with value -1, 0, or 1, if this FloatValue is less than, equal to, or greater than the given FloatValue, respectively.
-
compareReverse
public final IntegerValue compareReverse(FloatValue other)
Returns an IntegerValue with value 1, 0, or -1, if this FloatValue is less than, equal to, or greater than the given FloatValue, respectively.
-
generalize
public FloatValue generalize(SpecificFloatValue other)
Returns the generalization of this FloatValue and the given other SpecificFloatValue.
-
add
public FloatValue add(SpecificFloatValue other)
Returns the sum of this FloatValue and the given SpecificFloatValue.
-
subtract
public FloatValue subtract(SpecificFloatValue other)
Returns the difference of this FloatValue and the given SpecificFloatValue.
-
subtractFrom
public FloatValue subtractFrom(SpecificFloatValue other)
Returns the difference of the given SpecificFloatValue and this FloatValue.
-
multiply
public FloatValue multiply(SpecificFloatValue other)
Returns the product of this FloatValue and the given SpecificFloatValue.
-
divide
public FloatValue divide(SpecificFloatValue other)
Returns the quotient of this FloatValue and the given SpecificFloatValue.
-
divideOf
public FloatValue divideOf(SpecificFloatValue other)
Returns the quotient of the given SpecificFloatValue and this FloatValue.
-
remainder
public FloatValue remainder(SpecificFloatValue other)
Returns the remainder of this FloatValue divided by the given SpecificFloatValue.
-
remainderOf
public FloatValue remainderOf(SpecificFloatValue other)
Returns the remainder of the given SpecificFloatValue and this FloatValue.
-
compare
public IntegerValue compare(SpecificFloatValue other)
Returns an IntegerValue with value -1, 0, or 1, if this FloatValue is less than, equal to, or greater than the given SpecificFloatValue, respectively.
-
compareReverse
public final IntegerValue compareReverse(SpecificFloatValue other)
Returns an IntegerValue with value 1, 0, or -1, if this FloatValue is less than, equal to, or greater than the given SpecificFloatValue, respectively.
-
generalize
public FloatValue generalize(ParticularFloatValue other)
Returns the generalization of this FloatValue and the given other ParticularFloatValue.
-
add
public FloatValue add(ParticularFloatValue other)
Returns the sum of this FloatValue and the given ParticularFloatValue.
-
subtract
public FloatValue subtract(ParticularFloatValue other)
Returns the difference of this FloatValue and the given ParticularFloatValue.
-
subtractFrom
public FloatValue subtractFrom(ParticularFloatValue other)
Returns the difference of the given ParticularFloatValue and this FloatValue.
-
multiply
public FloatValue multiply(ParticularFloatValue other)
Returns the product of this FloatValue and the given ParticularFloatValue.
-
divide
public FloatValue divide(ParticularFloatValue other)
Returns the quotient of this FloatValue and the given ParticularFloatValue.
-
divideOf
public FloatValue divideOf(ParticularFloatValue other)
Returns the quotient of the given ParticularFloatValue and this FloatValue.
-
remainder
public FloatValue remainder(ParticularFloatValue other)
Returns the remainder of this FloatValue divided by the given ParticularFloatValue.
-
remainderOf
public FloatValue remainderOf(ParticularFloatValue other)
Returns the remainder of the given ParticularFloatValue and this FloatValue.
-
compare
public IntegerValue compare(ParticularFloatValue other)
Returns an IntegerValue with value -1, 0, or 1, if this FloatValue is less than, equal to, or greater than the given ParticularFloatValue, respectively.
-
compareReverse
public final IntegerValue compareReverse(ParticularFloatValue other)
Returns an IntegerValue with value 1, 0, or -1, if this FloatValue is less than, equal to, or greater than the given ParticularFloatValue, respectively.
-
floatValue
public final FloatValue floatValue()
Description copied from class:Value
Returns this Value as a FloatValue.- Overrides:
floatValue
in classValue
-
generalize
public final Value generalize(Value other)
Description copied from class:Value
Returns the generalization of this Value and the given other Value.- Specified by:
generalize
in classValue
-
computationalType
public final int computationalType()
Description copied from class:Value
Returns the computational type of this Value.- Specified by:
computationalType
in 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:Value
Returns the internal type of this Value.- Specified by:
internalType
in 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).
-
-