o

# NonZeroDouble

### Companion class NonZeroDouble

#### objectNonZeroDouble

The companion object for NonZeroDouble that offers factory methods that produce NonZeroDoubles, implicit widening conversions from NonZeroDouble to other numeric types, and maximum and minimum constant values for NonZeroDouble.

Source
NonZeroDouble.scala
Linear Supertypes
AnyRef, Any
Ordering
1. Alphabetic
2. By Inheritance
Inherited
1. NonZeroDouble
2. AnyRef
3. Any
1. Hide All
2. Show All
Visibility
1. Public
2. Protected

### Value Members

1. final def !=(arg0: Any): Boolean
Definition Classes
AnyRef → Any
2. final def ##(): Int
Definition Classes
AnyRef → Any
3. final def ==(arg0: Any): Boolean
Definition Classes
AnyRef → Any
4. final val MaxValue

The largest value representable as a non-zero Double, which is NonZeroDouble(1.7976931348623157E308).

5. final val MinPositiveValue

The smallest positive value greater than 0.0d representable as a NonZeroDouble, which is NonZeroDouble(4.9E-324).

6. final val MinValue

The smallest value representable as a non-zero Double, which is NonZeroDouble(-1.7976931348623157E308).

7. final val NegativeInfinity

The negative infinity value, which is NonZeroDouble.ensuringValid(Double.NegativeInfinity).

8. final val PositiveInfinity

The positive infinity value, which is NonZeroDouble.ensuringValid(Double.PositiveInfinity).

9. implicit macro def apply(value: Double)

A factory method, implemented via a macro, that produces a NonZeroDouble if passed a valid Double literal, otherwise a compile time error.

A factory method, implemented via a macro, that produces a NonZeroDouble if passed a valid Double literal, otherwise a compile time error.

The macro that implements this method will inspect the specified Double expression at compile time. If the expression is a non-zero Double literal, it will return a NonZeroDouble representing that value. Otherwise, the passed Double expression is either a literal that is not non-zero, or is not a literal, so this method will give a compiler error.

This factory method differs from the from factory method in that this method is implemented via a macro that inspects Double literals at compile time, whereas from inspects Double values at run time.

value

the Double literal expression to inspect at compile time, and if non-zero, to return wrapped in a NonZeroDouble at run time.

returns

the specified, valid Double literal value wrapped in a NonZeroDouble. (If the specified expression is not a valid Double literal, the invocation of this method will not compile.)

10. final def asInstanceOf[T0]: T0
Definition Classes
Any
11. def clone(): AnyRef
Attributes
protected[lang]
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
12. def ensuringValid(value: Double)

A factory/assertion method that produces a NonZeroDouble given a valid Double value, or throws AssertionError, if given an invalid Double value.

A factory/assertion method that produces a NonZeroDouble given a valid Double value, or throws AssertionError, if given an invalid Double value.

This method will inspect the passed Double value and if it is a non-zero Double, it will return a NonZeroDouble representing that value. Otherwise, the passed Double value is not non-zero, so this method will throw AssertionError.

This factory method differs from the apply factory method in that apply is implemented via a macro that inspects Double literals at compile time, whereas from inspects Double values at run time. It differs from a vanilla assert or ensuring call in that you get something you didn't already have if the assertion succeeds: a type that promises a Double is non-zero.

value

the Double to inspect, and if non-zero, return wrapped in a NonZeroDouble.

returns

the specified Double value wrapped in a NonZeroDouble, if it is non-zero, else throws AssertionError.

Exceptions thrown

AssertionError if the passed value is not non-zero

13. final def eq(arg0: AnyRef): Boolean
Definition Classes
AnyRef
14. def equals(arg0: AnyRef): Boolean
Definition Classes
AnyRef → Any
15. def finalize(): Unit
Attributes
protected[lang]
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.Throwable])
16. def from(value: Double): Option[NonZeroDouble]

A factory method that produces an Option[NonZeroDouble] given a Double value.

A factory method that produces an Option[NonZeroDouble] given a Double value.

This method will inspect the passed Double value and if it is a non-zero Double, it will return a NonZeroDouble representing that value, wrapped in a Some. Otherwise, the passed Double value is not non-zero, so this method will return None.

This factory method differs from the apply factory method in that apply is implemented via a macro that inspects Double literals at compile time, whereas from inspects Double values at run time.

value

the Double to inspect, and if non-zero, return wrapped in a Some[NonZeroDouble].

returns

the specified Double value wrapped in a Some[NonZeroDouble], if it is NonZeroDouble, else None.

17. def fromOrElse(value: Double, default: => NonZeroDouble)

A factory method that produces a NonZeroDouble given a Double value and a default NonZeroDouble.

A factory method that produces a NonZeroDouble given a Double value and a default NonZeroDouble.

This method will inspect the passed Double value and if it is a non-zero Double, it will return a NonZeroDouble representing that value. Otherwise, the passed Double value is non-zero, so this method will return the passed default value.

This factory method differs from the apply factory method in that apply is implemented via a macro that inspects Double literals at compile time, whereas from inspects Double values at run time.

value

the Double to inspect, and if non-zero, return.

default

the NonZeroDouble to return if the passed Double value is not non-zero.

returns

the specified Double value wrapped in a NonZeroDouble, if it is non-zero, else the default NonZeroDouble value.

18. final def getClass(): Class[_ <: AnyRef]
Definition Classes
AnyRef → Any
Annotations
@native()
19. def goodOrElse[B](value: Double)(f: (Double) => B): Or[NonZeroDouble, B]

A factory/validation method that produces a NonZeroDouble, wrapped in a Good, given a valid Double value, or if the given Double is invalid, an error value of type B produced by passing the given invalid Double value to the given function f, wrapped in a Bad.

