com.ericsson.otp.erlang
Class OtpErlangDouble

java.lang.Object
  extended by com.ericsson.otp.erlang.OtpErlangObject
      extended by com.ericsson.otp.erlang.OtpErlangDouble
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable
Direct Known Subclasses:
OtpErlangFloat

public class OtpErlangDouble
extends OtpErlangObject
implements java.io.Serializable, java.lang.Cloneable

Provides a Java representation of Erlang floats and doubles. Erlang defines only one floating point numeric type, however this class and its subclass OtpErlangFloat are used to provide representations corresponding to the Java types Double and Float.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class com.ericsson.otp.erlang.OtpErlangObject
OtpErlangObject.Hash
 
Field Summary
 
Fields inherited from class com.ericsson.otp.erlang.OtpErlangObject
hashCodeValue
 
Constructor Summary
OtpErlangDouble(double d)
          Create an Erlang float from the given double value.
OtpErlangDouble(OtpInputStream buf)
          Create an Erlang float from a stream containing a double encoded in Erlang external format.
 
Method Summary
protected  int doHashCode()
           
 double doubleValue()
          Get the value, as a double.
 void encode(OtpOutputStream buf)
          Convert this double to the equivalent Erlang external representation.
 boolean equals(java.lang.Object o)
          Determine if two floats are equal.
 float floatValue()
          Get the value, as a float.
 java.lang.String toString()
          Get the string representation of this double.
 
Methods inherited from class com.ericsson.otp.erlang.OtpErlangObject
clone, decode, hashCode
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OtpErlangDouble

public OtpErlangDouble(double d)
Create an Erlang float from the given double value.


OtpErlangDouble

public OtpErlangDouble(OtpInputStream buf)
                throws OtpErlangDecodeException
Create an Erlang float from a stream containing a double encoded in Erlang external format.

Parameters:
buf - the stream containing the encoded value.
Throws:
OtpErlangDecodeException - if the buffer does not contain a valid external representation of an Erlang float.
Method Detail

doubleValue

public double doubleValue()
Get the value, as a double.

Returns:
the value of this object, as a double.

floatValue

public float floatValue()
                 throws OtpErlangRangeException
Get the value, as a float.

Returns:
the value of this object, as a float.
Throws:
OtpErlangRangeException - if the value cannot be represented as a float.

toString

public java.lang.String toString()
Get the string representation of this double.

Specified by:
toString in class OtpErlangObject
Returns:
the string representation of this double.

encode

public void encode(OtpOutputStream buf)
Convert this double to the equivalent Erlang external representation.

Specified by:
encode in class OtpErlangObject
Parameters:
buf - an output stream to which the encoded value should be written.

equals

public boolean equals(java.lang.Object o)
Determine if two floats are equal. Floats are equal if they contain the same value.

Specified by:
equals in class OtpErlangObject
Parameters:
o - the float to compare to.
Returns:
true if the floats have the same value.

doHashCode

protected int doHashCode()
Overrides:
doHashCode in class OtpErlangObject