Struct bnum::BUintD32

source ·
pub struct BUintD32<const N: usize> { /* private fields */ }
Expand description

Unsigned integer type composed of u32 digits, of arbitrary fixed size which must be known at compile time.

Digits are stored in little endian (least significant digit first). This integer type aims to exactly replicate the behaviours of Rust’s built-in unsigned integer types: u8, u16, u32, u64, u128 and usize. The const generic parameter N is the number of u32 digits that are stored.

BUintD32 implements all the arithmetic traits from the core::ops module. The behaviour of the implementation of these traits is the same as for Rust’s primitive integers - i.e. in debug mode it panics on overflow, and in release mode it performs two’s complement wrapping (see https://doc.rust-lang.org/book/ch03-02-data-types.html#integer-overflow). However, an attempt to divide by zero or calculate a remainder with a divisor of zero will always panic, unless the checked_ methods are used, which never panic.

Implementations§

source§

impl<const N: usize> BUintD32<N>

source§

impl<const N: usize> BUintD32<N>

Checked arithmetic methods which act on self: self.checked_.... Each method cannot panic and returns an Option<Self>. None is returned when overflow would have occurred or there was an attempt to divide by zero or calculate a remainder with a divisor of zero.

source

pub const fn checked_add(self, rhs: Self) -> Option<Self>

source

pub const fn checked_add_signed(self, rhs: BIntD32<N>) -> Option<Self>

source

pub const fn checked_sub(self, rhs: Self) -> Option<Self>

source

pub const fn checked_mul(self, rhs: Self) -> Option<Self>

source

pub const fn checked_div(self, rhs: Self) -> Option<Self>

source

pub const fn checked_div_euclid(self, rhs: Self) -> Option<Self>

source

pub const fn checked_rem(self, rhs: Self) -> Option<Self>

source

pub const fn checked_rem_euclid(self, rhs: Self) -> Option<Self>

source

pub const fn checked_neg(self) -> Option<Self>

source

pub const fn checked_shl(self, rhs: u32) -> Option<Self>

source

pub const fn checked_shr(self, rhs: u32) -> Option<Self>

source

pub const fn checked_pow(self, pow: u32) -> Option<Self>

source

pub const fn checked_next_multiple_of(self, rhs: Self) -> Option<Self>

source

pub const fn checked_ilog2(self) -> Option<u32>

source

pub const fn checked_ilog10(self) -> Option<u32>

source

pub const fn checked_ilog(self, base: Self) -> Option<u32>

source

pub const fn checked_next_power_of_two(self) -> Option<Self>

Returns the smallest power of two greater than or equal to self. If the next power of two is greater than Self::MAX, None is returned, otherwise the power of two is wrapped in Some.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.checked_next_power_of_two.

Examples
use bnum::types::U256;

let n = U256::from(2u8);
assert_eq!(n.checked_next_power_of_two(), Some(n));
let m = U256::from(3u8);
assert_eq!(U256::MAX.checked_next_power_of_two(), None);
source§

impl<const N: usize> BUintD32<N>

The latest version of the nightly Rust compiler at the time v0.7.0 was published (v1.71.0-nightly) unfortunately dropped support for the const implementation of common standard library traits such as Add, BitOr, etc. These methods below have therefore been provided to allow use of some of the methods these traits provided, in a const context.

source

pub const fn bitand(self, rhs: Self) -> Self

source

pub const fn bitor(self, rhs: Self) -> Self

source

pub const fn bitxor(self, rhs: Self) -> Self

source

pub const fn not(self) -> Self

source

pub const fn eq(&self, other: &Self) -> bool

source

pub const fn ne(&self, other: &Self) -> bool

source

pub const fn cmp(&self, other: &Self) -> Ordering

source

pub const fn max(self, other: Self) -> Self

source

pub const fn min(self, other: Self) -> Self

source

pub const fn clamp(self, min: Self, max: Self) -> Self

source

pub const fn lt(&self, other: &Self) -> bool

source

pub const fn le(&self, other: &Self) -> bool

source

pub const fn gt(&self, other: &Self) -> bool

source

pub const fn ge(&self, other: &Self) -> bool

source

pub const fn add(self, rhs: Self) -> Self

source

pub const fn mul(self, rhs: Self) -> Self

source

pub const fn shl(self, rhs: u32) -> Self

source

pub const fn shr(self, rhs: u32) -> Self

source

pub const fn sub(self, rhs: Self) -> Self

source

pub const fn div(self, rhs: Self) -> Self

source

pub const fn rem(self, rhs: Self) -> Self

source§

impl<const N: usize> BUintD32<N>

Associated constants for this type.

source

pub const MIN: Self = _

The minimum value that this type can represent.

Examples
use bnum::types::U512;

assert_eq!(!U512::MIN, U512::MAX);
source

pub const MAX: Self = _

The maximum value that this type can represent.

Examples
use bnum::types::U512;

assert_eq!(U512::MAX.wrapping_add(U512::ONE), U512::MIN);
source

pub const BITS: u32 = _

The total number of bits that this type contains.

Examples
use bnum::types::U512;

assert_eq!(U512::BITS, 512);
source

pub const BYTES: u32 = _

The total number of bytes that this type contains.

Examples
use bnum::types::U512;

assert_eq!(U512::BYTES, 512 / 8);
source

pub const ZERO: Self = Self::MIN

The value of 0 represented by this type.

Examples
use bnum::types::U512;

assert_eq!(U512::ZERO, U512::from(0u8));
source

pub const ONE: Self = _

The value of 1 represented by this type.

source

pub const TWO: Self = _

The value of 2 represented by this type.

source

pub const THREE: Self = _

The value of 3 represented by this type.

source

pub const FOUR: Self = _

The value of 4 represented by this type.

source

pub const FIVE: Self = _

The value of 5 represented by this type.

source

pub const SIX: Self = _

The value of 6 represented by this type.

source

pub const SEVEN: Self = _

The value of 7 represented by this type.

source

pub const EIGHT: Self = _

The value of 8 represented by this type.

source

pub const NINE: Self = _

The value of 9 represented by this type.

source

pub const TEN: Self = _

The value of 10 represented by this type.

source§

impl<const N: usize> BUintD32<N>

Methods which convert a BUintD32 to and from data stored in different endianness.

source

pub const fn from_be(x: Self) -> Self

Converts an integer from big endian to the target’s endianness.

On big endian this is a no-op. On little endian the bytes are swapped.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.from_be.

source

pub const fn from_le(x: Self) -> Self

Converts 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.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.from_le.

source

pub const fn to_be(self) -> Self

Converts self from big endian to the target’s endianness.

On big endian this is a no-op. On little endian the bytes are swapped.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.to_be.

source

pub const fn to_le(self) -> Self

Converts self from little endian to the target’s endianness.

On little endian this is a no-op. On big endian the bytes are swapped.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.to_le.

source

pub const fn from_be_slice(slice: &[u8]) -> Option<Self>

Create an integer value from a slice of bytes in big endian. The value is wrapped in an Option as the integer represented by the slice of bytes may represent an integer too large to be represented by the type.

If the length of the slice is shorter than Self::BYTES, the slice is padded with zeros at the start so that it’s length equals Self::BYTES.

If the length of the slice is longer than Self::BYTES, None will be returned, unless leading zeros from the slice can be removed until the length of the slice equals Self::BYTES.

Examples
use bnum::types::U128;

let value_from_array = U128::from(u128::from_be_bytes([0, 0, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]));
// using the `from_be_bytes` method on the primitve `u128` here instead of on `U128` as `from_be_bytes` is currently only available in bnum on nightly
let value_from_slice = U128::from_be_slice(&[0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]).unwrap();
let value_from_long_slice = U128::from_be_slice(&[0, 0, 0, 0, 0, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]).unwrap();

assert_eq!(value_from_array, value_from_slice);
assert_eq!(value_from_array, value_from_long_slice);

let invalid_slice = &[0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90];
assert_eq!(U128::from_be_slice(invalid_slice), None);
source

pub const fn from_le_slice(slice: &[u8]) -> Option<Self>

Creates an integer value from a slice of bytes in little endian. The value is wrapped in an Option as the bytes may represent an integer too large to be represented by the type.

If the length of the slice is shorter than Self::BYTES, the slice is padded with zeros at the end so that it’s length equals Self::BYTES.

If the length of the slice is longer than Self::BYTES, None will be returned, unless trailing zeros from the slice can be removed until the length of the slice equals Self::BYTES.

Examples
use bnum::types::U128;

let value_from_array = U128::from(u128::from_le_bytes([0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0, 0]));
// using the `from_le_bytes` method on the primitve `u128` here instead of on `U128` as `from_le_bytes` is currently only available in bnum on nightly
let value_from_slice = U128::from_le_slice(&[0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56]).unwrap();
let value_from_long_slice = U128::from_le_slice(&[0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0, 0, 0, 0, 0, 0]).unwrap();

assert_eq!(value_from_array, value_from_slice);
assert_eq!(value_from_array, value_from_long_slice);

let invalid_slice = &[0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90];
assert_eq!(U128::from_le_slice(invalid_slice), None);
source

pub const fn to_be_bytes(self) -> [u8; { _ }]

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.to_be_bytes.

This is supported on the crate feature nightly only.

source

pub const fn to_le_bytes(self) -> [u8; { _ }]

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.to_le_bytes.

This is supported on the crate feature nightly only.

source

pub const fn to_ne_bytes(self) -> [u8; { _ }]

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.to_ne_bytes.

This is supported on the crate feature nightly only.

source

pub const fn from_be_bytes(bytes: [u8; { _ }]) -> Self

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.from_be_bytes.

This is supported on the crate feature nightly only.

source

pub const fn from_le_bytes(bytes: [u8; { _ }]) -> Self

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.from_le_bytes.

This is supported on the crate feature nightly only.

source

pub const fn from_ne_bytes(bytes: [u8; { _ }]) -> Self

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.from_ne_bytes.

This is supported on the crate feature nightly only.

source§

impl<const N: usize> BUintD32<N>

Overflowing arithmetic methods which act on self: self.overflowing_.... Each method returns a tuple of type (Self, bool) where the first item of the tuple is the result of the calculation truncated to the number of bits of self, and the second item is a boolean which indicates whether overflow occurred (i.e. if the number of bits of the result of the calculation exceeded the number of bits of self).

source

pub const fn overflowing_add(self, rhs: Self) -> (Self, bool)

source

pub const fn overflowing_add_signed(self, rhs: BIntD32<N>) -> (Self, bool)

source

pub const fn overflowing_sub(self, rhs: Self) -> (Self, bool)

source

pub const fn overflowing_mul(self, rhs: Self) -> (Self, bool)

source

pub const fn overflowing_div(self, rhs: Self) -> (Self, bool)

source

pub const fn overflowing_div_euclid(self, rhs: Self) -> (Self, bool)

source

pub const fn overflowing_rem(self, rhs: Self) -> (Self, bool)

source

pub const fn overflowing_rem_euclid(self, rhs: Self) -> (Self, bool)

source

pub const fn overflowing_neg(self) -> (Self, bool)

source

pub const fn overflowing_shl(self, rhs: u32) -> (Self, bool)

source

pub const fn overflowing_shr(self, rhs: u32) -> (Self, bool)

source

pub const fn overflowing_pow(self, pow: u32) -> (Self, bool)

source§

impl<const N: usize> BUintD32<N>

Methods which convert a BUintD32 between different types in a given radix (base).

source

pub const fn parse_bytes(buf: &[u8], radix: u32) -> Option<Self>

Converts a byte slice in a given base to an integer. The input slice must contain ascii/utf8 characters in [0-9a-zA-Z].

This function is equivalent to the from_str_radix function for a string slice equivalent to the byte slice and the same radix.

Returns None if the conversion of the byte slice to string slice fails or if a digit is larger than or equal to the given radix, otherwise the integer is wrapped in Some.

Panics

This function panics if radix is not in the range from 2 to 36 inclusive.

Examples
use bnum::types::U512;

let src = "394857hdgfjhsnkg947dgfjkeita";
assert_eq!(U512::from_str_radix(src, 32).ok(), U512::parse_bytes(src.as_bytes(), 32));
source

pub const fn from_radix_be(buf: &[u8], radix: u32) -> Option<Self>

Converts a slice of big-endian digits in the given radix to an integer. Each u8 of the slice is interpreted as one digit of base radix of the number, so this function will return None if any digit is greater than or equal to radix, otherwise the integer is wrapped in Some.

Panics

This function panics if radix is not in the range from 2 to 256 inclusive.

Examples
use bnum::types::U512;

let n = U512::from(34598748526857897975u128);
let digits = n.to_radix_be(12);
assert_eq!(Some(n), U512::from_radix_be(&digits, 12));
source

pub const fn from_radix_le(buf: &[u8], radix: u32) -> Option<Self>

Converts a slice of little-endian digits in the given radix to an integer. Each u8 of the slice is interpreted as one digit of base radix of the number, so this function will return None if any digit is greater than or equal to radix, otherwise the integer is wrapped in Some.

Panics

This function panics if radix is not in the range from 2 to 256 inclusive.

Examples
use bnum::types::U512;

let n = U512::from(109837459878951038945798u128);
let digits = n.to_radix_le(15);
assert_eq!(Some(n), U512::from_radix_le(&digits, 15));
source

pub const fn from_str_radix( src: &str, radix: u32 ) -> Result<Self, ParseIntError>

Converts 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-9
  • a-z
  • A-Z
Panics

This function panics if radix is not in the range from 2 to 36 inclusive.

Examples
use bnum::types::U512;

assert_eq!(U512::from_str_radix("A", 16), Ok(U512::from(10u128)));
source

pub const fn parse_str_radix(src: &str, radix: u32) -> Self

This function works the same as from_str_radix except that it returns a BUintD32 instead of a Result<BUintD32, ParseIntError>.

Panics

This function panics if radix is not in the range from 2 to 36 inclusive, or if the string cannot be parsed successfully.

Examples

Basic usage:

// The below example will fail to compile, as the function will panic at compile time:
use bnum::types::U256;

const DOESNT_COMPILE: U256 = U256::parse_str_radix("a13423", 10);
// Gives a compile error of "error[E0080]: evaluation of constant value failed... the evaluated program panicked at 'attempt to parse integer from string containing invalid digit'", 
source

pub fn to_str_radix(&self, radix: u32) -> String

Returns the integer as a string in the given radix.

Panics

This function panics if radix is not in the range from 2 to 36 inclusive.

Examples
use bnum::types::U512;

let src = "934857djkfghhkdfgbf9345hdfkh";
let n = U512::from_str_radix(src, 36).unwrap();
assert_eq!(n.to_str_radix(36), src);
source

pub fn to_radix_be(&self, radix: u32) -> Vec<u8>

Returns the integer in the given base in big-endian digit order.

Panics

This function panics if radix is not in the range from 2 to 256 inclusive.

use bnum::types::U512;

let digits = &[3, 55, 60, 100, 5, 0, 5, 88];
let n = U512::from_radix_be(digits, 120).unwrap();
assert_eq!(n.to_radix_be(120), digits);
source

pub fn to_radix_le(&self, radix: u32) -> Vec<u8>

Returns the integer in the given base in little-endian digit order.

Panics

This function panics if radix is not in the range from 2 to 256 inclusive.

use bnum::types::U512;

let digits = &[1, 67, 88, 200, 55, 68, 87, 120, 178];
let n = U512::from_radix_le(digits, 250).unwrap();
assert_eq!(n.to_radix_le(250), digits);
source§

impl<const N: usize> BUintD32<N>

Saturating arithmetic methods which act on self: self.saturating_.... For each method, if overflow or underflow occurs, the largest or smallest value that can be represented by Self is returned instead.

source§

impl<const N: usize> BUintD32<N>

Unchecked arithmetic methods which act on self: self.unchecked_.... Each method results in undefined behavior if overflow/underflow occurs, i.e. when the checked equivalent would return None.

source

pub const unsafe fn unchecked_add(self, rhs: Self) -> Self

See also: https://doc.rust-lang.org/std/primitive.i64.html#method.unchecked_add.

NB: this method is only const when the nightly feature is enabled.

source

pub const unsafe fn unchecked_sub(self, rhs: Self) -> Self

See also: https://doc.rust-lang.org/std/primitive.i64.html#method.unchecked_sub.

NB: this method is only const when the nightly feature is enabled.

source

pub const unsafe fn unchecked_mul(self, rhs: Self) -> Self

See also: https://doc.rust-lang.org/std/primitive.i64.html#method.unchecked_mul.

NB: this method is only const when the nightly feature is enabled.

source

pub const unsafe fn unchecked_shl(self, rhs: u32) -> Self

See also: https://doc.rust-lang.org/std/primitive.i64.html#method.unchecked_shl.

NB: this method is only const when the nightly feature is enabled.

source

pub const unsafe fn unchecked_shr(self, rhs: u32) -> Self

See also: https://doc.rust-lang.org/std/primitive.i64.html#method.unchecked_shr.

NB: this method is only const when the nightly feature is enabled.

source§

impl<const N: usize> BUintD32<N>

Wrapping arithmetic methods which act on self: self.wrapping_.... Each method returns of the calculation truncated to the number of bits of self, i.e. they each return the first item in the tuple returned by their overflowing equivalent.

source

pub const fn wrapping_add(self, rhs: Self) -> Self

source

pub const fn wrapping_add_signed(self, rhs: BIntD32<N>) -> Self

source

pub const fn wrapping_sub(self, rhs: Self) -> Self

source

pub const fn wrapping_mul(self, rhs: Self) -> Self

source

pub const fn wrapping_div(self, rhs: Self) -> Self

source

pub const fn wrapping_div_euclid(self, rhs: Self) -> Self

source

pub const fn wrapping_rem(self, rhs: Self) -> Self

source

pub const fn wrapping_rem_euclid(self, rhs: Self) -> Self

source

pub const fn wrapping_neg(self) -> Self

source

pub const fn wrapping_shl(self, rhs: u32) -> Self

source

pub const fn wrapping_shr(self, rhs: u32) -> Self

source

pub const fn wrapping_pow(self, pow: u32) -> Self

source

pub const fn wrapping_next_power_of_two(self) -> Self

Returns the smallest power of two greater than or equal to self. If the next power of two is greater than Self::MAX, the return value is wrapped to Self::MIN.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.wrapping_next_power_of_two.

Examples
use bnum::types::U256;

let n = U256::from(31u8);
assert_eq!(n.wrapping_next_power_of_two(), 32u8.into());
assert_eq!(U256::MAX.wrapping_next_power_of_two(), U256::MIN);
source§

impl<const N: usize> BUintD32<N>

source

pub const fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.count_ones.

Examples
use bnum::types::U1024;

let n = U1024::from(0b010111101010000u16);
assert_eq!(n.count_ones(), 7);
source

pub const fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.count_zeros.

Examples
use bnum::types::U1024;

assert_eq!((!U1024::ZERO).count_zeros(), 0);
source

pub const fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of self.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.leading_zeros.

Examples
use bnum::types::U1024;

let n = U1024::ZERO;
assert_eq!(n.leading_zeros(), 1024);
source

pub const fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation of self.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.trailing_zeros.

Examples
use bnum::types::U1024;

let n = (!U1024::ZERO) << 6u32;
assert_eq!(n.trailing_zeros(), 6);
source

pub const fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of self.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.leading_ones.

Examples
use bnum::types::U1024;

let n = !U1024::ZERO;
assert_eq!(n.leading_ones(), 1024);
source

pub const fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation of self.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.trailing_ones.

Examples
use bnum::types::U1024;

let n = U1024::from(0b1000101011011u16);
assert_eq!(n.trailing_ones(), 2);
source

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!

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.rotate_left.

source

pub const fn rotate_right(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!

self.rotate_right(n) is equivalent to self.rotate_left(Self::BITS - n).

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.rotate_right.

source

pub const fn swap_bytes(self) -> Self

Reverses the byte order of the integer.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.swap_bytes.

Examples
use bnum::types::U256;

let n = U256::from(0x12345678901234567890123456789012u128);
assert_eq!(n.swap_bytes().swap_bytes(), n);
source

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.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.reverse_bits.

Examples
use bnum::types::U256;

let n = U256::from(0x12345678901234567890123456789012u128);
assert_eq!(n.reverse_bits().reverse_bits(), n);
source

pub const fn pow(self, exp: u32) -> Self

Raises self to the power of exp, using exponentiation by squaring.

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.pow.

Examples
use bnum::types::U256;

let n = U256::from(3u8);
assert_eq!(n.pow(5), (243u8).into());
source

pub const fn div_euclid(self, rhs: Self) -> Self

source

pub const fn rem_euclid(self, rhs: Self) -> Self

source

pub const fn is_power_of_two(self) -> bool

Returns true if and only if self == 2^k for some integer k.

Examples
use bnum::types::U256;

let n = U256::from(1u16 << 14);
assert!(n.is_power_of_two());
let m = U256::from(100u8);
assert!(!m.is_power_of_two());
source

pub const fn next_power_of_two(self) -> Self

When return value overflows, 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).

See also: https://doc.rust-lang.org/std/primitive.u64.html#method.next_power_of_two.

Examples
use bnum::types::U256;

let n = U256::from(2u8);
assert_eq!(n.next_power_of_two(), n);
assert_eq!(U256::from(3u8).next_power_of_two(), 4u8.into());
assert_eq!(U256::ZERO.next_power_of_two(), U256::ONE);
source

pub const fn ilog2(self) -> u32

source

pub const fn ilog10(self) -> u32

source

pub const fn ilog(self, base: Self) -> u32

source

pub const fn abs_diff(self, other: Self) -> Self

source

pub const fn next_multiple_of(self, rhs: Self) -> Self

source

pub const fn div_floor(self, rhs: Self) -> Self

source

pub const fn div_ceil(self, rhs: Self) -> Self

source§

impl<const N: usize> BUintD32<N>

source

pub const fn bits(&self) -> u32

Returns the smallest number of bits necessary to represent self.

This is equal to the size of the type in bits minus the leading zeros of self.

Examples
use bnum::types::U256;

assert_eq!(U256::from(0b1111001010100u16).bits(), 13);
assert_eq!(U256::ZERO.bits(), 0);
source

pub const fn bit(&self, index: u32) -> bool

Returns a boolean representing the bit in the given position (true if the bit is set). The least significant bit is at index 0, the most significant bit is at index Self::BITS - 1

Examples
use bnum::types::U256;

let n = U256::from(0b001010100101010101u32);
assert!(n.bit(0));
assert!(!n.bit(1));
assert!(!n.bit(U256::BITS - 1));
source

pub const fn power_of_two(power: u32) -> Self

Returns an integer whose value is 2^power. This is faster than using a shift left on Self::ONE.

Panics

This function will panic if power is greater than or equal to Self::BITS.

Examples
use bnum::types::U256;

let power = 11;
assert_eq!(U256::power_of_two(11), (1u128 << 11).into());
source

pub const fn digits(&self) -> &[u32; N]

Returns the digits stored in self as an array. Digits are little endian (least significant digit first).

source

pub const fn from_digits(digits: [u32; N]) -> Self

Creates a new unsigned integer from the given array of digits. Digits are stored as little endian (least significant digit first).

source

pub const fn from_digit(digit: u32) -> Self

Creates a new unsigned integer from the given digit. The given digit is stored as the least significant digit.

source

pub const fn is_zero(&self) -> bool

Returns whether self is zero.

Examples
use bnum::types::U256;

assert!(U256::ZERO.is_zero());
assert!(!U256::ONE.is_zero());
source

pub const fn is_one(&self) -> bool

Returns whether self is one.

Examples
use bnum::types::U256;

assert!(U256::ONE.is_one());
assert!(!U256::MAX.is_one());

Trait Implementations§

source§

impl<const N: usize> Add<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the + operator.
source§

fn add(self, rhs: &BUintD32<N>) -> Self::Output

Performs the + operation. Read more
source§

impl<const N: usize> Add<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the + operator.
source§

fn add(self, rhs: &BUintD32<N>) -> Self::Output

Performs the + operation. Read more
source§

impl<const N: usize> Add<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the + operator.
source§

fn add(self, rhs: BUintD32<N>) -> Self::Output

Performs the + operation. Read more
source§

impl<const N: usize> Add<u32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the + operator.
source§

fn add(self, rhs: u32) -> Self

Performs the + operation. Read more
source§

impl<const N: usize> Add for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the + operator.
source§

fn add(self, rhs: Self) -> Self

Performs the + operation. Read more
source§

impl<const N: usize> AddAssign<&BUintD32<N>> for BUintD32<N>

source§

fn add_assign(&mut self, rhs: &BUintD32<N>)

Performs the += operation. Read more
source§

impl<const N: usize> AddAssign for BUintD32<N>

source§

fn add_assign(&mut self, rhs: BUintD32<N>)

Performs the += operation. Read more
source§

impl<'arbitrary, const N: usize> Arbitrary<'arbitrary> for BUintD32<N>

source§

fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Self>

Generate an arbitrary value of Self from the given unstructured data. Read more
source§

fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Self>

Generate an arbitrary value of Self from the entirety of the given unstructured data. Read more
source§

fn size_hint(depth: usize) -> (usize, Option<usize>)

Get a size hint for how many bytes out of an Unstructured this type needs to construct itself. Read more
source§

impl<const N: usize> Arbitrary for BUintD32<N>

source§

fn arbitrary(g: &mut Gen) -> Self

Return an arbitrary value. Read more
source§

fn shrink(&self) -> Box<dyn Iterator<Item = Self>>

Return an iterator of values that are smaller than itself. Read more
source§

impl<const N: usize, const M: usize> AsPrimitive<BIntD32<M>> for BUintD32<N>

source§

fn as_(self) -> BIntD32<M>

Convert a value to another, using the as operator.
source§

impl<const N: usize, const M: usize> AsPrimitive<BUintD32<M>> for BIntD32<N>

source§

fn as_(self) -> BUintD32<M>

Convert a value to another, using the as operator.
source§

impl<const N: usize, const M: usize> AsPrimitive<BUintD32<M>> for BUintD32<N>

source§

fn as_(self) -> BUintD32<M>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for bool

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for char

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for f32

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for f64

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for i128

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for i16

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for i32

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for i64

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for i8

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for isize

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for u128

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for u16

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for u32

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for u64

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for u8

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<BUintD32<N>> for usize

source§

fn as_(self) -> BUintD32<N>

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<f32> for BUintD32<N>

source§

fn as_(self) -> f32

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<f64> for BUintD32<N>

source§

fn as_(self) -> f64

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<i128> for BUintD32<N>

source§

fn as_(self) -> i128

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<i16> for BUintD32<N>

source§

fn as_(self) -> i16

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<i32> for BUintD32<N>

source§

fn as_(self) -> i32

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<i64> for BUintD32<N>

source§

fn as_(self) -> i64

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<i8> for BUintD32<N>

source§

fn as_(self) -> i8

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<isize> for BUintD32<N>

source§

fn as_(self) -> isize

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<u128> for BUintD32<N>

source§

fn as_(self) -> u128

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<u16> for BUintD32<N>

source§

fn as_(self) -> u16

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<u32> for BUintD32<N>

source§

fn as_(self) -> u32

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<u64> for BUintD32<N>

source§

fn as_(self) -> u64

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<u8> for BUintD32<N>

source§

fn as_(self) -> u8

Convert a value to another, using the as operator.
source§

impl<const N: usize> AsPrimitive<usize> for BUintD32<N>

source§

fn as_(self) -> usize

Convert a value to another, using the as operator.
source§

impl<const N: usize, const M: usize> BTryFrom<BInt<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BInt<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BIntD16<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BIntD16<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BIntD32<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BIntD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BIntD8<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BIntD8<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUint<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUint<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD16<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD16<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BInt<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BIntD16<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BIntD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BIntD8<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BUint<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BUintD16<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD32<N>> for BUintD8<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD32<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize, const M: usize> BTryFrom<BUintD8<N>> for BUintD32<M>

§

type Error = TryFromIntError

source§

fn try_from(from: BUintD8<N>) -> Result<Self, Self::Error>

source§

impl<const N: usize> Binary for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl<const N: usize> BitAnd<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: &BUintD32<N>) -> Self::Output

