Struct ramp::ll::limb_ptr::Limbs
[−]
[src]
pub struct Limbs { /* fields omitted */ }
A version of *const Limb
that is bounds-checked when debug assertions are on
Methods
impl Limbs
[src]
unsafe fn new(base: *const Limb, start: i32, end: i32) -> Limbs
[src]
Create a new instance, pointing at base
and valid
from base.offset(start)
to base.offset(end)
.
unsafe fn offset(self, x: isize) -> Limbs
[src]
Move self
to point to the x
th Limbs from the
current location.
Methods from Deref<Target = Limb>
const BITS: usize
const B: Limb
fn high_part(self) -> Limb
[src]
Returns the high half of the limb
fn low_part(self) -> Limb
[src]
Returns the low half of the limb
fn add_overflow(self, other: Limb) -> (Limb, bool)
[src]
Performs self + other
, returning the result and whether or not the addition overflowed
fn sub_overflow(self, other: Limb) -> (Limb, bool)
[src]
Performs self - other
, returning the result and whether or not the subtraction overflowed
fn mul_lo(self, other: Limb) -> Limb
[src]
Performs self * other
returning the lower half of the product
fn mul_hi(self, other: Limb) -> Limb
[src]
Performs self * other
returning the higher half of the product
fn mul_hilo(self, other: Limb) -> (Limb, Limb)
[src]
Performs self * other
returning the two-limb result as (high, low).
fn invert(self) -> Limb
[src]
fn high_bit_set(self) -> bool
[src]
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
[src]
Returns the number of leading zeros in the limb
fn trailing_zeros(self) -> BaseInt
[src]
Returns the number of trailing zeros in the limb
Trait Implementations
impl Copy for Limbs
[src]
impl Clone for Limbs
[src]
fn clone(&self) -> Limbs
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for Limbs
[src]
impl PartialEq for Limbs
[src]
fn eq(&self, other: &Limbs) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests for !=
.
impl PartialOrd for Limbs
[src]
fn partial_cmp(&self, other: &Limbs) -> Option<Ordering>
[src]
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Eq for Limbs
[src]
impl Ord for Limbs
[src]
fn cmp(&self, other: &Limbs) -> Ordering
[src]
This method returns an Ordering
between self
and other
. Read more
fn max(self, other: Self) -> Self
[src]
ord_max_min
)Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
[src]
ord_max_min
)Compares and returns the minimum of two values. Read more