A factory/validation method that produces a NonZeroDouble, wrapped in a Good, given a valid Double value, or if the given Double is invalid, an error value of type B produced by passing the given invalid Double value to the given function f, wrapped in a Bad.

This method will inspect the passed Double value and if it is a non-zero Double, it will return a NonZeroDouble representing that value, wrapped in a Good. Otherwise, the passed Double value is not non-zero, so this method will return a result of type B obtained by passing the invalid Double value to the given function f, wrapped in a Bad.

This factory method differs from the apply factory method in that apply is implemented via a macro that inspects Double literals at compile time, whereas this method inspects Double values at run time.

value

the Double to inspect, and if non-zero, return wrapped in a Good(NonZeroDouble).

returns

the specified Double value wrapped in a Good(NonZeroDouble), if it is non-zero, else a Bad(f(value)).

20. def hashCode(): Int
Definition Classes
AnyRef → Any
Annotations
@native()
21. final def isInstanceOf[T0]: Boolean
Definition Classes
Any
22. def isValid(value: Double): Boolean

A predicate method that returns true if a given Double value is non-zero.

A predicate method that returns true if a given Double value is non-zero.

value

the Double to inspect, and if non-zero, return true.

returns

true if the specified Double is positive, else false.

23. final def ne(arg0: AnyRef): Boolean
Definition Classes
AnyRef
24. final def notify(): Unit
Definition Classes
AnyRef
Annotations
@native()
25. final def notifyAll(): Unit
Definition Classes
AnyRef
Annotations
@native()
26. implicit val ordering: Ordering[NonZeroDouble]

Implicit Ordering instance.

27. def passOrElse[E](value: Double)(f: (Double) => E): Validation[E]

A validation method that produces a Pass given a valid Double value, or an error value of type E produced by passing the given invalid Int value to the given function f, wrapped in a Fail.

A validation method that produces a Pass given a valid Double value, or an error value of type E produced by passing the given invalid Int value to the given function f, wrapped in a Fail.

This method will inspect the passed Double value and if it is a non-zero Double, it will return a Pass. Otherwise, the passed Double value is non-zero, so this method will return a result of type E obtained by passing the invalid Double value to the given function f, wrapped in a Fail.

This factory method differs from the apply factory method in that apply is implemented via a macro that inspects Double literals at compile time, whereas this method inspects Double values at run time.

value

the Int to validate that it is non-zero.

returns

a Pass if the specified Int value is non-zero, else a Fail containing an error value produced by passing the specified Double to the given function f.

28. def rightOrElse[L](value: Double)(f: (Double) => L): Either[L, NonZeroDouble]

A factory/validation method that produces a NonZeroDouble, wrapped in a Right, given a valid Double value, or if the given Double is invalid, an error value of type L produced by passing the given invalid Double value to the given function f, wrapped in a Left.

A factory/validation method that produces a NonZeroDouble, wrapped in a Right, given a valid Double value, or if the given Double is invalid, an error value of type L produced by passing the given invalid Double value to the given function f, wrapped in a Left.

This method will inspect the passed Double value and if it is a non-zero Double, it will return a NonZeroDouble representing that value, wrapped in a Right. Otherwise, the passed Double value is not non-zero, so this method will return a result of type L obtained by passing the invalid Double value to the given function f, wrapped in a Left.

This factory method differs from the apply factory method in that apply is implemented via a macro that inspects Double literals at compile time, whereas this method inspects Double values at run time.

value

the Double to inspect, and if non-zero, return wrapped in a Right(NonZeroDouble).

returns

the specified Double value wrapped in a Right(NonZeroDouble), if it is non-zero, else a Left(f(value)).

29. final def synchronized[T0](arg0: => T0): T0
Definition Classes
AnyRef
30. def toString(): String
Definition Classes
AnyRef → Any
31. def tryingValid(value: Double): Try[NonZeroDouble]

A factory/validation method that produces a NonZeroDouble, wrapped in a Success, given a valid Float value, or if the given Float is invalid, an AssertionError, wrapped in a Failure.

A factory/validation method that produces a NonZeroDouble, wrapped in a Success, given a valid Float value, or if the given Float is invalid, an AssertionError, wrapped in a Failure.

Note: you should use this method only when you are convinced that it will always succeed, i.e., never throw an exception. It is good practice to add a comment near the invocation of this method indicating why you think it will always succeed to document your reasoning. If you are not sure an ensuringValid call will always succeed, you should use one of the other factory or validation methods provided on this object instead: isValid, tryingValid, passOrElse, goodOrElse, or rightOrElse.

This method will inspect the passed Float value and if it is a non-zero Float, it will return a NonZeroDouble representing that value, wrapped in a Success. Otherwise, the passed Float value is not non-zero, so this method will return an AssertionError, wrapped in a Failure.

This factory method differs from the apply factory method in that apply is implemented via a macro that inspects Float literals at compile time, whereas this method inspects Float values at run time.

value

the Float to inspect, and if non-zero, return wrapped in a Success(NonZeroDouble).

returns

the specified Float value wrapped in a Success(NonZeroDouble), if it is non-zero, else a Failure(AssertionError).

32. final def wait(): Unit
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])
33. final def wait(arg0: Long, arg1: Int): Unit
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])
34. final def wait(arg0: Long): Unit
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException]) @native()
35. implicit def widenToDouble(pos: NonZeroDouble): Double

Implicit widening conversion from NonZeroDouble to Double.

Implicit widening conversion from NonZeroDouble to Double.

pos

the NonZeroDouble to widen

returns

the Double value underlying the specified NonZeroDouble