Performs the & operation. Read more
source§

impl<const N: usize> BitAnd<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: &BUintD32<N>) -> Self::Output

Performs the & operation. Read more
source§

impl<const N: usize> BitAnd<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: BUintD32<N>) -> Self::Output

Performs the & operation. Read more
source§

impl<const N: usize> BitAnd for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: Self) -> Self

Performs the & operation. Read more
source§

impl<const N: usize> BitAndAssign<&BUintD32<N>> for BUintD32<N>

source§

fn bitand_assign(&mut self, rhs: &BUintD32<N>)

Performs the &= operation. Read more
source§

impl<const N: usize> BitAndAssign for BUintD32<N>

source§

fn bitand_assign(&mut self, rhs: BUintD32<N>)

Performs the &= operation. Read more
source§

impl<const N: usize> BitOr<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: &BUintD32<N>) -> Self::Output

Performs the | operation. Read more
source§

impl<const N: usize> BitOr<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: &BUintD32<N>) -> Self::Output

Performs the | operation. Read more
source§

impl<const N: usize> BitOr<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: BUintD32<N>) -> Self::Output

Performs the | operation. Read more
source§

impl<const N: usize> BitOr for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: Self) -> Self

Performs the | operation. Read more
source§

impl<const N: usize> BitOrAssign<&BUintD32<N>> for BUintD32<N>

