Struct num_bigint::BigUint
source · pub struct BigUint { /* private fields */ }
Expand description
A big unsigned integer type.
Implementations§
source§impl BigUint
impl BigUint
sourcepub fn new(digits: Vec<u32>) -> BigUint
pub fn new(digits: Vec<u32>) -> BigUint
Creates and initializes a BigUint
.
The base 232 digits are ordered least significant digit first.
sourcepub fn from_slice(slice: &[u32]) -> BigUint
pub fn from_slice(slice: &[u32]) -> BigUint
Creates and initializes a BigUint
.
The base 232 digits are ordered least significant digit first.
sourcepub fn assign_from_slice(&mut self, slice: &[u32])
pub fn assign_from_slice(&mut self, slice: &[u32])
Assign a value to a BigUint
.
The base 232 digits are ordered least significant digit first.
sourcepub fn from_bytes_be(bytes: &[u8]) -> BigUint
pub fn from_bytes_be(bytes: &[u8]) -> BigUint
Creates and initializes a BigUint
.
The bytes are in big-endian byte order.
Examples
use num_bigint::BigUint;
assert_eq!(BigUint::from_bytes_be(b"A"),
BigUint::parse_bytes(b"65", 10).unwrap());
assert_eq!(BigUint::from_bytes_be(b"AA"),
BigUint::parse_bytes(b"16705", 10).unwrap());
assert_eq!(BigUint::from_bytes_be(b"AB"),
BigUint::parse_bytes(b"16706", 10).unwrap());
assert_eq!(BigUint::from_bytes_be(b"Hello world!"),
BigUint::parse_bytes(b"22405534230753963835153736737", 10).unwrap());
sourcepub fn from_bytes_le(bytes: &[u8]) -> BigUint
pub fn from_bytes_le(bytes: &[u8]) -> BigUint
Creates and initializes a BigUint
.
The bytes are in little-endian byte order.
sourcepub fn parse_bytes(buf: &[u8], radix: u32) -> Option<BigUint>
pub fn parse_bytes(buf: &[u8], radix: u32) -> Option<BigUint>
Creates and initializes a BigUint
. The input slice must contain
ascii/utf8 characters in [0-9a-zA-Z].
radix
must be in the range 2...36
.
The function from_str_radix
from the Num
trait provides the same logic
for &str
buffers.
Examples
use num_bigint::{BigUint, ToBigUint};
assert_eq!(BigUint::parse_bytes(b"1234", 10), ToBigUint::to_biguint(&1234));
assert_eq!(BigUint::parse_bytes(b"ABCD", 16), ToBigUint::to_biguint(&0xABCD));
assert_eq!(BigUint::parse_bytes(b"G", 16), None);
sourcepub fn from_radix_be(buf: &[u8], radix: u32) -> Option<BigUint>
pub fn from_radix_be(buf: &[u8], radix: u32) -> Option<BigUint>
Creates and initializes a BigUint
. Each u8 of the input slice is
interpreted as one digit of the number
and must therefore be less than radix
.
The bytes are in big-endian byte order.
radix
must be in the range 2...256
.
Examples
use num_bigint::{BigUint};
let inbase190 = &[15, 33, 125, 12, 14];
let a = BigUint::from_radix_be(inbase190, 190).unwrap();
assert_eq!(a.to_radix_be(190), inbase190);
sourcepub fn from_radix_le(buf: &[u8], radix: u32) -> Option<BigUint>
pub fn from_radix_le(buf: &[u8], radix: u32) -> Option<BigUint>
Creates and initializes a BigUint
. Each u8 of the input slice is
interpreted as one digit of the number
and must therefore be less than radix
.
The bytes are in little-endian byte order.
radix
must be in the range 2...256
.
Examples
use num_bigint::{BigUint};
let inbase190 = &[14, 12, 125, 33, 15];
let a = BigUint::from_radix_be(inbase190, 190).unwrap();
assert_eq!(a.to_radix_be(190), inbase190);
sourcepub fn to_bytes_be(&self) -> Vec<u8>
pub fn to_bytes_be(&self) -> Vec<u8>
Returns the byte representation of the BigUint
in big-endian byte order.
Examples
use num_bigint::BigUint;
let i = BigUint::parse_bytes(b"1125", 10).unwrap();
assert_eq!(i.to_bytes_be(), vec![4, 101]);
sourcepub fn to_bytes_le(&self) -> Vec<u8>
pub fn to_bytes_le(&self) -> Vec<u8>
Returns the byte representation of the BigUint
in little-endian byte order.
Examples
use num_bigint::BigUint;
let i = BigUint::parse_bytes(b"1125", 10).unwrap();
assert_eq!(i.to_bytes_le(), vec![101, 4]);
sourcepub fn to_u32_digits(&self) -> Vec<u32>
pub fn to_u32_digits(&self) -> Vec<u32>
Returns the u32
digits representation of the BigUint
ordered least significant digit
first.
Examples
use num_bigint::BigUint;
assert_eq!(BigUint::from(1125u32).to_u32_digits(), vec![1125]);
assert_eq!(BigUint::from(4294967295u32).to_u32_digits(), vec![4294967295]);
assert_eq!(BigUint::from(4294967296u64).to_u32_digits(), vec![0, 1]);
assert_eq!(BigUint::from(112500000000u64).to_u32_digits(), vec![830850304, 26]);
sourcepub fn to_u64_digits(&self) -> Vec<u64>
pub fn to_u64_digits(&self) -> Vec<u64>
Returns the u64
digits representation of the BigUint
ordered least significant digit
first.
Examples
use num_bigint::BigUint;
assert_eq!(BigUint::from(1125u32).to_u64_digits(), vec![1125]);
assert_eq!(BigUint::from(4294967295u32).to_u64_digits(), vec![4294967295]);
assert_eq!(BigUint::from(4294967296u64).to_u64_digits(), vec![4294967296]);
assert_eq!(BigUint::from(112500000000u64).to_u64_digits(), vec![112500000000]);
assert_eq!(BigUint::from(1u128 << 64).to_u64_digits(), vec![0, 1]);
sourcepub fn iter_u32_digits(&self) -> U32Digits<'_> ⓘ
pub fn iter_u32_digits(&self) -> U32Digits<'_> ⓘ
Returns an iterator of u32
digits representation of the BigUint
ordered least
significant digit first.
Examples
use num_bigint::BigUint;
assert_eq!(BigUint::from(1125u32).iter_u32_digits().collect::<Vec<u32>>(), vec![1125]);
assert_eq!(BigUint::from(4294967295u32).iter_u32_digits().collect::<Vec<u32>>(), vec![4294967295]);
assert_eq!(BigUint::from(4294967296u64).iter_u32_digits().collect::<Vec<u32>>(), vec![0, 1]);
assert_eq!(BigUint::from(112500000000u64).iter_u32_digits().collect::<Vec<u32>>(), vec![830850304, 26]);
sourcepub fn iter_u64_digits(&self) -> U64Digits<'_> ⓘ
pub fn iter_u64_digits(&self) -> U64Digits<'_> ⓘ
Returns an iterator of u64
digits representation of the BigUint
ordered least
significant digit first.
Examples
use num_bigint::BigUint;
assert_eq!(BigUint::from(1125u32).iter_u64_digits().collect::<Vec<u64>>(), vec![1125]);
assert_eq!(BigUint::from(4294967295u32).iter_u64_digits().collect::<Vec<u64>>(), vec![4294967295]);
assert_eq!(BigUint::from(4294967296u64).iter_u64_digits().collect::<Vec<u64>>(), vec![4294967296]);
assert_eq!(BigUint::from(112500000000u64).iter_u64_digits().collect::<Vec<u64>>(), vec![112500000000]);
assert_eq!(BigUint::from(1u128 << 64).iter_u64_digits().collect::<Vec<u64>>(), vec![0, 1]);
sourcepub fn to_str_radix(&self, radix: u32) -> String
pub fn to_str_radix(&self, radix: u32) -> String
Returns the integer formatted as a string in the given radix.
radix
must be in the range 2...36
.
Examples
use num_bigint::BigUint;
let i = BigUint::parse_bytes(b"ff", 16).unwrap();
assert_eq!(i.to_str_radix(16), "ff");
sourcepub fn to_radix_be(&self, radix: u32) -> Vec<u8>
pub fn to_radix_be(&self, radix: u32) -> Vec<u8>
Returns the integer in the requested base in big-endian digit order.
The output is not given in a human readable alphabet but as a zero
based u8 number.
radix
must be in the range 2...256
.
Examples
use num_bigint::BigUint;
assert_eq!(BigUint::from(0xFFFFu64).to_radix_be(159),
vec![2, 94, 27]);
// 0xFFFF = 65535 = 2*(159^2) + 94*159 + 27
sourcepub fn to_radix_le(&self, radix: u32) -> Vec<u8>
pub fn to_radix_le(&self, radix: u32) -> Vec<u8>
Returns the integer in the requested base in little-endian digit order.
The output is not given in a human readable alphabet but as a zero
based u8 number.
radix
must be in the range 2...256
.
Examples
use num_bigint::BigUint;
assert_eq!(BigUint::from(0xFFFFu64).to_radix_le(159),
vec![27, 94, 2]);
// 0xFFFF = 65535 = 27 + 94*159 + 2*(159^2)
sourcepub fn modpow(&self, exponent: &Self, modulus: &Self) -> Self
pub fn modpow(&self, exponent: &Self, modulus: &Self) -> Self
Returns (self ^ exponent) % modulus
.
Panics if the modulus is zero.
sourcepub fn sqrt(&self) -> Self
pub fn sqrt(&self) -> Self
Returns the truncated principal square root of self
–
see Roots::sqrt
sourcepub fn cbrt(&self) -> Self
pub fn cbrt(&self) -> Self
Returns the truncated principal cube root of self
–
see Roots::cbrt.
sourcepub fn nth_root(&self, n: u32) -> Self
pub fn nth_root(&self, n: u32) -> Self
Returns the truncated principal n
th root of self
–
see Roots::nth_root.
sourcepub fn trailing_zeros(&self) -> Option<u64>
pub fn trailing_zeros(&self) -> Option<u64>
Returns the number of least-significant bits that are zero,
or None
if the entire number is zero.
sourcepub fn trailing_ones(&self) -> u64
pub fn trailing_ones(&self) -> u64
Returns the number of least-significant bits that are ones.
sourcepub fn count_ones(&self) -> u64
pub fn count_ones(&self) -> u64
Returns the number of one bits.
Trait Implementations§
source§impl<'a> AddAssign<&'a BigUint> for BigUint
impl<'a> AddAssign<&'a BigUint> for BigUint
source§fn add_assign(&mut self, other: &BigUint)
fn add_assign(&mut self, other: &BigUint)
+=
operation. Read moresource§impl AddAssign<u128> for BigUint
impl AddAssign<u128> for BigUint
source§fn add_assign(&mut self, other: u128)
fn add_assign(&mut self, other: u128)
+=
operation. Read moresource§impl AddAssign<u16> for BigUint
impl AddAssign<u16> for BigUint
source§fn add_assign(&mut self, other: u16)
fn add_assign(&mut self, other: u16)
+=
operation. Read moresource§impl AddAssign<u32> for BigUint
impl AddAssign<u32> for BigUint
source§fn add_assign(&mut self, other: u32)
fn add_assign(&mut self, other: u32)
+=
operation. Read moresource§impl AddAssign<u64> for BigUint
impl AddAssign<u64> for BigUint
source§fn add_assign(&mut self, other: u64)
fn add_assign(&mut self, other: u64)
+=
operation. Read moresource§impl AddAssign<u8> for BigUint
impl AddAssign<u8> for BigUint
source§fn add_assign(&mut self, other: u8)
fn add_assign(&mut self, other: u8)
+=
operation. Read moresource§impl AddAssign<usize> for BigUint
impl AddAssign<usize> for BigUint
source§fn add_assign(&mut self, other: usize)
fn add_assign(&mut self, other: usize)
+=
operation. Read moresource§impl AddAssign for BigUint
impl AddAssign for BigUint
source§fn add_assign(&mut self, other: BigUint)
fn add_assign(&mut self, other: BigUint)
+=
operation. Read moresource§impl<'a> BitAndAssign<&'a BigUint> for BigUint
impl<'a> BitAndAssign<&'a BigUint> for BigUint
source§fn bitand_assign(&mut self, other: &BigUint)
fn bitand_assign(&mut self, other: &BigUint)
&=
operation. Read moresource§impl BitAndAssign for BigUint
impl BitAndAssign for BigUint
source§fn bitand_assign(&mut self, other: BigUint)
fn bitand_assign(&mut self, other: BigUint)
&=
operation. Read moresource§impl<'a> BitOrAssign<&'a BigUint> for BigUint
impl<'a> BitOrAssign<&'a BigUint> for BigUint
source§fn bitor_assign(&mut self, other: &BigUint)
fn bitor_assign(&mut self, other: &BigUint)
|=
operation. Read moresource§impl BitOrAssign for BigUint
impl BitOrAssign for BigUint
source§fn bitor_assign(&mut self, other: BigUint)
fn bitor_assign(&mut self, other: BigUint)
|=
operation. Read moresource§impl<'a> BitXorAssign<&'a BigUint> for BigUint
impl<'a> BitXorAssign<&'a BigUint> for BigUint
source§fn bitxor_assign(&mut self, other: &BigUint)
fn bitxor_assign(&mut self, other: &BigUint)
^=
operation. Read moresource§impl BitXorAssign for BigUint
impl BitXorAssign for BigUint
source§fn bitxor_assign(&mut self, other: BigUint)
fn bitxor_assign(&mut self, other: BigUint)
^=
operation. Read moresource§impl CheckedAdd for BigUint
impl CheckedAdd for BigUint
source§impl CheckedDiv for BigUint
impl CheckedDiv for BigUint
source§impl CheckedMul for BigUint
impl CheckedMul for BigUint
source§impl CheckedSub for BigUint
impl CheckedSub for BigUint
source§impl<'a> DivAssign<&'a BigUint> for BigUint
impl<'a> DivAssign<&'a BigUint> for BigUint
source§fn div_assign(&mut self, other: &'a BigUint)
fn div_assign(&mut self, other: &'a BigUint)
/=
operation. Read moresource§impl DivAssign<u128> for BigUint
impl DivAssign<u128> for BigUint
source§fn div_assign(&mut self, other: u128)
fn div_assign(&mut self, other: u128)
/=
operation. Read moresource§impl DivAssign<u16> for BigUint
impl DivAssign<u16> for BigUint
source§fn div_assign(&mut self, other: u16)
fn div_assign(&mut self, other: u16)
/=
operation. Read moresource§impl DivAssign<u32> for BigUint
impl DivAssign<u32> for BigUint
source§fn div_assign(&mut self, other: u32)
fn div_assign(&mut self, other: u32)
/=
operation. Read moresource§impl DivAssign<u64> for BigUint
impl DivAssign<u64> for BigUint
source§fn div_assign(&mut self, other: u64)
fn div_assign(&mut self, other: u64)
/=
operation. Read moresource§impl DivAssign<u8> for BigUint
impl DivAssign<u8> for BigUint
source§fn div_assign(&mut self, other: u8)
fn div_assign(&mut self, other: u8)
/=
operation. Read moresource§impl DivAssign<usize> for BigUint
impl DivAssign<usize> for BigUint
source§fn div_assign(&mut self, other: usize)
fn div_assign(&mut self, other: usize)
/=
operation. Read moresource§impl DivAssign for BigUint
impl DivAssign for BigUint
source§fn div_assign(&mut self, other: BigUint)
fn div_assign(&mut self, other: BigUint)
/=
operation. Read moresource§impl FromPrimitive for BigUint
impl FromPrimitive for BigUint
source§fn from_i64(n: i64) -> Option<BigUint>
fn from_i64(n: i64) -> Option<BigUint>
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_i128(n: i128) -> Option<BigUint>
fn from_i128(n: i128) -> Option<BigUint>
i128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§fn from_u64(n: u64) -> Option<BigUint>
fn from_u64(n: u64) -> Option<BigUint>
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_u128(n: u128) -> Option<BigUint>
fn from_u128(n: u128) -> Option<BigUint>
u128
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§fn from_f64(n: f64) -> Option<BigUint>
fn from_f64(n: f64) -> Option<BigUint>
f64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§fn from_isize(n: isize) -> Option<Self>
fn from_isize(n: isize) -> Option<Self>
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i8(n: i8) -> Option<Self>
fn from_i8(n: i8) -> Option<Self>
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i16(n: i16) -> Option<Self>
fn from_i16(n: i16) -> Option<Self>
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i32(n: i32) -> Option<Self>
fn from_i32(n: i32) -> Option<Self>
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_usize(n: usize) -> Option<Self>
fn from_usize(n: usize) -> Option<Self>
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u8(n: u8) -> Option<Self>
fn from_u8(n: u8) -> Option<Self>
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u16(n: u16) -> Option<Self>
fn from_u16(n: u16) -> Option<Self>
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§impl Integer for BigUint
impl Integer for BigUint
source§fn gcd(&self, other: &Self) -> Self
fn gcd(&self, other: &Self) -> Self
Calculates the Greatest Common Divisor (GCD) of the number and other
.
The result is always positive.
source§fn lcm(&self, other: &BigUint) -> BigUint
fn lcm(&self, other: &BigUint) -> BigUint
Calculates the Lowest Common Multiple (LCM) of the number and other
.
source§fn gcd_lcm(&self, other: &Self) -> (Self, Self)
fn gcd_lcm(&self, other: &Self) -> (Self, Self)
Calculates the Greatest Common Divisor (GCD) and Lowest Common Multiple (LCM) together.
source§fn is_multiple_of(&self, other: &BigUint) -> bool
fn is_multiple_of(&self, other: &BigUint) -> bool
Returns true
if the number is a multiple of other
.
source§fn next_multiple_of(&self, other: &Self) -> Self
fn next_multiple_of(&self, other: &Self) -> Self
Rounds up to nearest multiple of argument.
source§fn prev_multiple_of(&self, other: &Self) -> Self
fn prev_multiple_of(&self, other: &Self) -> Self
Rounds down to nearest multiple of argument.
source§fn div_rem(&self, other: &BigUint) -> (BigUint, BigUint)
fn div_rem(&self, other: &BigUint) -> (BigUint, BigUint)
(quotient, remainder)
. Read moresource§fn div_mod_floor(&self, other: &BigUint) -> (BigUint, BigUint)
fn div_mod_floor(&self, other: &BigUint) -> (BigUint, BigUint)
(quotient, remainder)
. Read moresource§fn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self>where
Self: Clone,
fn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self>where Self: Clone,
source§impl<'a> MulAssign<&'a BigUint> for BigUint
impl<'a> MulAssign<&'a BigUint> for BigUint
source§fn mul_assign(&mut self, other: &'a BigUint)
fn mul_assign(&mut self, other: &'a BigUint)
*=
operation. Read moresource§impl MulAssign<u128> for BigUint
impl MulAssign<u128> for BigUint
source§fn mul_assign(&mut self, other: u128)
fn mul_assign(&mut self, other: u128)
*=
operation. Read moresource§impl MulAssign<u16> for BigUint
impl MulAssign<u16> for BigUint
source§fn mul_assign(&mut self, other: u16)
fn mul_assign(&mut self, other: u16)
*=
operation. Read moresource§impl MulAssign<u32> for BigUint
impl MulAssign<u32> for BigUint
source§fn mul_assign(&mut self, other: u32)
fn mul_assign(&mut self, other: u32)
*=
operation. Read moresource§impl MulAssign<u64> for BigUint
impl MulAssign<u64> for BigUint
source§fn mul_assign(&mut self, other: u64)
fn mul_assign(&mut self, other: u64)
*=
operation. Read moresource§impl MulAssign<u8> for BigUint
impl MulAssign<u8> for BigUint
source§fn mul_assign(&mut self, other: u8)
fn mul_assign(&mut self, other: u8)
*=
operation. Read moresource§impl MulAssign<usize> for BigUint
impl MulAssign<usize> for BigUint
source§fn mul_assign(&mut self, other: usize)
fn mul_assign(&mut self, other: usize)
*=
operation. Read moresource§impl MulAssign for BigUint
impl MulAssign for BigUint
source§fn mul_assign(&mut self, other: BigUint)
fn mul_assign(&mut self, other: BigUint)
*=
operation. Read moresource§impl Num for BigUint
impl Num for BigUint
source§fn from_str_radix(s: &str, radix: u32) -> Result<BigUint, ParseBigIntError>
fn from_str_radix(s: &str, radix: u32) -> Result<BigUint, ParseBigIntError>
Creates and initializes a BigUint
.
type FromStrRadixErr = ParseBigIntError
source§impl Ord for BigUint
impl Ord for BigUint
source§impl PartialEq for BigUint
impl PartialEq for BigUint
source§impl PartialOrd for BigUint
impl PartialOrd for BigUint
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl<'a> RemAssign<&'a BigUint> for BigUint
impl<'a> RemAssign<&'a BigUint> for BigUint
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for i128
impl<'a> RemAssign<&'a BigUint> for i128
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for i16
impl<'a> RemAssign<&'a BigUint> for i16
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for i32
impl<'a> RemAssign<&'a BigUint> for i32
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for i64
impl<'a> RemAssign<&'a BigUint> for i64
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for i8
impl<'a> RemAssign<&'a BigUint> for i8
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for isize
impl<'a> RemAssign<&'a BigUint> for isize
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for u128
impl<'a> RemAssign<&'a BigUint> for u128
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for u16
impl<'a> RemAssign<&'a BigUint> for u16
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for u32
impl<'a> RemAssign<&'a BigUint> for u32
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for u64
impl<'a> RemAssign<&'a BigUint> for u64
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for u8
impl<'a> RemAssign<&'a BigUint> for u8
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl<'a> RemAssign<&'a BigUint> for usize
impl<'a> RemAssign<&'a BigUint> for usize
source§fn rem_assign(&mut self, other: &BigUint)
fn rem_assign(&mut self, other: &BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for i128
impl RemAssign<BigUint> for i128
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for i16
impl RemAssign<BigUint> for i16
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for i32
impl RemAssign<BigUint> for i32
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for i64
impl RemAssign<BigUint> for i64
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for i8
impl RemAssign<BigUint> for i8
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for isize
impl RemAssign<BigUint> for isize
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for u128
impl RemAssign<BigUint> for u128
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for u16
impl RemAssign<BigUint> for u16
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for u32
impl RemAssign<BigUint> for u32
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for u64
impl RemAssign<BigUint> for u64
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for u8
impl RemAssign<BigUint> for u8
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<BigUint> for usize
impl RemAssign<BigUint> for usize
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl RemAssign<u128> for BigUint
impl RemAssign<u128> for BigUint
source§fn rem_assign(&mut self, other: u128)
fn rem_assign(&mut self, other: u128)
%=
operation. Read moresource§impl RemAssign<u16> for BigUint
impl RemAssign<u16> for BigUint
source§fn rem_assign(&mut self, other: u16)
fn rem_assign(&mut self, other: u16)
%=
operation. Read moresource§impl RemAssign<u32> for BigUint
impl RemAssign<u32> for BigUint
source§fn rem_assign(&mut self, other: u32)
fn rem_assign(&mut self, other: u32)
%=
operation. Read moresource§impl RemAssign<u64> for BigUint
impl RemAssign<u64> for BigUint
source§fn rem_assign(&mut self, other: u64)
fn rem_assign(&mut self, other: u64)
%=
operation. Read moresource§impl RemAssign<u8> for BigUint
impl RemAssign<u8> for BigUint
source§fn rem_assign(&mut self, other: u8)
fn rem_assign(&mut self, other: u8)
%=
operation. Read moresource§impl RemAssign<usize> for BigUint
impl RemAssign<usize> for BigUint
source§fn rem_assign(&mut self, other: usize)
fn rem_assign(&mut self, other: usize)
%=
operation. Read moresource§impl RemAssign for BigUint
impl RemAssign for BigUint
source§fn rem_assign(&mut self, other: BigUint)
fn rem_assign(&mut self, other: BigUint)
%=
operation. Read moresource§impl Roots for BigUint
impl Roots for BigUint
source§impl<'b> ShlAssign<&'b i128> for BigUint
impl<'b> ShlAssign<&'b i128> for BigUint
source§fn shl_assign(&mut self, rhs: &'b i128)
fn shl_assign(&mut self, rhs: &'b i128)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b i16> for BigUint
impl<'b> ShlAssign<&'b i16> for BigUint
source§fn shl_assign(&mut self, rhs: &'b i16)
fn shl_assign(&mut self, rhs: &'b i16)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b i32> for BigUint
impl<'b> ShlAssign<&'b i32> for BigUint
source§fn shl_assign(&mut self, rhs: &'b i32)
fn shl_assign(&mut self, rhs: &'b i32)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b i64> for BigUint
impl<'b> ShlAssign<&'b i64> for BigUint
source§fn shl_assign(&mut self, rhs: &'b i64)
fn shl_assign(&mut self, rhs: &'b i64)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b i8> for BigUint
impl<'b> ShlAssign<&'b i8> for BigUint
source§fn shl_assign(&mut self, rhs: &'b i8)
fn shl_assign(&mut self, rhs: &'b i8)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b isize> for BigUint
impl<'b> ShlAssign<&'b isize> for BigUint
source§fn shl_assign(&mut self, rhs: &'b isize)
fn shl_assign(&mut self, rhs: &'b isize)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b u128> for BigUint
impl<'b> ShlAssign<&'b u128> for BigUint
source§fn shl_assign(&mut self, rhs: &'b u128)
fn shl_assign(&mut self, rhs: &'b u128)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b u16> for BigUint
impl<'b> ShlAssign<&'b u16> for BigUint
source§fn shl_assign(&mut self, rhs: &'b u16)
fn shl_assign(&mut self, rhs: &'b u16)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b u32> for BigUint
impl<'b> ShlAssign<&'b u32> for BigUint
source§fn shl_assign(&mut self, rhs: &'b u32)
fn shl_assign(&mut self, rhs: &'b u32)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b u64> for BigUint
impl<'b> ShlAssign<&'b u64> for BigUint
source§fn shl_assign(&mut self, rhs: &'b u64)
fn shl_assign(&mut self, rhs: &'b u64)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b u8> for BigUint
impl<'b> ShlAssign<&'b u8> for BigUint
source§fn shl_assign(&mut self, rhs: &'b u8)
fn shl_assign(&mut self, rhs: &'b u8)
<<=
operation. Read moresource§impl<'b> ShlAssign<&'b usize> for BigUint
impl<'b> ShlAssign<&'b usize> for BigUint
source§fn shl_assign(&mut self, rhs: &'b usize)
fn shl_assign(&mut self, rhs: &'b usize)
<<=
operation. Read moresource§impl ShlAssign<i128> for BigUint
impl ShlAssign<i128> for BigUint
source§fn shl_assign(&mut self, rhs: i128)
fn shl_assign(&mut self, rhs: i128)
<<=
operation. Read moresource§impl ShlAssign<i16> for BigUint
impl ShlAssign<i16> for BigUint
source§fn shl_assign(&mut self, rhs: i16)
fn shl_assign(&mut self, rhs: i16)
<<=
operation. Read moresource§impl ShlAssign<i32> for BigUint
impl ShlAssign<i32> for BigUint
source§fn shl_assign(&mut self, rhs: i32)
fn shl_assign(&mut self, rhs: i32)
<<=
operation. Read moresource§impl ShlAssign<i64> for BigUint
impl ShlAssign<i64> for BigUint
source§fn shl_assign(&mut self, rhs: i64)
fn shl_assign(&mut self, rhs: i64)
<<=
operation. Read moresource§impl ShlAssign<i8> for BigUint
impl ShlAssign<i8> for BigUint
source§fn shl_assign(&mut self, rhs: i8)
fn shl_assign(&mut self, rhs: i8)
<<=
operation. Read moresource§impl ShlAssign<isize> for BigUint
impl ShlAssign<isize> for BigUint
source§fn shl_assign(&mut self, rhs: isize)
fn shl_assign(&mut self, rhs: isize)
<<=
operation. Read moresource§impl ShlAssign<u128> for BigUint
impl ShlAssign<u128> for BigUint
source§fn shl_assign(&mut self, rhs: u128)
fn shl_assign(&mut self, rhs: u128)
<<=
operation. Read moresource§impl ShlAssign<u16> for BigUint
impl ShlAssign<u16> for BigUint
source§fn shl_assign(&mut self, rhs: u16)
fn shl_assign(&mut self, rhs: u16)
<<=
operation. Read moresource§impl ShlAssign<u32> for BigUint
impl ShlAssign<u32> for BigUint
source§fn shl_assign(&mut self, rhs: u32)
fn shl_assign(&mut self, rhs: u32)
<<=
operation. Read moresource§impl ShlAssign<u64> for BigUint
impl ShlAssign<u64> for BigUint
source§fn shl_assign(&mut self, rhs: u64)
fn shl_assign(&mut self, rhs: u64)
<<=
operation. Read moresource§impl ShlAssign<u8> for BigUint
impl ShlAssign<u8> for BigUint
source§fn shl_assign(&mut self, rhs: u8)
fn shl_assign(&mut self, rhs: u8)
<<=
operation. Read moresource§impl ShlAssign<usize> for BigUint
impl ShlAssign<usize> for BigUint
source§fn shl_assign(&mut self, rhs: usize)
fn shl_assign(&mut self, rhs: usize)
<<=
operation. Read moresource§impl<'b> ShrAssign<&'b i128> for BigUint
impl<'b> ShrAssign<&'b i128> for BigUint
source§fn shr_assign(&mut self, rhs: &'b i128)
fn shr_assign(&mut self, rhs: &'b i128)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b i16> for BigUint
impl<'b> ShrAssign<&'b i16> for BigUint
source§fn shr_assign(&mut self, rhs: &'b i16)
fn shr_assign(&mut self, rhs: &'b i16)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b i32> for BigUint
impl<'b> ShrAssign<&'b i32> for BigUint
source§fn shr_assign(&mut self, rhs: &'b i32)
fn shr_assign(&mut self, rhs: &'b i32)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b i64> for BigUint
impl<'b> ShrAssign<&'b i64> for BigUint
source§fn shr_assign(&mut self, rhs: &'b i64)
fn shr_assign(&mut self, rhs: &'b i64)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b i8> for BigUint
impl<'b> ShrAssign<&'b i8> for BigUint
source§fn shr_assign(&mut self, rhs: &'b i8)
fn shr_assign(&mut self, rhs: &'b i8)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b isize> for BigUint
impl<'b> ShrAssign<&'b isize> for BigUint
source§fn shr_assign(&mut self, rhs: &'b isize)
fn shr_assign(&mut self, rhs: &'b isize)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b u128> for BigUint
impl<'b> ShrAssign<&'b u128> for BigUint
source§fn shr_assign(&mut self, rhs: &'b u128)
fn shr_assign(&mut self, rhs: &'b u128)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b u16> for BigUint
impl<'b> ShrAssign<&'b u16> for BigUint
source§fn shr_assign(&mut self, rhs: &'b u16)
fn shr_assign(&mut self, rhs: &'b u16)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b u32> for BigUint
impl<'b> ShrAssign<&'b u32> for BigUint
source§fn shr_assign(&mut self, rhs: &'b u32)
fn shr_assign(&mut self, rhs: &'b u32)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b u64> for BigUint
impl<'b> ShrAssign<&'b u64> for BigUint
source§fn shr_assign(&mut self, rhs: &'b u64)
fn shr_assign(&mut self, rhs: &'b u64)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b u8> for BigUint
impl<'b> ShrAssign<&'b u8> for BigUint
source§fn shr_assign(&mut self, rhs: &'b u8)
fn shr_assign(&mut self, rhs: &'b u8)
>>=
operation. Read moresource§impl<'b> ShrAssign<&'b usize> for BigUint
impl<'b> ShrAssign<&'b usize> for BigUint
source§fn shr_assign(&mut self, rhs: &'b usize)
fn shr_assign(&mut self, rhs: &'b usize)
>>=
operation. Read moresource§impl ShrAssign<i128> for BigUint
impl ShrAssign<i128> for BigUint
source§fn shr_assign(&mut self, rhs: i128)
fn shr_assign(&mut self, rhs: i128)
>>=
operation. Read moresource§impl ShrAssign<i16> for BigUint
impl ShrAssign<i16> for BigUint
source§fn shr_assign(&mut self, rhs: i16)
fn shr_assign(&mut self, rhs: i16)
>>=
operation. Read moresource§impl ShrAssign<i32> for BigUint
impl ShrAssign<i32> for BigUint
source§fn shr_assign(&mut self, rhs: i32)
fn shr_assign(&mut self, rhs: i32)
>>=
operation. Read moresource§impl ShrAssign<i64> for BigUint
impl ShrAssign<i64> for BigUint
source§fn shr_assign(&mut self, rhs: i64)
fn shr_assign(&mut self, rhs: i64)
>>=
operation. Read moresource§impl ShrAssign<i8> for BigUint
impl ShrAssign<i8> for BigUint
source§fn shr_assign(&mut self, rhs: i8)
fn shr_assign(&mut self, rhs: i8)
>>=
operation. Read moresource§impl ShrAssign<isize> for BigUint
impl ShrAssign<isize> for BigUint
source§fn shr_assign(&mut self, rhs: isize)
fn shr_assign(&mut self, rhs: isize)
>>=
operation. Read moresource§impl ShrAssign<u128> for BigUint
impl ShrAssign<u128> for BigUint
source§fn shr_assign(&mut self, rhs: u128)
fn shr_assign(&mut self, rhs: u128)
>>=
operation. Read moresource§impl ShrAssign<u16> for BigUint
impl ShrAssign<u16> for BigUint
source§fn shr_assign(&mut self, rhs: u16)
fn shr_assign(&mut self, rhs: u16)
>>=
operation. Read moresource§impl ShrAssign<u32> for BigUint
impl ShrAssign<u32> for BigUint
source§fn shr_assign(&mut self, rhs: u32)
fn shr_assign(&mut self, rhs: u32)
>>=
operation. Read moresource§impl ShrAssign<u64> for BigUint
impl ShrAssign<u64> for BigUint
source§fn shr_assign(&mut self, rhs: u64)
fn shr_assign(&mut self, rhs: u64)
>>=
operation. Read moresource§impl ShrAssign<u8> for BigUint
impl ShrAssign<u8> for BigUint
source§fn shr_assign(&mut self, rhs: u8)
fn shr_assign(&mut self, rhs: u8)
>>=
operation. Read moresource§impl ShrAssign<usize> for BigUint
impl ShrAssign<usize> for BigUint
source§fn shr_assign(&mut self, rhs: usize)
fn shr_assign(&mut self, rhs: usize)
>>=
operation. Read moresource§impl<'a> SubAssign<&'a BigUint> for BigUint
impl<'a> SubAssign<&'a BigUint> for BigUint
source§fn sub_assign(&mut self, other: &'a BigUint)
fn sub_assign(&mut self, other: &'a BigUint)
-=
operation. Read moresource§impl SubAssign<u128> for BigUint
impl SubAssign<u128> for BigUint
source§fn sub_assign(&mut self, other: u128)
fn sub_assign(&mut self, other: u128)
-=
operation. Read moresource§impl SubAssign<u16> for BigUint
impl SubAssign<u16> for BigUint
source§fn sub_assign(&mut self, other: u16)
fn sub_assign(&mut self, other: u16)
-=
operation. Read moresource§impl SubAssign<u32> for BigUint
impl SubAssign<u32> for BigUint
source§fn sub_assign(&mut self, other: u32)
fn sub_assign(&mut self, other: u32)
-=
operation. Read moresource§impl SubAssign<u64> for BigUint
impl SubAssign<u64> for BigUint
source§fn sub_assign(&mut self, other: u64)
fn sub_assign(&mut self, other: u64)
-=
operation. Read moresource§impl SubAssign<u8> for BigUint
impl SubAssign<u8> for BigUint
source§fn sub_assign(&mut self, other: u8)
fn sub_assign(&mut self, other: u8)
-=
operation. Read moresource§impl SubAssign<usize> for BigUint
impl SubAssign<usize> for BigUint
source§fn sub_assign(&mut self, other: usize)
fn sub_assign(&mut self, other: usize)
-=
operation. Read moresource§impl SubAssign for BigUint
impl SubAssign for BigUint
source§fn sub_assign(&mut self, other: BigUint)
fn sub_assign(&mut self, other: BigUint)
-=
operation. Read moresource§impl ToBigUint for BigUint
impl ToBigUint for BigUint
source§fn to_biguint(&self) -> Option<BigUint>
fn to_biguint(&self) -> Option<BigUint>
self
to a BigUint
.source§impl ToPrimitive for BigUint
impl ToPrimitive for BigUint
source§fn to_i64(&self) -> Option<i64>
fn to_i64(&self) -> Option<i64>
self
to an i64
. If the value cannot be
represented by an i64
, then None
is returned.source§fn to_i128(&self) -> Option<i128>
fn to_i128(&self) -> Option<i128>
self
to an i128
. If the value cannot be
represented by an i128
(i64
under the default implementation), then
None
is returned. Read moresource§fn to_u64(&self) -> Option<u64>
fn to_u64(&self) -> Option<u64>
self
to a u64
. If the value cannot be
represented by a u64
, then None
is returned.source§fn to_u128(&self) -> Option<u128>
fn to_u128(&self) -> Option<u128>
self
to a u128
. If the value cannot be
represented by a u128
(u64
under the default implementation), then
None
is returned. Read moresource§fn to_f32(&self) -> Option<f32>
fn to_f32(&self) -> Option<f32>
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>
fn to_f64(&self) -> Option<f64>
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 moresource§fn to_isize(&self) -> Option<isize>
fn to_isize(&self) -> Option<isize>
self
to an isize
. If the value cannot be
represented by an isize
, then None
is returned.source§fn to_i8(&self) -> Option<i8>
fn to_i8(&self) -> Option<i8>
self
to an i8
. If the value cannot be
represented by an i8
, then None
is returned.source§fn to_i16(&self) -> Option<i16>
fn to_i16(&self) -> Option<i16>
self
to an i16
. If the value cannot be
represented by an i16
, then None
is returned.source§fn to_i32(&self) -> Option<i32>
fn to_i32(&self) -> Option<i32>
self
to an i32
. If the value cannot be
represented by an i32
, then None
is returned.source§fn to_usize(&self) -> Option<usize>
fn to_usize(&self) -> Option<usize>
self
to a usize
. If the value cannot be
represented by a usize
, then None
is returned.source§fn to_u8(&self) -> Option<u8>
fn to_u8(&self) -> Option<u8>
self
to a u8
. If the value cannot be
represented by a u8
, then None
is returned.impl Eq for BigUint
impl Unsigned for BigUint
Auto Trait Implementations§
impl RefUnwindSafe for BigUint
impl Send for BigUint
impl Sync for BigUint
impl Unpin for BigUint
impl UnwindSafe for BigUint
Blanket Implementations§
source§impl<I> Average for Iwhere
&'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>,
impl<I> Average for Iwhere &'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
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
fn average_ceil(&self, other: &I) -> I
Returns the ceil value of the average of self
and other
.