The largest value representable as a negative Int
, which is NegInt(-1)
.
The largest value representable as a negative Int
, which is NegInt(-1)
.
The smallest value representable as a negative Int
, which is NegInt(-2147483648)
.
The smallest value representable as a negative Int
, which is NegInt(-2147483648)
.
A factory method, implemented via a macro, that produces a NegInt
if passed a valid Int
literal, otherwise a compile time error.
A factory method, implemented via a macro, that produces a NegInt
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 NegInt
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.
the Int
literal expression to inspect at compile time,
and if positive, to return wrapped in a NegInt
at run time.
the specified, valid Int
literal value wrapped
in a NegInt
. (If the specified expression is not a valid
Int
literal, the invocation of this method will not
compile.)
A factory/assertion method that produces a NegInt
given a
valid Int
value, or throws AssertionError
,
if given an invalid Int
value.
A factory/assertion method that produces a NegInt
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 negative Int
, it will return a NegInt
representing that value. Otherwise, the passed Int
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
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 negative.
the Int
to inspect, and if negative, return
wrapped in a NegInt
.
the specified Int
value wrapped
in a NegInt
, if it is negative, else throws AssertionError
.
AssertionError
if the passed value is not negative
A factory method that produces an Option[NegInt]
given an
Int
value.
A factory method that produces an Option[NegInt]
given an
Int
value.
This method will inspect the passed Int
value and if
it is a negative Int
, i.e., a negative integer value,
it will return a NegInt
representing that value,
wrapped in a Some
. Otherwise, the passed Int
value is not 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.
the Int
to inspect, and if negative, return
wrapped in a Some[NegInt]
.
the specified Int
value wrapped
in a Some[NegInt]
, if it is negative, else None
.
A factory method that produces a NegInt
given a
Int
value and a default NegInt
.
A factory method that produces a NegInt
given a
Int
value and a default NegInt
.
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 NegInt
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.
the Int
to inspect, and if positive, return.
the NegInt
to return if the passed
Int
value is not positive.
the specified Int
value wrapped in a
NegInt
, if it is positive, else the
default
NegInt
value.
A factory/validation method that produces a NegInt
, 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 NegInt
, 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 negative Int
, it will return a NegInt
representing that value, wrapped in a Good
.
Otherwise, the passed Int
value is not 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.
the Int
to inspect, and if negative, return
wrapped in a Good(NegInt)
.
the specified Int
value wrapped
in a Good(NegInt)
, if it is negative, else a Bad(f(value))
.
A predicate method that returns true if a given
Int
value is negative.
A predicate method that returns true if a given
Int
value is negative.
the Int
to inspect, and if negative, return true.
true if the specified Int
is negative, else false.
Implicit Ordering instance.
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 negative Int
, it will return a Pass
.
Otherwise, the passed Int
value is 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.
the Int
to validate that it is negative.
a Pass
if the specified Int
value is negative,
else a Fail
containing an error value produced by passing the
specified Int
to the given function f
.
A factory/validation method that produces a NegInt
, 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 NegInt
, 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 NegInt
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.
the Int
to inspect, and if negative, return
wrapped in a Right(NegInt)
.
the specified Int
value wrapped
in a Right(NegInt)
, if it is negative, else a Left(f(value))
.
A factory/validation method that produces a NegInt
, 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 NegInt
, 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 negative Int
, it will return a NegInt
representing that value, wrapped in a Success
.
Otherwise, the passed Int
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
Int
literals at compile time, whereas this method inspects
Int
values at run time.
the Int
to inspect, and if negative, return
wrapped in a Success(NegInt)
.
the specified Int
value wrapped
in a Success(NegInt)
, if it is negative, else a Failure(AssertionError)
.
Implicit widening conversion from NegInt
to Double
.
Implicit widening conversion from NegInt
to Double
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Double
.
Implicit widening conversion from NegInt
to Float
.
Implicit widening conversion from NegInt
to Float
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Float
.
Implicit widening conversion from NegInt
to Int
.
Implicit widening conversion from NegInt
to Int
.
the NegInt
to widen
the Int
value underlying the specified NegInt
.
Implicit widening conversion from NegInt
to Long
.
Implicit widening conversion from NegInt
to Long
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Long
.
Implicit widening conversion from NegInt
to NegDouble
.
Implicit widening conversion from NegInt
to NegDouble
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Double
and wrapped in a NegDouble
.
Implicit widening conversion from NegInt
to NegFloat
.
Implicit widening conversion from NegInt
to NegFloat
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Float
and wrapped in a NegFloat
.
Implicit widening conversion from NegInt
to NegLong
.
Implicit widening conversion from NegInt
to NegLong
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Long
and wrapped in a NegLong
.
Implicit widening conversion from NegInt
to NegZDouble
.
Implicit widening conversion from NegInt
to NegZDouble
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Double
and wrapped in a NegZDouble
.
Implicit widening conversion from NegInt
to NegZFloat
.
Implicit widening conversion from NegInt
to NegZFloat
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Float
and wrapped in a NegZFloat
.
Implicit widening conversion from NegInt
to NegZInt
.
Implicit widening conversion from NegInt
to NegZInt
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Int
and wrapped in a NegZInt
.
Implicit widening conversion from NegInt
to NegZLong
.
Implicit widening conversion from NegInt
to NegZLong
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Long
and wrapped in a NegZLong
.
Implicit widening conversion from NegInt
to NonZeroDouble
.
Implicit widening conversion from NegInt
to NonZeroDouble
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Double
and wrapped in a NonZeroDouble
.
Implicit widening conversion from NegInt
to NonZeroFloat
.
Implicit widening conversion from NegInt
to NonZeroFloat
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Float
and wrapped in a NonZeroFloat
.
Implicit widening conversion from NegInt
to NonZeroInt
.
Implicit widening conversion from NegInt
to NonZeroInt
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Int
and wrapped in a NonZeroInt
.
Implicit widening conversion from NegInt
to NonZeroLong
.
Implicit widening conversion from NegInt
to NonZeroLong
.
the NegInt
to widen
the Int
value underlying the specified NegInt
,
widened to Long
and wrapped in a NonZeroLong
.
The companion object for
NegInt
that offers factory methods that produceNegInt
s, implicit widening conversions fromNegInt
to other numeric types, and maximum and minimum constant values forNegInt
.