source§

fn bitor_assign(&mut self, rhs: &BUintD32<N>)

Performs the |= operation. Read more
source§

impl<const N: usize> BitOrAssign for BUintD32<N>

source§

fn bitor_assign(&mut self, rhs: BUintD32<N>)

Performs the |= operation. Read more
source§

impl<const N: usize> BitXor<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, rhs: &BUintD32<N>) -> Self::Output

Performs the ^ operation. Read more
source§

impl<const N: usize> BitXor<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, rhs: &BUintD32<N>) -> Self::Output

Performs the ^ operation. Read more
source§

impl<const N: usize> BitXor<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, rhs: BUintD32<N>) -> Self::Output

Performs the ^ operation. Read more
source§

impl<const N: usize> BitXor for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the ^ operator.
source§

fn bitxor(self, rhs: Self) -> Self

Performs the ^ operation. Read more
source§

impl<const N: usize> BitXorAssign<&BUintD32<N>> for BUintD32<N>

source§

fn bitxor_assign(&mut self, rhs: &BUintD32<N>)

Performs the ^= operation. Read more
source§

impl<const N: usize> BitXorAssign for BUintD32<N>

source§

fn bitxor_assign(&mut self, rhs: BUintD32<N>)

Performs the ^= operation. Read more
source§

impl<const N: usize> Bounded for BUintD32<N>

