pub trait NegModPowerOf2Assign {
// Required method
fn neg_mod_power_of_2_assign(&mut self, other: u64);
}Expand description
Divides the negative of a number by $2^k$, replacing the number by the remainder.
If the quotient were computed, the quotient and remainder would satisfy $x = q2^k - r$ and $0 \leq r < 2^k$.
Required Methods§
fn neg_mod_power_of_2_assign(&mut self, other: u64)
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl NegModPowerOf2Assign for u8
impl NegModPowerOf2Assign for u8
Source§fn neg_mod_power_of_2_assign(&mut self, pow: u64)
fn neg_mod_power_of_2_assign(&mut self, pow: u64)
Divides the negative of a number by $2^k$, returning just the remainder.
If the quotient were computed, the quotient and remainder would satisfy $x = q2^k - r$ and $0 \leq r < 2^k$.
$$ x \gets 2^k\left \lceil \frac{x}{2^k} \right \rceil - x. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if self is nonzero and pow is greater than Self::WIDTH.
§Examples
See here.
Source§impl NegModPowerOf2Assign for u16
impl NegModPowerOf2Assign for u16
Source§fn neg_mod_power_of_2_assign(&mut self, pow: u64)
fn neg_mod_power_of_2_assign(&mut self, pow: u64)
Divides the negative of a number by $2^k$, returning just the remainder.
If the quotient were computed, the quotient and remainder would satisfy $x = q2^k - r$ and $0 \leq r < 2^k$.
$$ x \gets 2^k\left \lceil \frac{x}{2^k} \right \rceil - x. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if self is nonzero and pow is greater than Self::WIDTH.
§Examples
See here.
Source§impl NegModPowerOf2Assign for u32
impl NegModPowerOf2Assign for u32
Source§fn neg_mod_power_of_2_assign(&mut self, pow: u64)
fn neg_mod_power_of_2_assign(&mut self, pow: u64)
Divides the negative of a number by $2^k$, returning just the remainder.
If the quotient were computed, the quotient and remainder would satisfy $x = q2^k - r$ and $0 \leq r < 2^k$.
$$ x \gets 2^k\left \lceil \frac{x}{2^k} \right \rceil - x. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if self is nonzero and pow is greater than Self::WIDTH.
§Examples
See here.
Source§impl NegModPowerOf2Assign for u64
impl NegModPowerOf2Assign for u64
Source§fn neg_mod_power_of_2_assign(&mut self, pow: u64)
fn neg_mod_power_of_2_assign(&mut self, pow: u64)
Divides the negative of a number by $2^k$, returning just the remainder.
If the quotient were computed, the quotient and remainder would satisfy $x = q2^k - r$ and $0 \leq r < 2^k$.
$$ x \gets 2^k\left \lceil \frac{x}{2^k} \right \rceil - x. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if self is nonzero and pow is greater than Self::WIDTH.
§Examples
See here.
Source§impl NegModPowerOf2Assign for u128
impl NegModPowerOf2Assign for u128
Source§fn neg_mod_power_of_2_assign(&mut self, pow: u64)
fn neg_mod_power_of_2_assign(&mut self, pow: u64)
Divides the negative of a number by $2^k$, returning just the remainder.
If the quotient were computed, the quotient and remainder would satisfy $x = q2^k - r$ and $0 \leq r < 2^k$.
$$ x \gets 2^k\left \lceil \frac{x}{2^k} \right \rceil - x. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if self is nonzero and pow is greater than Self::WIDTH.
§Examples
See here.
Source§impl NegModPowerOf2Assign for usize
impl NegModPowerOf2Assign for usize
Source§fn neg_mod_power_of_2_assign(&mut self, pow: u64)
fn neg_mod_power_of_2_assign(&mut self, pow: u64)
Divides the negative of a number by $2^k$, returning just the remainder.
If the quotient were computed, the quotient and remainder would satisfy $x = q2^k - r$ and $0 \leq r < 2^k$.
$$ x \gets 2^k\left \lceil \frac{x}{2^k} \right \rceil - x. $$
§Worst-case complexity
Constant time and additional memory.
§Panics
Panics if self is nonzero and pow is greater than Self::WIDTH.
§Examples
See here.