[][src]Struct num_bigint::BigUint

pub struct BigUint { /* fields omitted */ }

A big unsigned integer type.

A BigUint-typed value BigUint { data: vec!(a, b, c) } represents a number (a + b * big_digit::BASE + c * big_digit::BASE^2).

Methods

impl BigUint[src]

pub fn new(digits: Vec<BigDigit>) -> BigUint[src]

Creates and initializes a BigUint.

The digits are in little-endian base 232.

pub fn from_slice(slice: &[BigDigit]) -> BigUint[src]

Creates and initializes a BigUint.

The digits are in little-endian base 232.

pub fn assign_from_slice(&mut self, slice: &[BigDigit])[src]

Assign a value to a BigUint.

The digits are in little-endian base 232.

pub fn from_bytes_be(bytes: &[u8]) -> BigUint[src]

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());

pub fn from_bytes_le(bytes: &[u8]) -> BigUint[src]

Creates and initializes a BigUint.

The bytes are in little-endian byte order.

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

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);

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

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);

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

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);

pub fn to_bytes_be(&self) -> Vec<u8>[src]

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]);

pub fn to_bytes_le(&self) -> Vec<u8>[src]

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]);

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

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");

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

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

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

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)

pub fn bits(&self) -> usize[src]

Determines the fewest bits necessary to express the BigUint.

pub fn modpow(&self, exponent: &Self, modulus: &Self) -> Self[src]

Returns (self ^ exponent) % modulus.

Panics if the modulus is zero.

Trait Implementations

impl ToBigUint for BigUint[src]

impl ToBigInt for BigUint[src]

impl Eq for BigUint[src]

impl Default for BigUint[src]

impl Clone for BigUint[src]

impl PartialOrd<BigUint> for BigUint[src]

impl PartialEq<BigUint> for BigUint[src]

impl Ord for BigUint[src]

impl From<u64> for BigUint[src]

impl From<u8> for BigUint[src]

impl From<u16> for BigUint[src]

impl From<u32> for BigUint[src]

impl From<usize> for BigUint[src]

impl From<BigUint> for BigInt[src]

impl Hash for BigUint[src]

