pub trait NthRoot: Copy + Mul<Output = Self> + Ord + Shl<usize, Output = Self> + Shr<usize, Output = Self> + Div<Output = Self> + Add<Output = Self> + Sub<Output = Self> + From<u64> + Debug {
const BITS: usize;
const MAX: Self;
// Required methods
fn checked_mul(self, other: Self) -> Option<Self>;
fn mul_usize(self, other: usize) -> Self;
fn div_usize(self, other: usize) -> Self;
fn bits(self) -> usize;
fn init_root<N: RootDegree>(self) -> InitRoot<Self>;
// Provided methods
fn nth_root<N: RootDegree>(self) -> Self { ... }
fn truncate(self, next_bits: usize, multiply: usize) -> (Self, usize) { ... }
}
Required Associated Constants§
Required Methods§
fn checked_mul(self, other: Self) -> Option<Self>
fn mul_usize(self, other: usize) -> Self
fn div_usize(self, other: usize) -> Self
fn bits(self) -> usize
fn init_root<N: RootDegree>(self) -> InitRoot<Self>
Provided Methods§
fn nth_root<N: RootDegree>(self) -> Self
fn truncate(self, next_bits: usize, multiply: usize) -> (Self, usize)
Object Safety§
This trait is not object safe.