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.