Struct modexp::BigInt [] [src]

pub struct BigInt { /* fields omitted */ }

A big signed integer type.

Methods

impl BigInt
[src]

Creates and initializes a BigInt.

The digits are in little-endian base 232.

Creates and initializes a BigInt.

The digits are in little-endian base 232.

Creates and initializes a BigInt.

Creates and initializes a BigInt.

The bytes are in big-endian byte order.

Examples

use num_bigint::{BigInt, Sign};

assert_eq!(BigInt::from_bytes_be(Sign::Plus, b"A"),
           BigInt::parse_bytes(b"65", 10).unwrap());
assert_eq!(BigInt::from_bytes_be(Sign::Plus, b"AA"),
           BigInt::parse_bytes(b"16705", 10).unwrap());
assert_eq!(BigInt::from_bytes_be(Sign::Plus, b"AB"),
           BigInt::parse_bytes(b"16706", 10).unwrap());
assert_eq!(BigInt::from_bytes_be(Sign::Plus, b"Hello world!"),
           BigInt::parse_bytes(b"22405534230753963835153736737", 10).unwrap());

Creates and initializes a BigInt.

The bytes are in little-endian byte order.

Returns the sign and the byte representation of the BigInt in little-endian byte order.

Examples

use num_bigint::{ToBigInt, Sign};

let i = -1125.to_bigint().unwrap();
assert_eq!(i.to_bytes_le(), (Sign::Minus, vec![101, 4]));

Returns the sign and the byte representation of the BigInt in big-endian byte order.

Examples

use num_bigint::{ToBigInt, Sign};

let i = -1125.to_bigint().unwrap();
assert_eq!(i.to_bytes_be(), (Sign::Minus, vec![4, 101]));

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

Examples

use num_bigint::BigInt;

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

Returns the sign of the BigInt as a Sign.

Examples

use num_bigint::{ToBigInt, Sign};

assert_eq!(ToBigInt::to_bigint(&1234).unwrap().sign(), Sign::Plus);
assert_eq!(ToBigInt::to_bigint(&-4321).unwrap().sign(), Sign::Minus);
assert_eq!(ToBigInt::to_bigint(&0).unwrap().sign(), Sign::NoSign);

Creates and initializes a BigInt.

Examples

use num_bigint::{BigInt, ToBigInt};

assert_eq!(BigInt::parse_bytes(b"1234", 10), ToBigInt::to_bigint(&1234));
assert_eq!(BigInt::parse_bytes(b"ABCD", 16), ToBigInt::to_bigint(&0xABCD));
assert_eq!(BigInt::parse_bytes(b"G", 16), None);

Determines the fewest bits necessary to express the BigInt, not including the sign.

Converts this BigInt into a BigUint, if it's not negative.

Trait Implementations

impl Clone for BigInt
[src]

impl ToPrimitive for BigInt
[src]

impl Display for BigInt
[src]

impl PartialOrd<BigInt> for BigInt
[src]

impl Default for BigInt
[src]

impl Signed for BigInt
[src]

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

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

impl Add<BigInt> for BigInt
[src]

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

impl Div<BigInt> for BigInt
[src]

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

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

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

impl Ord for BigInt
[src]

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

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

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

impl Rem<BigInt> for BigInt
[src]

impl Num for BigInt
[src]

Creates and initializes a BigInt.

impl CheckedMul for BigInt
[src]

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

The resulting type after applying the * operator

The method for the * operator

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

The resulting type after applying the * operator

The method for the * operator

impl Mul<BigInt> for BigInt
[src]

The resulting type after applying the * operator

The method for the * operator

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

The resulting type after applying the * operator

The method for the * operator

impl CheckedSub for BigInt
[src]

impl ToBigInt for BigInt
[src]

Converts the value of self to a BigInt.

impl ToBigUint for BigInt
[src]

impl PartialEq<BigInt> for BigInt
[src]

impl Encodable for BigInt
[src]

impl Zero for BigInt
[src]

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

Returns true if self is equal to the additive identity.

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

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

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

impl Sub<BigInt> for BigInt
[src]

impl CheckedDiv for BigInt
[src]

impl CheckedAdd for BigInt
[src]

impl LowerHex for BigInt
[src]

impl UpperHex for BigInt
[src]

impl Octal for BigInt
[src]

impl From<u8> for BigInt
[src]

impl From<u32> for BigInt
[src]

impl From<usize> for BigInt
[src]

impl From<i8> for BigInt
[src]

impl From<u64> for BigInt
[src]

impl From<i64> for BigInt
[src]

impl From<u16> for BigInt
[src]

impl From<BigUint> for BigInt
[src]

impl From<i32> for BigInt
[src]

impl From<isize> for BigInt
[src]

impl From<i16> for BigInt
[src]

impl FromStr for BigInt
[src]

impl Shl<usize> for BigInt
[src]

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

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

impl Shr<usize> for BigInt
[src]

impl Integer for BigInt
[src]

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 Decodable for BigInt
[src]

impl Eq for BigInt
[src]

impl One for BigInt
[src]

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

impl Hash for BigInt
[src]

impl FromPrimitive for BigInt
[src]

impl Binary for BigInt
[src]

impl Debug for BigInt
[src]

impl Neg for BigInt
[src]

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