source§

fn min_value() -> Self

Returns the smallest finite number this type can represent
source§

fn max_value() -> Self

Returns the largest finite number this type can represent
source§

impl<const N: usize, const M: usize> CastFrom<BInt<M>> for BUintD32<N>

source§

fn cast_from(from: BInt<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BIntD16<M>> for BUintD32<N>

source§

fn cast_from(from: BIntD16<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BIntD32<M>> for BUintD32<N>

source§

fn cast_from(from: BIntD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BIntD8<M>> for BUintD32<N>

source§

fn cast_from(from: BIntD8<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUint<M>> for BUintD32<N>

source§

fn cast_from(from: BUint<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD16<M>> for BUintD32<N>

source§

fn cast_from(from: BUintD16<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BInt<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BIntD16<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BIntD32<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BIntD8<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BUint<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BUintD16<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BUintD32<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD32<M>> for BUintD8<N>

source§

fn cast_from(from: BUintD32<M>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for f32

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for f64

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for i128

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for i16

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for i32

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for i64

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for i8

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for isize

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for u128

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for u16

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for u32

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for u64

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for u8

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize> CastFrom<BUintD32<N>> for usize

source§

fn cast_from(from: BUintD32<N>) -> Self

source§

impl<const N: usize, const M: usize> CastFrom<BUintD8<M>> for BUintD32<N>

source§

fn cast_from(from: BUintD8<M>) -> Self

source§

impl<const N: usize> CastFrom<bool> for BUintD32<N>

source§

fn cast_from(from: bool) -> Self

source§

impl<const N: usize> CastFrom<char> for BUintD32<N>

source§

fn cast_from(from: char) -> Self

source§

impl<const N: usize> CastFrom<f32> for BUintD32<N>

source§

fn cast_from(from: f32) -> Self

source§

impl<const N: usize> CastFrom<f64> for BUintD32<N>

source§

fn cast_from(from: f64) -> Self

source§

impl<const N: usize> CastFrom<i128> for BUintD32<N>

source§

fn cast_from(from: i128) -> Self

source§

impl<const N: usize> CastFrom<i16> for BUintD32<N>

source§

fn cast_from(from: i16) -> Self

source§

impl<const N: usize> CastFrom<i32> for BUintD32<N>

source§

fn cast_from(from: i32) -> Self

source§

impl<const N: usize> CastFrom<i64> for BUintD32<N>

source§

fn cast_from(from: i64) -> Self

source§

impl<const N: usize> CastFrom<i8> for BUintD32<N>

source§

fn cast_from(from: i8) -> Self

source§

impl<const N: usize> CastFrom<isize> for BUintD32<N>

source§

fn cast_from(from: isize) -> Self

source§

impl<const N: usize> CastFrom<u128> for BUintD32<N>

source§

fn cast_from(from: u128) -> Self

source§

impl<const N: usize> CastFrom<u16> for BUintD32<N>

source§

fn cast_from(from: u16) -> Self

source§

impl<const N: usize> CastFrom<u32> for BUintD32<N>

source§

fn cast_from(from: u32) -> Self

source§

impl<const N: usize> CastFrom<u64> for BUintD32<N>

source§

fn cast_from(from: u64) -> Self

source§

impl<const N: usize> CastFrom<u8> for BUintD32<N>

source§

fn cast_from(from: u8) -> Self

source§

impl<const N: usize> CastFrom<usize> for BUintD32<N>

source§

fn cast_from(from: usize) -> Self

source§

impl<const N: usize> CheckedAdd for BUintD32<N>

source§

fn checked_add(&self, rhs: &Self) -> Option<Self>

Adds two numbers, checking for overflow. If overflow happens, None is returned.
source§

impl<const N: usize> CheckedDiv for BUintD32<N>

source§

fn checked_div(&self, rhs: &Self) -> Option<Self>

Divides two numbers, checking for underflow, overflow and division by zero. If any of that happens, None is returned.
source§

impl<const N: usize> CheckedEuclid for BUintD32<N>

source§

fn checked_div_euclid(&self, rhs: &Self) -> Option<Self>

Performs euclid division that returns None instead of panicking on division by zero and instead of wrapping around on underflow and overflow.
source§

fn checked_rem_euclid(&self, rhs: &Self) -> Option<Self>

Finds the euclid remainder of dividing two numbers, checking for underflow, overflow and division by zero. If any of that happens, None is returned.
source§

impl<const N: usize> CheckedMul for BUintD32<N>

source§

fn checked_mul(&self, rhs: &Self) -> Option<Self>

Multiplies two numbers, checking for underflow or overflow. If underflow or overflow happens, None is returned.
source§

impl<const N: usize> CheckedNeg for BUintD32<N>

source§

fn checked_neg(&self) -> Option<Self>

Negates a number, returning None for results that can’t be represented, like signed MIN values that can’t be positive, or non-zero unsigned values that can’t be negative. Read more
source§

impl<const N: usize> CheckedRem for BUintD32<N>

source§

fn checked_rem(&self, rhs: &Self) -> Option<Self>

Finds the remainder of dividing two numbers, checking for underflow, overflow and division by zero. If any of that happens, None is returned. Read more
source§

impl<const N: usize> CheckedShl for BUintD32<N>

source§

fn checked_shl(&self, rhs: u32) -> Option<Self>

Checked shift left. Computes self << rhs, returning None if rhs is larger than or equal to the number of bits in self. Read more
source§

impl<const N: usize> CheckedShr for BUintD32<N>

source§

fn checked_shr(&self, rhs: u32) -> Option<Self>

Checked shift right. Computes self >> rhs, returning None if rhs is larger than or equal to the number of bits in self. Read more
source§

impl<const N: usize> CheckedSub for BUintD32<N>

source§

fn checked_sub(&self, rhs: &Self) -> Option<Self>

Subtracts two numbers, checking for underflow. If underflow happens, None is returned.
source§

impl<const N: usize> Clone for BUintD32<N>

source§

fn clone(&self) -> BUintD32<N>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<const N: usize> Debug for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<const N: usize> Default for BUintD32<N>

source§

fn default() -> Self

Returns the default value of Self::ZERO.

source§

impl<'de, const N: usize> Deserialize<'de> for BUintD32<N>

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl<const N: usize> Display for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<const N: usize> Distribution<BUintD32<N>> for Standard

source§

fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> BUintD32<N>

Generate a random value of T, using rng as the source of randomness.
source§

fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>
where R: Rng, Self: Sized,

Create an iterator that generates random values of T, using rng as the source of randomness. Read more
source§

fn map<F, S>(self, func: F) -> DistMap<Self, F, T, S>
where F: Fn(T) -> S, Self: Sized,

Create a distribution of values of ‘S’ by mapping the output of Self through the closure F Read more
source§

impl<const N: usize> Div<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the / operator.
source§

fn div(self, rhs: &BUintD32<N>) -> Self::Output

Performs the / operation. Read more
source§

impl<const N: usize> Div<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the / operator.
source§

fn div(self, rhs: &BUintD32<N>) -> Self::Output

Performs the / operation. Read more
source§

impl<const N: usize> Div<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the / operator.
source§

fn div(self, rhs: BUintD32<N>) -> Self::Output

Performs the / operation. Read more
source§

impl<const N: usize> Div<u32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the / operator.
source§

fn div(self, rhs: u32) -> Self

Performs the / operation. Read more
source§

impl<const N: usize> Div for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the / operator.
source§

fn div(self, rhs: Self) -> Self

Performs the / operation. Read more
source§

impl<const N: usize> DivAssign<&BUintD32<N>> for BUintD32<N>

source§

fn div_assign(&mut self, rhs: &BUintD32<N>)

Performs the /= operation. Read more
source§

impl<const N: usize> DivAssign for BUintD32<N>

source§

fn div_assign(&mut self, rhs: BUintD32<N>)

Performs the /= operation. Read more
source§

impl<const N: usize> Euclid for BUintD32<N>

source§

fn div_euclid(&self, rhs: &Self) -> Self

Calculates Euclidean division, the matching method for rem_euclid. Read more
source§

fn rem_euclid(&self, rhs: &Self) -> Self

Calculates the least nonnegative remainder of self (mod v). Read more
source§

impl<const N: usize> From<[u32; N]> for BUintD32<N>

source§

fn from(digits: [u32; N]) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<BUintD32<N>> for [u32; N]

source§

fn from(uint: BUintD32<N>) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<bool> for BUintD32<N>

source§

fn from(small: bool) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<char> for BUintD32<N>

source§

fn from(c: char) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<u128> for BUintD32<N>

source§

fn from(int: u128) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<u16> for BUintD32<N>

source§

fn from(int: u16) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<u32> for BUintD32<N>

source§

fn from(int: u32) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<u64> for BUintD32<N>

source§

fn from(int: u64) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<u8> for BUintD32<N>

source§

fn from(int: u8) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> From<usize> for BUintD32<N>

source§

fn from(int: usize) -> Self

Converts to this type from the input type.
source§

impl<const N: usize> FromPrimitive for BUintD32<N>

source§

fn from_u64(int: u64) -> Option<Self>

Converts an u64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i64(int: i64) -> Option<Self>

Converts an i64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u128(int: u128) -> Option<Self>

Converts an u128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_i128(n: i128) -> Option<Self>

Converts an i128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_f32(f: f32) -> Option<Self>

Converts a f32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_f64(f: f64) -> Option<Self>

Converts a f64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_isize(n: isize) -> Option<Self>

Converts an isize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i8(n: i8) -> Option<Self>

Converts an i8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i16(n: i16) -> Option<Self>

Converts an i16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i32(n: i32) -> Option<Self>

Converts an i32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_usize(n: usize) -> Option<Self>

Converts a usize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u8(n: u8) -> Option<Self>

Converts an u8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u16(n: u16) -> Option<Self>

Converts an u16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u32(n: u32) -> Option<Self>

Converts an u32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

impl<const N: usize> FromStr for BUintD32<N>

§

type Err = ParseIntError

The associated error which can be returned from parsing.
source§

fn from_str(src: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl<const N: usize> Hash for BUintD32<N>

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<const N: usize> Integer for BUintD32<N>

source§

fn div_floor(&self, other: &Self) -> Self

Floored integer division. Read more
source§

fn mod_floor(&self, other: &Self) -> Self

Floored integer modulo, satisfying: Read more
source§

fn gcd(&self, other: &Self) -> Self

Greatest Common Divisor (GCD). Read more
source§

fn lcm(&self, other: &Self) -> Self

Lowest Common Multiple (LCM). Read more
source§

fn divides(&self, other: &Self) -> bool

Deprecated, use is_multiple_of instead.
source§

fn is_multiple_of(&self, other: &Self) -> bool

Returns true if self is a multiple of other. Read more
source§

fn is_even(&self) -> bool

Returns true if the number is even. Read more
source§

fn is_odd(&self) -> bool

Returns true if the number is odd. Read more
source§

fn div_rem(&self, rhs: &Self) -> (Self, Self)

Simultaneous truncated integer division and modulus. Returns (quotient, remainder). Read more
source§

fn div_ceil(&self, other: &Self) -> Self

Ceiled integer division. Read more
source§

fn gcd_lcm(&self, other: &Self) -> (Self, Self)

Greatest Common Divisor (GCD) and Lowest Common Multiple (LCM) together. Read more
source§

fn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self>
where Self: Clone,

Greatest common divisor and Bézout coefficients. Read more
source§

fn div_mod_floor(&self, other: &Self) -> (Self, Self)

Simultaneous floored integer division and modulus. Returns (quotient, remainder). Read more
source§

fn next_multiple_of(&self, other: &Self) -> Self
where Self: Clone,

Rounds up to nearest multiple of argument. Read more
source§

fn prev_multiple_of(&self, other: &Self) -> Self
where Self: Clone,

Rounds down to nearest multiple of argument. Read more
source§

impl<const N: usize> LowerExp for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl<const N: usize> LowerHex for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl<const N: usize> Mul<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the * operator.
source§

fn mul(self, rhs: &BUintD32<N>) -> Self::Output

Performs the * operation. Read more
source§

impl<const N: usize> Mul<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the * operator.
source§

fn mul(self, rhs: &BUintD32<N>) -> Self::Output

Performs the * operation. Read more
source§

impl<const N: usize> Mul<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the * operator.
source§

fn mul(self, rhs: BUintD32<N>) -> Self::Output

Performs the * operation. Read more
source§

impl<const N: usize> Mul for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the * operator.
source§

fn mul(self, rhs: Self) -> Self

Performs the * operation. Read more
source§

impl<const N: usize> MulAdd for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the fused multiply-add.
source§

fn mul_add(self, a: Self, b: Self) -> Self

Performs the fused multiply-add operation (self * a) + b
source§

impl<const N: usize> MulAddAssign for BUintD32<N>

source§

fn mul_add_assign(&mut self, a: Self, b: Self)

Performs the fused multiply-add assignment operation *self = (*self * a) + b
source§

impl<const N: usize> MulAssign<&BUintD32<N>> for BUintD32<N>

source§

fn mul_assign(&mut self, rhs: &BUintD32<N>)

Performs the *= operation. Read more
source§

impl<const N: usize> MulAssign for BUintD32<N>

source§

fn mul_assign(&mut self, rhs: BUintD32<N>)

Performs the *= operation. Read more
source§

impl<const N: usize> Not for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the ! operator.
source§

fn not(self) -> BUintD32<N>

Performs the unary ! operation. Read more
source§

impl<const N: usize> Not for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the ! operator.
source§

fn not(self) -> Self

Performs the unary ! operation. Read more
source§

impl<const N: usize> Num for BUintD32<N>

§

type FromStrRadixErr = ParseIntError

source§

fn from_str_radix( string: &str, radix: u32 ) -> Result<Self, Self::FromStrRadixErr>

Convert from a string and radix (typically 2..=36). Read more
source§

impl<const N: usize> NumCast for BUintD32<N>

source§

fn from<T: ToPrimitive>(_n: T) -> Option<Self>

Creates a number from another value that can be converted into a primitive via the ToPrimitive trait. If the source value cannot be represented by the target type, then None is returned. Read more
source§

impl<const N: usize> Octal for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl<const N: usize> One for BUintD32<N>

source§

fn one() -> Self

Returns the multiplicative identity element of Self, 1. Read more
source§

fn is_one(&self) -> bool

Returns true if self is equal to the multiplicative identity. Read more
source§

fn set_one(&mut self)

Sets self to the multiplicative identity element of Self, 1.
source§

impl<const N: usize> Ord for BUintD32<N>

source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
source§

fn max(self, other: Self) -> Self

Compares and returns the maximum of two values. Read more
source§

fn min(self, other: Self) -> Self

Compares and returns the minimum of two values. Read more
source§

fn clamp(self, min: Self, max: Self) -> Self

Restrict a value to a certain interval. Read more
source§

impl<const N: usize> PartialEq for BUintD32<N>

source§

fn eq(&self, other: &BUintD32<N>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<const N: usize> PartialOrd for BUintD32<N>

source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl<const N: usize> Pow<u32> for BUintD32<N>

§

type Output = BUintD32<N>

The result after applying the operator.
source§

fn pow(self, exp: u32) -> Self

Returns self to the power rhs. Read more
source§

impl<const N: usize> PrimInt for BUintD32<N>

source§

fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self. Read more
source§

fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self. Read more
source§

fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of self. Read more
source§

fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation of self. Read more
source§

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. Read more
source§

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. Read more
source§

fn swap_bytes(self) -> Self

Reverses the byte order of the integer. Read more
source§

fn from_be(x: Self) -> Self

Convert an integer from big endian to the target’s endianness. Read more
source§

fn from_le(x: Self) -> Self

Convert an integer from little endian to the target’s endianness. Read more
source§

fn to_be(self) -> Self

Convert self to big endian from the target’s endianness. Read more
source§

fn to_le(self) -> Self

Convert self to little endian from the target’s endianness. Read more
source§

fn pow(self, exp: u32) -> Self

Raises self to the power of exp, using exponentiation by squaring. Read more
source§

fn signed_shl(self, n: u32) -> Self

Shifts the bits to the left by a specified amount, n, filling zeros in the least significant bits. Read more
source§

fn signed_shr(self, n: u32) -> Self

Shifts the bits to the right by a specified amount, n, copying the “sign bit” in the most significant bits even for unsigned types. Read more
source§

fn unsigned_shl(self, n: u32) -> Self

Shifts the bits to the left by a specified amount, n, filling zeros in the least significant bits. Read more
source§

fn unsigned_shr(self, n: u32) -> Self

Shifts the bits to the right by a specified amount, n, filling zeros in the most significant bits. Read more
source§

fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of self. Read more
source§

fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation of self. Read more
source§

fn reverse_bits(self) -> Self

Reverses the order of bits in the integer. Read more
source§

impl<'a, const N: usize> Product<&'a BUintD32<N>> for BUintD32<N>

source§

fn product<I: Iterator<Item = &'a Self>>(iter: I) -> Self

Method which takes an iterator and generates Self from the elements by multiplying the items.
source§

impl<const N: usize> Product for BUintD32<N>

source§

fn product<I: Iterator<Item = Self>>(iter: I) -> Self

Method which takes an iterator and generates Self from the elements by multiplying the items.
source§

impl<const N: usize> Rem<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the % operator.
source§

fn rem(self, rhs: &BUintD32<N>) -> Self::Output

Performs the % operation. Read more
source§

impl<const N: usize> Rem<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the % operator.
source§

fn rem(self, rhs: &BUintD32<N>) -> Self::Output

Performs the % operation. Read more
source§

impl<const N: usize> Rem<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the % operator.
source§

fn rem(self, rhs: BUintD32<N>) -> Self::Output

Performs the % operation. Read more
source§

impl<const N: usize> Rem<u32> for BUintD32<N>

§

type Output = u32

The resulting type after applying the % operator.
source§

fn rem(self, rhs: u32) -> u32

Performs the % operation. Read more
source§

impl<const N: usize> Rem for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the % operator.
source§

fn rem(self, rhs: Self) -> Self

Performs the % operation. Read more
source§

impl<const N: usize> RemAssign<&BUintD32<N>> for BUintD32<N>

source§

fn rem_assign(&mut self, rhs: &BUintD32<N>)

Performs the %= operation. Read more
source§

impl<const N: usize> RemAssign for BUintD32<N>

source§

fn rem_assign(&mut self, rhs: BUintD32<N>)

Performs the %= operation. Read more
source§

impl<const N: usize> Roots for BUintD32<N>

source§

fn sqrt(&self) -> Self

Returns the truncated principal square root of an integer – ⌊√x⌋ Read more
source§

fn cbrt(&self) -> Self

Returns the truncated principal cube root of an integer – if x >= 0 { ⌊∛x⌋ } else { ⌈∛x⌉ } Read more
source§

fn nth_root(&self, n: u32) -> Self

Returns the truncated principal nth root of an integer – if x >= 0 { ⌊ⁿ√x⌋ } else { ⌈ⁿ√x⌉ } Read more
source§

impl<const N: usize> SampleUniform for BUintD32<N>

§

type Sampler = UniformInt<BUintD32<N>>

The UniformSampler implementation supporting type X.
source§

impl<const N: usize> Saturating for BUintD32<N>

source§

fn saturating_add(self, rhs: Self) -> Self

Saturating addition operator. Returns a+b, saturating at the numeric bounds instead of overflowing.
source§

fn saturating_sub(self, rhs: Self) -> Self

Saturating subtraction operator. Returns a-b, saturating at the numeric bounds instead of overflowing.
source§

impl<const N: usize> SaturatingAdd for BUintD32<N>

source§

fn saturating_add(&self, rhs: &Self) -> Self

Saturating addition. Computes self + other, saturating at the relevant high or low boundary of the type.
source§

impl<const N: usize> SaturatingMul for BUintD32<N>

source§

fn saturating_mul(&self, rhs: &Self) -> Self

Saturating multiplication. Computes self * other, saturating at the relevant high or low boundary of the type.
source§

impl<const N: usize> SaturatingSub for BUintD32<N>

source§

fn saturating_sub(&self, rhs: &Self) -> Self

Saturating subtraction. Computes self - other, saturating at the relevant high or low boundary of the type.
source§

impl<const N: usize> Serialize for BUintD32<N>

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl<const N: usize, const M: usize> Shl<&BIntD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &BIntD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<&BIntD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &BIntD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<&BUintD32<M>> for &BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &BUintD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<&BUintD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &BUintD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<&BUintD32<M>> for BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &BUintD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<&BUintD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &BUintD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i128) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i128) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i16) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i16) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i32) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i32) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i64) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i64) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i8) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&i8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &i8) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&isize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &isize) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&isize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &isize) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u128) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u128) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u16) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u16) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u32) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u32) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u64) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u64) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u8) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&u8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &u8) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&usize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &usize) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<&usize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: &usize) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<BIntD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: BIntD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<BIntD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: BIntD32<M>) -> Self

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<BUintD32<M>> for &BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: BUintD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<BUintD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: BUintD32<M>) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<BUintD32<M>> for BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: BUintD32<M>) -> Self

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> Shl<BUintD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: BUintD32<M>) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i128) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i128) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i16) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i16) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i32) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i32) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i64) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i64) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i8) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<i8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: i8) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<isize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: isize) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<isize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: isize) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u128) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u128) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u16) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u16) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u32) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u32) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u64) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u64) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u8) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<u8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u8) -> Self

