Expand description
The 128-bit unsigned integer type.
Implementations
impl u128
source
impl u128
sourcepub fn from_str_radix(src: &str, radix: u32) -> Result<Self, ParseIntError>
1.0.0 · source
pub fn from_str_radix(src: &str, radix: u32) -> Result<Self, ParseIntError>
1.0.0 · sourceConverts a string slice in a given base to an integer.
The string is expected to be an optional + sign
followed by digits.
Leading and trailing whitespace represent an error.
Digits are a subset of these characters, depending on radix:
0-9a-zA-Z
Panics
This function panics if radix is not in the range from 2 to 36.
Examples
Basic usage:
assert_eq!(u128::from_str_radix("A", 16), Ok(10));Runpub const fn count_ones(self) -> u32
1.0.0 (const: 1.32.0) · source
pub const fn count_ones(self) -> u32
1.0.0 (const: 1.32.0) · sourcepub const fn count_zeros(self) -> u32
1.0.0 (const: 1.32.0) · source
pub const fn count_zeros(self) -> u32
1.0.0 (const: 1.32.0) · sourcepub const fn leading_zeros(self) -> u32
1.0.0 (const: 1.32.0) · source
pub const fn leading_zeros(self) -> u32
1.0.0 (const: 1.32.0) · sourcepub const fn trailing_zeros(self) -> u32
1.0.0 (const: 1.32.0) · source
pub const fn trailing_zeros(self) -> u32
1.0.0 (const: 1.32.0) · sourcepub const fn leading_ones(self) -> u32
1.46.0 (const: 1.46.0) · source
pub const fn leading_ones(self) -> u32
1.46.0 (const: 1.46.0) · sourcepub const fn trailing_ones(self) -> u32
1.46.0 (const: 1.46.0) · source
pub const fn trailing_ones(self) -> u32
1.46.0 (const: 1.46.0) · sourcepub const fn rotate_left(self, n: u32) -> Self
1.0.0 (const: 1.32.0) · source
pub const fn rotate_left(self, n: u32) -> Self
1.0.0 (const: 1.32.0) · sourceShifts the bits to the left by a specified amount, n,
wrapping the truncated bits to the end of the resulting integer.
Please note this isn’t the same operation as the << shifting operator!
Examples
Basic usage:
let n = 0x13f40000000000000000000000004f76u128;
let m = 0x4f7613f4;
assert_eq!(n.rotate_left(16), m);Runpub const fn rotate_right(self, n: u32) -> Self
1.0.0 (const: 1.32.0) · source
pub const fn rotate_right(self, n: u32) -> Self
1.0.0 (const: 1.32.0) · sourceShifts the bits to the right by a specified amount, n,
wrapping the truncated bits to the beginning of the resulting
integer.
Please note this isn’t the same operation as the >> shifting operator!
Examples
Basic usage:
let n = 0x4f7613f4u128;
let m = 0x13f40000000000000000000000004f76;
assert_eq!(n.rotate_right(16), m);Runpub const fn swap_bytes(self) -> Self
1.0.0 (const: 1.32.0) · source
pub const fn swap_bytes(self) -> Self
1.0.0 (const: 1.32.0) · sourcepub const fn reverse_bits(self) -> Self
1.37.0 (const: 1.37.0) · source
pub const fn reverse_bits(self) -> Self
1.37.0 (const: 1.37.0) · sourceReverses the order of bits in the integer. The least significant bit becomes the most significant bit, second least-significant bit becomes second most-significant bit, etc.
Examples
Basic usage:
let n = 0x12345678901234567890123456789012u128;
let m = n.reverse_bits();
assert_eq!(m, 0x48091e6a2c48091e6a2c48091e6a2c48);
assert_eq!(0, 0u128.reverse_bits());Runpub const fn from_le(x: Self) -> Self
1.0.0 (const: 1.32.0) · source
pub const fn from_le(x: Self) -> Self
1.0.0 (const: 1.32.0) · sourceConverts an integer from little endian to the target’s endianness.
On little endian this is a no-op. On big endian the bytes are swapped.
Examples
Basic usage:
let n = 0x1Au128;
if cfg!(target_endian = "little") {
assert_eq!(u128::from_le(n), n)
} else {
assert_eq!(u128::from_le(n), n.swap_bytes())
}Runpub const fn checked_add(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.47.0) · source
pub const fn checked_add(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.47.0) · sourcepub unsafe fn unchecked_add(self, rhs: Self) -> Self
const: unstable · source
pub unsafe fn unchecked_add(self, rhs: Self) -> Self
const: unstable · sourceUnchecked integer addition. Computes self + rhs, assuming overflow
cannot occur.
Safety
This results in undefined behavior when
self + rhs > u128::MAX or self + rhs < u128::MIN,
i.e. when checked_add would return None.
pub fn checked_add_signed(self, rhs: i128) -> Option<Self>
const: unstable · source
pub fn checked_add_signed(self, rhs: i128) -> Option<Self>
const: unstable · sourcepub const fn checked_sub(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.47.0) · source
pub const fn checked_sub(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.47.0) · sourcepub unsafe fn unchecked_sub(self, rhs: Self) -> Self
const: unstable · source
pub unsafe fn unchecked_sub(self, rhs: Self) -> Self
const: unstable · sourceUnchecked integer subtraction. Computes self - rhs, assuming overflow
cannot occur.
Safety
This results in undefined behavior when
self - rhs > u128::MAX or self - rhs < u128::MIN,
i.e. when checked_sub would return None.
pub const fn checked_mul(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.47.0) · source
pub const fn checked_mul(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.47.0) · sourcepub unsafe fn unchecked_mul(self, rhs: Self) -> Self
const: unstable · source
pub unsafe fn unchecked_mul(self, rhs: Self) -> Self
const: unstable · sourceUnchecked integer multiplication. Computes self * rhs, assuming overflow
cannot occur.
Safety
This results in undefined behavior when
self * rhs > u128::MAX or self * rhs < u128::MIN,
i.e. when checked_mul would return None.
pub const fn checked_div(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.52.0) · source
pub const fn checked_div(self, rhs: Self) -> Option<Self>
1.0.0 (const: 1.52.0) · sourcepub const fn checked_div_euclid(self, rhs: Self) -> Option<Self>
1.38.0 (const: 1.52.0) · source
pub const fn checked_div_euclid(self, rhs: Self) -> Option<Self>
1.38.0 (const: 1.52.0) · sourcepub const fn checked_rem(self, rhs: Self) -> Option<Self>
1.7.0 (const: 1.52.0) · source
pub const fn checked_rem(self, rhs: Self) -> Option<Self>
1.7.0 (const: 1.52.0) · sourcepub const fn checked_rem_euclid(self, rhs: Self) -> Option<Self>
1.38.0 (const: 1.52.0) · source
pub const fn checked_rem_euclid(self, rhs: Self) -> Option<Self>
1.38.0 (const: 1.52.0) · sourcepub const fn log(self, base: Self) -> u32
source
pub const fn log(self, base: Self) -> u32
sourceReturns the logarithm of the number with respect to an arbitrary base, rounded down.
This method might not be optimized owing to implementation details;
log2 can produce results more efficiently for base 2, and log10
can produce results more efficiently for base 10.
Panics
When the number is zero, or if the base is not at least 2; it panics in debug mode and the return value is 0 in release mode.
Examples
#![feature(int_log)]
assert_eq!(5u128.log(5), 1);Runpub const fn checked_log(self, base: Self) -> Option<u32>
source
pub const fn checked_log(self, base: Self) -> Option<u32>
sourceReturns the logarithm of the number with respect to an arbitrary base, rounded down.
Returns None if the number is zero, or if the base is not at least 2.
This method might not be optimized owing to implementation details;
checked_log2 can produce results more efficiently for base 2, and
checked_log10 can produce results more efficiently for base 10.
Examples
#![feature(int_log)]
assert_eq!(5u128.checked_log(5), Some(1));Runpub const fn checked_log2(self) -> Option<u32>
source
pub const fn checked_log2(self) -> Option<u32>
sourcepub const fn checked_log10(self) -> Option<u32>
source
pub const fn checked_log10(self) -> Option<u32>
sourcepub const fn checked_neg(self) -> Option<Self>
1.7.0 (const: 1.47.0) · source
pub const fn checked_neg(self) -> Option<Self>
1.7.0 (const: 1.47.0) · sourcepub const fn checked_shl(self, rhs: u32) -> Option<Self>
1.7.0 (const: 1.47.0) · source
pub const fn checked_shl(self, rhs: u32) -> Option<Self>
1.7.0 (const: 1.47.0) · sourcepub unsafe fn unchecked_shl(self, rhs: Self) -> Self
const: unstable · source
pub unsafe fn unchecked_shl(self, rhs: Self) -> Self
const: unstable · sourceUnchecked shift left. Computes self << rhs, assuming that
rhs is less than the number of bits in self.
Safety
This results in undefined behavior if rhs is larger than
or equal to the number of bits in self,
i.e. when checked_shl would return None.
pub const fn checked_shr(self, rhs: u32) -> Option<Self>
1.7.0 (const: 1.47.0) · source
pub const fn checked_shr(self, rhs: u32) -> Option<Self>
1.7.0 (const: 1.47.0) · sourcepub unsafe fn unchecked_shr(self, rhs: Self) -> Self
const: unstable · source
pub unsafe fn unchecked_shr(self, rhs: Self) -> Self
const: unstable · sourceUnchecked shift right. Computes self >> rhs, assuming that
rhs is less than the number of bits in self.
Safety
This results in undefined behavior if rhs is larger than
or equal to the number of bits in self,
i.e. when checked_shr would return None.
pub const fn checked_pow(self, exp: u32) -> Option<Self>
1.34.0 (const: 1.50.0) · source
pub const fn checked_pow(self, exp: u32) -> Option<Self>
1.34.0 (const: 1.50.0) · sourcepub const fn saturating_add(self, rhs: Self) -> Self
1.0.0 (const: 1.47.0) · source
pub const fn saturating_add(self, rhs: Self) -> Self
1.0.0 (const: 1.47.0) · sourcepub fn saturating_add_signed(self, rhs: i128) -> Self
const: unstable · source
pub fn saturating_add_signed(self, rhs: i128) -> Self
const: unstable · sourceSaturating addition with a signed integer. Computes self + rhs,
saturating at the numeric bounds instead of overflowing.
Examples
Basic usage:
assert_eq!(1u128.saturating_add_signed(2), 3);
assert_eq!(1u128.saturating_add_signed(-2), 0);
assert_eq!((u128::MAX - 2).saturating_add_signed(4), u128::MAX);Runpub const fn saturating_sub(self, rhs: Self) -> Self
1.0.0 (const: 1.47.0) · source
pub const fn saturating_sub(self, rhs: Self) -> Self
1.0.0 (const: 1.47.0) · sourcepub const fn saturating_mul(self, rhs: Self) -> Self
1.7.0 (const: 1.47.0) · source
pub const fn saturating_mul(self, rhs: Self) -> Self
1.7.0 (const: 1.47.0) · sourcepub const fn saturating_div(self, rhs: Self) -> Self
1.58.0 (const: 1.58.0) · source
pub const fn saturating_div(self, rhs: Self) -> Self
1.58.0 (const: 1.58.0) · sourcepub const fn saturating_pow(self, exp: u32) -> Self
1.34.0 (const: 1.50.0) · source
pub const fn saturating_pow(self, exp: u32) -> Self
1.34.0 (const: 1.50.0) · sourcepub const fn wrapping_add(self, rhs: Self) -> Self
1.0.0 (const: 1.32.0) · source
pub const fn wrapping_add(self, rhs: Self) -> Self
1.0.0 (const: 1.32.0) · sourcepub fn wrapping_add_signed(self, rhs: i128) -> Self
const: unstable · source
pub fn wrapping_add_signed(self, rhs: i128) -> Self
const: unstable · sourcepub const fn wrapping_sub(self, rhs: Self) -> Self
1.0.0 (const: 1.32.0) · source
pub const fn wrapping_sub(self, rhs: Self) -> Self
1.0.0 (const: 1.32.0) · sourcepub const fn wrapping_mul(self, rhs: Self) -> Self
1.0.0 (const: 1.32.0) · source
pub const fn wrapping_mul(self, rhs: Self) -> Self
1.0.0 (const: 1.32.0) · sourceWrapping (modular) multiplication. Computes self * rhs, wrapping around at the boundary of the type.
Examples
Basic usage:
Please note that this example is shared between integer types.
Which explains why u8 is used here.
assert_eq!(10u8.wrapping_mul(12), 120);
assert_eq!(25u8.wrapping_mul(12), 44);Runpub const fn wrapping_div(self, rhs: Self) -> Self
1.2.0 (const: 1.52.0) · source
pub const fn wrapping_div(self, rhs: Self) -> Self
1.2.0 (const: 1.52.0) · sourceWrapping (modular) division. Computes self / rhs.
Wrapped division on unsigned types is just normal division.
There’s no way wrapping could ever happen.
This function exists, so that all operations
are accounted for in the wrapping operations.
Examples
Basic usage:
assert_eq!(100u128.wrapping_div(10), 10);Runpub const fn wrapping_div_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · source
pub const fn wrapping_div_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · sourceWrapping Euclidean division. Computes self.div_euclid(rhs).
Wrapped division on unsigned types is just normal division.
There’s no way wrapping could ever happen.
This function exists, so that all operations
are accounted for in the wrapping operations.
Since, for the positive integers, all common
definitions of division are equal, this
is exactly equal to self.wrapping_div(rhs).
Examples
Basic usage:
assert_eq!(100u128.wrapping_div_euclid(10), 10);Runpub const fn wrapping_rem(self, rhs: Self) -> Self
1.2.0 (const: 1.52.0) · source
pub const fn wrapping_rem(self, rhs: Self) -> Self
1.2.0 (const: 1.52.0) · sourceWrapping (modular) remainder. Computes self % rhs.
Wrapped remainder calculation on unsigned types is
just the regular remainder calculation.
There’s no way wrapping could ever happen.
This function exists, so that all operations
are accounted for in the wrapping operations.
Examples
Basic usage:
assert_eq!(100u128.wrapping_rem(10), 0);Runpub const fn wrapping_rem_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · source
pub const fn wrapping_rem_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · sourceWrapping Euclidean modulo. Computes self.rem_euclid(rhs).
Wrapped modulo calculation on unsigned types is
just the regular remainder calculation.
There’s no way wrapping could ever happen.
This function exists, so that all operations
are accounted for in the wrapping operations.
Since, for the positive integers, all common
definitions of division are equal, this
is exactly equal to self.wrapping_rem(rhs).
Examples
Basic usage:
assert_eq!(100u128.wrapping_rem_euclid(10), 0);Runpub const fn wrapping_neg(self) -> Self
1.2.0 (const: 1.32.0) · source
pub const fn wrapping_neg(self) -> Self
1.2.0 (const: 1.32.0) · sourceWrapping (modular) negation. Computes -self,
wrapping around at the boundary of the type.
Since unsigned types do not have negative equivalents
all applications of this function will wrap (except for -0).
For values smaller than the corresponding signed type’s maximum
the result is the same as casting the corresponding signed value.
Any larger values are equivalent to MAX + 1 - (val - MAX - 1) where
MAX is the corresponding signed type’s maximum.
Examples
Basic usage:
Please note that this example is shared between integer types.
Which explains why i8 is used here.
assert_eq!(100i8.wrapping_neg(), -100);
assert_eq!((-128i8).wrapping_neg(), -128);Runpub const fn wrapping_shl(self, rhs: u32) -> Self
1.2.0 (const: 1.32.0) · source
pub const fn wrapping_shl(self, rhs: u32) -> Self
1.2.0 (const: 1.32.0) · sourcePanic-free bitwise shift-left; yields self << mask(rhs),
where mask removes any high-order bits of rhs that
would cause the shift to exceed the bitwidth of the type.
Note that this is not the same as a rotate-left; the
RHS of a wrapping shift-left is restricted to the range
of the type, rather than the bits shifted out of the LHS
being returned to the other end. The primitive integer
types all implement a rotate_left function,
which may be what you want instead.
Examples
Basic usage:
assert_eq!(1u128.wrapping_shl(7), 128);
assert_eq!(1u128.wrapping_shl(128), 1);Runpub const fn wrapping_shr(self, rhs: u32) -> Self
1.2.0 (const: 1.32.0) · source
pub const fn wrapping_shr(self, rhs: u32) -> Self
1.2.0 (const: 1.32.0) · sourcePanic-free bitwise shift-right; yields self >> mask(rhs),
where mask removes any high-order bits of rhs that
would cause the shift to exceed the bitwidth of the type.
Note that this is not the same as a rotate-right; the
RHS of a wrapping shift-right is restricted to the range
of the type, rather than the bits shifted out of the LHS
being returned to the other end. The primitive integer
types all implement a rotate_right function,
which may be what you want instead.
Examples
Basic usage:
assert_eq!(128u128.wrapping_shr(7), 1);
assert_eq!(128u128.wrapping_shr(128), 128);Runpub const fn wrapping_pow(self, exp: u32) -> Self
1.34.0 (const: 1.50.0) · source
pub const fn wrapping_pow(self, exp: u32) -> Self
1.34.0 (const: 1.50.0) · sourcepub const fn overflowing_add(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.32.0) · source
pub const fn overflowing_add(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.32.0) · sourceCalculates self + rhs
Returns a tuple of the addition along with a boolean indicating whether an arithmetic overflow would occur. If an overflow would have occurred then the wrapped value is returned.
Examples
Basic usage
assert_eq!(5u128.overflowing_add(2), (7, false));
assert_eq!(u128::MAX.overflowing_add(1), (0, true));Runpub fn carrying_add(self, rhs: Self, carry: bool) -> (Self, bool)
const: unstable · source
pub fn carrying_add(self, rhs: Self, carry: bool) -> (Self, bool)
const: unstable · sourceCalculates self + rhs + carry without the ability to overflow.
Performs “ternary addition” which takes in an extra bit to add, and may return an additional bit of overflow. This allows for chaining together multiple additions to create “big integers” which represent larger values.
This can be thought of as a 128-bit “full adder”, in the electronics sense.
Examples
Basic usage
#![feature(bigint_helper_methods)]
assert_eq!(5u128.carrying_add(2, false), (7, false));
assert_eq!(5u128.carrying_add(2, true), (8, false));
assert_eq!(u128::MAX.carrying_add(1, false), (0, true));
assert_eq!(u128::MAX.carrying_add(0, true), (0, true));
assert_eq!(u128::MAX.carrying_add(1, true), (1, true));
assert_eq!(u128::MAX.carrying_add(u128::MAX, true), (u128::MAX, true));RunIf carry is false, this method is equivalent to overflowing_add:
#![feature(bigint_helper_methods)]
assert_eq!(5_u128.carrying_add(2, false), 5_u128.overflowing_add(2));
assert_eq!(u128::MAX.carrying_add(1, false), u128::MAX.overflowing_add(1));Runpub fn overflowing_add_signed(self, rhs: i128) -> (Self, bool)
const: unstable · source
pub fn overflowing_add_signed(self, rhs: i128) -> (Self, bool)
const: unstable · sourceCalculates self + rhs with a signed rhs
Returns a tuple of the addition along with a boolean indicating whether an arithmetic overflow would occur. If an overflow would have occurred then the wrapped value is returned.
Examples
Basic usage:
assert_eq!(1u128.overflowing_add_signed(2), (3, false));
assert_eq!(1u128.overflowing_add_signed(-2), (u128::MAX, true));
assert_eq!((u128::MAX - 2).overflowing_add_signed(4), (1, true));Runpub const fn overflowing_sub(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.32.0) · source
pub const fn overflowing_sub(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.32.0) · sourceCalculates self - rhs
Returns a tuple of the subtraction along with a boolean indicating whether an arithmetic overflow would occur. If an overflow would have occurred then the wrapped value is returned.
Examples
Basic usage
assert_eq!(5u128.overflowing_sub(2), (3, false));
assert_eq!(0u128.overflowing_sub(1), (u128::MAX, true));Runpub fn borrowing_sub(self, rhs: Self, borrow: bool) -> (Self, bool)
const: unstable · source
pub fn borrowing_sub(self, rhs: Self, borrow: bool) -> (Self, bool)
const: unstable · sourceCalculates self - rhs - borrow without the ability to overflow.
Performs “ternary subtraction” which takes in an extra bit to subtract, and may return an additional bit of overflow. This allows for chaining together multiple subtractions to create “big integers” which represent larger values.
Examples
Basic usage
#![feature(bigint_helper_methods)]
assert_eq!(5u128.borrowing_sub(2, false), (3, false));
assert_eq!(5u128.borrowing_sub(2, true), (2, false));
assert_eq!(0u128.borrowing_sub(1, false), (u128::MAX, true));
assert_eq!(0u128.borrowing_sub(1, true), (u128::MAX - 1, true));Runpub const fn overflowing_mul(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.32.0) · source
pub const fn overflowing_mul(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.32.0) · sourceCalculates the multiplication of self and rhs.
Returns a tuple of the multiplication along with a boolean indicating whether an arithmetic overflow would occur. If an overflow would have occurred then the wrapped value is returned.
Examples
Basic usage:
Please note that this example is shared between integer types.
Which explains why u32 is used here.
assert_eq!(5u32.overflowing_mul(2), (10, false));
assert_eq!(1_000_000_000u32.overflowing_mul(10), (1410065408, true));Runpub const fn overflowing_div(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.52.0) · source
pub const fn overflowing_div(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.52.0) · sourceCalculates the divisor when self is divided by rhs.
Returns a tuple of the divisor along with a boolean indicating
whether an arithmetic overflow would occur. Note that for unsigned
integers overflow never occurs, so the second value is always
false.
Panics
This function will panic if rhs is 0.
Examples
Basic usage
assert_eq!(5u128.overflowing_div(2), (2, false));Runpub const fn overflowing_div_euclid(self, rhs: Self) -> (Self, bool)
1.38.0 (const: 1.52.0) · source
pub const fn overflowing_div_euclid(self, rhs: Self) -> (Self, bool)
1.38.0 (const: 1.52.0) · sourceCalculates the quotient of Euclidean division self.div_euclid(rhs).
Returns a tuple of the divisor along with a boolean indicating
whether an arithmetic overflow would occur. Note that for unsigned
integers overflow never occurs, so the second value is always
false.
Since, for the positive integers, all common
definitions of division are equal, this
is exactly equal to self.overflowing_div(rhs).
Panics
This function will panic if rhs is 0.
Examples
Basic usage
assert_eq!(5u128.overflowing_div_euclid(2), (2, false));Runpub const fn overflowing_rem(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.52.0) · source
pub const fn overflowing_rem(self, rhs: Self) -> (Self, bool)
1.7.0 (const: 1.52.0) · sourceCalculates the remainder when self is divided by rhs.
Returns a tuple of the remainder after dividing along with a boolean
indicating whether an arithmetic overflow would occur. Note that for
unsigned integers overflow never occurs, so the second value is
always false.
Panics
This function will panic if rhs is 0.
Examples
Basic usage
assert_eq!(5u128.overflowing_rem(2), (1, false));Runpub const fn overflowing_rem_euclid(self, rhs: Self) -> (Self, bool)
1.38.0 (const: 1.52.0) · source
pub const fn overflowing_rem_euclid(self, rhs: Self) -> (Self, bool)
1.38.0 (const: 1.52.0) · sourceCalculates the remainder self.rem_euclid(rhs) as if by Euclidean division.
Returns a tuple of the modulo after dividing along with a boolean
indicating whether an arithmetic overflow would occur. Note that for
unsigned integers overflow never occurs, so the second value is
always false.
Since, for the positive integers, all common
definitions of division are equal, this operation
is exactly equal to self.overflowing_rem(rhs).
Panics
This function will panic if rhs is 0.
Examples
Basic usage
assert_eq!(5u128.overflowing_rem_euclid(2), (1, false));Runpub const fn overflowing_neg(self) -> (Self, bool)
1.7.0 (const: 1.32.0) · source
pub const fn overflowing_neg(self) -> (Self, bool)
1.7.0 (const: 1.32.0) · sourceNegates self in an overflowing fashion.
Returns !self + 1 using wrapping operations to return the value
that represents the negation of this unsigned value. Note that for
positive unsigned values overflow always occurs, but negating 0 does
not overflow.
Examples
Basic usage
assert_eq!(0u128.overflowing_neg(), (0, false));
assert_eq!(2u128.overflowing_neg(), (-2i32 as u128, true));Runpub const fn overflowing_shl(self, rhs: u32) -> (Self, bool)
1.7.0 (const: 1.32.0) · source
pub const fn overflowing_shl(self, rhs: u32) -> (Self, bool)
1.7.0 (const: 1.32.0) · sourceShifts self left by rhs bits.
Returns a tuple of the shifted version of self along with a boolean indicating whether the shift value was larger than or equal to the number of bits. If the shift value is too large, then value is masked (N-1) where N is the number of bits, and this value is then used to perform the shift.
Examples
Basic usage
assert_eq!(0x1u128.overflowing_shl(4), (0x10, false));
assert_eq!(0x1u128.overflowing_shl(132), (0x10, true));Runpub const fn overflowing_shr(self, rhs: u32) -> (Self, bool)
1.7.0 (const: 1.32.0) · source
pub const fn overflowing_shr(self, rhs: u32) -> (Self, bool)
1.7.0 (const: 1.32.0) · sourceShifts self right by rhs bits.
Returns a tuple of the shifted version of self along with a boolean indicating whether the shift value was larger than or equal to the number of bits. If the shift value is too large, then value is masked (N-1) where N is the number of bits, and this value is then used to perform the shift.
Examples
Basic usage
assert_eq!(0x10u128.overflowing_shr(4), (0x1, false));
assert_eq!(0x10u128.overflowing_shr(132), (0x1, true));Runpub const fn div_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · source
pub const fn div_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · sourcepub const fn rem_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · source
pub const fn rem_euclid(self, rhs: Self) -> Self
1.38.0 (const: 1.52.0) · sourceCalculates the least remainder of self (mod rhs).
Since, for the positive integers, all common
definitions of division are equal, this
is exactly equal to self % rhs.
Panics
This function will panic if rhs is 0.
Examples
Basic usage:
assert_eq!(7u128.rem_euclid(4), 3); // or any other integer typeRunpub const fn div_ceil(self, rhs: Self) -> Self
source
pub const fn div_ceil(self, rhs: Self) -> Self
sourceCalculates the quotient of self and rhs, rounding the result towards positive infinity.
Panics
This function will panic if rhs is zero.
Overflow behavior
On overflow, this function will panic if overflow checks are enabled (default in debug mode) and wrap if overflow checks are disabled (default in release mode).
Examples
Basic usage:
#![feature(int_roundings)]
assert_eq!(7_u128.div_ceil(4), 2);Runpub const fn next_multiple_of(self, rhs: Self) -> Self
source
pub const fn next_multiple_of(self, rhs: Self) -> Self
sourceCalculates the smallest value greater than or equal to self that
is a multiple of rhs.
Panics
This function will panic if rhs is zero.
Overflow behavior
On overflow, this function will panic if overflow checks are enabled (default in debug mode) and wrap if overflow checks are disabled (default in release mode).
Examples
Basic usage:
#![feature(int_roundings)]
assert_eq!(16_u128.next_multiple_of(8), 16);
assert_eq!(23_u128.next_multiple_of(8), 24);Runpub const fn checked_next_multiple_of(self, rhs: Self) -> Option<Self>
source
pub const fn checked_next_multiple_of(self, rhs: Self) -> Option<Self>
sourceCalculates the smallest value greater than or equal to self that
is a multiple of rhs. Returns None if rhs is zero or the
operation would result in overflow.
Examples
Basic usage:
#![feature(int_roundings)]
assert_eq!(16_u128.checked_next_multiple_of(8), Some(16));
assert_eq!(23_u128.checked_next_multiple_of(8), Some(24));
assert_eq!(1_u128.checked_next_multiple_of(0), None);
assert_eq!(u128::MAX.checked_next_multiple_of(2), None);Runpub const fn is_power_of_two(self) -> bool
1.0.0 (const: 1.32.0) · source
pub const fn is_power_of_two(self) -> bool
1.0.0 (const: 1.32.0) · sourcepub const fn next_power_of_two(self) -> Self
1.0.0 (const: 1.50.0) · source
pub const fn next_power_of_two(self) -> Self
1.0.0 (const: 1.50.0) · sourceReturns the smallest power of two greater than or equal to self.
When return value overflows (i.e., self > (1 << (N-1)) for type
uN), it panics in debug mode and the return value is wrapped to 0 in
release mode (the only situation in which method can return 0).
Examples
Basic usage:
assert_eq!(2u128.next_power_of_two(), 2);
assert_eq!(3u128.next_power_of_two(), 4);Runpub const fn checked_next_power_of_two(self) -> Option<Self>
1.0.0 (const: 1.50.0) · source
pub const fn checked_next_power_of_two(self) -> Option<Self>
1.0.0 (const: 1.50.0) · sourceReturns the smallest power of two greater than or equal to n. If
the next power of two is greater than the type’s maximum value,
None is returned, otherwise the power of two is wrapped in Some.
Examples
Basic usage:
assert_eq!(2u128.checked_next_power_of_two(), Some(2));
assert_eq!(3u128.checked_next_power_of_two(), Some(4));
assert_eq!(u128::MAX.checked_next_power_of_two(), None);Runpub fn wrapping_next_power_of_two(self) -> Self
const: unstable · source
pub fn wrapping_next_power_of_two(self) -> Self
const: unstable · sourceReturns the smallest power of two greater than or equal to n. If
the next power of two is greater than the type’s maximum value,
the return value is wrapped to 0.
Examples
Basic usage:
#![feature(wrapping_next_power_of_two)]
assert_eq!(2u128.wrapping_next_power_of_two(), 2);
assert_eq!(3u128.wrapping_next_power_of_two(), 4);
assert_eq!(u128::MAX.wrapping_next_power_of_two(), 0);Runpub const fn to_be_bytes(self) -> [u8; 16]
1.32.0 (const: 1.44.0) · source
pub const fn to_be_bytes(self) -> [u8; 16]
1.32.0 (const: 1.44.0) · sourcepub const fn to_le_bytes(self) -> [u8; 16]
1.32.0 (const: 1.44.0) · source
pub const fn to_le_bytes(self) -> [u8; 16]
1.32.0 (const: 1.44.0) · sourcepub const fn to_ne_bytes(self) -> [u8; 16]
1.32.0 (const: 1.44.0) · source
pub const fn to_ne_bytes(self) -> [u8; 16]
1.32.0 (const: 1.44.0) · sourceReturn the memory representation of this integer as a byte array in native byte order.
As the target platform’s native endianness is used, portable code
should use to_be_bytes or to_le_bytes, as appropriate,
instead.
Examples
let bytes = 0x12345678901234567890123456789012u128.to_ne_bytes();
assert_eq!(
bytes,
if cfg!(target_endian = "big") {
[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]
} else {
[0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]
}
);Runpub const fn from_be_bytes(bytes: [u8; 16]) -> Self
1.32.0 (const: 1.44.0) · source
pub const fn from_be_bytes(bytes: [u8; 16]) -> Self
1.32.0 (const: 1.44.0) · sourceCreate a native endian integer value from its representation as a byte array in big endian.
Examples
let value = u128::from_be_bytes([0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]);
assert_eq!(value, 0x12345678901234567890123456789012);RunWhen starting from a slice rather than an array, fallible conversion APIs can be used:
fn read_be_u128(input: &mut &[u8]) -> u128 {
let (int_bytes, rest) = input.split_at(std::mem::size_of::<u128>());
*input = rest;
u128::from_be_bytes(int_bytes.try_into().unwrap())
}Runpub const fn from_le_bytes(bytes: [u8; 16]) -> Self
1.32.0 (const: 1.44.0) · source
pub const fn from_le_bytes(bytes: [u8; 16]) -> Self
1.32.0 (const: 1.44.0) · sourceCreate a native endian integer value from its representation as a byte array in little endian.
Examples
let value = u128::from_le_bytes([0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);
assert_eq!(value, 0x12345678901234567890123456789012);RunWhen starting from a slice rather than an array, fallible conversion APIs can be used:
fn read_le_u128(input: &mut &[u8]) -> u128 {
let (int_bytes, rest) = input.split_at(std::mem::size_of::<u128>());
*input = rest;
u128::from_le_bytes(int_bytes.try_into().unwrap())
}Runpub const fn from_ne_bytes(bytes: [u8; 16]) -> Self
1.32.0 (const: 1.44.0) · source
pub const fn from_ne_bytes(bytes: [u8; 16]) -> Self
1.32.0 (const: 1.44.0) · sourceCreate a native endian integer value from its memory representation as a byte array in native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use from_be_bytes or from_le_bytes, as
appropriate instead.
Examples
let value = u128::from_ne_bytes(if cfg!(target_endian = "big") {
[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]
} else {
[0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]
});
assert_eq!(value, 0x12345678901234567890123456789012);RunWhen starting from a slice rather than an array, fallible conversion APIs can be used:
fn read_ne_u128(input: &mut &[u8]) -> u128 {
let (int_bytes, rest) = input.split_at(std::mem::size_of::<u128>());
*input = rest;
u128::from_ne_bytes(int_bytes.try_into().unwrap())
}RunTrait Implementations
impl AddAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl AddAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn add_assign(&mut self, other: &u128)
source
fn add_assign(&mut self, other: &u128)
sourcePerforms the += operation. Read more
impl AddAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl AddAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn add_assign(&mut self, other: &u128)
const: unstable · source
fn add_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the += operation. Read more
impl AddAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl AddAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn add_assign(&mut self, other: &u128)
const: unstable · source
fn add_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the += operation. Read more
impl AddAssign<u128> for Saturating<u128>
source
impl AddAssign<u128> for Saturating<u128>
sourcefn add_assign(&mut self, other: u128)
source
fn add_assign(&mut self, other: u128)
sourcePerforms the += operation. Read more
impl AddAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl AddAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn add_assign(&mut self, other: u128)
const: unstable · source
fn add_assign(&mut self, other: u128)
const: unstable · sourcePerforms the += operation. Read more
impl AddAssign<u128> for u128
1.8.0 (const: unstable) · source
impl AddAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn add_assign(&mut self, other: u128)
const: unstable · source
fn add_assign(&mut self, other: u128)
const: unstable · sourcePerforms the += operation. Read more
impl BitAndAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl BitAndAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn bitand_assign(&mut self, other: &u128)
source
fn bitand_assign(&mut self, other: &u128)
sourcePerforms the &= operation. Read more
impl BitAndAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl BitAndAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn bitand_assign(&mut self, other: &u128)
const: unstable · source
fn bitand_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the &= operation. Read more
impl BitAndAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl BitAndAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn bitand_assign(&mut self, other: &u128)
const: unstable · source
fn bitand_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the &= operation. Read more
impl BitAndAssign<u128> for Saturating<u128>
source
impl BitAndAssign<u128> for Saturating<u128>
sourcefn bitand_assign(&mut self, other: u128)
source
fn bitand_assign(&mut self, other: u128)
sourcePerforms the &= operation. Read more
impl BitAndAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl BitAndAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn bitand_assign(&mut self, other: u128)
const: unstable · source
fn bitand_assign(&mut self, other: u128)
const: unstable · sourcePerforms the &= operation. Read more
impl BitAndAssign<u128> for u128
1.8.0 (const: unstable) · source
impl BitAndAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn bitand_assign(&mut self, other: u128)
const: unstable · source
fn bitand_assign(&mut self, other: u128)
const: unstable · sourcePerforms the &= operation. Read more
impl BitOr<NonZeroU128> for u128
1.45.0 (const: unstable) · source
impl BitOr<NonZeroU128> for u128
1.45.0 (const: unstable) · sourcetype Output = NonZeroU128
type Output = NonZeroU128
The resulting type after applying the | operator.
impl BitOr<u128> for NonZeroU128
1.45.0 (const: unstable) · source
impl BitOr<u128> for NonZeroU128
1.45.0 (const: unstable) · sourceimpl BitOrAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl BitOrAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn bitor_assign(&mut self, other: &u128)
source
fn bitor_assign(&mut self, other: &u128)
sourcePerforms the |= operation. Read more
impl BitOrAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl BitOrAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn bitor_assign(&mut self, other: &u128)
const: unstable · source
fn bitor_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the |= operation. Read more
impl BitOrAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl BitOrAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn bitor_assign(&mut self, other: &u128)
const: unstable · source
fn bitor_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the |= operation. Read more
impl BitOrAssign<u128> for NonZeroU128
1.45.0 (const: unstable) · source
impl BitOrAssign<u128> for NonZeroU128
1.45.0 (const: unstable) · sourcefn bitor_assign(&mut self, rhs: u128)
const: unstable · source
fn bitor_assign(&mut self, rhs: u128)
const: unstable · sourcePerforms the |= operation. Read more
impl BitOrAssign<u128> for Saturating<u128>
source
impl BitOrAssign<u128> for Saturating<u128>
sourcefn bitor_assign(&mut self, other: u128)
source
fn bitor_assign(&mut self, other: u128)
sourcePerforms the |= operation. Read more
impl BitOrAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl BitOrAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn bitor_assign(&mut self, other: u128)
const: unstable · source
fn bitor_assign(&mut self, other: u128)
const: unstable · sourcePerforms the |= operation. Read more
impl BitOrAssign<u128> for u128
1.8.0 (const: unstable) · source
impl BitOrAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn bitor_assign(&mut self, other: u128)
const: unstable · source
fn bitor_assign(&mut self, other: u128)
const: unstable · sourcePerforms the |= operation. Read more
impl BitXorAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl BitXorAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn bitxor_assign(&mut self, other: &u128)
source
fn bitxor_assign(&mut self, other: &u128)
sourcePerforms the ^= operation. Read more
impl BitXorAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl BitXorAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn bitxor_assign(&mut self, other: &u128)
const: unstable · source
fn bitxor_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the ^= operation. Read more
impl BitXorAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl BitXorAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn bitxor_assign(&mut self, other: &u128)
const: unstable · source
fn bitxor_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the ^= operation. Read more
impl BitXorAssign<u128> for Saturating<u128>
source
impl BitXorAssign<u128> for Saturating<u128>
sourcefn bitxor_assign(&mut self, other: u128)
source
fn bitxor_assign(&mut self, other: u128)
sourcePerforms the ^= operation. Read more
impl BitXorAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl BitXorAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn bitxor_assign(&mut self, other: u128)
const: unstable · source
fn bitxor_assign(&mut self, other: u128)
const: unstable · sourcePerforms the ^= operation. Read more
impl BitXorAssign<u128> for u128
1.8.0 (const: unstable) · source
impl BitXorAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn bitxor_assign(&mut self, other: u128)
const: unstable · source
fn bitxor_assign(&mut self, other: u128)
const: unstable · sourcePerforms the ^= operation. Read more
impl Div<NonZeroU128> for u128
1.51.0 (const: unstable) · source
impl Div<NonZeroU128> for u128
1.51.0 (const: unstable) · sourceimpl Div<u128> for u128
1.0.0 (const: unstable) · source
impl Div<u128> for u128
1.0.0 (const: unstable) · sourceThis operation rounds towards zero, truncating any fractional part of the exact result.
Panics
This operation will panic if other == 0.
impl DivAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl DivAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn div_assign(&mut self, other: &u128)
source
fn div_assign(&mut self, other: &u128)
sourcePerforms the /= operation. Read more
impl DivAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl DivAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn div_assign(&mut self, other: &u128)
const: unstable · source
fn div_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the /= operation. Read more
impl DivAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl DivAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn div_assign(&mut self, other: &u128)
const: unstable · source
fn div_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the /= operation. Read more
impl DivAssign<u128> for Saturating<u128>
source
impl DivAssign<u128> for Saturating<u128>
sourcefn div_assign(&mut self, other: u128)
source
fn div_assign(&mut self, other: u128)
sourcePerforms the /= operation. Read more
impl DivAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl DivAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn div_assign(&mut self, other: u128)
const: unstable · source
fn div_assign(&mut self, other: u128)
const: unstable · sourcePerforms the /= operation. Read more
impl DivAssign<u128> for u128
1.8.0 (const: unstable) · source
impl DivAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn div_assign(&mut self, other: u128)
const: unstable · source
fn div_assign(&mut self, other: u128)
const: unstable · sourcePerforms the /= operation. Read more
impl From<NonZeroU128> for u128
1.31.0 (const: unstable) · source
impl From<NonZeroU128> for u128
1.31.0 (const: unstable) · sourcefn from(nonzero: NonZeroU128) -> Self
const: unstable · source
fn from(nonzero: NonZeroU128) -> Self
const: unstable · sourceConverts a NonZeroU128 into an u128
impl FromStr for u128
1.0.0 · source
impl FromStr for u128
1.0.0 · sourcetype Err = ParseIntError
type Err = ParseIntError
The associated error which can be returned from parsing.
impl MulAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl MulAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn mul_assign(&mut self, other: &u128)
source
fn mul_assign(&mut self, other: &u128)
sourcePerforms the *= operation. Read more
impl MulAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl MulAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn mul_assign(&mut self, other: &u128)
const: unstable · source
fn mul_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the *= operation. Read more
impl MulAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl MulAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn mul_assign(&mut self, other: &u128)
const: unstable · source
fn mul_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the *= operation. Read more
impl MulAssign<u128> for Saturating<u128>
source
impl MulAssign<u128> for Saturating<u128>
sourcefn mul_assign(&mut self, other: u128)
source
fn mul_assign(&mut self, other: u128)
sourcePerforms the *= operation. Read more
impl MulAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl MulAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn mul_assign(&mut self, other: u128)
const: unstable · source
fn mul_assign(&mut self, other: u128)
const: unstable · sourcePerforms the *= operation. Read more
impl MulAssign<u128> for u128
1.8.0 (const: unstable) · source
impl MulAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn mul_assign(&mut self, other: u128)
const: unstable · source
fn mul_assign(&mut self, other: u128)
const: unstable · sourcePerforms the *= operation. Read more
impl Ord for u128
1.0.0 · source
impl Ord for u128
1.0.0 · sourceimpl PartialOrd<u128> for u128
1.0.0 · source
impl PartialOrd<u128> for u128
1.0.0 · sourcefn partial_cmp(&self, other: &u128) -> Option<Ordering>
source
fn partial_cmp(&self, other: &u128) -> Option<Ordering>
sourceThis method returns an ordering between self and other values if one exists. Read more
fn lt(&self, other: &u128) -> bool
source
fn lt(&self, other: &u128) -> bool
sourceThis method tests less than (for self and other) and is used by the < operator. Read more
fn le(&self, other: &u128) -> bool
source
fn le(&self, other: &u128) -> bool
sourceThis method tests less than or equal to (for self and other) and is used by the <=
operator. Read more
impl Rem<NonZeroU128> for u128
1.51.0 (const: unstable) · source
impl Rem<NonZeroU128> for u128
1.51.0 (const: unstable) · sourceimpl Rem<u128> for u128
1.0.0 (const: unstable) · source
impl Rem<u128> for u128
1.0.0 (const: unstable) · sourceThis operation satisfies n % d == n - (n / d) * d. The
result has the same sign as the left operand.
Panics
This operation will panic if other == 0.
impl RemAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl RemAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn rem_assign(&mut self, other: &u128)
source
fn rem_assign(&mut self, other: &u128)
sourcePerforms the %= operation. Read more
impl RemAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl RemAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn rem_assign(&mut self, other: &u128)
const: unstable · source
fn rem_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the %= operation. Read more
impl RemAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl RemAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn rem_assign(&mut self, other: &u128)
const: unstable · source
fn rem_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the %= operation. Read more
impl RemAssign<u128> for Saturating<u128>
source
impl RemAssign<u128> for Saturating<u128>
sourcefn rem_assign(&mut self, other: u128)
source
fn rem_assign(&mut self, other: u128)
sourcePerforms the %= operation. Read more
impl RemAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl RemAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn rem_assign(&mut self, other: u128)
const: unstable · source
fn rem_assign(&mut self, other: u128)
const: unstable · sourcePerforms the %= operation. Read more
impl RemAssign<u128> for u128
1.8.0 (const: unstable) · source
impl RemAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn rem_assign(&mut self, other: u128)
const: unstable · source
fn rem_assign(&mut self, other: u128)
const: unstable · sourcePerforms the %= operation. Read more
impl ShlAssign<&'_ i128> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ i128> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &i128)
const: unstable · source
fn shl_assign(&mut self, other: &i128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ i16> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ i16> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &i16)
const: unstable · source
fn shl_assign(&mut self, other: &i16)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ i32> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ i32> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &i32)
const: unstable · source
fn shl_assign(&mut self, other: &i32)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ i64> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ i64> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &i64)
const: unstable · source
fn shl_assign(&mut self, other: &i64)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ i8> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ i8> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &i8)
const: unstable · source
fn shl_assign(&mut self, other: &i8)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ isize> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ isize> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &isize)
const: unstable · source
fn shl_assign(&mut self, other: &isize)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for u8
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for u8
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for u16
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for u16
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for i128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for i128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for isize
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for isize
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for u32
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for u32
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for u64
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for u64
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for usize
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for usize
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for i8
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for i8
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for i16
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for i16
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for i32
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for i32
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u128> for i64
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u128> for i64
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u128)
const: unstable · source
fn shl_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u16> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u16> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u16)
const: unstable · source
fn shl_assign(&mut self, other: &u16)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u32> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u32> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u32)
const: unstable · source
fn shl_assign(&mut self, other: &u32)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u64> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u64> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u64)
const: unstable · source
fn shl_assign(&mut self, other: &u64)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ u8> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ u8> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &u8)
const: unstable · source
fn shl_assign(&mut self, other: &u8)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<&'_ usize> for u128
1.22.0 (const: unstable) · source
impl ShlAssign<&'_ usize> for u128
1.22.0 (const: unstable) · sourcefn shl_assign(&mut self, other: &usize)
const: unstable · source
fn shl_assign(&mut self, other: &usize)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<i128> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<i128> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: i128)
const: unstable · source
fn shl_assign(&mut self, other: i128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<i16> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<i16> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: i16)
const: unstable · source
fn shl_assign(&mut self, other: i16)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<i32> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<i32> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: i32)
const: unstable · source
fn shl_assign(&mut self, other: i32)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<i64> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<i64> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: i64)
const: unstable · source
fn shl_assign(&mut self, other: i64)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<i8> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<i8> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: i8)
const: unstable · source
fn shl_assign(&mut self, other: i8)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<isize> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<isize> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: isize)
const: unstable · source
fn shl_assign(&mut self, other: isize)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for u8
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for u8
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for u16
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for u16
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for i128
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for i128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for isize
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for isize
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for u32
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for u32
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for u64
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for u64
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for usize
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for usize
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for i8
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for i8
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for i16
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for i16
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for i32
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for i32
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u128> for i64
1.8.0 (const: unstable) · source
impl ShlAssign<u128> for i64
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u128)
const: unstable · source
fn shl_assign(&mut self, other: u128)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u16> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<u16> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u16)
const: unstable · source
fn shl_assign(&mut self, other: u16)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u32> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<u32> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u32)
const: unstable · source
fn shl_assign(&mut self, other: u32)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u64> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<u64> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u64)
const: unstable · source
fn shl_assign(&mut self, other: u64)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<u8> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<u8> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: u8)
const: unstable · source
fn shl_assign(&mut self, other: u8)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShlAssign<usize> for u128
1.8.0 (const: unstable) · source
impl ShlAssign<usize> for u128
1.8.0 (const: unstable) · sourcefn shl_assign(&mut self, other: usize)
const: unstable · source
fn shl_assign(&mut self, other: usize)
const: unstable · sourcePerforms the <<= operation. Read more
impl ShrAssign<&'_ i128> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ i128> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &i128)
const: unstable · source
fn shr_assign(&mut self, other: &i128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ i16> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ i16> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &i16)
const: unstable · source
fn shr_assign(&mut self, other: &i16)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ i32> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ i32> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &i32)
const: unstable · source
fn shr_assign(&mut self, other: &i32)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ i64> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ i64> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &i64)
const: unstable · source
fn shr_assign(&mut self, other: &i64)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ i8> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ i8> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &i8)
const: unstable · source
fn shr_assign(&mut self, other: &i8)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ isize> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ isize> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &isize)
const: unstable · source
fn shr_assign(&mut self, other: &isize)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for u8
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for u8
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for u16
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for u16
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for i128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for i128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for isize
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for isize
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for u32
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for u32
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for u64
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for u64
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for usize
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for usize
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for i8
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for i8
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for i16
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for i16
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for i32
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for i32
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u128> for i64
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u128> for i64
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u128)
const: unstable · source
fn shr_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u16> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u16> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u16)
const: unstable · source
fn shr_assign(&mut self, other: &u16)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u32> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u32> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u32)
const: unstable · source
fn shr_assign(&mut self, other: &u32)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u64> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u64> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u64)
const: unstable · source
fn shr_assign(&mut self, other: &u64)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ u8> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ u8> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &u8)
const: unstable · source
fn shr_assign(&mut self, other: &u8)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<&'_ usize> for u128
1.22.0 (const: unstable) · source
impl ShrAssign<&'_ usize> for u128
1.22.0 (const: unstable) · sourcefn shr_assign(&mut self, other: &usize)
const: unstable · source
fn shr_assign(&mut self, other: &usize)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<i128> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<i128> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: i128)
const: unstable · source
fn shr_assign(&mut self, other: i128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<i16> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<i16> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: i16)
const: unstable · source
fn shr_assign(&mut self, other: i16)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<i32> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<i32> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: i32)
const: unstable · source
fn shr_assign(&mut self, other: i32)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<i64> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<i64> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: i64)
const: unstable · source
fn shr_assign(&mut self, other: i64)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<i8> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<i8> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: i8)
const: unstable · source
fn shr_assign(&mut self, other: i8)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<isize> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<isize> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: isize)
const: unstable · source
fn shr_assign(&mut self, other: isize)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for u8
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for u8
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for u16
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for u16
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for i128
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for i128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for isize
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for isize
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for u32
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for u32
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for u64
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for u64
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for usize
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for usize
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for i8
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for i8
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for i16
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for i16
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for i32
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for i32
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u128> for i64
1.8.0 (const: unstable) · source
impl ShrAssign<u128> for i64
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u128)
const: unstable · source
fn shr_assign(&mut self, other: u128)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u16> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<u16> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u16)
const: unstable · source
fn shr_assign(&mut self, other: u16)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u32> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<u32> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u32)
const: unstable · source
fn shr_assign(&mut self, other: u32)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u64> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<u64> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u64)
const: unstable · source
fn shr_assign(&mut self, other: u64)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<u8> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<u8> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: u8)
const: unstable · source
fn shr_assign(&mut self, other: u8)
const: unstable · sourcePerforms the >>= operation. Read more
impl ShrAssign<usize> for u128
1.8.0 (const: unstable) · source
impl ShrAssign<usize> for u128
1.8.0 (const: unstable) · sourcefn shr_assign(&mut self, other: usize)
const: unstable · source
fn shr_assign(&mut self, other: usize)
const: unstable · sourcePerforms the >>= operation. Read more
impl Step for u128
source
impl Step for u128
sourceunsafe fn forward_unchecked(start: Self, n: usize) -> Self
source
unsafe fn forward_unchecked(start: Self, n: usize) -> Self
sourceReturns the value that would be obtained by taking the successor
of self count times. Read more
unsafe fn backward_unchecked(start: Self, n: usize) -> Self
source
unsafe fn backward_unchecked(start: Self, n: usize) -> Self
sourceReturns the value that would be obtained by taking the predecessor
of self count times. Read more
fn forward(start: Self, n: usize) -> Self
source
fn forward(start: Self, n: usize) -> Self
sourceReturns the value that would be obtained by taking the successor
of self count times. Read more
fn backward(start: Self, n: usize) -> Self
source
fn backward(start: Self, n: usize) -> Self
sourceReturns the value that would be obtained by taking the predecessor
of self count times. Read more
fn steps_between(start: &Self, end: &Self) -> Option<usize>
source
fn steps_between(start: &Self, end: &Self) -> Option<usize>
sourceReturns the number of successor steps required to get from start to end. Read more
fn forward_checked(start: Self, n: usize) -> Option<Self>
source
fn forward_checked(start: Self, n: usize) -> Option<Self>
sourceReturns the value that would be obtained by taking the successor
of self count times. Read more
impl SubAssign<&'_ u128> for Saturating<u128>
1.22.0 · source
impl SubAssign<&'_ u128> for Saturating<u128>
1.22.0 · sourcefn sub_assign(&mut self, other: &u128)
source
fn sub_assign(&mut self, other: &u128)
sourcePerforms the -= operation. Read more
impl SubAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · source
impl SubAssign<&'_ u128> for Wrapping<u128>
1.22.0 (const: unstable) · sourcefn sub_assign(&mut self, other: &u128)
const: unstable · source
fn sub_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the -= operation. Read more
impl SubAssign<&'_ u128> for u128
1.22.0 (const: unstable) · source
impl SubAssign<&'_ u128> for u128
1.22.0 (const: unstable) · sourcefn sub_assign(&mut self, other: &u128)
const: unstable · source
fn sub_assign(&mut self, other: &u128)
const: unstable · sourcePerforms the -= operation. Read more
impl SubAssign<u128> for Saturating<u128>
source
impl SubAssign<u128> for Saturating<u128>
sourcefn sub_assign(&mut self, other: u128)
source
fn sub_assign(&mut self, other: u128)
sourcePerforms the -= operation. Read more
impl SubAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · source
impl SubAssign<u128> for Wrapping<u128>
1.60.0 (const: unstable) · sourcefn sub_assign(&mut self, other: u128)
const: unstable · source
fn sub_assign(&mut self, other: u128)
const: unstable · sourcePerforms the -= operation. Read more
impl SubAssign<u128> for u128
1.8.0 (const: unstable) · source
impl SubAssign<u128> for u128
1.8.0 (const: unstable) · sourcefn sub_assign(&mut self, other: u128)
const: unstable · source
fn sub_assign(&mut self, other: u128)
const: unstable · sourcePerforms the -= operation. Read more
impl TryFrom<i128> for u128
1.34.0 (const: unstable) · source
impl TryFrom<i128> for u128
1.34.0 (const: unstable) · sourcefn try_from(u: i128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: i128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<i16> for u128
1.34.0 (const: unstable) · source
impl TryFrom<i16> for u128
1.34.0 (const: unstable) · sourcefn try_from(u: i16) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: i16) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<i32> for u128
1.34.0 (const: unstable) · source
impl TryFrom<i32> for u128
1.34.0 (const: unstable) · sourcefn try_from(u: i32) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: i32) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<i64> for u128
1.34.0 (const: unstable) · source
impl TryFrom<i64> for u128
1.34.0 (const: unstable) · sourcefn try_from(u: i64) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: i64) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<i8> for u128
1.34.0 (const: unstable) · source
impl TryFrom<i8> for u128
1.34.0 (const: unstable) · sourcefn try_from(u: i8) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: i8) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<isize> for u128
1.34.0 (const: unstable) · source
impl TryFrom<isize> for u128
1.34.0 (const: unstable) · sourcefn try_from(u: isize) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: isize) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for u64
1.34.0 (const: unstable) · source
impl TryFrom<u128> for u64
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for u32
1.34.0 (const: unstable) · source
impl TryFrom<u128> for u32
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for isize
1.34.0 (const: unstable) · source
impl TryFrom<u128> for isize
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for NonZeroU128
1.46.0 · source
impl TryFrom<u128> for NonZeroU128
1.46.0 · sourceimpl TryFrom<u128> for u16
1.34.0 (const: unstable) · source
impl TryFrom<u128> for u16
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for u8
1.34.0 (const: unstable) · source
impl TryFrom<u128> for u8
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for i8
1.34.0 (const: unstable) · source
impl TryFrom<u128> for i8
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for i16
1.34.0 (const: unstable) · source
impl TryFrom<u128> for i16
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for i32
1.34.0 (const: unstable) · source
impl TryFrom<u128> for i32
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for i64
1.34.0 (const: unstable) · source
impl TryFrom<u128> for i64
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for i128
1.34.0 (const: unstable) · source
impl TryFrom<u128> for i128
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<u128> for usize
1.34.0 (const: unstable) · source
impl TryFrom<u128> for usize
1.34.0 (const: unstable) · sourcefn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(u: u128) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl TryFrom<usize> for u128
1.34.0 (const: unstable) · source
impl TryFrom<usize> for u128
1.34.0 (const: unstable) · sourcefn try_from(value: usize) -> Result<Self, Self::Error>
const: unstable · source
fn try_from(value: usize) -> Result<Self, Self::Error>
const: unstable · sourceTry to create the target number type from a source number type. This returns an error if the source value is outside of the range of the target type.
type Error = TryFromIntError
type Error = TryFromIntError
The type returned in the event of a conversion error.
impl Copy for u128
1.0.0 · sourceimpl Eq for u128
1.0.0 · sourceimpl FloatToInt<u128> for f32
sourceimpl FloatToInt<u128> for f64
sourceimpl TrustedStep for u128
sourceAuto Trait Implementations
impl RefUnwindSafe for u128
impl Send for u128
impl Sync for u128
impl Unpin for u128
impl UnwindSafe for u128
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
source
impl<T> BorrowMut<T> for T where
T: ?Sized,
sourcefn borrow_mut(&mut self) -> &mut T
const: unstable · source
fn borrow_mut(&mut self) -> &mut T
const: unstable · sourceMutably borrows from an owned value. Read more