impl Add<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<BigUint> for &'a u8[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'b u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'a BigUint> for &'b u8[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<BigUint> for &'a u16[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'b u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'a BigUint> for &'b u16[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<BigUint> for &'a usize[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'b usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'a BigUint> for &'b usize[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<BigUint> for &'a BigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'b u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'a BigUint> for &'b BigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<BigUint> for &'a DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a> Add<&'a BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'b u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl<'a, 'b> Add<&'a BigUint> for &'b DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Add<u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the + operator.

impl Sub<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<BigUint> for &'a u8[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'b u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'a BigUint> for &'b u8[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<BigUint> for &'a u16[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'b u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'a BigUint> for &'b u16[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<BigUint> for &'a usize[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'b usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'a BigUint> for &'b usize[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<BigUint> for &'a BigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'b u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'a BigUint> for &'b BigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<BigUint> for &'a DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Sub<&'a BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'b u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a, 'b> Sub<&'a BigUint> for &'b DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Sub<BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the - operator.

impl Mul<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<BigUint> for &'a u8[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'b u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'a BigUint> for &'b u8[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<BigUint> for &'a u16[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'b u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'a BigUint> for &'b u16[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<BigUint> for &'a usize[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'b usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'a BigUint> for &'b usize[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<BigUint> for &'a BigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'b u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'a BigUint> for &'b BigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<BigUint> for &'a DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a> Mul<&'a BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'b u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl<'a, 'b> Mul<&'a BigUint> for &'b DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Mul<u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the * operator.

impl Div<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<BigUint> for &'a u8[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'b u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'a BigUint> for &'b u8[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<BigUint> for &'a u16[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'b u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'a BigUint> for &'b u16[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<BigUint> for &'a usize[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'b usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'a BigUint> for &'b usize[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<BigUint> for &'a BigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'b u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'a BigUint> for &'b BigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<BigUint> for &'a DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a> Div<&'a BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'b u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl<'a, 'b> Div<&'a BigUint> for &'b DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Div<BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the / operator.

impl Rem<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<BigUint> for &'a u8[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'b u8> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'a BigUint> for &'b u8[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<u8> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<BigUint> for u8[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<BigUint> for &'a u16[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'b u16> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'a BigUint> for &'b u16[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<u16> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<BigUint> for u16[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<BigUint> for &'a usize[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'b usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'a BigUint> for &'b usize[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<BigUint> for usize[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<BigUint> for &'a BigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'b u32> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'a BigUint> for &'b BigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<BigUint> for &'a DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a> Rem<&'a BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'b u64> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl<'a, 'b> Rem<&'a BigUint> for &'b DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<u32> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<BigUint> for BigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<u64> for BigUint[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Rem<BigUint> for DoubleBigDigit[src]

type Output = BigUint

The resulting type after applying the % operator.

impl Neg for BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl<'a> Neg for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the - operator.

impl AddAssign<BigUint> for BigUint[src]

impl<'a> AddAssign<&'a BigUint> for BigUint[src]

impl AddAssign<u8> for BigUint[src]

impl AddAssign<u16> for BigUint[src]

impl AddAssign<usize> for BigUint[src]

impl AddAssign<u32> for BigUint[src]

impl AddAssign<u64> for BigUint[src]

impl SubAssign<BigUint> for BigUint[src]

impl<'a> SubAssign<&'a BigUint> for BigUint[src]

impl SubAssign<u8> for BigUint[src]

impl SubAssign<u16> for BigUint[src]

impl SubAssign<usize> for BigUint[src]

impl SubAssign<u32> for BigUint[src]

impl SubAssign<u64> for BigUint[src]

impl MulAssign<BigUint> for BigUint[src]

impl<'a> MulAssign<&'a BigUint> for BigUint[src]

impl MulAssign<u8> for BigUint[src]

impl MulAssign<u16> for BigUint[src]

impl MulAssign<usize> for BigUint[src]

impl MulAssign<u32> for BigUint[src]

impl MulAssign<u64> for BigUint[src]

impl DivAssign<BigUint> for BigUint[src]

impl<'a> DivAssign<&'a BigUint> for BigUint[src]

impl DivAssign<u8> for BigUint[src]

impl DivAssign<u16> for BigUint[src]

impl DivAssign<usize> for BigUint[src]

impl DivAssign<u32> for BigUint[src]

impl DivAssign<u64> for BigUint[src]

impl RemAssign<BigUint> for BigUint[src]

impl<'a> RemAssign<&'a BigUint> for BigUint[src]

impl RemAssign<u8> for BigUint[src]

impl RemAssign<u16> for BigUint[src]

impl RemAssign<usize> for BigUint[src]

impl RemAssign<u32> for BigUint[src]

impl RemAssign<BigUint> for usize[src]

impl<'a> RemAssign<&'a BigUint> for usize[src]

impl RemAssign<BigUint> for u64[src]

impl<'a> RemAssign<&'a BigUint> for u64[src]

impl RemAssign<BigUint> for u32[src]

impl<'a> RemAssign<&'a BigUint> for u32[src]

impl RemAssign<BigUint> for u16[src]

impl<'a> RemAssign<&'a BigUint> for u16[src]

impl RemAssign<BigUint> for u8[src]

impl<'a> RemAssign<&'a BigUint> for u8[src]

impl RemAssign<BigUint> for isize[src]

impl<'a> RemAssign<&'a BigUint> for isize[src]

impl RemAssign<BigUint> for i64[src]

impl<'a> RemAssign<&'a BigUint> for i64[src]

impl RemAssign<BigUint> for i32[src]

impl<'a> RemAssign<&'a BigUint> for i32[src]

impl RemAssign<BigUint> for i16[src]

impl<'a> RemAssign<&'a BigUint> for i16[src]

impl RemAssign<BigUint> for i8[src]

impl<'a> RemAssign<&'a BigUint> for i8[src]

impl RemAssign<u64> for BigUint[src]

impl BitAnd<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the & operator.

impl<'a> BitAnd<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the & operator.

impl<'a, 'b> BitAnd<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the & operator.

impl<'a> BitAnd<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the & operator.

impl BitOr<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the | operator.

impl<'a> BitOr<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the | operator.

impl<'a, 'b> BitOr<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the | operator.

impl<'a> BitOr<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the | operator.

impl BitXor<BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the ^ operator.

impl<'a> BitXor<BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the ^ operator.

impl<'a, 'b> BitXor<&'b BigUint> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the ^ operator.

impl<'a> BitXor<&'a BigUint> for BigUint[src]

type Output = BigUint

The resulting type after applying the ^ operator.

impl Shl<usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the << operator.

impl<'a> Shl<usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the << operator.

impl Shr<usize> for BigUint[src]

type Output = BigUint

The resulting type after applying the >> operator.

impl<'a> Shr<usize> for &'a BigUint[src]

type Output = BigUint

The resulting type after applying the >> operator.

impl BitAndAssign<BigUint> for BigUint[src]

impl<'a> BitAndAssign<&'a BigUint> for BigUint[src]

impl BitOrAssign<BigUint> for BigUint[src]

impl<'a> BitOrAssign<&'a BigUint> for BigUint[src]

impl BitXorAssign<BigUint> for BigUint[src]

impl<'a> BitXorAssign<&'a BigUint> for BigUint[src]

impl ShlAssign<usize> for BigUint[src]

impl ShrAssign<usize> for BigUint[src]

impl Debug for BigUint[src]

impl Display for BigUint[src]

impl FromStr for BigUint[src]

type Err = ParseBigIntError

The associated error which can be returned from parsing.

impl Octal for BigUint[src]

impl Binary for BigUint[src]

impl LowerHex for BigUint[src]

impl UpperHex for BigUint[src]

impl Encodable for BigUint[src]

impl Decodable for BigUint[src]

impl Integer for BigUint[src]

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

Calculates the Greatest Common Divisor (GCD) of the number and other.

The result is always positive.

fn lcm(&self, other: &BigUint) -> BigUint[src]

Calculates the Lowest Common Multiple (LCM) of the number and other.

fn divides(&self, other: &BigUint) -> bool[src]

Deprecated, use is_multiple_of instead.

fn is_multiple_of(&self, other: &BigUint) -> bool[src]

Returns true if the number is a multiple of other.

fn is_even(&self) -> bool[src]

Returns true if the number is divisible by 2.

fn is_odd(&self) -> bool[src]

Returns true if the number is not divisible by 2.

impl Zero for BigUint[src]

impl Num for BigUint[src]

type FromStrRadixErr = ParseBigIntError

fn from_str_radix(s: &str, radix: u32) -> Result<BigUint, ParseBigIntError>[src]

Creates and initializes a BigUint.

impl ToPrimitive for BigUint[src]

impl FromPrimitive for BigUint[src]

impl One for BigUint[src]

impl CheckedDiv for BigUint[src]

impl CheckedSub for BigUint[src]

impl CheckedMul for BigUint[src]

impl CheckedAdd for BigUint[src]

impl Unsigned for BigUint[src]

Auto Trait Implementations

impl Send for BigUint

impl Unpin for BigUint

impl Sync for BigUint

impl UnwindSafe for BigUint

impl RefUnwindSafe for BigUint

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

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>, 
[src]

impl<T> NumRef for T where
    T: Num + NumOps<&'r T, T>, 
[src]

impl<T, Base> RefNum<Base> for T where
    T: NumOps<Base, Base> + NumOps<&'r Base, Base>, 
[src]

impl<T, Rhs> NumAssignOps<Rhs> for T where
    T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>, 
[src]

impl<T> NumAssign for T where
    T: Num + NumAssignOps<T>, 
[src]

impl<T> NumAssignRef for T where
    T: NumAssign + NumAssignOps<&'r T>, 
[src]