The companion object for PosZFloat
that offers
factory methods that produce PosZFloat
s,
implicit widening conversions from PosZFloat
to
other numeric types, and maximum and minimum constant values
for PosZFloat
.
- Companion:
- class
- Source:
- PosZFloat.scala
Value members
Concrete methods
A factory/assertion method that produces a PosZFloat
given a
valid Float
value, or throws AssertionError
,
if given an invalid Float
value.
A factory/assertion method that produces a PosZFloat
given a
valid Float
value, or throws AssertionError
,
if given an invalid Float
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 Float
value and if
it is a non-negative Float
, it will return a PosZFloat
representing that value.
Otherwise, the passed Float
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 Float
literals at
compile time, whereas from
inspects
Float
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 Float
is positive.
- Value parameters:
- value
the
Float
to inspect, and if non-negative, return wrapped in aPosZFloat
.
- Returns:
the specified
Float
value wrapped in aPosZFloat
, if it is non-negative, else throwsAssertionError
.- Throws:
- AssertionError
if the passed value is not non-negative
- Source:
- PosZFloat.scala
A factory method that produces an Option[PosZFloat]
given a
Float
value.
A factory method that produces an Option[PosZFloat]
given a
Float
value.
This method will inspect the passed Float
value and if
it is a non-negative Float
, it will return a PosZFloat
representing that value wrapped in a Some
. Otherwise, the passed Float
value is not non-negative, 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 Float
literals at
compile time, whereas from
inspects
Float
values at run time.
- Value parameters:
- value
the
Float
to inspect, and if non-negative, return wrapped in aSome[PosZFloat]
.
- Returns:
the specified
Float
value wrapped in aSome[PosZFloat]
, if it is non-negative, elseNone
.- Source:
- PosZFloat.scala
A factory method that produces a PosZFloat
given a
Float
value and a default PosZFloat
.
A factory method that produces a PosZFloat
given a
Float
value and a default PosZFloat
.
This method will inspect the passed Float
value and if
it is a non-negative Float
, it will return a PosZFloat
representing that value.
Otherwise, the passed Float
value is not non-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 Float
literals at
compile time, whereas from
inspects
Float
values at run time.
- Value parameters:
- default
the
PosZFloat
to return if the passedFloat
value is not non-negative.- value
the
Float
to inspect, and if non-negative, return.
- Returns:
the specified
Float
value wrapped in aPosZFloat
, if it is non-negative, else thedefault
PosZFloat
value.- Source:
- PosZFloat.scala
A factory/validation method that produces a PosZFloat
, wrapped
in a Good
, given a valid Float
value, or if the
given Float
is invalid, an error value of type B
produced by passing the given invalid Float
value
to the given function f
, wrapped in a Bad
.
A factory/validation method that produces a PosZFloat
, wrapped
in a Good
, given a valid Float
value, or if the
given Float
is invalid, an error value of type B
produced by passing the given invalid Float
value
to the given function f
, wrapped in a Bad
.
This method will inspect the passed Float
value and if
it is a non-negative Float
, it will return a PosZFloat
representing that value, wrapped in a Good
.
Otherwise, the passed Float
value is not non-negative, so this
method will return a result of type B
obtained by passing
the invalid Float
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
Float
literals at compile time, whereas this method inspects
Float
values at run time.
- Value parameters:
- value
the
Float
to inspect, and if non-negative, return wrapped in aGood(PosZFloat)
.
- Returns:
the specified
Float
value wrapped in aGood(PosZFloat)
, if it is non-negative, else aBad(f(value))
.- Source:
- PosZFloat.scala
A predicate method that returns true if a given
Float
value is non-negative.
A predicate method that returns true if a given
Float
value is non-negative.
- Value parameters:
- value
the
Float
to inspect, and if non-negative, return true.
- Returns:
true if the specified
Float
is non-negative, else false.- Source:
- PosZFloat.scala
A validation method that produces a Pass
given a valid Float
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 Float
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 Float
value and if
it is a non-negative Float
, it will return a Pass
.
Otherwise, the passed Float
value is non-negative, so this
method will return a result of type E
obtained by passing
the invalid Float
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
Float
literals at compile time, whereas this method inspects
Float
values at run time.
- Value parameters:
- value
the
Float
to validate that it is non-negative.
- Returns:
a
Pass
if the specifiedFloat
value is non-negative, else aFail
containing an error value produced by passing the specifiedFloat
to the given functionf
.- Source:
- PosZFloat.scala
A factory/validation method that produces a PosZFloat
, 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 PosZFloat
, 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 PosZFloat
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 aRight(PosZFloat)
.
- Returns:
the specified
Int
value wrapped in aRight(PosZFloat)
, if it is non-negative, else aLeft(f(value))
.- Source:
- PosZFloat.scala
A factory/validation method that produces a PosZFloat
, 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 PosZFloat
, wrapped
in a Success
, given a valid Float
value, or if the
given Float
is invalid, an AssertionError
, wrapped
in a Failure
.
This method will inspect the passed Float
value and if
it is a non-negative Float
, it will return a PosZFloat
representing that value, wrapped in a Success
.
Otherwise, the passed Float
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
Float
literals at compile time, whereas this method inspects
Float
values at run time.
- Value parameters:
- value
the
Float
to inspect, and if non-negative, return wrapped in aSuccess(PosZFloat)
.
- Returns:
the specified
Float
value wrapped in aSuccess(PosZFloat)
, if it is non-negative, else aFailure(AssertionError)
.- Source:
- PosZFloat.scala
Concrete fields
The largest value representable as a non-negative Float
,
which is PosZFloat(3.4028235E38)
.
The largest value representable as a non-negative Float
,
which is PosZFloat(3.4028235E38)
.
- Source:
- PosZFloat.scala
The smallest positive value greater than 0.0d representable as a PosZFloat
, which is PosZFloat(1.4E-45).
The smallest positive value greater than 0.0d representable as a PosZFloat
, which is PosZFloat(1.4E-45).
- Source:
- PosZFloat.scala
The smallest value representable as a non-negative
Float
, which is PosZFloat(0.0f)
.
The smallest value representable as a non-negative
Float
, which is PosZFloat(0.0f)
.
- Source:
- PosZFloat.scala
The positive infinity value, which is PosZFloat.ensuringValid(Float.PositiveInfinity)
.
The positive infinity value, which is PosZFloat.ensuringValid(Float.PositiveInfinity)
.
- Source:
- PosZFloat.scala
Deprecated fields
The formerly implicit posZFloatOrd
field has been deprecated and will be removed in a future version of ScalaTest. Please use the ordering
field instead.
The formerly implicit posZFloatOrd
field has been deprecated and will be removed in a future version of ScalaTest. Please use the ordering
field instead.
- Deprecated
- Source:
- PosZFloat.scala
Implicits
Implicits
A factory method, implemented via a macro, that produces a
PosZFloat
if passed a valid Float
literal, otherwise a compile time error.
A factory method, implemented via a macro, that produces a
PosZFloat
if passed a valid Float
literal, otherwise a compile time error.
The macro that implements this method will inspect the
specified Float
expression at compile time. If
the expression is a non-negative Float
literal,
it will return a PosZFloat
representing that value.
Otherwise, the passed Float
expression is either a literal
that is not non-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 Float
literals at compile
time, whereas from
inspects Float
values at run time.
- Value parameters:
- value
the
Float
literal expression to inspect at compile time, and if non-negative, to return wrapped in aPosZFloat
at run time.
- Returns:
the specified, valid
Float
literal value wrapped in aPosZFloat
. (If the specified expression is not a validFloat
literal, the invocation of this method will not compile.)- Source:
- PosZFloat.scala
Implicit widening conversion from PosZFloat
to
Double
.
Implicit widening conversion from PosZFloat
to
Double
.
- Value parameters:
- pos
the
PosZFloat
to widen
- Returns:
the
Float
value underlying the specifiedPosZFloat
, widened toDouble
.- Source:
- PosZFloat.scala
Implicit widening conversion from PosZFloat
to
Float
.
Implicit widening conversion from PosZFloat
to
Float
.
- Value parameters:
- pos
the
PosZFloat
to widen
- Returns:
the
Float
value underlying the specifiedPosZFloat
- Source:
- PosZFloat.scala
Implicit widening conversion from PosZFloat
to PosZDouble
.
Implicit widening conversion from PosZFloat
to PosZDouble
.
- Value parameters:
- pos
the
PosZFloat
to widen
- Returns:
the
Float
value underlying the specifiedPosZFloat
, widened toDouble
and wrapped in aPosZDouble
.- Source:
- PosZFloat.scala