The companion object for PosInt
that offers factory methods that
produce PosInt
s, implicit widening conversions from PosInt
to other numeric types, and maximum and minimum constant values for PosInt
.
- Companion:
- class
- Source:
- PosInt.scala
Value members
Concrete methods
A factory/assertion method that produces a PosInt
given a
valid Int
value, or throws AssertionError
,
if given an invalid Int
value.
A factory/assertion method that produces a PosInt
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 positive Int
, it will return a PosInt
representing that value. Otherwise, the passed Int
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
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 positive.
- Value parameters:
- value
the
Int
to inspect, and if positive, return wrapped in aPosInt
.
- Returns:
the specified
Int
value wrapped in aPosInt
, if it is positive, else throwsAssertionError
.- Throws:
- AssertionError
if the passed value is not positive
- Source:
- PosInt.scala
A factory method that produces an Option[PosInt]
given an
Int
value.
A factory method that produces an Option[PosInt]
given an
Int
value.
This method will inspect the passed Int
value and if
it is a positive Int
, i.e., a positive integer value,
it will return a PosInt
representing that value,
wrapped in a Some
. Otherwise, the passed Int
value is not positive 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 positive, return wrapped in aSome[PosInt]
.
- Returns:
the specified
Int
value wrapped in aSome[PosInt]
, if it is positive, elseNone
.- Source:
- PosInt.scala
A factory method that produces a PosInt
given a
Int
value and a default PosInt
.
A factory method that produces a PosInt
given a
Int
value and a default PosInt
.
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 PosInt
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
PosInt
to return if the passedInt
value is not positive.- value
the
Int
to inspect, and if positive, return.
- Returns:
the specified
Int
value wrapped in aPosInt
, if it is positive, else thedefault
PosInt
value.- Source:
- PosInt.scala
A factory/validation method that produces a PosInt
, 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 PosInt
, 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 positive Int
, it will return a PosInt
representing that value, wrapped in a Good
.
Otherwise, the passed Int
value is not positive, 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 positive, return wrapped in aGood(PosInt)
.
- Returns:
the specified
Int
value wrapped in aGood(PosInt)
, if it is positive, else aBad(f(value))
.- Source:
- PosInt.scala
A predicate method that returns true if a given
Int
value is positive.
A predicate method that returns true if a given
Int
value is positive.
- Value parameters:
- value
the
Int
to inspect, and if positive, return true.
- Returns:
true if the specified
Int
is positive, else false.- Source:
- PosInt.scala
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 positive Int
, it will return a Pass
.
Otherwise, the passed Int
value is positive, 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 positive.
- Returns:
a
Pass
if the specifiedInt
value is positive, else aFail
containing an error value produced by passing the specifiedInt
to the given functionf
.- Source:
- PosInt.scala
A factory/validation method that produces a PosInt
, 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 PosInt
, 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 positive Int
, it will return a PosInt
representing that value, wrapped in a Right
.
Otherwise, the passed Int
value is not positive, 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 positive, return wrapped in aRight(PosInt)
.
- Returns:
the specified
Int
value wrapped in aRight(PosInt)
, if it is positive, else aLeft(f(value))
.- Source:
- PosInt.scala
A factory/validation method that produces a PosInt
, 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 PosInt
, 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 positive Int
, it will return a PosInt
representing that value, wrapped in a Success
.
Otherwise, the passed Int
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
Int
literals at compile time, whereas this method inspects
Int
values at run time.
- Value parameters:
- value
the
Int
to inspect, and if positive, return wrapped in aSuccess(PosInt)
.
- Returns:
the specified
Int
value wrapped in aSuccess(PosInt)
, if it is positive, else aFailure(AssertionError)
.- Source:
- PosInt.scala
Concrete fields
The largest value representable as a positive Int
, which is PosInt(2147483647)
.
The largest value representable as a positive Int
, which is PosInt(2147483647)
.
- Source:
- PosInt.scala
The smallest value representable as a positive Int
, which is PosInt(1)
.
The smallest value representable as a positive Int
, which is PosInt(1)
.
- Source:
- PosInt.scala
Deprecated fields
The formerly implicit posIntOrd
field has been deprecated and will be removed in a future version of ScalaTest. Please use the ordering
field instead.
The formerly implicit posIntOrd
field has been deprecated and will be removed in a future version of ScalaTest. Please use the ordering
field instead.
- Deprecated
- Source:
- PosInt.scala
Implicits
Implicits
A factory method, implemented via a macro, that produces a PosInt
if passed a valid Int
literal, otherwise a compile time error.
A factory method, implemented via a macro, that produces a PosInt
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 PosInt
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 aPosInt
at run time.
- Returns:
the specified, valid
Int
literal value wrapped in aPosInt
. (If the specified expression is not a validInt
literal, the invocation of this method will not compile.)- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to Double
.
Implicit widening conversion from PosInt
to Double
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toDouble
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to Float
.
Implicit widening conversion from PosInt
to Float
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toFloat
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to Int
.
Implicit widening conversion from PosInt
to Int
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to Long
.
Implicit widening conversion from PosInt
to Long
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toLong
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to NonZeroDouble
.
Implicit widening conversion from PosInt
to NonZeroDouble
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toDouble
and wrapped in aNonZeroDouble
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to NonZeroFloat
.
Implicit widening conversion from PosInt
to NonZeroFloat
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toFloat
and wrapped in aNonZeroFloat
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to NonZeroInt
.
Implicit widening conversion from PosInt
to NonZeroInt
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toInt
and wrapped in aNonZeroInt
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to NonZeroLong
.
Implicit widening conversion from PosInt
to NonZeroLong
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toLong
and wrapped in aNonZeroLong
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to PosDouble
.
Implicit widening conversion from PosInt
to PosDouble
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toDouble
and wrapped in aPosDouble
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to PosFloat
.
Implicit widening conversion from PosInt
to PosFloat
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toFloat
and wrapped in aPosFloat
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to PosLong
.
Implicit widening conversion from PosInt
to PosLong
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toLong
and wrapped in aPosLong
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to PosZDouble
.
Implicit widening conversion from PosInt
to PosZDouble
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toDouble
and wrapped in aPosZDouble
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to PosZFloat
.
Implicit widening conversion from PosInt
to PosZFloat
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toFloat
and wrapped in aPosZFloat
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to PosZInt
.
Implicit widening conversion from PosInt
to PosZInt
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toInt
and wrapped in aPosZInt
.- Source:
- PosInt.scala
Implicit widening conversion from PosInt
to PosZLong
.
Implicit widening conversion from PosInt
to PosZLong
.
- Value parameters:
- pos
the
PosInt
to widen
- Returns:
the
Int
value underlying the specifiedPosInt
, widened toLong
and wrapped in aPosZLong
.- Source:
- PosInt.scala