Performs the << operation. Read more
source§

impl<const N: usize> Shl<usize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: usize) -> Self::Output

Performs the << operation. Read more
source§

impl<const N: usize> Shl<usize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the << operator.
source§

fn shl(self, rhs: usize) -> Self

Performs the << operation. Read more
source§

impl<const N: usize, const M: usize> ShlAssign<&BIntD32<M>> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &BIntD32<M>)

Performs the <<= operation. Read more
source§

impl<const N: usize, const M: usize> ShlAssign<&BUintD32<M>> for BIntD32<N>

source§

fn shl_assign(&mut self, rhs: &BUintD32<M>)

Performs the <<= operation. Read more
source§

impl<const N: usize, const M: usize> ShlAssign<&BUintD32<M>> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &BUintD32<M>)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&i128> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &i128)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&i16> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &i16)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&i32> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &i32)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&i64> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &i64)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&i8> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &i8)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&isize> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &isize)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&u128> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &u128)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&u16> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &u16)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&u32> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &u32)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&u64> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &u64)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&u8> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &u8)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<&usize> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: &usize)

Performs the <<= operation. Read more
source§

impl<const N: usize, const M: usize> ShlAssign<BIntD32<M>> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: BIntD32<M>)

Performs the <<= operation. Read more
source§

impl<const N: usize, const M: usize> ShlAssign<BUintD32<M>> for BIntD32<N>

