pub struct BoundedI8<const MIN: i8, const MAX: i8>(/* private fields */);
Expand description
An
i8
constrained to be in the range MIN..=MAX
.
Implementations§
Source§impl<const MIN: i8, const MAX: i8> BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BoundedI8<MIN, MAX>
Sourcepub const fn const_new<const N: i8>() -> Self
pub const fn const_new<const N: i8>() -> Self
Creates a bounded integer whose value is known at compile time.
Causes a compile-time error if N
is not in the valid range.
Sourcepub const unsafe fn new_unchecked(n: i8) -> Self
pub const unsafe fn new_unchecked(n: i8) -> Self
Sourcepub const unsafe fn new_ref_unchecked(n: &i8) -> &Self
pub const unsafe fn new_ref_unchecked(n: &i8) -> &Self
Sourcepub const unsafe fn new_mut_unchecked(n: &mut i8) -> &mut Self
pub const unsafe fn new_mut_unchecked(n: &mut i8) -> &mut Self
Sourcepub const fn in_range(n: i8) -> bool
pub const fn in_range(n: i8) -> bool
Checks whether the given value is in the range of the bounded integer.
Sourcepub const fn new_saturating(n: i8) -> Self
pub const fn new_saturating(n: i8) -> Self
Sourcepub const fn new_wrapping<__Z: LargerInt>(n: __Z) -> Self
pub const fn new_wrapping<__Z: LargerInt>(n: __Z) -> Self
Creates a bounded integer by wrapping using modular arithmetic.
For n
in range, this is an identity function, and it wraps for n
out of range.
The type parameter Z
must be any integer type that is a superset of this one.
Sourcepub const fn from_str_radix(src: &str, radix: u32) -> Result<Self, ParseError>
pub const fn from_str_radix(src: &str, radix: u32) -> Result<Self, ParseError>
Converts a string slice in a given base to the bounded integer.
§Panics
Panics if radix
is below 2 or above 36.
Sourcepub const fn get_ref(&self) -> &i8
pub const fn get_ref(&self) -> &i8
Returns a shared reference to the value of the bounded integer.
Sourcepub const unsafe fn get_mut(&mut self) -> &mut i8
pub const unsafe fn get_mut(&mut self) -> &mut i8
Returns a mutable reference to the value of the bounded integer.
§Safety
This value must never be set to a value beyond the range of the bounded integer.
Sourcepub const fn abs(self) -> Self
pub const fn abs(self) -> Self
Computes the absolute value of self
, panicking if it is out of range.
Sourcepub const fn pow(self, exp: u32) -> Self
pub const fn pow(self, exp: u32) -> Self
Raises self
to the power of exp
, using exponentiation by squaring. Panics if it
is out of range.
Sourcepub const fn div_euclid(self, rhs: i8) -> Self
pub const fn div_euclid(self, rhs: i8) -> Self
Calculates the quotient of Euclidean division of self
by rhs
. Panics if rhs
is 0 or the result is out of range.
Sourcepub const fn rem_euclid(self, rhs: i8) -> Self
pub const fn rem_euclid(self, rhs: i8) -> Self
Calculates the least nonnegative remainder of self (mod rhs)
. Panics if rhs
is 0
or the result is out of range.
Sourcepub const fn checked_add(self, rhs: i8) -> Option<Self>
pub const fn checked_add(self, rhs: i8) -> Option<Self>
Checked integer addition.
Returns None
if the result would be out of range.
Sourcepub const fn saturating_add(self, rhs: i8) -> Self
pub const fn saturating_add(self, rhs: i8) -> Self
Saturating integer addition.
Sourcepub const fn wrapping_add(self, rhs: i8) -> Self
pub const fn wrapping_add(self, rhs: i8) -> Self
Wrapping (modular) integer addition.
Sourcepub const fn checked_sub(self, rhs: i8) -> Option<Self>
pub const fn checked_sub(self, rhs: i8) -> Option<Self>
Checked integer subtraction.
Returns None
if the result would be out of range.
Sourcepub const fn saturating_sub(self, rhs: i8) -> Self
pub const fn saturating_sub(self, rhs: i8) -> Self
Saturating integer subtraction.
Sourcepub const fn wrapping_sub(self, rhs: i8) -> Self
pub const fn wrapping_sub(self, rhs: i8) -> Self
Wrapping (modular) integer subtraction.
Sourcepub const fn checked_mul(self, rhs: i8) -> Option<Self>
pub const fn checked_mul(self, rhs: i8) -> Option<Self>
Checked integer multiplication.
Returns None
if the result would be out of range.
Sourcepub const fn saturating_mul(self, rhs: i8) -> Self
pub const fn saturating_mul(self, rhs: i8) -> Self
Saturating integer multiplication.
Sourcepub const fn wrapping_mul(self, rhs: i8) -> Self
pub const fn wrapping_mul(self, rhs: i8) -> Self
Wrapping (modular) integer multiplication.
Sourcepub const fn checked_div(self, rhs: i8) -> Option<Self>
pub const fn checked_div(self, rhs: i8) -> Option<Self>
Checked integer division.
Returns None
if the result would be out of range, or if rhs
is zero.
Sourcepub const fn wrapping_div(self, rhs: i8) -> Self
pub const fn wrapping_div(self, rhs: i8) -> Self
Wrapping (modular) integer division.
Sourcepub const fn checked_div_euclid(self, rhs: i8) -> Option<Self>
pub const fn checked_div_euclid(self, rhs: i8) -> Option<Self>
Checked Euclidean division.
Returns None
if the result would be out of range, or if rhs
is zero.
Sourcepub const fn wrapping_div_euclid(self, rhs: i8) -> Self
pub const fn wrapping_div_euclid(self, rhs: i8) -> Self
Wrapping (modular) Euclidean division.
Sourcepub const fn checked_rem(self, rhs: i8) -> Option<Self>
pub const fn checked_rem(self, rhs: i8) -> Option<Self>
Checked integer remainder.
Returns None
if the result would be out of range, or if rhs
is zero.
Sourcepub const fn wrapping_rem(self, rhs: i8) -> Self
pub const fn wrapping_rem(self, rhs: i8) -> Self
Wrapping (modular) integer remainder.
Sourcepub const fn checked_rem_euclid(self, rhs: i8) -> Option<Self>
pub const fn checked_rem_euclid(self, rhs: i8) -> Option<Self>
Checked Euclidean remainder.
Returns None
if the result would be out of range, or if rhs
is zero.
Sourcepub const fn wrapping_rem_euclid(self, rhs: i8) -> Self
pub const fn wrapping_rem_euclid(self, rhs: i8) -> Self
Wrapping (modular) Euclidean remainder.
Sourcepub const fn checked_neg(self) -> Option<Self>
pub const fn checked_neg(self) -> Option<Self>
Checked negation.
Returns None
if the result would be out of range.
Sourcepub const fn saturating_neg(self) -> Self
pub const fn saturating_neg(self) -> Self
Saturating negation.
Sourcepub const fn wrapping_neg(self) -> Self
pub const fn wrapping_neg(self) -> Self
Wrapping (modular) negation.
Sourcepub const fn checked_abs(self) -> Option<Self>
pub const fn checked_abs(self) -> Option<Self>
Checked absolute value.
Sourcepub const fn saturating_abs(self) -> Self
pub const fn saturating_abs(self) -> Self
Saturating absolute value.
Sourcepub const fn wrapping_abs(self) -> Self
pub const fn wrapping_abs(self) -> Self
Wrapping (modular) absolute value.
Sourcepub const fn checked_pow(self, rhs: u32) -> Option<Self>
pub const fn checked_pow(self, rhs: u32) -> Option<Self>
Checked exponentiation.
Sourcepub const fn saturating_pow(self, rhs: u32) -> Self
pub const fn saturating_pow(self, rhs: u32) -> Self
Saturating exponentiation.
Sourcepub const fn wrapping_pow(self, exp: u32) -> Self
pub const fn wrapping_pow(self, exp: u32) -> Self
Wrapping (modular) exponentiation.
Sourcepub const fn checked_shl(self, rhs: u32) -> Option<Self>
pub const fn checked_shl(self, rhs: u32) -> Option<Self>
Checked shift left.
Sourcepub const fn checked_shr(self, rhs: u32) -> Option<Self>
pub const fn checked_shr(self, rhs: u32) -> Option<Self>
Checked shift right.
Trait Implementations§
Source§impl<const MIN: i8, const MAX: i8> AddAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> AddAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn add_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn add_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
+=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> AddAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> AddAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn add_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn add_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
+=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> AddAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> AddAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn add_assign(&mut self, rhs: &i8)
fn add_assign(&mut self, rhs: &i8)
+=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> AddAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> AddAssign<BoundedI8<MIN, MAX>> for i8
Source§fn add_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn add_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
+=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> AddAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> AddAssign<i8> for BoundedI8<MIN, MAX>
Source§fn add_assign(&mut self, rhs: i8)
fn add_assign(&mut self, rhs: i8)
+=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> AddAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> AddAssign for BoundedI8<MIN, MAX>
Source§fn add_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn add_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
+=
operation. Read moreSource§impl<'__a, const MIN: i8, const MAX: i8> Arbitrary<'__a> for BoundedI8<MIN, MAX>
Available on crate feature arbitrary1
only.
impl<'__a, const MIN: i8, const MAX: i8> Arbitrary<'__a> for BoundedI8<MIN, MAX>
arbitrary1
only.Source§fn arbitrary(u: &mut Unstructured<'__a>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'__a>) -> Result<Self>
Self
from the given unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Unstructured
this type
needs to construct itself. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
Self
from the entirety of the given
unstructured data. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Unstructured
this type
needs to construct itself. Read moreSource§impl<__T, const MIN: i8, const MAX: i8> AsPrimitive<__T> for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<__T, const MIN: i8, const MAX: i8> AsPrimitive<__T> for BoundedI8<MIN, MAX>
num-traits02
only.Source§impl<const MIN: i8, const MAX: i8> BitAndAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitAndAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn bitand_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn bitand_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
&=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitAndAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> BitAndAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn bitand_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn bitand_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
&=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitAndAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitAndAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn bitand_assign(&mut self, rhs: &i8)
fn bitand_assign(&mut self, rhs: &i8)
&=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitAndAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> BitAndAssign<BoundedI8<MIN, MAX>> for i8
Source§fn bitand_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn bitand_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
&=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitAndAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitAndAssign<i8> for BoundedI8<MIN, MAX>
Source§fn bitand_assign(&mut self, rhs: i8)
fn bitand_assign(&mut self, rhs: i8)
&=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitAndAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitAndAssign for BoundedI8<MIN, MAX>
Source§fn bitand_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn bitand_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
&=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitOrAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitOrAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn bitor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn bitor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
|=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitOrAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> BitOrAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn bitor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn bitor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
|=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitOrAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitOrAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn bitor_assign(&mut self, rhs: &i8)
fn bitor_assign(&mut self, rhs: &i8)
|=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitOrAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> BitOrAssign<BoundedI8<MIN, MAX>> for i8
Source§fn bitor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn bitor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
|=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitOrAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitOrAssign<i8> for BoundedI8<MIN, MAX>
Source§fn bitor_assign(&mut self, rhs: i8)
fn bitor_assign(&mut self, rhs: i8)
|=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitOrAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitOrAssign for BoundedI8<MIN, MAX>
Source§fn bitor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn bitor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
|=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitXorAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitXorAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn bitxor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn bitxor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
^=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitXorAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> BitXorAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn bitxor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn bitxor_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
^=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitXorAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitXorAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn bitxor_assign(&mut self, rhs: &i8)
fn bitxor_assign(&mut self, rhs: &i8)
^=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitXorAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> BitXorAssign<BoundedI8<MIN, MAX>> for i8
Source§fn bitxor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn bitxor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
^=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitXorAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitXorAssign<i8> for BoundedI8<MIN, MAX>
Source§fn bitxor_assign(&mut self, rhs: i8)
fn bitxor_assign(&mut self, rhs: i8)
^=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> BitXorAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> BitXorAssign for BoundedI8<MIN, MAX>
Source§fn bitxor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn bitxor_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
^=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> Bounded for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> Bounded for BoundedI8<MIN, MAX>
num-traits02
only.Source§impl<const MIN: i8, const MAX: i8> CheckedAdd for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedAdd for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn checked_add(&self, v: &Self) -> Option<Self>
fn checked_add(&self, v: &Self) -> Option<Self>
None
is
returned.Source§impl<const MIN: i8, const MAX: i8> CheckedDiv for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedDiv for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn checked_div(&self, v: &Self) -> Option<Self>
fn checked_div(&self, v: &Self) -> Option<Self>
None
is returned.Source§impl<const MIN: i8, const MAX: i8> CheckedMul for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedMul for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn checked_mul(&self, v: &Self) -> Option<Self>
fn checked_mul(&self, v: &Self) -> Option<Self>
None
is returned.Source§impl<const MIN: i8, const MAX: i8> CheckedNeg for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedNeg for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn checked_neg(&self) -> Option<Self>
fn checked_neg(&self) -> Option<Self>
None
for results that can’t be represented, like signed MIN
values that can’t be positive, or non-zero unsigned values that can’t be negative. Read moreSource§impl<const MIN: i8, const MAX: i8> CheckedRem for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedRem for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn checked_rem(&self, v: &Self) -> Option<Self>
fn checked_rem(&self, v: &Self) -> Option<Self>
None
is returned. Read moreSource§impl<const MIN: i8, const MAX: i8> CheckedShl for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedShl for BoundedI8<MIN, MAX>
num-traits02
only.Source§impl<const MIN: i8, const MAX: i8> CheckedShr for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedShr for BoundedI8<MIN, MAX>
num-traits02
only.Source§impl<const MIN: i8, const MAX: i8> CheckedSub for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> CheckedSub for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn checked_sub(&self, v: &Self) -> Option<Self>
fn checked_sub(&self, v: &Self) -> Option<Self>
None
is returned.Source§impl<const MIN: i8, const MAX: i8> Contiguous for BoundedI8<MIN, MAX>where
Self: 'static,
Available on crate feature bytemuck1
only.
impl<const MIN: i8, const MAX: i8> Contiguous for BoundedI8<MIN, MAX>where
Self: 'static,
bytemuck1
only.Source§const MAX_VALUE: i8 = Self::MAX_VALUE
const MAX_VALUE: i8 = Self::MAX_VALUE
Source§const MIN_VALUE: i8 = Self::MIN_VALUE
const MIN_VALUE: i8 = Self::MIN_VALUE
Source§type Int = i8
type Int = i8
Source§fn from_integer(value: Self::Int) -> Option<Self>
fn from_integer(value: Self::Int) -> Option<Self>
value
is within the range for valid instances of this type,
returns Some(converted_value)
, otherwise, returns None
. Read moreSource§fn into_integer(self) -> Self::Int
fn into_integer(self) -> Self::Int
C
into the underlying integral type. This
mostly exists otherwise generic code would need unsafe for the value as integer
Read moreSource§impl<'__de, const MIN: i8, const MAX: i8> Deserialize<'__de> for BoundedI8<MIN, MAX>
Available on crate feature serde1
only.
impl<'__de, const MIN: i8, const MAX: i8> Deserialize<'__de> for BoundedI8<MIN, MAX>
serde1
only.Source§fn deserialize<D: Deserializer<'__de>>(
deserializer: D,
) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'__de>>( deserializer: D, ) -> Result<Self, D::Error>
Source§impl<const MIN: i8, const MAX: i8> DivAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> DivAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn div_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn div_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
/=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> DivAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> DivAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn div_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn div_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
/=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> DivAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> DivAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn div_assign(&mut self, rhs: &i8)
fn div_assign(&mut self, rhs: &i8)
/=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> DivAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> DivAssign<BoundedI8<MIN, MAX>> for i8
Source§fn div_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn div_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
/=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> DivAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> DivAssign<i8> for BoundedI8<MIN, MAX>
Source§fn div_assign(&mut self, rhs: i8)
fn div_assign(&mut self, rhs: i8)
/=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> DivAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> DivAssign for BoundedI8<MIN, MAX>
Source§fn div_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn div_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
/=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> FromPrimitive for BoundedI8<MIN, MAX>where
i8: FromPrimitive,
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> FromPrimitive for BoundedI8<MIN, MAX>where
i8: FromPrimitive,
num-traits02
only.Source§fn from_i64(n: i64) -> Option<Self>
fn from_i64(n: i64) -> Option<Self>
i64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u64(n: u64) -> Option<Self>
fn from_u64(n: u64) -> Option<Self>
u64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_isize(n: isize) -> Option<Self>
fn from_isize(n: isize) -> Option<Self>
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i8(n: i8) -> Option<Self>
fn from_i8(n: i8) -> Option<Self>
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i16(n: i16) -> Option<Self>
fn from_i16(n: i16) -> Option<Self>
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i32(n: i32) -> Option<Self>
fn from_i32(n: i32) -> Option<Self>
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_i128(n: i128) -> Option<Self>
fn from_i128(n: i128) -> Option<Self>
i128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moreSource§fn from_usize(n: usize) -> Option<Self>
fn from_usize(n: usize) -> Option<Self>
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u8(n: u8) -> Option<Self>
fn from_u8(n: u8) -> Option<Self>
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u16(n: u16) -> Option<Self>
fn from_u16(n: u16) -> Option<Self>
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u32(n: u32) -> Option<Self>
fn from_u32(n: u32) -> Option<Self>
u32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.Source§fn from_u128(n: u128) -> Option<Self>
fn from_u128(n: u128) -> Option<Self>
u128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moreSource§impl<const MIN: i8, const MAX: i8> IntoBytes for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> IntoBytes for BoundedI8<MIN, MAX>
Source§impl<__A, __B, const MIN: i8, const MAX: i8> MulAdd<__A, __B> for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<__A, __B, const MIN: i8, const MAX: i8> MulAdd<__A, __B> for BoundedI8<MIN, MAX>
num-traits02
only.Source§impl<const MIN: i8, const MAX: i8> MulAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> MulAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn mul_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn mul_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
*=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> MulAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> MulAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn mul_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn mul_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
*=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> MulAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> MulAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn mul_assign(&mut self, rhs: &i8)
fn mul_assign(&mut self, rhs: &i8)
*=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> MulAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> MulAssign<BoundedI8<MIN, MAX>> for i8
Source§fn mul_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn mul_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
*=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> MulAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> MulAssign<i8> for BoundedI8<MIN, MAX>
Source§fn mul_assign(&mut self, rhs: i8)
fn mul_assign(&mut self, rhs: i8)
*=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> MulAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> MulAssign for BoundedI8<MIN, MAX>
Source§fn mul_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn mul_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
*=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> NumCast for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> NumCast for BoundedI8<MIN, MAX>
num-traits02
only.Source§impl<const MIN: i8, const MAX: i8> Ord for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> Ord for BoundedI8<MIN, MAX>
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl<const MIN: i8, const MAX: i8> PartialOrd<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> PartialOrd<BoundedI8<MIN, MAX>> for i8
Source§impl<const MIN: i8, const MAX: i8> PartialOrd<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> PartialOrd<i8> for BoundedI8<MIN, MAX>
Source§impl<const MIN: i8, const MAX: i8> PartialOrd for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> PartialOrd for BoundedI8<MIN, MAX>
Source§impl<'__a, const MIN: i8, const MAX: i8> Product<&'__a BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<'__a, const MIN: i8, const MAX: i8> Product<&'__a BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§impl<const MIN: i8, const MAX: i8> RemAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> RemAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn rem_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn rem_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
%=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> RemAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> RemAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn rem_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn rem_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
%=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> RemAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> RemAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn rem_assign(&mut self, rhs: &i8)
fn rem_assign(&mut self, rhs: &i8)
%=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> RemAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> RemAssign<BoundedI8<MIN, MAX>> for i8
Source§fn rem_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn rem_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
%=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> RemAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> RemAssign<i8> for BoundedI8<MIN, MAX>
Source§fn rem_assign(&mut self, rhs: i8)
fn rem_assign(&mut self, rhs: i8)
%=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> RemAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> RemAssign for BoundedI8<MIN, MAX>
Source§fn rem_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn rem_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
%=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> SaturatingAdd for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> SaturatingAdd for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn saturating_add(&self, v: &Self) -> Self
fn saturating_add(&self, v: &Self) -> Self
self + other
, saturating at the relevant high or low boundary of
the type.Source§impl<const MIN: i8, const MAX: i8> SaturatingMul for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> SaturatingMul for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn saturating_mul(&self, v: &Self) -> Self
fn saturating_mul(&self, v: &Self) -> Self
self * other
, saturating at the relevant high or low boundary of
the type.Source§impl<const MIN: i8, const MAX: i8> SaturatingSub for BoundedI8<MIN, MAX>
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> SaturatingSub for BoundedI8<MIN, MAX>
num-traits02
only.Source§fn saturating_sub(&self, v: &Self) -> Self
fn saturating_sub(&self, v: &Self) -> Self
self - other
, saturating at the relevant high or low boundary of
the type.Source§impl<const MIN: i8, const MAX: i8> Serialize for BoundedI8<MIN, MAX>
Available on crate feature serde1
only.
impl<const MIN: i8, const MAX: i8> Serialize for BoundedI8<MIN, MAX>
serde1
only.Source§impl<const MIN: i8, const MAX: i8> ShlAssign<&u32> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> ShlAssign<&u32> for BoundedI8<MIN, MAX>
Source§fn shl_assign(&mut self, rhs: &u32)
fn shl_assign(&mut self, rhs: &u32)
<<=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> ShlAssign<u32> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> ShlAssign<u32> for BoundedI8<MIN, MAX>
Source§fn shl_assign(&mut self, rhs: u32)
fn shl_assign(&mut self, rhs: u32)
<<=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> ShrAssign<&u32> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> ShrAssign<&u32> for BoundedI8<MIN, MAX>
Source§fn shr_assign(&mut self, rhs: &u32)
fn shr_assign(&mut self, rhs: &u32)
>>=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> ShrAssign<u32> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> ShrAssign<u32> for BoundedI8<MIN, MAX>
Source§fn shr_assign(&mut self, rhs: u32)
fn shr_assign(&mut self, rhs: u32)
>>=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> Step for BoundedI8<MIN, MAX>
Available on crate feature step_trait
only.
impl<const MIN: i8, const MAX: i8> Step for BoundedI8<MIN, MAX>
step_trait
only.Source§fn steps_between(start: &Self, end: &Self) -> (usize, Option<usize>)
fn steps_between(start: &Self, end: &Self) -> (usize, Option<usize>)
step_trait
)start
to end
like Iterator::size_hint()
. Read moreSource§fn forward_checked(start: Self, count: usize) -> Option<Self>
fn forward_checked(start: Self, count: usize) -> Option<Self>
step_trait
)Source§fn backward_checked(start: Self, count: usize) -> Option<Self>
fn backward_checked(start: Self, count: usize) -> Option<Self>
step_trait
)Source§fn forward(start: Self, count: usize) -> Self
fn forward(start: Self, count: usize) -> Self
step_trait
)Source§unsafe fn forward_unchecked(start: Self, count: usize) -> Self
unsafe fn forward_unchecked(start: Self, count: usize) -> Self
step_trait
)Source§fn backward(start: Self, count: usize) -> Self
fn backward(start: Self, count: usize) -> Self
step_trait
)Source§unsafe fn backward_unchecked(start: Self, count: usize) -> Self
unsafe fn backward_unchecked(start: Self, count: usize) -> Self
step_trait
)Source§impl<const MIN: i8, const MAX: i8> SubAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> SubAssign<&BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§fn sub_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn sub_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
-=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> SubAssign<&BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> SubAssign<&BoundedI8<MIN, MAX>> for i8
Source§fn sub_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
fn sub_assign(&mut self, rhs: &BoundedI8<MIN, MAX>)
-=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> SubAssign<&i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> SubAssign<&i8> for BoundedI8<MIN, MAX>
Source§fn sub_assign(&mut self, rhs: &i8)
fn sub_assign(&mut self, rhs: &i8)
-=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> SubAssign<BoundedI8<MIN, MAX>> for i8
impl<const MIN: i8, const MAX: i8> SubAssign<BoundedI8<MIN, MAX>> for i8
Source§fn sub_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn sub_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
-=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> SubAssign<i8> for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> SubAssign<i8> for BoundedI8<MIN, MAX>
Source§fn sub_assign(&mut self, rhs: i8)
fn sub_assign(&mut self, rhs: i8)
-=
operation. Read moreSource§impl<const MIN: i8, const MAX: i8> SubAssign for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> SubAssign for BoundedI8<MIN, MAX>
Source§fn sub_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
fn sub_assign(&mut self, rhs: BoundedI8<MIN, MAX>)
-=
operation. Read moreSource§impl<'__a, const MIN: i8, const MAX: i8> Sum<&'__a BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
impl<'__a, const MIN: i8, const MAX: i8> Sum<&'__a BoundedI8<MIN, MAX>> for BoundedI8<MIN, MAX>
Source§impl<const MIN: i8, const MAX: i8> ToPrimitive for BoundedI8<MIN, MAX>where
i8: ToPrimitive,
Available on crate feature num-traits02
only.
impl<const MIN: i8, const MAX: i8> ToPrimitive for BoundedI8<MIN, MAX>where
i8: ToPrimitive,
num-traits02
only.Source§fn to_i64(&self) -> Option<i64>
fn to_i64(&self) -> Option<i64>
self
to an i64
. If the value cannot be
represented by an i64
, then None
is returned.Source§fn to_u64(&self) -> Option<u64>
fn to_u64(&self) -> Option<u64>
self
to a u64
. If the value cannot be
represented by a u64
, then None
is returned.Source§fn to_isize(&self) -> Option<isize>
fn to_isize(&self) -> Option<isize>
self
to an isize
. If the value cannot be
represented by an isize
, then None
is returned.Source§fn to_i8(&self) -> Option<i8>
fn to_i8(&self) -> Option<i8>
self
to an i8
. If the value cannot be
represented by an i8
, then None
is returned.Source§fn to_i16(&self) -> Option<i16>
fn to_i16(&self) -> Option<i16>
self
to an i16
. If the value cannot be
represented by an i16
, then None
is returned.Source§fn to_i32(&self) -> Option<i32>
fn to_i32(&self) -> Option<i32>
self
to an i32
. If the value cannot be
represented by an i32
, then None
is returned.Source§fn to_i128(&self) -> Option<i128>
fn to_i128(&self) -> Option<i128>
self
to an i128
. If the value cannot be
represented by an i128
(i64
under the default implementation), then
None
is returned. Read moreSource§fn to_usize(&self) -> Option<usize>
fn to_usize(&self) -> Option<usize>
self
to a usize
. If the value cannot be
represented by a usize
, then None
is returned.Source§fn to_u8(&self) -> Option<u8>
fn to_u8(&self) -> Option<u8>
self
to a u8
. If the value cannot be
represented by a u8
, then None
is returned.Source§fn to_u16(&self) -> Option<u16>
fn to_u16(&self) -> Option<u16>
self
to a u16
. If the value cannot be
represented by a u16
, then None
is returned.Source§fn to_u32(&self) -> Option<u32>
fn to_u32(&self) -> Option<u32>
self
to a u32
. If the value cannot be
represented by a u32
, then None
is returned.Source§fn to_u128(&self) -> Option<u128>
fn to_u128(&self) -> Option<u128>
self
to a u128
. If the value cannot be
represented by a u128
(u64
under the default implementation), then
None
is returned. Read moreimpl<const MIN: i8, const MAX: i8> Copy for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> Eq for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> Immutable for BoundedI8<MIN, MAX>
impl<const MIN: i8, const MAX: i8> NoUninit for BoundedI8<MIN, MAX>where
Self: 'static,
bytemuck1
only.