The companion object for PosZFiniteFloat that offers
factory methods that produce PosZFiniteFloats,
implicit widening conversions from PosZFiniteFloat to
other numeric types, and maximum and minimum constant values
for PosZFiniteFloat.
- Companion:
- class
- Source:
- PosZFiniteFloat.scala
Value members
Concrete methods
A factory/assertion method that produces a PosZFiniteFloat given a
valid Float value, or throws AssertionError,
if given an invalid Float value.
A factory/assertion method that produces a PosZFiniteFloat 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 finite non-negative Float, it will return a PosZFiniteFloat representing that value.
Otherwise, the passed Float value is not finite 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
Floatto inspect, and if finite non-negative, return wrapped in aPosZFiniteFloat.
- Returns:
the specified
Floatvalue wrapped in aPosZFiniteFloat, if it is finite non-negative, else throwsAssertionError.- Throws:
- AssertionError
if the passed value is not finite non-negative
- Source:
- PosZFiniteFloat.scala
A factory method that produces an Option[PosZFiniteFloat] given a
Float value.
A factory method that produces an Option[PosZFiniteFloat] given a
Float value.
This method will inspect the passed Float value and if
it is a finite non-negative Float, it will return a PosZFiniteFloat
representing that value wrapped in a Some. Otherwise, the passed Float
value is not finite 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
Floatto inspect, and if finite non-negative, return wrapped in aSome[PosZFiniteFloat].
- Returns:
the specified
Floatvalue wrapped in aSome[PosZFiniteFloat], if it is finite non-negative, elseNone.- Source:
- PosZFiniteFloat.scala
A factory method that produces a PosZFiniteFloat given a
Float value and a default PosZFiniteFloat.
A factory method that produces a PosZFiniteFloat given a
Float value and a default PosZFiniteFloat.
This method will inspect the passed Float value and if
it is a finite non-negative Float, it will return a PosZFiniteFloat representing that value.
Otherwise, the passed Float value is not finite 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
PosZFiniteFloatto return if the passedFloatvalue is not finite non-negative.- value
the
Floatto inspect, and if finite non-negative, return.
- Returns:
the specified
Floatvalue wrapped in aPosZFiniteFloat, if it is finite non-negative, else thedefaultPosZFiniteFloatvalue.- Source:
- PosZFiniteFloat.scala
A factory/validation method that produces a PosZFiniteFloat, 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 PosZFiniteFloat, 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 finite non-negative Float, it will return a PosZFiniteFloat
representing that value, wrapped in a Good.
Otherwise, the passed Float value is not finite 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
Floatto inspect, and if finite non-negative, return wrapped in aGood(PosZFiniteFloat).
- Returns:
the specified
Floatvalue wrapped in aGood(PosZFiniteFloat), if it is finite non-negative, else aBad(f(value)).- Source:
- PosZFiniteFloat.scala
A predicate method that returns true if a given
Float value is finite non-negative.
A predicate method that returns true if a given
Float value is finite non-negative.
- Value parameters:
- value
the
Floatto inspect, and if finite non-negative, return true.
- Returns:
true if the specified
Floatis finite non-negative, else false.- Source:
- PosZFiniteFloat.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 finite non-negative Float, it will return a Pass.
Otherwise, the passed Float value is finite 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
Floatto validate that it is finite non-negative.
- Returns:
a
Passif the specifiedFloatvalue is finite non-negative, else aFailcontaining an error value produced by passing the specifiedFloatto the given functionf.- Source:
- PosZFiniteFloat.scala
A factory/validation method that produces a PosZFiniteFloat, 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 PosZFiniteFloat, 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 finite non-negative Int, it will return a PosZFiniteFloat
representing that value, wrapped in a Right.
Otherwise, the passed Int value is not finite 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
Intto inspect, and if finite non-negative, return wrapped in aRight(PosZFiniteFloat).
- Returns:
the specified
Intvalue wrapped in aRight(PosZFiniteFloat), if it is finite non-negative, else aLeft(f(value)).- Source:
- PosZFiniteFloat.scala
A factory/validation method that produces a PosZFiniteFloat, 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 PosZFiniteFloat, 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 finite non-negative Float, it will return a PosZFiniteFloat
representing that value, wrapped in a Success.
Otherwise, the passed Float value is not finite 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
Floatto inspect, and if finite non-negative, return wrapped in aSuccess(PosZFiniteFloat).
- Returns:
the specified
Floatvalue wrapped in aSuccess(PosZFiniteFloat), if it is finite non-negative, else aFailure(AssertionError).- Source:
- PosZFiniteFloat.scala
Concrete fields
The largest value representable as a finite non-negative Float,
which is PosZFiniteFloat(3.4028235E38).
The largest value representable as a finite non-negative Float,
which is PosZFiniteFloat(3.4028235E38).
- Source:
- PosZFiniteFloat.scala
The smallest positive value greater than 0.0d representable as a PosZFiniteFloat, which is PosZFiniteFloat(1.4E-45).
The smallest positive value greater than 0.0d representable as a PosZFiniteFloat, which is PosZFiniteFloat(1.4E-45).
- Source:
- PosZFiniteFloat.scala
The smallest value representable as a finite non-negative
Float, which is PosZFiniteFloat(0.0f).
The smallest value representable as a finite non-negative
Float, which is PosZFiniteFloat(0.0f).
- Source:
- PosZFiniteFloat.scala
Implicits
Implicits
A factory method, implemented via a macro, that produces a
PosZFiniteFloat if passed a valid Float
literal, otherwise a compile time error.
A factory method, implemented via a macro, that produces a
PosZFiniteFloat 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 finite non-negative Float literal,
it will return a PosZFiniteFloat representing that value.
Otherwise, the passed Float expression is either a literal
that is not finite 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
Floatliteral expression to inspect at compile time, and if finite non-negative, to return wrapped in aPosZFiniteFloatat run time.
- Returns:
the specified, valid
Floatliteral value wrapped in aPosZFiniteFloat. (If the specified expression is not a validFloatliteral, the invocation of this method will not compile.)- Source:
- PosZFiniteFloat.scala
Implicit widening conversion from PosZFiniteFloat to
Double.
Implicit widening conversion from PosZFiniteFloat to
Double.
- Value parameters:
- pos
the
PosZFiniteFloatto widen
- Returns:
the
Floatvalue underlying the specifiedPosZFiniteFloat, widened toDouble.- Source:
- PosZFiniteFloat.scala
Implicit widening conversion from PosZFiniteFloat to FiniteDouble.
Implicit widening conversion from PosZFiniteFloat to FiniteDouble.
- Value parameters:
- pos
the
PosZFiniteFloatto widen
- Returns:
the
Floatvalue underlying the specifiedPosZFiniteFloat, widened toDoubleand wrapped in aFiniteDouble.- Source:
- PosZFiniteFloat.scala
Implicit widening conversion from PosZFiniteFloat to
Float.
Implicit widening conversion from PosZFiniteFloat to
Float.
- Value parameters:
- pos
the
PosZFiniteFloatto widen
- Returns:
the
Floatvalue underlying the specifiedPosZFiniteFloat- Source:
- PosZFiniteFloat.scala
Implicit widening conversion from PosZFiniteFloat to PosZDouble.
Implicit widening conversion from PosZFiniteFloat to PosZDouble.
- Value parameters:
- pos
the
PosZFiniteFloatto widen
- Returns:
the
Floatvalue underlying the specifiedPosZFiniteFloat, widened toDoubleand wrapped in aPosZDouble.- Source:
- PosZFiniteFloat.scala
Implicit widening conversion from PosZFiniteFloat to PosZFiniteDouble.
Implicit widening conversion from PosZFiniteFloat to PosZFiniteDouble.
- Value parameters:
- pos
the
PosZFiniteFloatto widen
- Returns:
the
Floatvalue underlying the specifiedPosZFiniteFloat, widened toDoubleand wrapped in aPosZFiniteDouble.- Source:
- PosZFiniteFloat.scala
Implicit widening conversion from PosZFiniteFloat to PosZFloat.
Implicit widening conversion from PosZFiniteFloat to PosZFloat.
- Value parameters:
- pos
the
PosZFiniteFloatto widen
- Returns:
the
Floatvalue underlying the specifiedPosZFiniteFloat, widened toFloatand wrapped in aPosZFloat.- Source:
- PosZFiniteFloat.scala