Double

scala.math.Equiv$.Double$
object Double

Equivs for Doubles.

Attributes

Source:
Equiv.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Double.type

Members list

Concise view

Type members

Classlikes

object IeeeEquiv extends IeeeEquiv

Attributes

Companion:
trait
Source:
Equiv.scala
Graph
Supertypes
trait IeeeEquiv
trait Equiv[Double]
class Object
trait Matchable
class Any
Self type
trait IeeeEquiv extends Equiv[Double]

An equivalence for Doubles which is consistent with IEEE specifications.

An equivalence for Doubles which is consistent with IEEE specifications.

Because the behaviour of Doubles specified by IEEE is not consistent with behaviors required of an equivalence relation for NaN (it is not reflexive), there are two equivalences defined for Double: StrictEquiv, which is reflexive, and IeeeEquiv, which is consistent with IEEE spec and floating point operations defined in scala.math.

This equivalence may be preferable for numeric contexts.

Attributes

See also:
Companion:
object
Source:
Equiv.scala
Graph
Supertypes
trait Equiv[Double]
class Object
trait Matchable
class Any
Known subtypes
object IeeeEquiv.type
object StrictEquiv extends StrictEquiv

Attributes

Companion:
trait
Source:
Equiv.scala
Graph
Supertypes
trait Equiv[Double]
class Object
trait Matchable
class Any
Self type
trait StrictEquiv extends Equiv[Double]

An equivalence for Doubles which is reflexive (treats all NaNs as equivalent), and treats -0.0 and 0.0 as not equivalent; it behaves the same as java.lang.Double.compare.

An equivalence for Doubles which is reflexive (treats all NaNs as equivalent), and treats -0.0 and 0.0 as not equivalent; it behaves the same as java.lang.Double.compare.

Because the behaviour of Doubles specified by IEEE is not consistent with behaviors required of an equivalence relation for NaN (it is not reflexive), there are two equivalences defined for Double: StrictEquiv, which is reflexive, and IeeeEquiv, which is consistent with IEEE spec and floating point operations defined in scala.math.

This equivalence may be preferable for collections.

Attributes

See also:
Companion:
object
Source:
Equiv.scala
Graph
Supertypes
trait Equiv[Double]
class Object
trait Matchable
class Any
Known subtypes
object StrictEquiv.type