Struct num::BigUint [] [src]

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

Creates and initializes a BigUint.

The digits are in little-endian base 232.

Creates and initializes a BigUint.

The digits are in little-endian base 232.

Creates and initializes a BigUint.

The bytes are in big-endian byte order.

Examples

extern crate num; fn main() { 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()); }
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());Run

Creates and initializes a BigUint.

The bytes are in little-endian byte order.

Returns the byte representation of the BigUint in little-endian byte order.

Examples

extern crate num; fn main() { use num_bigint::BigUint; let i = BigUint::parse_bytes(b"1125", 10).unwrap(); assert_eq!(i.to_bytes_le(), vec![101, 4]); }
use num_bigint::BigUint;

let i = BigUint::parse_bytes(b"1125", 10).unwrap();
assert_eq!(i.to_bytes_le(), vec![101, 4]);Run

Returns the byte representation of the BigUint in big-endian byte order.

Examples

extern crate num; fn main() { use num_bigint::BigUint; let i = BigUint::parse_bytes(b"1125", 10).unwrap(); assert_eq!(i.to_bytes_be(), vec![4, 101]); }
use num_bigint::BigUint;

let i = BigUint::parse_bytes(b"1125", 10).unwrap();
assert_eq!(i.to_bytes_be(), vec![4, 101]);Run

Returns the integer formatted as a string in the given radix. radix must be in the range [2, 36].

Examples

extern crate num; fn main() { use num_bigint::BigUint; let i = BigUint::parse_bytes(b"ff", 16).unwrap(); assert_eq!(i.to_str_radix(16), "ff"); }
use num_bigint::BigUint;

let i = BigUint::parse_bytes(b"ff", 16).unwrap();
assert_eq!(i.to_str_radix(16), "ff");Run

Creates and initializes a BigUint.

Examples

extern crate num; fn main() { 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); }
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);Run

Determines the fewest bits necessary to express the BigUint.

Trait Implementations

impl ToBigInt for BigUint

Converts the value of self to a BigInt.

impl CheckedAdd for BigUint

Adds two numbers, checking for overflow. If overflow happens, None is returned. Read more

impl<'a> Sub<&'a BigUint> for BigUint

impl Sub<BigUint> for BigUint

impl<'a> Sub<BigUint> for &'a BigUint

impl<'a, 'b> Sub<&'b BigUint> for &'a BigUint

impl Num for BigUint

Creates and initializes a BigUint.

impl LowerHex for BigUint

impl ToPrimitive for BigUint

Converts the value of self to an i64.

Converts the value of self to an u64.

Converts the value of self to an f32.

Converts the value of self to an f64.

Converts the value of self to an isize.

Converts the value of self to an i8.

Converts the value of self to an i16.

Converts the value of self to an i32.

Converts the value of self to a usize.

Converts the value of self to an u8.

Converts the value of self to an u16.

Converts the value of self to an u32.

impl<'a, 'b> Div<&'b BigUint> for &'a BigUint

impl Div<BigUint> for BigUint

impl<'a> Div<&'a BigUint> for BigUint

impl<'a> Div<BigUint> for &'a BigUint

impl Integer for BigUint

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

Floored integer division. Read more

Floored integer modulo, satisfying: Read more

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

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

The result is always positive.

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

Deprecated, use is_multiple_of instead.

Returns true if the number is a multiple of other.

Returns true if the number is divisible by 2.

Returns true if the number is not divisible by 2.

impl Shl<usize> for BigUint

impl<'a> Shl<usize> for &'a BigUint

impl CheckedDiv for BigUint

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

impl Neg for BigUint

impl<'a> Neg for &'a BigUint

impl PartialEq<BigUint> for BigUint

impl<'a> BitAnd<&'a BigUint> for BigUint

impl BitAnd<BigUint> for BigUint

impl<'a> BitAnd<BigUint> for &'a BigUint

impl<'a, 'b> BitAnd<&'b BigUint> for &'a BigUint

impl ToBigUint for BigUint

Converts the value of self to a BigUint.

impl Debug for BigUint

impl From<u64> for BigUint

impl From<u8> for BigUint

impl From<u16> for BigUint

impl From<u32> for BigUint

impl From<usize> for BigUint

impl Eq for BigUint

impl Shr<usize> for BigUint

impl<'a> Shr<usize> for &'a BigUint

impl CheckedMul for BigUint

Multiplies two numbers, checking for underflow or overflow. If underflow or overflow happens, None is returned. Read more

impl UpperHex for BigUint

impl Clone for BigUint

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<'a> BitOr<&'a BigUint> for BigUint

impl BitOr<BigUint> for BigUint

impl<'a> BitOr<BigUint> for &'a BigUint

impl<'a, 'b> BitOr<&'b BigUint> for &'a BigUint

impl<'a, 'b> Mul<&'b BigUint> for &'a BigUint

The resulting type after applying the * operator

The method for the * operator

impl Mul<BigUint> for BigUint

The resulting type after applying the * operator

The method for the * operator

impl<'a> Mul<&'a BigUint> for BigUint

The resulting type after applying the * operator

The method for the * operator

impl<'a> Mul<BigUint> for &'a BigUint

The resulting type after applying the * operator

The method for the * operator

impl One for BigUint

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

impl Ord for BigUint

impl Zero for BigUint

Returns the additive identity element of Self, 0. Read more

Returns true if self is equal to the additive identity.

impl Display for BigUint

impl Default for BigUint

impl Decodable for BigUint

impl Hash for BigUint

impl FromPrimitive for BigUint

Convert an i64 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert an u64 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

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

Convert an isize to return an optional value of this type. If the value cannot be represented by this value, the None is returned. Read more

Convert an i8 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert an i16 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert an i32 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert a usize to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert an u8 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert an u16 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert an u32 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

Convert a f32 to return an optional value of this type. If the type cannot be represented by this value, the None is returned. Read more

impl<'a> Add<&'a BigUint> for BigUint

impl Add<BigUint> for BigUint

impl<'a> Add<BigUint> for &'a BigUint

impl<'a, 'b> Add<&'b BigUint> for &'a BigUint

impl Binary for BigUint

impl Unsigned for BigUint

impl PartialOrd<BigUint> for BigUint

impl Encodable for BigUint

impl<'a, 'b> Rem<&'b BigUint> for &'a BigUint

impl Rem<BigUint> for BigUint

impl<'a> Rem<&'a BigUint> for BigUint

impl<'a> Rem<BigUint> for &'a BigUint

impl FromStr for BigUint

impl CheckedSub for BigUint

Subtracts two numbers, checking for underflow. If underflow happens, None is returned. Read more

impl<'a> BitXor<&'a BigUint> for BigUint

impl BitXor<BigUint> for BigUint

impl<'a> BitXor<BigUint> for &'a BigUint

impl<'a, 'b> BitXor<&'b BigUint> for &'a BigUint

impl Octal for BigUint