Package proguard.evaluation.value
Class ParticularIntegerValue
java.lang.Object
proguard.evaluation.value.Value
proguard.evaluation.value.Category1Value
proguard.evaluation.value.IntegerValue
proguard.evaluation.value.SpecificIntegerValue
proguard.evaluation.value.ParticularIntegerValue
This
IntegerValue represents a particular integer value.
This class handles interactions with: - ParticularIntegerValue
It reverses and delegates interactions with: - RangeIntegerValue - IntegerValue (in general)
It notably doesn't handle interactions with: - UnknownInteger - RangeIntegerValue - SpecificInteger (in general)
-
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 -
Method Summary
Modifier and TypeMethodDescriptionadd(IntegerValue other) Returns the sum of this IntegerValue and the given IntegerValue.add(ParticularIntegerValue other) Returns the sum of this IntegerValue and the given ParticularIntegerValue.add(RangeIntegerValue other) Returns the sum of this IntegerValue and the given RangeIntegerValue.and(IntegerValue other) Returns the logical and of this IntegerValue and the given IntegerValue.and(ParticularIntegerValue other) Returns the logical and of this IntegerValue and the given ParticularIntegerValue.and(RangeIntegerValue other) Returns the logical and of this IntegerValue and the given RangeIntegerValue.Converts this IntegerValue to a byte IntegerValue.Converts this IntegerValue to a character IntegerValue.Converts this IntegerValue to a DoubleValue.Converts this IntegerValue to a FloatValue.Converts this IntegerValue to a LongValue.Converts this IntegerValue to a short IntegerValue.divide(IntegerValue other) Returns the quotient of this IntegerValue and the given IntegerValue.divide(ParticularIntegerValue other) Returns the quotient of this IntegerValue and the given ParticularIntegerValue.divide(RangeIntegerValue other) Returns the quotient of this IntegerValue and the given RangeIntegerValue.divideOf(IntegerValue other) Returns the quotient of the given IntegerValue and this IntegerValue.divideOf(ParticularIntegerValue other) Returns the quotient of the given ParticularIntegerValue and this IntegerValue.divideOf(RangeIntegerValue other) Returns the quotient of the given RangeIntegerValue and this IntegerValue.intequal(IntegerValue other) Returns whether this IntegerValue and the given IntegerValue are equal:NEVER,MAYBE, orALWAYS.intequal(ParticularIntegerValue other) Returns whether this IntegerValue and the given ParticularIntegerValue are equal:NEVER,MAYBE, orALWAYS.intequal(RangeIntegerValue other) Returns whether this IntegerValue and the given RangeIntegerValue are equal:NEVER,MAYBE, orALWAYS.booleangeneralize(IntegerValue other) Returns the generalization of this IntegerValue and the given other IntegerValue.generalize(ParticularIntegerValue other) Returns the generalization of this IntegerValue and the given other ParticularIntegerValue.generalize(RangeIntegerValue other) Returns the generalization of this IntegerValue and the given other RangeIntegerValue.inthashCode()booleanReturns whether this Value represents a single particular (known) value.intlessThan(IntegerValue other) Returns whether this IntegerValue is less than the given IntegerValue:NEVER,MAYBE, orALWAYS.intlessThan(ParticularIntegerValue other) Returns whether this IntegerValue is less than the given ParticularIntegerValue:NEVER,MAYBE, orALWAYS.intlessThan(RangeIntegerValue other) Returns whether this IntegerValue is less than the given RangeIntegerValue:NEVER,MAYBE, orALWAYS.intlessThanOrEqual(IntegerValue other) Returns whether this IntegerValue is less than or equal to the given IntegerValue:NEVER,MAYBE, orALWAYS.intReturns whether this IntegerValue is less than or equal to the given ParticularIntegerValue:NEVER,MAYBE, orALWAYS.intlessThanOrEqual(RangeIntegerValue other) Returns whether this IntegerValue is less than or equal to the given RangeIntegerValue:NEVER,MAYBE, orALWAYS.multiply(IntegerValue other) Returns the product of this IntegerValue and the given IntegerValue.multiply(ParticularIntegerValue other) Returns the product of this IntegerValue and the given ParticularIntegerValue.multiply(RangeIntegerValue other) Returns the product of this IntegerValue and the given RangeIntegerValue.negate()Returns the negated value of this IntegerValue.or(IntegerValue other) Returns the logical or of this IntegerValue and the given IntegerValue.or(ParticularIntegerValue other) Returns the logical or of this IntegerValue and the given ParticularIntegerValue.or(RangeIntegerValue other) Returns the logical or of this IntegerValue and the given RangeIntegerValue.remainder(IntegerValue other) Returns the remainder of this IntegerValue divided by the given IntegerValue.remainder(ParticularIntegerValue other) Returns the remainder of this IntegerValue divided by the given ParticularIntegerValue.remainder(RangeIntegerValue other) Returns the remainder of this IntegerValue divided by the given RangeIntegerValue.remainderOf(IntegerValue other) Returns the remainder of the given IntegerValue divided by this IntegerValue.Returns the remainder of the given ParticularIntegerValue divided by this IntegerValue.remainderOf(RangeIntegerValue other) Returns the remainder of the given RangeIntegerValue divided by this IntegerValue.shiftLeft(IntegerValue other) Returns this IntegerValue, shifted left by the given IntegerValue.shiftLeft(ParticularIntegerValue other) Returns this IntegerValue, shifted left by the given ParticularIntegerValue.shiftLeft(RangeIntegerValue other) Returns this IntegerValue, shifted left by the given RangeIntegerValue.shiftLeftOf(IntegerValue other) Returns the given IntegerValue, shifted left by this IntegerValue.shiftLeftOf(LongValue other) Returns the given LongValue, shifted left by this IntegerValue.Returns the given ParticularIntegerValue, shifted left by this IntegerValue.shiftLeftOf(ParticularLongValue other) Returns the given ParticularLongValue, shifted left by this IntegerValue.shiftLeftOf(RangeIntegerValue other) Returns the given RangeIntegerValue, shifted left by this IntegerValue.shiftRight(IntegerValue other) Returns this IntegerValue, shifted right by the given IntegerValue.shiftRight(ParticularIntegerValue other) Returns this IntegerValue, shifted right by the given ParticularIntegerValue.shiftRight(RangeIntegerValue other) Returns this IntegerValue, shifted right by the given RangeIntegerValue.shiftRightOf(IntegerValue other) Returns the given IntegerValue, shifted right by this IntegerValue.shiftRightOf(LongValue other) Returns the given LongValue, shifted right by this IntegerValue.Returns the given ParticularIntegerValue, shifted right by this IntegerValue.shiftRightOf(ParticularLongValue other) Returns the given ParticularLongValue, shifted right by this IntegerValue.shiftRightOf(RangeIntegerValue other) Returns the given RangeIntegerValue, shifted right by this IntegerValue.subtract(IntegerValue other) Returns the difference of this IntegerValue and the given IntegerValue.subtract(ParticularIntegerValue other) Returns the difference of this IntegerValue and the given ParticularIntegerValue.subtract(RangeIntegerValue other) Returns the difference of this IntegerValue and the given RangeIntegerValue.subtractFrom(IntegerValue other) Returns the difference of the given IntegerValue and this IntegerValue.Returns the difference of the given ParticularIntegerValue and this IntegerValue.subtractFrom(RangeIntegerValue other) Returns the difference of the given RangeIntegerValue and this IntegerValue.toString()unsignedShiftRight(IntegerValue other) Returns this unsigned IntegerValue, shifted left by the given IntegerValue.Returns this unsigned IntegerValue, shifted right by the given ParticularIntegerValue.Returns this unsigned IntegerValue, shifted right by the given RangeIntegerValue.unsignedShiftRightOf(IntegerValue other) Returns the given unsigned IntegerValue, shifted left by this IntegerValue.unsignedShiftRightOf(LongValue other) Returns the given unsigned LongValue, shifted right by this IntegerValue.Returns the given unsigned ParticularIntegerValue, shifted right by this IntegerValue.Returns the given unsigned ParticularLongValue, shifted right by this IntegerValue.Returns the given unsigned RangeIntegerValue, shifted right by this IntegerValue.intvalue()Returns the specific integer value, if applicable.xor(IntegerValue other) Returns the logical xor of this IntegerValue and the given IntegerValue.xor(ParticularIntegerValue other) Returns the logical xor of this IntegerValue and the given ParticularIntegerValue.xor(RangeIntegerValue other) Returns the logical xor of this IntegerValue and the given RangeIntegerValue.Methods inherited from class proguard.evaluation.value.SpecificIntegerValue
add, and, divide, divideOf, equal, generalize, isSpecific, lessThan, lessThanOrEqual, multiply, or, remainder, remainderOf, shiftLeft, shiftLeftOf, shiftLeftOf, shiftRight, shiftRightOf, shiftRightOf, subtract, subtractFrom, unsignedShiftRight, unsignedShiftRightOf, unsignedShiftRightOf, xorMethods inherited from class proguard.evaluation.value.IntegerValue
add, and, computationalType, divide, divideOf, equal, generalize, generalize, greaterThan, greaterThan, greaterThan, greaterThan, greaterThan, greaterThanOrEqual, greaterThanOrEqual, greaterThanOrEqual, greaterThanOrEqual, greaterThanOrEqual, integerValue, internalType, lessThan, lessThanOrEqual, multiply, notEqual, notEqual, notEqual, notEqual, notEqual, or, remainder, remainderOf, shiftLeft, shiftLeftOf, shiftLeftOf, shiftRight, shiftRightOf, shiftRightOf, subtract, subtractFrom, unsignedShiftRight, unsignedShiftRightOf, unsignedShiftRightOf, xorMethods inherited from class proguard.evaluation.value.Category1Value
category1Value, isCategory2Methods inherited from class proguard.evaluation.value.Value
category2Value, copyIfMutable, doubleValue, floatValue, instructionOffsetValue, longValue, referenceValue
-
Constructor Details
-
ParticularIntegerValue
public ParticularIntegerValue(int value) Creates a new particular integer value.
-
-
Method Details
-
value
public int value()Description copied from class:IntegerValueReturns the specific integer value, if applicable.- Overrides:
valuein classIntegerValue
-
negate
Description copied from class:IntegerValueReturns the negated value of this IntegerValue.- Overrides:
negatein classSpecificIntegerValue
-
convertToByte
Description copied from class:IntegerValueConverts this IntegerValue to a byte IntegerValue.- Overrides:
convertToBytein classSpecificIntegerValue
-
convertToCharacter
Description copied from class:IntegerValueConverts this IntegerValue to a character IntegerValue.- Overrides:
convertToCharacterin classSpecificIntegerValue
-
convertToShort
Description copied from class:IntegerValueConverts this IntegerValue to a short IntegerValue.- Overrides:
convertToShortin classSpecificIntegerValue
-
convertToLong
Description copied from class:IntegerValueConverts this IntegerValue to a LongValue.- Overrides:
convertToLongin classSpecificIntegerValue
-
convertToFloat
Description copied from class:IntegerValueConverts this IntegerValue to a FloatValue.- Overrides:
convertToFloatin classSpecificIntegerValue
-
convertToDouble
Description copied from class:IntegerValueConverts this IntegerValue to a DoubleValue.- Overrides:
convertToDoublein classSpecificIntegerValue
-
generalize
Description copied from class:IntegerValueReturns the generalization of this IntegerValue and the given other IntegerValue.- Overrides:
generalizein classSpecificIntegerValue
-
add
Description copied from class:IntegerValueReturns the sum of this IntegerValue and the given IntegerValue.- Overrides:
addin classSpecificIntegerValue
-
subtract
Description copied from class:IntegerValueReturns the difference of this IntegerValue and the given IntegerValue.- Overrides:
subtractin classSpecificIntegerValue
-
subtractFrom
Description copied from class:IntegerValueReturns the difference of the given IntegerValue and this IntegerValue.- Overrides:
subtractFromin classSpecificIntegerValue
-
multiply
Description copied from class:IntegerValueReturns the product of this IntegerValue and the given IntegerValue.- Overrides:
multiplyin classSpecificIntegerValue
-
divide
Description copied from class:IntegerValueReturns the quotient of this IntegerValue and the given IntegerValue.- Overrides:
dividein classSpecificIntegerValue- Throws:
ArithmeticException
-
divideOf
Description copied from class:IntegerValueReturns the quotient of the given IntegerValue and this IntegerValue.- Overrides:
divideOfin classSpecificIntegerValue- Throws:
ArithmeticException
-
remainder
Description copied from class:IntegerValueReturns the remainder of this IntegerValue divided by the given IntegerValue.- Overrides:
remainderin classSpecificIntegerValue- Throws:
ArithmeticException
-
remainderOf
Description copied from class:IntegerValueReturns the remainder of the given IntegerValue divided by this IntegerValue.- Overrides:
remainderOfin classSpecificIntegerValue- Throws:
ArithmeticException
-
shiftLeft
Description copied from class:IntegerValueReturns this IntegerValue, shifted left by the given IntegerValue.- Overrides:
shiftLeftin classSpecificIntegerValue
-
shiftLeftOf
Description copied from class:IntegerValueReturns the given IntegerValue, shifted left by this IntegerValue.- Overrides:
shiftLeftOfin classSpecificIntegerValue
-
shiftRight
Description copied from class:IntegerValueReturns this IntegerValue, shifted right by the given IntegerValue.- Overrides:
shiftRightin classSpecificIntegerValue
-
shiftRightOf
Description copied from class:IntegerValueReturns the given IntegerValue, shifted right by this IntegerValue.- Overrides:
shiftRightOfin classSpecificIntegerValue
-
unsignedShiftRight
Description copied from class:IntegerValueReturns this unsigned IntegerValue, shifted left by the given IntegerValue.- Overrides:
unsignedShiftRightin classSpecificIntegerValue
-
unsignedShiftRightOf
Description copied from class:IntegerValueReturns the given unsigned IntegerValue, shifted left by this IntegerValue.- Overrides:
unsignedShiftRightOfin classSpecificIntegerValue
-
shiftLeftOf
Description copied from class:IntegerValueReturns the given LongValue, shifted left by this IntegerValue.- Overrides:
shiftLeftOfin classSpecificIntegerValue
-
shiftRightOf
Description copied from class:IntegerValueReturns the given LongValue, shifted right by this IntegerValue.- Overrides:
shiftRightOfin classSpecificIntegerValue
-
unsignedShiftRightOf
Description copied from class:IntegerValueReturns the given unsigned LongValue, shifted right by this IntegerValue.- Overrides:
unsignedShiftRightOfin classSpecificIntegerValue
-
and
Description copied from class:IntegerValueReturns the logical and of this IntegerValue and the given IntegerValue.- Overrides:
andin classSpecificIntegerValue
-
or
Description copied from class:IntegerValueReturns the logical or of this IntegerValue and the given IntegerValue.- Overrides:
orin classSpecificIntegerValue
-
xor
Description copied from class:IntegerValueReturns the logical xor of this IntegerValue and the given IntegerValue.- Overrides:
xorin classSpecificIntegerValue
-
equal
Description copied from class:IntegerValueReturns whether this IntegerValue and the given IntegerValue are equal:NEVER,MAYBE, orALWAYS.- Overrides:
equalin classSpecificIntegerValue
-
lessThan
Description copied from class:IntegerValueReturns whether this IntegerValue is less than the given IntegerValue:NEVER,MAYBE, orALWAYS.- Overrides:
lessThanin classSpecificIntegerValue
-
lessThanOrEqual
Description copied from class:IntegerValueReturns whether this IntegerValue is less than or equal to the given IntegerValue:NEVER,MAYBE, orALWAYS.- Overrides:
lessThanOrEqualin classSpecificIntegerValue
-
generalize
Description copied from class:IntegerValueReturns the generalization of this IntegerValue and the given other ParticularIntegerValue.- Overrides:
generalizein classIntegerValue
-
add
Description copied from class:IntegerValueReturns the sum of this IntegerValue and the given ParticularIntegerValue.- Overrides:
addin classIntegerValue
-
subtract
Description copied from class:IntegerValueReturns the difference of this IntegerValue and the given ParticularIntegerValue.- Overrides:
subtractin classIntegerValue
-
subtractFrom
Description copied from class:IntegerValueReturns the difference of the given ParticularIntegerValue and this IntegerValue.- Overrides:
subtractFromin classIntegerValue
-
multiply
Description copied from class:IntegerValueReturns the product of this IntegerValue and the given ParticularIntegerValue.- Overrides:
multiplyin classIntegerValue
-
divide
Description copied from class:IntegerValueReturns the quotient of this IntegerValue and the given ParticularIntegerValue.- Overrides:
dividein classIntegerValue- Throws:
ArithmeticException
-
divideOf
Description copied from class:IntegerValueReturns the quotient of the given ParticularIntegerValue and this IntegerValue.- Overrides:
divideOfin classIntegerValue- Throws:
ArithmeticException
-
remainder
Description copied from class:IntegerValueReturns the remainder of this IntegerValue divided by the given ParticularIntegerValue.- Overrides:
remainderin classIntegerValue- Throws:
ArithmeticException
-
remainderOf
Description copied from class:IntegerValueReturns the remainder of the given ParticularIntegerValue divided by this IntegerValue.- Overrides:
remainderOfin classIntegerValue- Throws:
ArithmeticException
-
shiftLeft
Description copied from class:IntegerValueReturns this IntegerValue, shifted left by the given ParticularIntegerValue.- Overrides:
shiftLeftin classIntegerValue
-
shiftRight
Description copied from class:IntegerValueReturns this IntegerValue, shifted right by the given ParticularIntegerValue.- Overrides:
shiftRightin classIntegerValue
-
unsignedShiftRight
Description copied from class:IntegerValueReturns this unsigned IntegerValue, shifted right by the given ParticularIntegerValue.- Overrides:
unsignedShiftRightin classIntegerValue
-
shiftLeftOf
Description copied from class:IntegerValueReturns the given ParticularIntegerValue, shifted left by this IntegerValue.- Overrides:
shiftLeftOfin classIntegerValue
-
shiftRightOf
Description copied from class:IntegerValueReturns the given ParticularIntegerValue, shifted right by this IntegerValue.- Overrides:
shiftRightOfin classIntegerValue
-
unsignedShiftRightOf
Description copied from class:IntegerValueReturns the given unsigned ParticularIntegerValue, shifted right by this IntegerValue.- Overrides:
unsignedShiftRightOfin classIntegerValue
-
shiftLeftOf
Description copied from class:IntegerValueReturns the given ParticularLongValue, shifted left by this IntegerValue.- Overrides:
shiftLeftOfin classIntegerValue
-
shiftRightOf
Description copied from class:IntegerValueReturns the given ParticularLongValue, shifted right by this IntegerValue.- Overrides:
shiftRightOfin classIntegerValue
-
unsignedShiftRightOf
Description copied from class:IntegerValueReturns the given unsigned ParticularLongValue, shifted right by this IntegerValue.- Overrides:
unsignedShiftRightOfin classIntegerValue
-
and
Description copied from class:IntegerValueReturns the logical and of this IntegerValue and the given ParticularIntegerValue.- Overrides:
andin classIntegerValue
-
or
Description copied from class:IntegerValueReturns the logical or of this IntegerValue and the given ParticularIntegerValue.- Overrides:
orin classIntegerValue
-
xor
Description copied from class:IntegerValueReturns the logical xor of this IntegerValue and the given ParticularIntegerValue.- Overrides:
xorin classIntegerValue
-
equal
Description copied from class:IntegerValueReturns whether this IntegerValue and the given ParticularIntegerValue are equal:NEVER,MAYBE, orALWAYS.- Overrides:
equalin classIntegerValue
-
lessThan
Description copied from class:IntegerValueReturns whether this IntegerValue is less than the given ParticularIntegerValue:NEVER,MAYBE, orALWAYS.- Overrides:
lessThanin classIntegerValue
-
lessThanOrEqual
Description copied from class:IntegerValueReturns whether this IntegerValue is less than or equal to the given ParticularIntegerValue:NEVER,MAYBE, orALWAYS.- Overrides:
lessThanOrEqualin classIntegerValue
-
generalize
Description copied from class:IntegerValueReturns the generalization of this IntegerValue and the given other RangeIntegerValue.- Overrides:
generalizein classSpecificIntegerValue
-
add
Description copied from class:IntegerValueReturns the sum of this IntegerValue and the given RangeIntegerValue.- Overrides:
addin classSpecificIntegerValue
-
subtract
Description copied from class:IntegerValueReturns the difference of this IntegerValue and the given RangeIntegerValue.- Overrides:
subtractin classSpecificIntegerValue
-
subtractFrom
Description copied from class:IntegerValueReturns the difference of the given RangeIntegerValue and this IntegerValue.- Overrides:
subtractFromin classSpecificIntegerValue
-
multiply
Description copied from class:IntegerValueReturns the product of this IntegerValue and the given RangeIntegerValue.- Overrides:
multiplyin classSpecificIntegerValue
-
divide
Description copied from class:IntegerValueReturns the quotient of this IntegerValue and the given RangeIntegerValue.- Overrides:
dividein classSpecificIntegerValue- Throws:
ArithmeticException
-
divideOf
Description copied from class:IntegerValueReturns the quotient of the given RangeIntegerValue and this IntegerValue.- Overrides:
divideOfin classSpecificIntegerValue- Throws:
ArithmeticException
-
remainder
Description copied from class:IntegerValueReturns the remainder of this IntegerValue divided by the given RangeIntegerValue.- Overrides:
remainderin classSpecificIntegerValue- Throws:
ArithmeticException
-
remainderOf
Description copied from class:IntegerValueReturns the remainder of the given RangeIntegerValue divided by this IntegerValue.- Overrides:
remainderOfin classSpecificIntegerValue- Throws:
ArithmeticException
-
shiftLeft
Description copied from class:IntegerValueReturns this IntegerValue, shifted left by the given RangeIntegerValue.- Overrides:
shiftLeftin classSpecificIntegerValue
-
shiftLeftOf
Description copied from class:IntegerValueReturns the given RangeIntegerValue, shifted left by this IntegerValue.- Overrides:
shiftLeftOfin classSpecificIntegerValue
-
shiftRight
Description copied from class:IntegerValueReturns this IntegerValue, shifted right by the given RangeIntegerValue.- Overrides:
shiftRightin classSpecificIntegerValue
-
shiftRightOf
Description copied from class:IntegerValueReturns the given RangeIntegerValue, shifted right by this IntegerValue.- Overrides:
shiftRightOfin classSpecificIntegerValue
-
unsignedShiftRight
Description copied from class:IntegerValueReturns this unsigned IntegerValue, shifted right by the given RangeIntegerValue.- Overrides:
unsignedShiftRightin classSpecificIntegerValue
-
unsignedShiftRightOf
Description copied from class:IntegerValueReturns the given unsigned RangeIntegerValue, shifted right by this IntegerValue.- Overrides:
unsignedShiftRightOfin classSpecificIntegerValue
-
and
Description copied from class:IntegerValueReturns the logical and of this IntegerValue and the given RangeIntegerValue.- Overrides:
andin classSpecificIntegerValue
-
or
Description copied from class:IntegerValueReturns the logical or of this IntegerValue and the given RangeIntegerValue.- Overrides:
orin classSpecificIntegerValue
-
xor
Description copied from class:IntegerValueReturns the logical xor of this IntegerValue and the given RangeIntegerValue.- Overrides:
xorin classSpecificIntegerValue
-
equal
Description copied from class:IntegerValueReturns whether this IntegerValue and the given RangeIntegerValue are equal:NEVER,MAYBE, orALWAYS.- Overrides:
equalin classSpecificIntegerValue
-
lessThan
Description copied from class:IntegerValueReturns whether this IntegerValue is less than the given RangeIntegerValue:NEVER,MAYBE, orALWAYS.- Overrides:
lessThanin classSpecificIntegerValue
-
lessThanOrEqual
Description copied from class:IntegerValueReturns whether this IntegerValue is less than or equal to the given RangeIntegerValue:NEVER,MAYBE, orALWAYS.- Overrides:
lessThanOrEqualin classSpecificIntegerValue
-
isParticular
public boolean isParticular()Description copied from class:ValueReturns whether this Value represents a single particular (known) value.- Overrides:
isParticularin classValue
-
equals
- Overrides:
equalsin classSpecificIntegerValue
-
hashCode
public int hashCode()- Overrides:
hashCodein classSpecificIntegerValue
-
toString
-