PosZInt

org.scalactic.anyvals.PosZInt
See thePosZInt companion class
object PosZInt

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

Attributes

Companion
class
Source
PosZInt.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
PosZInt.type

Members list

Value members

Concrete methods

def ensuringValid(value: Int): PosZInt

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

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

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 Int value and if it is a non-negative Int, it will return a PosZInt representing that value. Otherwise, the passed Int value is not non-negative, 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 Int literals at compile time, whereas this method inspects Int 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 an Int is non-negative.

Value parameters

value

the Int to inspect, and if non-negative, return wrapped in a PosZInt.

Attributes

Returns

the specified Int value wrapped in a PosZInt, if it is non-negative, else throws AssertionError.

Throws
AssertionError

if the passed value is not non-negative

Source
PosZInt.scala
def from(value: Int): Option[PosZInt]

A factory method that produces an Option[PosZInt] given an Int value.

A factory method that produces an Option[PosZInt] given an Int value.

This method will inspect the passed Int value and if it is a non-negative Int, i.e., a non-negative integer value, it will return a PosZInt representing that value, wrapped in a Some. Otherwise, the passed Int value is not non-negative integer value, 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 Int literals at compile time, whereas from inspects Int values at run time.

Value parameters

value

the Int to inspect, and if non-negative, return wrapped in a Some[PosZInt].

Attributes

Returns

the specified Int value wrapped in a Some[PosZInt], if it is non-negative, else None.

Source
PosZInt.scala
def fromOrElse(value: Int, default: => PosZInt): PosZInt

A factory method that produces a PosZInt given a Int value and a default PosZInt.

A factory method that produces a PosZInt given a Int value and a default PosZInt.

This method will inspect the passed Int value and if it is a positive Int, i.e., a value greater than 0.0, it will return a PosZInt representing that value. Otherwise, the passed Int value is 0 or negative, 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 Int literals at compile time, whereas from inspects Int values at run time.

Value parameters

default

the PosZInt to return if the passed Int value is not positive.

value

the Int to inspect, and if positive, return.

Attributes

Returns

the specified Int value wrapped in a PosZInt, if it is positive, else the default PosZInt value.

Source
PosZInt.scala
def goodOrElse[B](value: Int)(f: Int => B): Or[PosZInt, B]

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

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

This method will inspect the passed Int value and if it is a non-negative Int, it will return a PosZInt representing that value, wrapped in a Good. Otherwise, the passed Int value is not non-negative, so this method will return a result of type B obtained by passing the invalid Int 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 Int literals at compile time, whereas this method inspects Int values at run time.

Value parameters

value

the Int to inspect, and if non-negative, return wrapped in a Good(PosZInt).

Attributes

Returns

the specified Int value wrapped in a Good(PosZInt), if it is non-negative, else a Bad(f(value)).

Source
PosZInt.scala
def isValid(value: Int): Boolean

A predicate method that returns true if a given Int value is non-negative.

A predicate method that returns true if a given Int value is non-negative.

Value parameters

value

the Int to inspect, and if non-negative, return true.

Attributes

Returns

true if the specified Int is non-negative, else false.

Source
PosZInt.scala
def passOrElse[E](value: Int)(f: Int => E): Validation[E]

A validation method that produces a Pass given a valid Int 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 Int 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 Int value and if it is a non-negative Int, it will return a Pass. Otherwise, the passed Int value is non-negative, so this method will return a result of type E obtained by passing the invalid Int 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 Int literals at compile time, whereas this method inspects Int values at run time.

Value parameters

value

the Int to validate that it is non-negative.

Attributes

Returns

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

Source
PosZInt.scala
def rightOrElse[L](value: Int)(f: Int => L): Either[L, PosZInt]

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

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

This method will inspect the passed Int value and if it is a non-negative Int, it will return a PosZInt representing that value, wrapped in a Right. Otherwise, the passed Int value is not non-negative, so this method will return a result of type L obtained by passing the invalid Int 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 Int literals at compile time, whereas this method inspects Int values at run time.

Value parameters

value

the Int to inspect, and if non-negative, return wrapped in a Right(PosZInt).

Attributes

Returns

the specified Int value wrapped in a Right(PosZInt), if it is non-negative, else a Left(f(value)).

Source
PosZInt.scala
def tryingValid(value: Int): Try[PosZInt]

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

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

