Struct ramp::ll::limb_ptr::LimbsMut [] [src]

pub struct LimbsMut {
    // some fields omitted
}

A version of *mut Limb that is bounds-checked when debug assertions are on

Methods

impl LimbsMut
[src]

unsafe fn new(base: *mut Limb, start: i32, end: i32) -> LimbsMut

Create a new instance, pointing at base and valid from base.offset(start) to base.offset(end).

unsafe fn offset(self, x: isize) -> LimbsMut

Move self to point to the xth Limbs from the current location.

impl LimbsMut
[src]

fn as_const(self) -> Limbs

View the LimbsMut as a Limbs (an explicit *const Limb -> *mut Limb conversion)

Methods from Deref<Target=Limb>

const BITS: usize = 64

const B: Limb = Limb(1 << Limb::BITS / 2)

fn high_part(self) -> Limb

Returns the high half of the limb

fn low_part(self) -> Limb

Returns the low half of the limb

fn add_overflow(self, other: Limb) -> (Limb, bool)

Performs self + other, returning the result and whether or not the addition overflowed

fn sub_overflow(self, other: Limb) -> (Limb, bool)

Performs self - other, returning the result and whether or not the subtraction overflowed

fn mul_lo(self, other: Limb) -> Limb

Performs self * other returning the lower half of the product

fn mul_hi(self, other: Limb) -> Limb

Performs self * other returning the higher half of the product

fn mul_hilo(self, other: Limb) -> (Limb, Limb)

Performs self * other returning the two-limb result as (high, low).

fn invert(self) -> Limb

fn high_bit_set(self) -> bool

Returns whether or not the highest bit in the limb is set.

Division algorithms often require the highest limb of the divisor to be d >= BASE/2.

fn leading_zeros(self) -> BaseInt

Returns the number of leading zeros in the limb

fn trailing_zeros(self) -> BaseInt

Returns the number of trailing zeros in the limb

Trait Implementations

impl PartialEq for LimbsMut
[src]

fn eq(&self, other: &LimbsMut) -> bool

fn ne(&self, other: &Rhs) -> bool
1.0.0

impl PartialOrd for LimbsMut
[src]

fn partial_cmp(&self, other: &LimbsMut) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool
1.0.0

fn le(&self, other: &Rhs) -> bool
1.0.0

fn gt(&self, other: &Rhs) -> bool
1.0.0

fn ge(&self, other: &Rhs) -> bool
1.0.0

impl Eq for LimbsMut
[src]

impl Ord for LimbsMut
[src]

fn cmp(&self, other: &LimbsMut) -> Ordering

impl Deref for LimbsMut
[src]

type Target = Limb

fn deref(&self) -> &Limb

impl DerefMut for LimbsMut
[src]

fn deref_mut(&mut self) -> &mut Limb

Derived Implementations

impl Clone for LimbsMut
[src]

fn clone(&self) -> LimbsMut

fn clone_from(&mut self, source: &Self)
1.0.0

impl Copy for LimbsMut
[src]