source§

fn shl_assign(&mut self, rhs: BUintD32<M>)

Performs the <<= operation. Read more
source§

impl<const N: usize, const M: usize> ShlAssign<BUintD32<M>> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: BUintD32<M>)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<i128> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: i128)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<i16> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: i16)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<i32> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: i32)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<i64> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: i64)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<i8> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: i8)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<isize> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: isize)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<u128> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: u128)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<u16> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: u16)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<u32> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: u32)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<u64> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: u64)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<u8> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: u8)

Performs the <<= operation. Read more
source§

impl<const N: usize> ShlAssign<usize> for BUintD32<N>

source§

fn shl_assign(&mut self, rhs: usize)

Performs the <<= operation. Read more
source§

impl<const N: usize, const M: usize> Shr<&BIntD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &BIntD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<&BIntD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &BIntD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<&BUintD32<M>> for &BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &BUintD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<&BUintD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &BUintD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<&BUintD32<M>> for BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &BUintD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<&BUintD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &BUintD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i128) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i128) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i16) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i16) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i32) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i32) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i64) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i64) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i8) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&i8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &i8) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&isize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &isize) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&isize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &isize) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u128) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u128) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u16) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u16) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u32) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u32) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u64) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u64) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u8) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&u8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &u8) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&usize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &usize) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<&usize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: &usize) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<BIntD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: BIntD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<BIntD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: BIntD32<M>) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<BUintD32<M>> for &BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: BUintD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<BUintD32<M>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: BUintD32<M>) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<BUintD32<M>> for BIntD32<N>

