Package org.jf.dexlib2.base.value
Class BaseDoubleEncodedValue
- java.lang.Object
-
- org.jf.dexlib2.base.value.BaseDoubleEncodedValue
-
- All Implemented Interfaces:
java.lang.Comparable<EncodedValue>,DoubleEncodedValue,EncodedValue
- Direct Known Subclasses:
ImmutableDoubleEncodedValue
public abstract class BaseDoubleEncodedValue extends java.lang.Object implements DoubleEncodedValue
-
-
Constructor Summary
Constructors Constructor Description BaseDoubleEncodedValue()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareTo(EncodedValue o)Compare this DoubleEncodedValue to another EncodedValue.booleanequals(java.lang.Object o)Compares this DoubleEncodedValue to another DoubleEncodedValue for equality.intgetValueType()Returns the type of this encoded value.inthashCode()Returns a hashcode for this EncodedDoubleValue.java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.jf.dexlib2.iface.value.DoubleEncodedValue
getValue
-
-
-
-
Method Detail
-
hashCode
public int hashCode()
Description copied from interface:DoubleEncodedValueReturns a hashcode for this EncodedDoubleValue. This hashCode is defined to be the following:
Note: This is slightly different than the definition of Double.hashCode(). This uses doubleToRawLongBits() instead of doubleToLongBits(), in order to preserve as much information as possible.long v = Double.doubleToRawLongBits(getValue()); int hashCode = (int)(v^(v>>>32));- Specified by:
hashCodein interfaceDoubleEncodedValue- Overrides:
hashCodein classjava.lang.Object- Returns:
- The hash code value for this EncodedDoubleValue
-
equals
public boolean equals(@Nullable java.lang.Object o)Description copied from interface:DoubleEncodedValueCompares this DoubleEncodedValue to another DoubleEncodedValue for equality. This DoubleEncodedValue is equal to another DoubleEncodedValue if the values returned by getValue().doubleToRawLongBits() are equal. Note: this isn't quite the same as getValue() == getValue(), due to various NaN issues and signed zero issues.- Specified by:
equalsin interfaceDoubleEncodedValue- Overrides:
equalsin classjava.lang.Object- Parameters:
o- The object to be compared for equality with this DoubleEncodedValue- Returns:
- true if the specified object is equal to this DoubleEncodedValue
-
compareTo
public int compareTo(@Nonnull EncodedValue o)Description copied from interface:DoubleEncodedValueCompare this DoubleEncodedValue to another EncodedValue. The comparison is first done on the return values of getValueType(), and then if the other value is another DoubleEncodedValue, the return values of getValue() are compared, using the semantics of Double.compare()- Specified by:
compareToin interfacejava.lang.Comparable<EncodedValue>- Specified by:
compareToin interfaceDoubleEncodedValue- Parameters:
o- The EncodedValue to compare with this DoubleEncodedValue- Returns:
- An integer representing the result of the comparison
-
getValueType
public int getValueType()
Description copied from interface:EncodedValueReturns the type of this encoded value. The returned integer will be one of the ValueType.* constants.- Specified by:
getValueTypein interfaceEncodedValue- Returns:
- The type of this encoded value
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-