Trait core::num::bignum::FullOps [] [src]

pub trait FullOps {
    fn full_add(self, other: Self, carry: bool) -> (bool, Self);
    fn full_mul(self, other: Self, carry: Self) -> (Self, Self);
    fn full_mul_add(self, other: Self, other2: Self, carry: Self) -> (Self, Self);
    fn full_div_rem(self, other: Self, borrow: Self) -> (Self, Self);
}
Unstable (core_private_bignum)

: internal routines only exposed for testing

Arithmetic operations required by bignums.

Required Methods

fn full_add(self, other: Self, carry: bool) -> (bool, Self)

Unstable (core_private_bignum)

: internal routines only exposed for testing

Returns (carry', v') such that carry' * 2^W + v' = self + other + carry, where W is the number of bits in Self.

fn full_mul(self, other: Self, carry: Self) -> (Self, Self)

Unstable (core_private_bignum)

: internal routines only exposed for testing

Returns (carry', v') such that carry' * 2^W + v' = self * other + carry, where W is the number of bits in Self.

fn full_mul_add(self, other: Self, other2: Self, carry: Self) -> (Self, Self)

Unstable (core_private_bignum)

: internal routines only exposed for testing

Returns (carry', v') such that carry' * 2^W + v' = self * other + other2 + carry, where W is the number of bits in Self.

fn full_div_rem(self, other: Self, borrow: Self) -> (Self, Self)

Unstable (core_private_bignum)

: internal routines only exposed for testing

Returns (quo, rem) such that borrow * 2^W + self = quo * other + rem and 0 <= rem < other, where W is the number of bits in Self.

Implementors