§

type Output = BIntD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: BUintD32<M>) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> Shr<BUintD32<M>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: BUintD32<M>) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i128) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i128) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i16) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i16) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i32) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i32) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i64) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i64) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i8) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<i8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: i8) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<isize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: isize) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<isize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: isize) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u128> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u128) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u128> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u128) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u16> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u16) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u16> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u16) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u32> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u32) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u32> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u32) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u64> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u64) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u64> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u64) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u8> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u8) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<u8> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u8) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<usize> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: usize) -> Self::Output

Performs the >> operation. Read more
source§

impl<const N: usize> Shr<usize> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: usize) -> Self

Performs the >> operation. Read more
source§

impl<const N: usize, const M: usize> ShrAssign<&BIntD32<M>> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &BIntD32<M>)

Performs the >>= operation. Read more
source§

impl<const N: usize, const M: usize> ShrAssign<&BUintD32<M>> for BIntD32<N>

source§

fn shr_assign(&mut self, rhs: &BUintD32<M>)

Performs the >>= operation. Read more
source§

impl<const N: usize, const M: usize> ShrAssign<&BUintD32<M>> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &BUintD32<M>)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&i128> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &i128)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&i16> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &i16)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&i32> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &i32)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&i64> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &i64)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&i8> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &i8)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&isize> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &isize)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&u128> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &u128)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&u16> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &u16)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&u32> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &u32)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&u64> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &u64)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&u8> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &u8)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<&usize> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: &usize)

Performs the >>= operation. Read more
source§

impl<const N: usize, const M: usize> ShrAssign<BIntD32<M>> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: BIntD32<M>)

Performs the >>= operation. Read more
source§

impl<const N: usize, const M: usize> ShrAssign<BUintD32<M>> for BIntD32<N>

source§

fn shr_assign(&mut self, rhs: BUintD32<M>)

Performs the >>= operation. Read more
source§

impl<const N: usize, const M: usize> ShrAssign<BUintD32<M>> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: BUintD32<M>)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<i128> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: i128)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<i16> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: i16)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<i32> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: i32)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<i64> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: i64)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<i8> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: i8)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<isize> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: isize)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<u128> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: u128)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<u16> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: u16)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<u32> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: u32)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<u64> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: u64)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<u8> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: u8)

Performs the >>= operation. Read more
source§

impl<const N: usize> ShrAssign<usize> for BUintD32<N>

source§

fn shr_assign(&mut self, rhs: usize)

Performs the >>= operation. Read more
source§

impl<const N: usize> Structable for BUintD32<N>

source§

fn definition(&self) -> StructDef<'_>

Returns the struct’s definition. Read more
source§

impl<const N: usize> Sub<&BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the - operator.
source§

fn sub(self, rhs: &BUintD32<N>) -> Self::Output

Performs the - operation. Read more
source§

impl<const N: usize> Sub<&BUintD32<N>> for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the - operator.
source§

fn sub(self, rhs: &BUintD32<N>) -> Self::Output

Performs the - operation. Read more
source§

impl<const N: usize> Sub<BUintD32<N>> for &BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the - operator.
source§

fn sub(self, rhs: BUintD32<N>) -> Self::Output

Performs the - operation. Read more
source§

impl<const N: usize> Sub for BUintD32<N>

§

type Output = BUintD32<N>

The resulting type after applying the - operator.
source§

fn sub(self, rhs: Self) -> Self

