The companion object for NegLong
that offers
factory methods that produce NegLong
s, implicit
widening conversions from NegLong
to other
numeric types, and maximum and minimum constant values for
NegLong
.
- Companion:
- class
- Source:
- NegLong.scala
Value members
Concrete methods
A factory/assertion method that produces an NegLong
given a
valid Long
value, or throws AssertionError
,
if given an invalid Long
value.
A factory/assertion method that produces an NegLong
given a
valid Long
value, or throws AssertionError
,
if given an invalid Long
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 Long
value and if
it is a negative Long
, it will return a NegLong
representing that value.
Otherwise, the passed Long
value is not 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 Long
literals at
compile time, whereas from
inspects
Long
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 Long
is positive.
- Value parameters:
- value
the
Long
to inspect, and if negative, return wrapped in aNegLong
.
- Returns:
the specified
Long
value wrapped in aNegLong
, if it is negative, else throwsAssertionError
.- Throws:
- AssertionError
if the passed value is not negative
- Source:
- NegLong.scala
A factory method that produces an Option[NegLong]
given a
Long
value.
A factory method that produces an Option[NegLong]
given a
Long
value.
This method will inspect the passed Long
value and if
it is a negative Long
, it will return a NegLong
representing that value,
wrapped in a Some
. Otherwise, the passed Long
value is not 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 Long
literals at
compile time, whereas from
inspects
Long
values at run time.
- Value parameters:
- value
the
Long
to inspect, and if negative, return wrapped in aSome[NegLong]
.
- Returns:
the specified
Long
value wrapped in aSome[NegLong]
, if it is negative, elseNone
.- Source:
- NegLong.scala
A factory method that produces a NegLong
given a
Long
value and a default NegLong
.
A factory method that produces a NegLong
given a
Long
value and a default NegLong
.
This method will inspect the passed Long
value and if
it is a negative Long
, it will return a NegLong
representing that value.
Otherwise, the passed Long
value is not 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 Long
literals at
compile time, whereas from
inspects
Long
values at run time.
- Value parameters:
- default
the
NegLong
to return if the passedLong
value is not negative.- value
the
Long
to inspect, and if negative, return.
- Returns:
the specified
Long
value wrapped in aNegLong
, if it is negative, else thedefault
NegLong
value.- Source:
- NegLong.scala
A factory/validation method that produces a NegLong
, wrapped
in a Good
, given a valid Long
value, or if the
given Long
is invalid, an error value of type B
produced by passing the given invalid Long
value
to the given function f
, wrapped in a Bad
.
A factory/validation method that produces a NegLong
, wrapped
in a Good
, given a valid Long
value, or if the
given Long
is invalid, an error value of type B
produced by passing the given invalid Long
value
to the given function f
, wrapped in a Bad
.
This method will inspect the passed Long
value and if
it is a negative Long
, it will return a NegLong
representing that value, wrapped in a Good
.
Otherwise, the passed Long
value is not negative, so this
method will return a result of type B
obtained by passing
the invalid Long
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
Long
literals at compile time, whereas this method inspects
Long
values at run time.
- Value parameters:
- value
the
Long
to inspect, and if negative, return wrapped in aGood(NegLong)
.
- Returns:
the specified
Long
value wrapped in aGood(NegLong)
, if it is negative, else aBad(f(value))
.- Source:
- NegLong.scala
A predicate method that returns true if a given
Long
value is negative.
A predicate method that returns true if a given
Long
value is negative.
- Value parameters:
- value
the
Long
to inspect, and if negative, return true.
- Returns:
true if the specified
Long
is negative, else false.- Source:
- NegLong.scala
A validation method that produces a Pass
given a valid Long
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 Long
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 Long
value and if
it is a negative Long
, it will return a Pass
.
Otherwise, the passed Long
value is negative, so this
method will return a result of type E
obtained by passing
the invalid Long
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
Long
literals at compile time, whereas this method inspects
Long
values at run time.
- Value parameters:
- value
the
Long
to validate that it is negative.
- Returns:
a
Pass
if the specifiedLong
value is negative, else aFail
containing an error value produced by passing the specifiedLong
to the given functionf
.- Source:
- NegLong.scala
A factory/validation method that produces a NegLong
, 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 NegLong
, 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 negative Int
, it will return a NegLong
representing that value, wrapped in a Right
.
Otherwise, the passed Int
value is not 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 negative, return wrapped in aRight(NegLong)
.
- Returns:
the specified
Int
value wrapped in aRight(NegLong)
, if it is negative, else aLeft(f(value))
.- Source:
- NegLong.scala
A factory/validation method that produces a NegLong
, wrapped
in a Success
, given a valid Long
value, or if the
given Long
is invalid, an AssertionError
, wrapped
in a Failure
.
A factory/validation method that produces a NegLong
, wrapped
in a Success
, given a valid Long
value, or if the
given Long
is invalid, an AssertionError
, wrapped
in a Failure
.
This method will inspect the passed Long
value and if
it is a negative Long
, it will return a NegLong
representing that value, wrapped in a Success
.
Otherwise, the passed Long
value is not 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
Long
literals at compile time, whereas this method inspects
Long
values at run time.
- Value parameters:
- value
the
Long
to inspect, and if negative, return wrapped in aSuccess(NegLong)
.
- Returns:
the specified
Long
value wrapped in aSuccess(NegLong)
, if it is negative, else aFailure(AssertionError)
.- Source:
- NegLong.scala
Concrete fields
The largest value representable as a negative
Long
, which is NegLong(-1L)
.
The largest value representable as a negative
Long
, which is NegLong(-1L)
.
- Source:
- NegLong.scala
The smallest value representable as a positive
Long
, which is NegLong(-9223372036854775808)
.
The smallest value representable as a positive
Long
, which is NegLong(-9223372036854775808)
.
- Source:
- NegLong.scala
Implicits
Implicits
A factory method, implemented via a macro, that produces a
NegLong
if passed a valid Long
literal, otherwise a compile time error.
A factory method, implemented via a macro, that produces a
NegLong
if passed a valid Long
literal, otherwise a compile time error.
The macro that implements this method will inspect the
specified Long
expression at compile time. If
the expression is a negative Long
literal,
it will return a NegLong
representing that value.
Otherwise, the passed Long
expression is either a literal
that is not 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 Long
literals at compile
time, whereas from
inspects Long
values at run time.
- Value parameters:
- value
the
Long
literal expression to inspect at compile time, and if negative, to return wrapped in aNegLong
at run time.
- Returns:
the specified, valid
Long
literal value wrapped in aNegLong
. (If the specified expression is not a validLong
literal, the invocation of this method will not compile.)- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to
Double
.
Implicit widening conversion from NegLong
to
Double
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toDouble
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to
Float
.
Implicit widening conversion from NegLong
to
Float
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toFloat
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to
Long
.
Implicit widening conversion from NegLong
to
Long
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NegDouble
.
Implicit widening conversion from NegLong
to NegDouble
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toDouble
and wrapped in aNegDouble
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NegFloat
.
Implicit widening conversion from NegLong
to NegFloat
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toFloat
and wrapped in aNegFloat
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NegZDouble
.
Implicit widening conversion from NegLong
to NegZDouble
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toDouble
and wrapped in aNegZDouble
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NegZFloat
.
Implicit widening conversion from NegLong
to NegZFloat
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toFloat
and wrapped in aNegZFloat
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NegZLong
.
Implicit widening conversion from NegLong
to NegZLong
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toLong
and wrapped in aNegZLong
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NonZeroDouble
.
Implicit widening conversion from NegLong
to NonZeroDouble
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toDouble
and wrapped in aNonZeroDouble
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NonZeroFloat
.
Implicit widening conversion from NegLong
to NonZeroFloat
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toFloat
and wrapped in aNonZeroFloat
.- Source:
- NegLong.scala
Implicit widening conversion from NegLong
to NonZeroLong
.
Implicit widening conversion from NegLong
to NonZeroLong
.
- Value parameters:
- pos
the
NegLong
to widen
- Returns:
the
Long
value underlying the specifiedNegLong
, widened toLong
and wrapped in aNonZeroLong
.- Source:
- NegLong.scala