Struct arbitrary_int::UInt
source · pub struct UInt<T, const BITS: usize> { /* private fields */ }Implementations§
source§impl<T: Copy, const BITS: usize> UInt<T, BITS>
impl<T: Copy, const BITS: usize> UInt<T, BITS>
pub const BITS: usize = BITS
sourcepub const unsafe fn new_unchecked(value: T) -> Self
pub const unsafe fn new_unchecked(value: T) -> Self
source§impl<const BITS: usize> UInt<u8, BITS>
impl<const BITS: usize> UInt<u8, BITS>
sourcepub const fn new(value: u8) -> Self
pub const fn new(value: u8) -> Self
Creates an instance. Panics if the given value is outside of the valid range
sourcepub const fn try_new(value: u8) -> Result<Self, TryNewError>
pub const fn try_new(value: u8) -> Result<Self, TryNewError>
Creates an instance or an error if the given value is outside of the valid range
pub const fn extract(value: u8, start_bit: usize) -> Self
sourcepub const fn extract_u8(value: u8, start_bit: usize) -> Self
pub const fn extract_u8(value: u8, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient.
panics if start_bit+
sourcepub const fn extract_u16(value: u16, start_bit: usize) -> Self
pub const fn extract_u16(value: u16, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u32(value: u32, start_bit: usize) -> Self
pub const fn extract_u32(value: u32, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u64(value: u64, start_bit: usize) -> Self
pub const fn extract_u64(value: u64, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u128(value: u128, start_bit: usize) -> Self
pub const fn extract_u128(value: u128, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u8, BITS_RESULT>
pub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u8, BITS_RESULT>
Returns a UInt with a wider bit depth but with the same base data type
sourcepub const fn reverse_bits(self) -> Self
pub const fn reverse_bits(self) -> Self
Reverses 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.
sourcepub const fn count_ones(self) -> u32
pub const fn count_ones(self) -> u32
Returns the number of ones in the binary representation of self.
sourcepub const fn count_zeros(self) -> u32
pub const fn count_zeros(self) -> u32
Returns the number of zeros in the binary representation of self.
sourcepub const fn leading_ones(self) -> u32
pub const fn leading_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn leading_zeros(self) -> u32
pub const fn leading_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn trailing_ones(self) -> u32
pub const fn trailing_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn trailing_zeros(self) -> u32
pub const fn trailing_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn rotate_left(self, n: u32) -> Self
pub const fn rotate_left(self, n: u32) -> Self
Shifts 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!
sourcepub const fn rotate_right(self, n: u32) -> Self
pub const fn rotate_right(self, n: u32) -> Self
Shifts 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!
source§impl<const BITS: usize> UInt<u16, BITS>
impl<const BITS: usize> UInt<u16, BITS>
sourcepub const fn new(value: u16) -> Self
pub const fn new(value: u16) -> Self
Creates an instance. Panics if the given value is outside of the valid range
sourcepub const fn try_new(value: u16) -> Result<Self, TryNewError>
pub const fn try_new(value: u16) -> Result<Self, TryNewError>
Creates an instance or an error if the given value is outside of the valid range
pub const fn extract(value: u16, start_bit: usize) -> Self
sourcepub const fn extract_u8(value: u8, start_bit: usize) -> Self
pub const fn extract_u8(value: u8, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient.
panics if start_bit+
sourcepub const fn extract_u16(value: u16, start_bit: usize) -> Self
pub const fn extract_u16(value: u16, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u32(value: u32, start_bit: usize) -> Self
pub const fn extract_u32(value: u32, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u64(value: u64, start_bit: usize) -> Self
pub const fn extract_u64(value: u64, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u128(value: u128, start_bit: usize) -> Self
pub const fn extract_u128(value: u128, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u16, BITS_RESULT>
pub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u16, BITS_RESULT>
Returns a UInt with a wider bit depth but with the same base data type
sourcepub const fn reverse_bits(self) -> Self
pub const fn reverse_bits(self) -> Self
Reverses 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.
sourcepub const fn count_ones(self) -> u32
pub const fn count_ones(self) -> u32
Returns the number of ones in the binary representation of self.
sourcepub const fn count_zeros(self) -> u32
pub const fn count_zeros(self) -> u32
Returns the number of zeros in the binary representation of self.
sourcepub const fn leading_ones(self) -> u32
pub const fn leading_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn leading_zeros(self) -> u32
pub const fn leading_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn trailing_ones(self) -> u32
pub const fn trailing_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn trailing_zeros(self) -> u32
pub const fn trailing_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn rotate_left(self, n: u32) -> Self
pub const fn rotate_left(self, n: u32) -> Self
Shifts 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!
sourcepub const fn rotate_right(self, n: u32) -> Self
pub const fn rotate_right(self, n: u32) -> Self
Shifts 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!
source§impl<const BITS: usize> UInt<u32, BITS>
impl<const BITS: usize> UInt<u32, BITS>
sourcepub const fn new(value: u32) -> Self
pub const fn new(value: u32) -> Self
Creates an instance. Panics if the given value is outside of the valid range
sourcepub const fn try_new(value: u32) -> Result<Self, TryNewError>
pub const fn try_new(value: u32) -> Result<Self, TryNewError>
Creates an instance or an error if the given value is outside of the valid range
pub const fn extract(value: u32, start_bit: usize) -> Self
sourcepub const fn extract_u8(value: u8, start_bit: usize) -> Self
pub const fn extract_u8(value: u8, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient.
panics if start_bit+
sourcepub const fn extract_u16(value: u16, start_bit: usize) -> Self
pub const fn extract_u16(value: u16, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u32(value: u32, start_bit: usize) -> Self
pub const fn extract_u32(value: u32, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u64(value: u64, start_bit: usize) -> Self
pub const fn extract_u64(value: u64, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u128(value: u128, start_bit: usize) -> Self
pub const fn extract_u128(value: u128, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u32, BITS_RESULT>
pub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u32, BITS_RESULT>
Returns a UInt with a wider bit depth but with the same base data type
sourcepub const fn reverse_bits(self) -> Self
pub const fn reverse_bits(self) -> Self
Reverses 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.
sourcepub const fn count_ones(self) -> u32
pub const fn count_ones(self) -> u32
Returns the number of ones in the binary representation of self.
sourcepub const fn count_zeros(self) -> u32
pub const fn count_zeros(self) -> u32
Returns the number of zeros in the binary representation of self.
sourcepub const fn leading_ones(self) -> u32
pub const fn leading_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn leading_zeros(self) -> u32
pub const fn leading_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn trailing_ones(self) -> u32
pub const fn trailing_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn trailing_zeros(self) -> u32
pub const fn trailing_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn rotate_left(self, n: u32) -> Self
pub const fn rotate_left(self, n: u32) -> Self
Shifts 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!
sourcepub const fn rotate_right(self, n: u32) -> Self
pub const fn rotate_right(self, n: u32) -> Self
Shifts 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!
source§impl<const BITS: usize> UInt<u64, BITS>
impl<const BITS: usize> UInt<u64, BITS>
sourcepub const fn new(value: u64) -> Self
pub const fn new(value: u64) -> Self
Creates an instance. Panics if the given value is outside of the valid range
sourcepub const fn try_new(value: u64) -> Result<Self, TryNewError>
pub const fn try_new(value: u64) -> Result<Self, TryNewError>
Creates an instance or an error if the given value is outside of the valid range
pub const fn extract(value: u64, start_bit: usize) -> Self
sourcepub const fn extract_u8(value: u8, start_bit: usize) -> Self
pub const fn extract_u8(value: u8, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient.
panics if start_bit+
sourcepub const fn extract_u16(value: u16, start_bit: usize) -> Self
pub const fn extract_u16(value: u16, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u32(value: u32, start_bit: usize) -> Self
pub const fn extract_u32(value: u32, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u64(value: u64, start_bit: usize) -> Self
pub const fn extract_u64(value: u64, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u128(value: u128, start_bit: usize) -> Self
pub const fn extract_u128(value: u128, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u64, BITS_RESULT>
pub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u64, BITS_RESULT>
Returns a UInt with a wider bit depth but with the same base data type
sourcepub const fn reverse_bits(self) -> Self
pub const fn reverse_bits(self) -> Self
Reverses 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.
sourcepub const fn count_ones(self) -> u32
pub const fn count_ones(self) -> u32
Returns the number of ones in the binary representation of self.
sourcepub const fn count_zeros(self) -> u32
pub const fn count_zeros(self) -> u32
Returns the number of zeros in the binary representation of self.
sourcepub const fn leading_ones(self) -> u32
pub const fn leading_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn leading_zeros(self) -> u32
pub const fn leading_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn trailing_ones(self) -> u32
pub const fn trailing_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn trailing_zeros(self) -> u32
pub const fn trailing_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn rotate_left(self, n: u32) -> Self
pub const fn rotate_left(self, n: u32) -> Self
Shifts 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!
sourcepub const fn rotate_right(self, n: u32) -> Self
pub const fn rotate_right(self, n: u32) -> Self
Shifts 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!
source§impl<const BITS: usize> UInt<u128, BITS>
impl<const BITS: usize> UInt<u128, BITS>
sourcepub const fn new(value: u128) -> Self
pub const fn new(value: u128) -> Self
Creates an instance. Panics if the given value is outside of the valid range
sourcepub const fn try_new(value: u128) -> Result<Self, TryNewError>
pub const fn try_new(value: u128) -> Result<Self, TryNewError>
Creates an instance or an error if the given value is outside of the valid range
pub const fn extract(value: u128, start_bit: usize) -> Self
sourcepub const fn extract_u8(value: u8, start_bit: usize) -> Self
pub const fn extract_u8(value: u8, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient.
panics if start_bit+
sourcepub const fn extract_u16(value: u16, start_bit: usize) -> Self
pub const fn extract_u16(value: u16, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u32(value: u32, start_bit: usize) -> Self
pub const fn extract_u32(value: u32, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u64(value: u64, start_bit: usize) -> Self
pub const fn extract_u64(value: u64, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn extract_u128(value: u128, start_bit: usize) -> Self
pub const fn extract_u128(value: u128, start_bit: usize) -> Self
Extracts bits from a given value. The extract is equivalent to: new((value >> start_bit) & MASK)
Unlike new, extract doesn’t perform range-checking so it is slightly more efficient
panics if start_bit+
sourcepub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u128, BITS_RESULT>
pub const fn widen<const BITS_RESULT: usize>(self) -> UInt<u128, BITS_RESULT>
Returns a UInt with a wider bit depth but with the same base data type
sourcepub const fn reverse_bits(self) -> Self
pub const fn reverse_bits(self) -> Self
Reverses 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.
sourcepub const fn count_ones(self) -> u32
pub const fn count_ones(self) -> u32
Returns the number of ones in the binary representation of self.
sourcepub const fn count_zeros(self) -> u32
pub const fn count_zeros(self) -> u32
Returns the number of zeros in the binary representation of self.
sourcepub const fn leading_ones(self) -> u32
pub const fn leading_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn leading_zeros(self) -> u32
pub const fn leading_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn trailing_ones(self) -> u32
pub const fn trailing_ones(self) -> u32
Returns the number of leading ones in the binary representation of self.
sourcepub const fn trailing_zeros(self) -> u32
pub const fn trailing_zeros(self) -> u32
Returns the number of leading zeros in the binary representation of self.
sourcepub const fn rotate_left(self, n: u32) -> Self
pub const fn rotate_left(self, n: u32) -> Self
Shifts 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!
sourcepub const fn rotate_right(self, n: u32) -> Self
pub const fn rotate_right(self, n: u32) -> Self
Shifts 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!
source§impl UInt<u32, 24>
impl UInt<u32, 24>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 3]
pub const fn from_le_bytes(from: [u8; 3]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 3]
pub const fn from_be_bytes(from: [u8; 3]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 3]
pub const fn from_ne_bytes(bytes: [u8; 3]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u64, 24>
impl UInt<u64, 24>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 3]
pub const fn from_le_bytes(from: [u8; 3]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 3]
pub const fn from_be_bytes(from: [u8; 3]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 3]
pub const fn from_ne_bytes(bytes: [u8; 3]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 24>
impl UInt<u128, 24>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 3]
pub const fn from_le_bytes(from: [u8; 3]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 3]
pub const fn from_be_bytes(from: [u8; 3]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 3]
pub const fn from_ne_bytes(bytes: [u8; 3]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u64, 40>
impl UInt<u64, 40>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 5]
pub const fn from_le_bytes(from: [u8; 5]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 5]
pub const fn from_be_bytes(from: [u8; 5]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 5]
pub const fn from_ne_bytes(bytes: [u8; 5]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 40>
impl UInt<u128, 40>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 5]
pub const fn from_le_bytes(from: [u8; 5]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 5]
pub const fn from_be_bytes(from: [u8; 5]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 5]
pub const fn from_ne_bytes(bytes: [u8; 5]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u64, 48>
impl UInt<u64, 48>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 6]
pub const fn from_le_bytes(from: [u8; 6]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 6]
pub const fn from_be_bytes(from: [u8; 6]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 6]
pub const fn from_ne_bytes(bytes: [u8; 6]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 48>
impl UInt<u128, 48>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 6]
pub const fn from_le_bytes(from: [u8; 6]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 6]
pub const fn from_be_bytes(from: [u8; 6]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 6]
pub const fn from_ne_bytes(bytes: [u8; 6]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u64, 56>
impl UInt<u64, 56>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 7]
pub const fn from_le_bytes(from: [u8; 7]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 7]
pub const fn from_be_bytes(from: [u8; 7]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 7]
pub const fn from_ne_bytes(bytes: [u8; 7]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 56>
impl UInt<u128, 56>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 7]
pub const fn from_le_bytes(from: [u8; 7]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 7]
pub const fn from_be_bytes(from: [u8; 7]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 7]
pub const fn from_ne_bytes(bytes: [u8; 7]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 72>
impl UInt<u128, 72>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 9]
pub const fn from_le_bytes(from: [u8; 9]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 9]
pub const fn from_be_bytes(from: [u8; 9]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 9]
pub const fn from_ne_bytes(bytes: [u8; 9]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 80>
impl UInt<u128, 80>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 10]
pub const fn from_le_bytes(from: [u8; 10]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 10]
pub const fn from_be_bytes(from: [u8; 10]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 10]
pub const fn from_ne_bytes(bytes: [u8; 10]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 88>
impl UInt<u128, 88>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 11]
pub const fn from_le_bytes(from: [u8; 11]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 11]
pub const fn from_be_bytes(from: [u8; 11]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 11]
pub const fn from_ne_bytes(bytes: [u8; 11]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 96>
impl UInt<u128, 96>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 12]
pub const fn from_le_bytes(from: [u8; 12]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 12]
pub const fn from_be_bytes(from: [u8; 12]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 12]
pub const fn from_ne_bytes(bytes: [u8; 12]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 104>
impl UInt<u128, 104>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 13]
pub const fn from_le_bytes(from: [u8; 13]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 13]
pub const fn from_be_bytes(from: [u8; 13]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 13]
pub const fn from_ne_bytes(bytes: [u8; 13]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 112>
impl UInt<u128, 112>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 14]
pub const fn from_le_bytes(from: [u8; 14]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 14]
pub const fn from_be_bytes(from: [u8; 14]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 14]
pub const fn from_ne_bytes(bytes: [u8; 14]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
source§impl UInt<u128, 120>
impl UInt<u128, 120>
sourcepub const fn swap_bytes(&self) -> Self
pub const fn swap_bytes(&self) -> Self
Reverses the byte order of the integer.
pub const fn to_le_bytes(&self) -> [u8; 15]
pub const fn from_le_bytes(from: [u8; 15]) -> Self
pub const fn to_be_bytes(&self) -> [u8; 15]
pub const fn from_be_bytes(from: [u8; 15]) -> Self
pub const fn to_ne_bytes(&self) -> [u8; 15]
pub const fn from_ne_bytes(bytes: [u8; 15]) -> Self
pub const fn to_le(self) -> Self
pub const fn to_be(self) -> Self
pub const fn from_le(value: Self) -> Self
pub const fn from_be(value: Self) -> Self
Trait Implementations§
source§impl<T, const BITS: usize> Add<UInt<T, BITS>> for UInt<T, BITS>where
Self: Number,
T: PartialEq + Copy + BitAnd<T, Output = T> + Not<Output = T> + Add<T, Output = T> + Sub<T, Output = T> + Shr<usize, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> Add<UInt<T, BITS>> for UInt<T, BITS>where Self: Number, T: PartialEq + Copy + BitAnd<T, Output = T> + Not<Output = T> + Add<T, Output = T> + Sub<T, Output = T> + Shr<usize, Output = T> + Shl<usize, Output = T> + From<u8>,
source§impl<T, const BITS: usize> AddAssign<UInt<T, BITS>> for UInt<T, BITS>where
Self: Number,
T: PartialEq + Eq + Not<Output = T> + Copy + AddAssign<T> + BitAnd<T, Output = T> + BitAndAssign<T> + Sub<T, Output = T> + Shr<usize, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> AddAssign<UInt<T, BITS>> for UInt<T, BITS>where Self: Number, T: PartialEq + Eq + Not<Output = T> + Copy + AddAssign<T> + BitAnd<T, Output = T> + BitAndAssign<T> + Sub<T, Output = T> + Shr<usize, Output = T> + Shl<usize, Output = T> + From<u8>,
source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
+= operation. Read moresource§impl<T, const BITS: usize> BitAnd<UInt<T, BITS>> for UInt<T, BITS>where
Self: Number,
T: Copy + BitAnd<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> BitAnd<UInt<T, BITS>> for UInt<T, BITS>where Self: Number, T: Copy + BitAnd<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
source§impl<T, const BITS: usize> BitAndAssign<UInt<T, BITS>> for UInt<T, BITS>where
T: Copy + BitAndAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> BitAndAssign<UInt<T, BITS>> for UInt<T, BITS>where T: Copy + BitAndAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
source§fn bitand_assign(&mut self, rhs: Self)
fn bitand_assign(&mut self, rhs: Self)
&= operation. Read moresource§impl<T, const BITS: usize> BitOr<UInt<T, BITS>> for UInt<T, BITS>where
T: Copy + BitOr<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> BitOr<UInt<T, BITS>> for UInt<T, BITS>where T: Copy + BitOr<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
source§impl<T, const BITS: usize> BitOrAssign<UInt<T, BITS>> for UInt<T, BITS>where
T: Copy + BitOrAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> BitOrAssign<UInt<T, BITS>> for UInt<T, BITS>where T: Copy + BitOrAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
source§fn bitor_assign(&mut self, rhs: Self)
fn bitor_assign(&mut self, rhs: Self)
|= operation. Read moresource§impl<T, const BITS: usize> BitXor<UInt<T, BITS>> for UInt<T, BITS>where
T: Copy + BitXor<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> BitXor<UInt<T, BITS>> for UInt<T, BITS>where T: Copy + BitXor<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
source§impl<T, const BITS: usize> BitXorAssign<UInt<T, BITS>> for UInt<T, BITS>where
T: Copy + BitXorAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> BitXorAssign<UInt<T, BITS>> for UInt<T, BITS>where T: Copy + BitXorAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
source§fn bitxor_assign(&mut self, rhs: Self)
fn bitxor_assign(&mut self, rhs: Self)
^= operation. Read moresource§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u16, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u16, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u32, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u32, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u64, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u64, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u8, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u128, BITS_FROM>> for UInt<u8, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u128, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u128, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u32, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u32, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u64, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u64, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u8, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u16, BITS_FROM>> for UInt<u8, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u128, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u128, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u16, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u16, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u64, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u64, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u8, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u32, BITS_FROM>> for UInt<u8, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u128, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u128, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u16, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u16, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u32, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u32, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u8, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u64, BITS_FROM>> for UInt<u8, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u128, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u128, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u16, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u16, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u32, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u32, BITS>
source§impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u64, BITS>
impl<const BITS: usize, const BITS_FROM: usize> From<UInt<u8, BITS_FROM>> for UInt<u64, BITS>
source§impl<T, const BITS: usize> Not for UInt<T, BITS>where
Self: Number,
T: Copy + BitAnd<T, Output = T> + BitXor<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> Not for UInt<T, BITS>where Self: Number, T: Copy + BitAnd<T, Output = T> + BitXor<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
source§impl<const BITS: usize> Number for UInt<u128, BITS>
impl<const BITS: usize> Number for UInt<u128, BITS>
source§impl<const BITS: usize> Number for UInt<u16, BITS>
impl<const BITS: usize> Number for UInt<u16, BITS>
source§impl<const BITS: usize> Number for UInt<u32, BITS>
impl<const BITS: usize> Number for UInt<u32, BITS>
source§impl<const BITS: usize> Number for UInt<u64, BITS>
impl<const BITS: usize> Number for UInt<u64, BITS>
source§impl<const BITS: usize> Number for UInt<u8, BITS>
impl<const BITS: usize> Number for UInt<u8, BITS>
source§impl<T: Ord, const BITS: usize> Ord for UInt<T, BITS>
impl<T: Ord, const BITS: usize> Ord for UInt<T, BITS>
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
source§impl<T: PartialEq, const BITS: usize> PartialEq<UInt<T, BITS>> for UInt<T, BITS>
impl<T: PartialEq, const BITS: usize> PartialEq<UInt<T, BITS>> for UInt<T, BITS>
source§impl<T: PartialOrd, const BITS: usize> PartialOrd<UInt<T, BITS>> for UInt<T, BITS>
impl<T: PartialOrd, const BITS: usize> PartialOrd<UInt<T, BITS>> for UInt<T, BITS>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self and other) and is used by the <=
operator. Read moresource§impl<T, TSHIFTBITS, const BITS: usize> Shl<TSHIFTBITS> for UInt<T, BITS>where
Self: Number,
T: Copy + BitAnd<T, Output = T> + Shl<TSHIFTBITS, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
impl<T, TSHIFTBITS, const BITS: usize> Shl<TSHIFTBITS> for UInt<T, BITS>where Self: Number, T: Copy + BitAnd<T, Output = T> + Shl<TSHIFTBITS, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
source§impl<T, TSHIFTBITS, const BITS: usize> ShlAssign<TSHIFTBITS> for UInt<T, BITS>where
Self: Number,
T: Copy + BitAnd<T, Output = T> + BitAndAssign<T> + ShlAssign<TSHIFTBITS> + Sub<T, Output = T> + Shr<usize, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, TSHIFTBITS, const BITS: usize> ShlAssign<TSHIFTBITS> for UInt<T, BITS>where Self: Number, T: Copy + BitAnd<T, Output = T> + BitAndAssign<T> + ShlAssign<TSHIFTBITS> + Sub<T, Output = T> + Shr<usize, Output = T> + Shl<usize, Output = T> + From<u8>,
source§fn shl_assign(&mut self, rhs: TSHIFTBITS)
fn shl_assign(&mut self, rhs: TSHIFTBITS)
<<= operation. Read moresource§impl<T, TSHIFTBITS, const BITS: usize> Shr<TSHIFTBITS> for UInt<T, BITS>where
T: Copy + Shr<TSHIFTBITS, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, TSHIFTBITS, const BITS: usize> Shr<TSHIFTBITS> for UInt<T, BITS>where T: Copy + Shr<TSHIFTBITS, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
source§impl<T, TSHIFTBITS, const BITS: usize> ShrAssign<TSHIFTBITS> for UInt<T, BITS>where
T: Copy + ShrAssign<TSHIFTBITS> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
impl<T, TSHIFTBITS, const BITS: usize> ShrAssign<TSHIFTBITS> for UInt<T, BITS>where T: Copy + ShrAssign<TSHIFTBITS> + Sub<T, Output = T> + Shl<usize, Output = T> + From<u8>,
source§fn shr_assign(&mut self, rhs: TSHIFTBITS)
fn shr_assign(&mut self, rhs: TSHIFTBITS)
>>= operation. Read moresource§impl<T, const BITS: usize> Sub<UInt<T, BITS>> for UInt<T, BITS>where
Self: Number,
T: Copy + BitAnd<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> Sub<UInt<T, BITS>> for UInt<T, BITS>where Self: Number, T: Copy + BitAnd<T, Output = T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
source§impl<T, const BITS: usize> SubAssign<UInt<T, BITS>> for UInt<T, BITS>where
Self: Number,
T: Copy + SubAssign<T> + BitAnd<T, Output = T> + BitAndAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
impl<T, const BITS: usize> SubAssign<UInt<T, BITS>> for UInt<T, BITS>where Self: Number, T: Copy + SubAssign<T> + BitAnd<T, Output = T> + BitAndAssign<T> + Sub<T, Output = T> + Shl<usize, Output = T> + Shr<usize, Output = T> + From<u8>,
source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
-= operation. Read more