Skip to main content

CeilingModPowerOf2Assign

Trait CeilingModPowerOf2Assign 

Source
pub trait CeilingModPowerOf2Assign {
    // Required method
    fn ceiling_mod_power_of_2_assign(&mut self, other: u64);
}
Expand description

Divides a number by $2^k$, replacing the number by the remainder. The remainder is non-positive.

If the quotient were computed, the quotient and remainder would satisfy $x = q2^k + r$ and $0 \leq -r < 2^k$.

Required Methods§

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl CeilingModPowerOf2Assign for i8

Source§

fn ceiling_mod_power_of_2_assign(&mut self, pow: u64)

Divides a number by $2^k$, replacing the first number by the remainder. The remainder is non-positive.

If the quotient were computed, the quotient and remainder would satisfy $x = q2^k + r$ and $0 \leq -r < 2^k$.

$$ x \gets x - 2^k\left \lceil\frac{x}{2^k} \right \rceil. $$

§Worst-case complexity

Constant time and additional memory.

§Panics

Panics if self is positive or Self::MIN, and pow is greater than or equal to Self::WIDTH.

§Examples

See here.

Source§

impl CeilingModPowerOf2Assign for i16

Source§

fn ceiling_mod_power_of_2_assign(&mut self, pow: u64)

Divides a number by $2^k$, replacing the first number by the remainder. The remainder is non-positive.

If the quotient were computed, the quotient and remainder would satisfy $x = q2^k + r$ and $0 \leq -r < 2^k$.

$$ x \gets x - 2^k\left \lceil\frac{x}{2^k} \right \rceil. $$

§Worst-case complexity

Constant time and additional memory.

§Panics

Panics if self is positive or Self::MIN, and pow is greater than or equal to Self::WIDTH.

§Examples

See here.

Source§

impl CeilingModPowerOf2Assign for i32

Source§

fn ceiling_mod_power_of_2_assign(&mut self, pow: u64)

Divides a number by $2^k$, replacing the first number by the remainder. The remainder is non-positive.

If the quotient were computed, the quotient and remainder would satisfy $x = q2^k + r$ and $0 \leq -r < 2^k$.

$$ x \gets x - 2^k\left \lceil\frac{x}{2^k} \right \rceil. $$

§Worst-case complexity

Constant time and additional memory.

§Panics

Panics if self is positive or Self::MIN, and pow is greater than or equal to Self::WIDTH.

§Examples

See here.

Source§

impl CeilingModPowerOf2Assign for i64

Source§

fn ceiling_mod_power_of_2_assign(&mut self, pow: u64)

Divides a number by $2^k$, replacing the first number by the remainder. The remainder is non-positive.

If the quotient were computed, the quotient and remainder would satisfy $x = q2^k + r$ and $0 \leq -r < 2^k$.

$$ x \gets x - 2^k\left \lceil\frac{x}{2^k} \right \rceil. $$

§Worst-case complexity

Constant time and additional memory.

§Panics

Panics if self is positive or Self::MIN, and pow is greater than or equal to Self::WIDTH.

§Examples

See here.

Source§

impl CeilingModPowerOf2Assign for i128

Source§

fn ceiling_mod_power_of_2_assign(&mut self, pow: u64)

Divides a number by $2^k$, replacing the first number by the remainder. The remainder is non-positive.

If the quotient were computed, the quotient and remainder would satisfy $x = q2^k + r$ and $0 \leq -r < 2^k$.

$$ x \gets x - 2^k\left \lceil\frac{x}{2^k} \right \rceil. $$

§Worst-case complexity

Constant time and additional memory.

§Panics

Panics if self is positive or Self::MIN, and pow is greater than or equal to Self::WIDTH.

§Examples

See here.

Source§

impl CeilingModPowerOf2Assign for isize

Source§

fn ceiling_mod_power_of_2_assign(&mut self, pow: u64)

Divides a number by $2^k$, replacing the first number by the remainder. The remainder is non-positive.

If the quotient were computed, the quotient and remainder would satisfy $x = q2^k + r$ and $0 \leq -r < 2^k$.

$$ x \gets x - 2^k\left \lceil\frac{x}{2^k} \right \rceil. $$

§Worst-case complexity

Constant time and additional memory.

§Panics

Panics if self is positive or Self::MIN, and pow is greater than or equal to Self::WIDTH.

§Examples

See here.

Implementors§