Performs the - operation. Read more
source§

impl<const N: usize> SubAssign<&BUintD32<N>> for BUintD32<N>

source§

fn sub_assign(&mut self, rhs: &BUintD32<N>)

Performs the -= operation. Read more
source§

impl<const N: usize> SubAssign for BUintD32<N>

source§

fn sub_assign(&mut self, rhs: BUintD32<N>)

Performs the -= operation. Read more
source§

impl<'a, const N: usize> Sum<&'a BUintD32<N>> for BUintD32<N>

source§

fn sum<I: Iterator<Item = &'a Self>>(iter: I) -> Self

Method which takes an iterator and generates Self from the elements by “summing up” the items.
source§

impl<const N: usize> Sum for BUintD32<N>

source§

fn sum<I: Iterator<Item = Self>>(iter: I) -> Self

Method which takes an iterator and generates Self from the elements by “summing up” the items.
source§

impl<const N: usize> ToPrimitive for BUintD32<N>

source§

fn to_u8(&self) -> Option<u8>

Converts the value of self to a u8. If the value cannot be represented by a u8, then None is returned.
source§

fn to_u16(&self) -> Option<u16>

Converts the value of self to a u16. If the value cannot be represented by a u16, then None is returned.
source§

fn to_u32(&self) -> Option<u32>

Converts the value of self to a u32. If the value cannot be represented by a u32, then None is returned.
source§

fn to_u64(&self) -> Option<u64>

Converts the value of self to a u64. If the value cannot be represented by a u64, then None is returned.
source§

fn to_u128(&self) -> Option<u128>

Converts the value of self to a u128. If the value cannot be represented by a u128 (u64 under the default implementation), then None is returned. Read more
source§

fn to_usize(&self) -> Option<usize>

Converts the value of self to a usize. If the value cannot be represented by a usize, then None is returned.
source§

fn to_i8(&self) -> Option<i8>

Converts the value of self to an i8. If the value cannot be represented by an i8, then None is returned.
source§

fn to_i16(&self) -> Option<i16>

Converts the value of self to an i16. If the value cannot be represented by an i16, then None is returned.
source§

fn to_i32(&self) -> Option<i32>

Converts the value of self to an i32. If the value cannot be represented by an i32, then None is returned.
source§

fn to_i64(&self) -> Option<i64>

Converts the value of self to an i64. If the value cannot be represented by an i64, then None is returned.
source§

fn to_i128(&self) -> Option<i128>

Converts the value of self to an i128. If the value cannot be represented by an i128 (i64 under the default implementation), then None is returned. Read more
source§

fn to_isize(&self) -> Option<isize>

Converts the value of self to an isize. If the value cannot be represented by an isize, then None is returned.
source§

fn to_f32(&self) -> Option<f32>

Converts the value of self to an f32. Overflows may map to positive or negative inifinity, otherwise None is returned if the value cannot be represented by an f32.
source§

fn to_f64(&self) -> Option<f64>

Converts the value of self to an f64. Overflows may map to positive or negative inifinity, otherwise None is returned if the value cannot be represented by an f64. Read more
source§

impl<const N: usize> TryFrom<BUintD32<N>> for i128

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<i128, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for i16

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<i16, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for i32

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<i32, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for i64

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<i64, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for i8

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<i8, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for isize

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<isize, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for u128

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<u128, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for u16

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<u16, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for u32

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<u32, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for u64

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<u64, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for u8

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<u8, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<BUintD32<N>> for usize

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(u: BUintD32<N>) -> Result<usize, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<i128> for BUintD32<N>

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(int: i128) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<i16> for BUintD32<N>

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(int: i16) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<i32> for BUintD32<N>

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(int: i32) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<i64> for BUintD32<N>

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(int: i64) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<i8> for BUintD32<N>

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(int: i8) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<const N: usize> TryFrom<isize> for BUintD32<N>

§

type Error = TryFromIntError

The type returned in the event of a conversion error.
source§

fn try_from(int: isize) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<const N: usize> UpperExp for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl<const N: usize> UpperHex for BUintD32<N>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl<const N: usize> Valuable for BUintD32<N>

source§

fn as_value(&self) -> Value<'_>

Converts self into a Value instance. Read more
source§

fn visit(&self, visitor: &mut dyn Visit)

Calls the relevant method on Visit to extract data from self. Read more
source§

fn visit_slice(slice: &[Self], visit: &mut dyn Visit)
where Self: Sized,

source§

impl<const N: usize> WrappingAdd for BUintD32<N>

source§

fn wrapping_add(&self, rhs: &Self) -> Self

Wrapping (modular) addition. Computes self + other, wrapping around at the boundary of the type.
source§

impl<const N: usize> WrappingMul for BUintD32<N>

source§

fn wrapping_mul(&self, rhs: &Self) -> Self

Wrapping (modular) multiplication. Computes self * other, wrapping around at the boundary of the type.
source§

impl<const N: usize> WrappingNeg for BUintD32<N>

source§

fn wrapping_neg(&self) -> Self

Wrapping (modular) negation. Computes -self, wrapping around at the boundary of the type. Read more
source§

impl<const N: usize> WrappingShl for BUintD32<N>

source§

fn wrapping_shl(&self, rhs: u32) -> Self

Panic-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. Read more
source§

impl<const N: usize> WrappingShr for BUintD32<N>

source§

fn wrapping_shr(&self, rhs: u32) -> Self

Panic-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. Read more
source§

impl<const N: usize> WrappingSub for BUintD32<N>

source§

fn wrapping_sub(&self, rhs: &Self) -> Self

Wrapping (modular) subtraction. Computes self - other, wrapping around at the boundary of the type.
source§

impl<const N: usize> Zero for BUintD32<N>

source§

fn zero() -> Self

Returns the additive identity element of Self, 0. Read more
source§

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.
source§

fn set_zero(&mut self)

Sets self to the additive identity element of Self, 0.
source§

impl<const N: usize> Copy for BUintD32<N>

source§

impl<const N: usize> DefaultIsZeroes for BUintD32<N>

source§

impl<const N: usize> Eq for BUintD32<N>

source§

impl<const N: usize> StructuralEq for BUintD32<N>

source§

impl<const N: usize> StructuralPartialEq for BUintD32<N>

source§

impl<const N: usize> Unsigned for BUintD32<N>

Auto Trait Implementations§

§

impl<const N: usize> RefUnwindSafe for BUintD32<N>

§

impl<const N: usize> Send for BUintD32<N>

§

impl<const N: usize> Sync for BUintD32<N>

§

impl<const N: usize> Unpin for BUintD32<N>

§

impl<const N: usize> UnwindSafe for BUintD32<N>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<U> As for U

source§

fn as_<T>(self) -> T
where T: CastFrom<U>,

Casts self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read more
source§

impl<I> Average for I
where &'a I: for<'a, 'b> BitAnd<&'b I, Output = I> + for<'a, 'b> BitOr<&'b I, Output = I> + for<'a, 'b> BitXor<&'b I, Output = I>, I: Integer + Shr<usize, Output = I>,

source§

fn average_floor(&self, other: &I) -> I

Returns the floor value of the average of self and other.

source§

fn average_ceil(&self, other: &I) -> I

Returns the ceil value of the average of self and other.

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> LowerBounded for T
where T: Bounded,

source§

fn min_value() -> T

Returns the smallest finite number this type can represent
source§

impl<Borrowed> SampleBorrow<Borrowed> for Borrowed
where Borrowed: SampleUniform,

source§

fn borrow(&self) -> &Borrowed

Immutably borrows from an owned value. See Borrow::borrow
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> UpperBounded for T
where T: Bounded,

source§

fn max_value() -> T

Returns the largest finite number this type can represent
source§

impl<Z> Zeroize for Z
where Z: DefaultIsZeroes,

source§

fn zeroize(&mut self)

Zero out this object from memory using Rust intrinsics which ensure the zeroization operation is not “optimized away” by the compiler.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

source§

impl<T> NumAssign for T
where T: Num + NumAssignOps,

source§

impl<T, Rhs> NumAssignOps<Rhs> for T
where T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,

source§

impl<T> NumAssignRef for T
where T: NumAssign + for<'r> NumAssignOps<&'r T>,

source§

impl<T, Rhs, Output> NumOps<Rhs, Output> for T
where T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,

source§

impl<T> NumRef for T
where T: Num + for<'r> NumOps<&'r T>,

source§

impl<T, Base> RefNum<Base> for T
where T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>,