proguard.evaluation.value
Class LongValue

java.lang.Object
  extended by proguard.evaluation.value.Value
      extended by proguard.evaluation.value.Category2Value
          extended by proguard.evaluation.value.LongValue
Direct Known Subclasses:
UnknownLongValue

public abstract class LongValue
extends Category2Value

This class represents a partially evaluated 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
 
Constructor Summary
LongValue()
           
 
Method Summary
 LongValue add(LongValue other)
          Returns the sum of this LongValue and the given LongValue.
 LongValue add(proguard.evaluation.value.ParticularLongValue other)
          Returns the sum of this LongValue and the given ParticularLongValue.
 LongValue add(proguard.evaluation.value.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(proguard.evaluation.value.ParticularLongValue other)
          Returns the logical and of this LongValue and the given ParticularLongValue.
 LongValue and(proguard.evaluation.value.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(proguard.evaluation.value.ParticularLongValue other)
          Returns an IntegerValue with value -1, 0, or 1, if this LongValue is less than, equal to, or greater than the given ParticularLongValue, respectively.
 IntegerValue compare(proguard.evaluation.value.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.
 IntegerValue compareReverse(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 compareReverse(proguard.evaluation.value.ParticularLongValue other)
          Returns an IntegerValue with value 1, 0, or -1, if this LongValue is less than, equal to, or greater than the given ParticularLongValue, respectively.
 IntegerValue compareReverse(proguard.evaluation.value.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.
 int computationalType()
          Returns the computational type of this Value.
abstract  DoubleValue convertToDouble()
          Converts this LongValue to a DoubleValue.
abstract  FloatValue convertToFloat()
          Converts this LongValue to a FloatValue.
abstract  IntegerValue convertToInteger()
          Converts this LongValue to an IntegerValue.
 LongValue divide(LongValue other)
          Returns the quotient of this LongValue and the given LongValue.
 LongValue divide(proguard.evaluation.value.ParticularLongValue other)
          Returns the quotient of this LongValue and the given ParticularLongValue.
 LongValue divide(proguard.evaluation.value.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(proguard.evaluation.value.ParticularLongValue other)
          Returns the quotient of the given ParticularLongValue and this LongValue.
 LongValue divideOf(proguard.evaluation.value.SpecificLongValue other)
          Returns the quotient of the given SpecificLongValue and this LongValue.
 LongValue generalize(LongValue other)
          Returns the generalization of this LongValue and the given other LongValue.
 LongValue generalize(proguard.evaluation.value.ParticularLongValue other)
          Returns the generalization of this LongValue and the given other ParticularLongValue.
 LongValue generalize(proguard.evaluation.value.SpecificLongValue other)
          Returns the generalization of this LongValue and the given other SpecificLongValue.
 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.
 LongValue longValue()
          Returns this Value as a LongValue.
 LongValue multiply(LongValue other)
          Returns the product of this LongValue and the given LongValue.
 LongValue multiply(proguard.evaluation.value.ParticularLongValue other)
          Returns the product of this LongValue and the given ParticularLongValue.
 LongValue multiply(proguard.evaluation.value.SpecificLongValue other)
          Returns the product of this LongValue and the given SpecificLongValue.
abstract  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(proguard.evaluation.value.ParticularLongValue other)
          Returns the logical or of this LongValue and the given ParticularLongValue.
 LongValue or(proguard.evaluation.value.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(proguard.evaluation.value.ParticularLongValue other)
          Returns the remainder of this LongValue divided by the given ParticularLongValue.
 LongValue remainder(proguard.evaluation.value.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(proguard.evaluation.value.ParticularLongValue other)
          Returns the remainder of the given ParticularLongValue divided by this LongValue.
 LongValue remainderOf(proguard.evaluation.value.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(proguard.evaluation.value.ParticularIntegerValue other)
          Returns this LongValue, shifted left by the given ParticularIntegerValue.
 LongValue shiftLeft(proguard.evaluation.value.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(proguard.evaluation.value.ParticularIntegerValue other)
          Returns this LongValue, shifted right by the given ParticularIntegerValue.
 LongValue shiftRight(proguard.evaluation.value.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(proguard.evaluation.value.ParticularLongValue other)
          Returns the difference of this LongValue and the given ParticularLongValue.
 LongValue subtract(proguard.evaluation.value.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(proguard.evaluation.value.ParticularLongValue other)
          Returns the difference of the given ParticularLongValue and this LongValue.
 LongValue subtractFrom(proguard.evaluation.value.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(proguard.evaluation.value.ParticularIntegerValue other)
          Returns this unsigned LongValue, shifted right by the given ParticularIntegerValue.
 LongValue unsignedShiftRight(proguard.evaluation.value.SpecificLongValue other)
          Returns this unsigned LongValue, shifted right by the given SpecificLongValue.
 long value()
          Returns the specific long value, if applicable.
 LongValue xor(LongValue other)
          Returns the logical xor of this LongValue and the given LongValue.
 LongValue xor(proguard.evaluation.value.ParticularLongValue other)
          Returns the logical xor of this LongValue and the given ParticularLongValue.
 LongValue xor(proguard.evaluation.value.SpecificLongValue other)
          Returns the logical xor of this LongValue and the given SpecificLongValue.
 
Methods inherited from class proguard.evaluation.value.Category2Value
category2Value, isCategory2
 
Methods inherited from class proguard.evaluation.value.Value
category1Value, doubleValue, floatValue, instructionOffsetValue, integerValue, isParticular, isSpecific, referenceValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LongValue

public LongValue()
Method Detail

value

public long value()
Returns the specific long value, if applicable.


negate

public abstract LongValue negate()
Returns the negated value of this LongValue.


convertToInteger

public abstract IntegerValue convertToInteger()
Converts this LongValue to an IntegerValue.


convertToFloat

public abstract FloatValue convertToFloat()
Converts this LongValue to a FloatValue.


convertToDouble

public abstract DoubleValue convertToDouble()
Converts this LongValue to a DoubleValue.


generalize

public LongValue generalize(LongValue other)
Returns the generalization of this LongValue and the given other LongValue.


add

public LongValue add(LongValue other)
Returns the sum of this LongValue and the given LongValue.


subtract

public LongValue subtract(LongValue other)
Returns the difference of this LongValue and the given LongValue.


subtractFrom

public LongValue subtractFrom(LongValue other)
Returns the difference of the given LongValue and this LongValue.


multiply

public LongValue multiply(LongValue other)
                   throws java.lang.ArithmeticException
Returns the product of this LongValue and the given LongValue.

Throws:
java.lang.ArithmeticException

divide

public LongValue divide(LongValue other)
                 throws java.lang.ArithmeticException
Returns the quotient of this LongValue and the given LongValue.

Throws:
java.lang.ArithmeticException

divideOf

public LongValue divideOf(LongValue other)
                   throws java.lang.ArithmeticException
Returns the quotient of the given LongValue and this LongValue.

Throws:
java.lang.ArithmeticException

remainder

public LongValue remainder(LongValue other)
                    throws java.lang.ArithmeticException
Returns the remainder of this LongValue divided by the given LongValue.

Throws:
java.lang.ArithmeticException

remainderOf

public LongValue remainderOf(LongValue other)
                      throws java.lang.ArithmeticException
Returns the remainder of the given LongValue divided by this LongValue.

Throws:
java.lang.ArithmeticException

shiftLeft

public LongValue shiftLeft(IntegerValue other)
Returns this LongValue, shifted left by the given IntegerValue.


shiftRight

public LongValue shiftRight(IntegerValue other)
Returns this LongValue, shifted right by the given IntegerValue.


unsignedShiftRight

public LongValue unsignedShiftRight(IntegerValue other)
Returns this unsigned LongValue, shifted left by the given IntegerValue.


and

public LongValue and(LongValue other)
Returns the logical and of this LongValue and the given LongValue.


or

public LongValue or(LongValue other)
Returns the logical or of this LongValue and the given LongValue.


xor

public LongValue xor(LongValue other)
Returns the logical xor of this LongValue and the given LongValue.


compare

public 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.


compareReverse

public final IntegerValue compareReverse(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.


generalize

public LongValue generalize(proguard.evaluation.value.SpecificLongValue other)
Returns the generalization of this LongValue and the given other SpecificLongValue.


add

public LongValue add(proguard.evaluation.value.SpecificLongValue other)
Returns the sum of this LongValue and the given SpecificLongValue.


subtract

public LongValue subtract(proguard.evaluation.value.SpecificLongValue other)
Returns the difference of this LongValue and the given SpecificLongValue.


subtractFrom

public LongValue subtractFrom(proguard.evaluation.value.SpecificLongValue other)
Returns the difference of the given SpecificLongValue and this LongValue.


multiply

public LongValue multiply(proguard.evaluation.value.SpecificLongValue other)
Returns the product of this LongValue and the given SpecificLongValue.


divide

public LongValue divide(proguard.evaluation.value.SpecificLongValue other)
Returns the quotient of this LongValue and the given SpecificLongValue.


divideOf

public LongValue divideOf(proguard.evaluation.value.SpecificLongValue other)
Returns the quotient of the given SpecificLongValue and this LongValue.


remainder

public LongValue remainder(proguard.evaluation.value.SpecificLongValue other)
Returns the remainder of this LongValue divided by the given SpecificLongValue.


remainderOf

public LongValue remainderOf(proguard.evaluation.value.SpecificLongValue other)
Returns the remainder of the given SpecificLongValue divided by this LongValue.


shiftLeft

public LongValue shiftLeft(proguard.evaluation.value.SpecificLongValue other)
Returns this LongValue, shifted left by the given SpecificLongValue.


shiftRight

public LongValue shiftRight(proguard.evaluation.value.SpecificLongValue other)
Returns this LongValue, shifted right by the given SpecificLongValue.


unsignedShiftRight

public LongValue unsignedShiftRight(proguard.evaluation.value.SpecificLongValue other)
Returns this unsigned LongValue, shifted right by the given SpecificLongValue.


and

public LongValue and(proguard.evaluation.value.SpecificLongValue other)
Returns the logical and of this LongValue and the given SpecificLongValue.


or

public LongValue or(proguard.evaluation.value.SpecificLongValue other)
Returns the logical or of this LongValue and the given SpecificLongValue.


xor

public LongValue xor(proguard.evaluation.value.SpecificLongValue other)
Returns the logical xor of this LongValue and the given SpecificLongValue.


compare

public IntegerValue compare(proguard.evaluation.value.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.


compareReverse

public final IntegerValue compareReverse(proguard.evaluation.value.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.


generalize

public LongValue generalize(proguard.evaluation.value.ParticularLongValue other)
Returns the generalization of this LongValue and the given other ParticularLongValue.


add

public LongValue add(proguard.evaluation.value.ParticularLongValue other)
Returns the sum of this LongValue and the given ParticularLongValue.


subtract

public LongValue subtract(proguard.evaluation.value.ParticularLongValue other)
Returns the difference of this LongValue and the given ParticularLongValue.


subtractFrom

public LongValue subtractFrom(proguard.evaluation.value.ParticularLongValue other)
Returns the difference of the given ParticularLongValue and this LongValue.


multiply

public LongValue multiply(proguard.evaluation.value.ParticularLongValue other)
Returns the product of this LongValue and the given ParticularLongValue.


divide

public LongValue divide(proguard.evaluation.value.ParticularLongValue other)
Returns the quotient of this LongValue and the given ParticularLongValue.


divideOf

public LongValue divideOf(proguard.evaluation.value.ParticularLongValue other)
Returns the quotient of the given ParticularLongValue and this LongValue.


remainder

public LongValue remainder(proguard.evaluation.value.ParticularLongValue other)
Returns the remainder of this LongValue divided by the given ParticularLongValue.


remainderOf

public LongValue remainderOf(proguard.evaluation.value.ParticularLongValue other)
Returns the remainder of the given ParticularLongValue divided by this LongValue.


shiftLeft

public LongValue shiftLeft(proguard.evaluation.value.ParticularIntegerValue other)
Returns this LongValue, shifted left by the given ParticularIntegerValue.


shiftRight

public LongValue shiftRight(proguard.evaluation.value.ParticularIntegerValue other)
Returns this LongValue, shifted right by the given ParticularIntegerValue.


unsignedShiftRight

public LongValue unsignedShiftRight(proguard.evaluation.value.ParticularIntegerValue other)
Returns this unsigned LongValue, shifted right by the given ParticularIntegerValue.


and

public LongValue and(proguard.evaluation.value.ParticularLongValue other)
Returns the logical and of this LongValue and the given ParticularLongValue.


or

public LongValue or(proguard.evaluation.value.ParticularLongValue other)
Returns the logical or of this LongValue and the given ParticularLongValue.


xor

public LongValue xor(proguard.evaluation.value.ParticularLongValue other)
Returns the logical xor of this LongValue and the given ParticularLongValue.


compare

public IntegerValue compare(proguard.evaluation.value.ParticularLongValue other)
Returns an IntegerValue with value -1, 0, or 1, if this LongValue is less than, equal to, or greater than the given ParticularLongValue, respectively.


compareReverse

public final IntegerValue compareReverse(proguard.evaluation.value.ParticularLongValue other)
Returns an IntegerValue with value 1, 0, or -1, if this LongValue is less than, equal to, or greater than the given ParticularLongValue, respectively.


longValue

public final LongValue longValue()
Description copied from class: Value
Returns this Value as a LongValue.

Overrides:
longValue in class Value

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 class Value

computationalType

public final int computationalType()
Description copied from class: Value
Returns the computational type of this Value.

Specified by:
computationalType in class Value
Returns:
TYPE_INTEGER, TYPE_LONG, TYPE_FLOAT, TYPE_DOUBLE, TYPE_REFERENCE, or TYPE_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 class Value
Returns:
ClassConstants.INTERNAL_TYPE_BOOLEAN, ClassConstants.INTERNAL_TYPE_BYTE, ClassConstants.INTERNAL_TYPE_CHAR, ClassConstants.INTERNAL_TYPE_SHORT, ClassConstants.INTERNAL_TYPE_INT, ClassConstants.INTERNAL_TYPE_LONG, ClassConstants.INTERNAL_TYPE_FLOAT, ClassConstants.INTERNAL_TYPE_DOUBLE, ClassConstants.INTERNAL_TYPE_CLASS_START ... ClassConstants.INTERNAL_TYPE_CLASS_END, or an array type containing any of these types (always as String).