org.scalactic.anyvals

PosDouble

object PosDouble

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

Source
PosDouble.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. PosDouble
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final val MaxValue: PosDouble

    The largest value representable as a positive Double, which is PosDouble(1.7976931348623157E308).

    The largest value representable as a positive Double, which is PosDouble(1.7976931348623157E308).

  7. final val MinPositiveValue: PosDouble

  8. final val MinValue: PosDouble

    The smallest value representable as a positive Double, which is PosDouble(4.9E-324).

    The smallest value representable as a positive Double, which is PosDouble(4.9E-324).

  9. final val PositiveInfinity: PosDouble

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

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

  10. implicit def apply(value: Double): PosDouble

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

    A factory method, implemented via a macro, that produces a PosDouble 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 positive Double literal, it will return a PosDouble representing that value. Otherwise, the passed Double expression is either a literal that is not positive, 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 positive, to return wrapped in a PosDouble at run time.

    returns

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

    Annotations
    @macroImpl( ... )
  11. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  12. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. def ensuringValid(value: Double): PosDouble

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

    A factory/assertion method that produces a PosDouble 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 positive Double, it will return a PosDouble representing that value. Otherwise, the passed Double value is not positive, 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 positive.

    value

    the Double to inspect, and if positive, return wrapped in a PosDouble.

    returns

    the specified Double value wrapped in a PosDouble, if it is positive, else throws AssertionError.

    Exceptions thrown
    AssertionError

    if the passed value is not positive

  14. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  16. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. def from(value: Double): Option[PosDouble]

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

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

    This method will inspect the passed Double value and if it is a positive Double, it will return a PosDouble representing that value, wrapped in a Some. Otherwise, the passed Double value is not positive, 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 positive, return wrapped in a Some[PosDouble].

    returns

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

  18. def fromOrElse(value: Double, default: ⇒ PosDouble): PosDouble

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

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

    This method will inspect the passed Double value and if it is a positive Double, it will return a PosDouble representing that value. Otherwise, the passed Double value is positive, 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 positive, return.

    default

    the PosDouble to return if the passed Double value is not positive.

    returns

    the specified Double value wrapped in a PosDouble, if it is positive, else the default PosDouble value.

  19. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  20. def goodOrElse[B](value: Double)(f: (Double) ⇒ B): Or[PosDouble, B]

    A factory/validation method that produces a PosDouble, 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 PosDouble, 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 positive Double, it will return a PosDouble representing that value, wrapped in a Good. Otherwise, the passed Double value is not positive, 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 positive, return wrapped in a Good(PosDouble).

    returns

    the specified Double value wrapped in a Good(PosDouble), if it is positive, else a Bad(f(value)).

  21. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  22. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  23. def isValid(value: Double): Boolean

    A predicate method that returns true if a given Double value is positive.

    A predicate method that returns true if a given Double value is positive.

    value

    the Double to inspect, and if positive, return true.

    returns

    true if the specified Double is positive, else false.

  24. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  25. final def notify(): Unit

    Definition Classes
    AnyRef
  26. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  27. implicit val ordering: Ordering[PosDouble]

    Implicit Ordering instance.

  28. 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 positive Double, it will return a Pass. Otherwise, the passed Double value is positive, 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 positive.

    returns

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

  29. def rightOrElse[L](value: Double)(f: (Double) ⇒ L): Either[L, PosDouble]

    A factory/validation method that produces a PosDouble, 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 PosDouble, 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 positive Double, it will return a PosDouble representing that value, wrapped in a Right. Otherwise, the passed Double value is not positive, 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 positive, return wrapped in a Right(PosDouble).

    returns

    the specified Double value wrapped in a Right(PosDouble), if it is positive, else a Left(f(value)).

  30. def sumOf(first: PosDouble, second: PosZDouble, rest: PosZDouble*): PosDouble

    Returns the PosDouble sum of the passed PosDouble value first, the PosZDouble value second, and the PosZDouble values passed as varargs rest.

    Returns the PosDouble sum of the passed PosDouble value first, the PosZDouble value second, and the PosZDouble values passed as varargs rest.

    This method will always succeed (not throw an exception) because adding a positive Double and one or more non-negative Doubles will always result in another positive Double value (though the result may be infinity).

    This overloaded form of the sumOf method can sum more than two values, but unlike its two-arg sibling, will entail boxing.

  31. def sumOf(x: PosDouble, y: PosZDouble): PosDouble

    Returns the PosDouble sum of the passed PosDouble value x and PosZDouble value y.

    Returns the PosDouble sum of the passed PosDouble value x and PosZDouble value y.

    This method will always succeed (not throw an exception) because adding a positive Double and non-negative Double will always result in another positive Double value (though the result may be infinity).

    This overloaded form of the method is used when there are just two arguments so that boxing is avoided. The overloaded sumOf that takes a varargs of PosZDouble starting at the third parameter can sum more than two values, but will entail boxing and may therefore be less efficient.

  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  33. def toString(): String

    Definition Classes
    AnyRef → Any
  34. def tryingValid(value: Double): Try[PosDouble]

    A factory/validation method that produces a PosDouble, 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 PosDouble, 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 positive Float, it will return a PosDouble representing that value, wrapped in a Success. Otherwise, the passed Float value is not positive, 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 positive, return wrapped in a Success(PosDouble).

    returns

    the specified Float value wrapped in a Success(PosDouble), if it is positive, else a Failure(AssertionError).

  35. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. implicit def widenToDouble(pos: PosDouble): Double

    Implicit widening conversion from PosDouble to Double.

    Implicit widening conversion from PosDouble to Double.

    pos

    the PosDouble to widen

    returns

    the Double value underlying the specified PosDouble

  39. implicit def widenToNonZeroDouble(pos: PosDouble): NonZeroDouble

    Implicit widening conversion from PosDouble to NonZeroDouble.

    Implicit widening conversion from PosDouble to NonZeroDouble.

    pos

    the PosDouble to widen

    returns

    the Double value underlying the specified PosDouble, widened to Double and wrapped in a NonZeroDouble.

  40. implicit def widenToPosZDouble(pos: PosDouble): PosZDouble

    Implicit widening conversion from PosDouble to PosZDouble.

    Implicit widening conversion from PosDouble to PosZDouble.

    pos

    the PosDouble to widen

    returns

    the Double value underlying the specified PosDouble, widened to Double and wrapped in a PosZDouble.

Inherited from AnyRef

Inherited from Any

Ungrouped