This method will inspect the passed Int value and if it is a non-negative Int, it will return a PosZInt representing that value, wrapped in a Success. Otherwise, the passed Int value is not non-negative, 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 Int literals at compile time, whereas this method inspects Int values at run time.

Value parameters

value

the Int to inspect, and if non-negative, return wrapped in a Success(PosZInt).

Attributes

Returns

the specified Int value wrapped in a Success(PosZInt), if it is non-negative, else a Failure(AssertionError).

Source
PosZInt.scala

Concrete fields

final val MaxValue: PosZInt

The largest value representable as a non-negative Int, which is PosZInt(2147483647).

The largest value representable as a non-negative Int, which is PosZInt(2147483647).

Attributes

Source
PosZInt.scala
final val MinValue: PosZInt

The smallest value representable as a non-negative Int, which is PosZInt(0).

The smallest value representable as a non-negative Int, which is PosZInt(0).

Attributes

Source
PosZInt.scala

Deprecated fields

val posZIntOrd: Ordering[PosZInt]

The formerly implicit posZIntOrd field has been deprecated and will be removed in a future version of ScalaTest. Please use the ordering field instead.

The formerly implicit posZIntOrd field has been deprecated and will be removed in a future version of ScalaTest. Please use the ordering field instead.

Attributes

Deprecated
true
Source
PosZInt.scala

Implicits

Implicits

implicit inline def apply(value: => Int): PosZInt

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

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

The macro that implements this method will inspect the specified Int expression at compile time. If the expression is a positive Int literal, i.e., with a value greater than 0, it will return a PosZInt representing that value. Otherwise, the passed Int expression is either a literal that is 0 or negative, 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 Int literals at compile time, whereas from inspects Int values at run time.

Value parameters

value

the Int literal expression to inspect at compile time, and if positive, to return wrapped in a PosZInt at run time.

Attributes

Returns

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

Source
PosZInt.scala
implicit val ordering: Ordering[PosZInt]

Implicit Ordering instance.

Implicit Ordering instance.

Attributes

Source
PosZInt.scala
implicit def widenToDouble(pos: PosZInt): Double

Implicit widening conversion from PosZInt to Double.

Implicit widening conversion from PosZInt to Double.

Value parameters

pos

the PosZInt to widen

Attributes

Returns

the Int value underlying the specified PosZInt, widened to Double.

Source
PosZInt.scala
implicit def widenToFloat(pos: PosZInt): Float

Implicit widening conversion from PosZInt to Float.

Implicit widening conversion from PosZInt to Float.

Value parameters

pos

the PosZInt to widen

Attributes

Returns

the Int value underlying the specified PosZInt, widened to Float.

Source
PosZInt.scala
implicit def widenToInt(pos: PosZInt): Int

Implicit widening conversion from PosZInt to Int.

Implicit widening conversion from PosZInt to Int.

Value parameters

pos

the PosZInt to widen

Attributes

Returns

the Int value underlying the specified PosZInt.

Source
PosZInt.scala
implicit def widenToLong(pos: PosZInt): Long

Implicit widening conversion from PosZInt to Long.

Implicit widening conversion from PosZInt to Long.

Value parameters

pos

the PosZInt to widen

Attributes

Returns

the Int value underlying the specified PosZInt, widened to Long.

Source
PosZInt.scala
implicit def widenToPosZDouble(pos: PosZInt): PosZDouble

Implicit widening conversion from PosZInt to PosZDouble.

Implicit widening conversion from PosZInt to PosZDouble.

Value parameters

pos

the PosZInt to widen

Attributes

Returns

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

Source
PosZInt.scala
implicit def widenToPosZFloat(pos: PosZInt): PosZFloat

Implicit widening conversion from PosZInt to PosZFloat.

Implicit widening conversion from PosZInt to PosZFloat.

Value parameters

pos

the PosZInt to widen

Attributes

Returns

the Int value underlying the specified PosZInt, widened to Float and wrapped in a PosZFloat.

Source
PosZInt.scala
implicit def widenToPosZLong(pos: PosZInt): PosZLong

Implicit widening conversion from PosZInt to PosZLong.

Implicit widening conversion from PosZInt to PosZLong.

Value parameters

pos

the PosZInt to widen

Attributes

Returns

the Int value underlying the specified PosZInt, widened to Long and wrapped in a PosZLong.

Source
PosZInt.scala