[−][src]Struct modtype::u64::field::F
A modular arithmetic integer type.
Example
use modtype::u64::field::F; let runtime_mod = 7; #[allow(non_snake_case)] let F = F::factory(runtime_mod); assert_eq!(F(6) + F(1), F(0));
Methods
impl F
[src]
pub fn new(value: u64, modulus: u64) -> Self
[src]
Constructs a new F
.
pub const fn new_unchecked(value: u64, modulus: u64) -> Self
[src]
Constructs a new F
without checking the value.
pub fn factory(modulus: u64) -> impl Fn(u64) -> Self
[src]
Same as move |n| Self::
new
(n, modulus)
.
pub const fn get(self) -> u64
[src]
Gets the inner value.
Trait Implementations
impl PartialOrd<F> for F
[src]
fn partial_cmp(&self, other: &F) -> Option<Ordering>
[src]
fn lt(&self, other: &F) -> bool
[src]
fn le(&self, other: &F) -> bool
[src]
fn gt(&self, other: &F) -> bool
[src]
fn ge(&self, other: &F) -> bool
[src]
impl PartialEq<F> for F
[src]
impl Copy for F
[src]
impl Ord for F
[src]
fn cmp(&self, other: &F) -> Ordering
[src]
fn max(self, other: Self) -> Self
1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
1.21.0[src]
Compares and returns the minimum of two values. Read more
fn clamp(self, min: Self, max: Self) -> Self
[src]
🔬 This is a nightly-only experimental API. (
clamp
)Restrict a value to a certain interval. Read more
impl Eq for F
[src]
impl From<F> for u64
[src]
impl Clone for F
[src]
fn clone(&self) -> F
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Deref for F
[src]
impl Add<F> for F
[src]
impl<'_> Add<F> for &'_ F
[src]
impl<'_> Add<&'_ F> for F
[src]
impl<'_, '_> Add<&'_ F> for &'_ F
[src]
impl Sub<F> for F
[src]
impl<'_> Sub<F> for &'_ F
[src]
impl<'_> Sub<&'_ F> for F
[src]
impl<'_, '_> Sub<&'_ F> for &'_ F
[src]
impl Mul<F> for F
[src]
impl<'_> Mul<F> for &'_ F
[src]
impl<'_> Mul<&'_ F> for F
[src]
impl<'_, '_> Mul<&'_ F> for &'_ F
[src]
impl Div<F> for F
[src]
impl<'_> Div<F> for &'_ F
[src]
impl<'_> Div<&'_ F> for F
[src]
impl<'_, '_> Div<&'_ F> for &'_ F
[src]
impl Rem<F> for F
[src]
impl<'_> Rem<F> for &'_ F
[src]
impl<'_> Rem<&'_ F> for F
[src]
impl<'_, '_> Rem<&'_ F> for &'_ F
[src]
impl Neg for F
[src]
impl<'_> Neg for &'_ F
[src]
impl AddAssign<F> for F
[src]
fn add_assign(&mut self, rhs: Self)
[src]
impl<'_> AddAssign<&'_ F> for F
[src]
fn add_assign(&mut self, rhs: &Self)
[src]
impl SubAssign<F> for F
[src]
fn sub_assign(&mut self, rhs: Self)
[src]
impl<'_> SubAssign<&'_ F> for F
[src]
fn sub_assign(&mut self, rhs: &Self)
[src]
impl MulAssign<F> for F
[src]
fn mul_assign(&mut self, rhs: Self)
[src]
impl<'_> MulAssign<&'_ F> for F
[src]
fn mul_assign(&mut self, rhs: &Self)
[src]
impl DivAssign<F> for F
[src]
fn div_assign(&mut self, rhs: Self)
[src]
impl<'_> DivAssign<&'_ F> for F
[src]
fn div_assign(&mut self, rhs: &Self)
[src]
impl RemAssign<F> for F
[src]
fn rem_assign(&mut self, rhs: Self)
[src]
impl<'_> RemAssign<&'_ F> for F
[src]
fn rem_assign(&mut self, rhs: &Self)
[src]
impl Debug for F
[src]
impl Display for F
[src]
impl CheckedMul for F
[src]
fn checked_mul(&self, rhs: &Self) -> Option<Self>
[src]
impl Inv for F
[src]
impl<'_> Inv for &'_ F
[src]
impl CheckedNeg for F
[src]
fn checked_neg(&self) -> Option<Self>
[src]
impl CheckedAdd for F
[src]
fn checked_add(&self, rhs: &Self) -> Option<Self>
[src]
impl CheckedSub for F
[src]
fn checked_sub(&self, rhs: &Self) -> Option<Self>
[src]
impl CheckedDiv for F
[src]
fn checked_div(&self, rhs: &Self) -> Option<Self>
[src]
impl CheckedRem for F
[src]
fn checked_rem(&self, rhs: &Self) -> Option<Self>
[src]
impl Pow<u8> for F
[src]
impl<'_> Pow<&'_ u8> for F
[src]
impl<'_> Pow<u8> for &'_ F
[src]
impl<'_, '_> Pow<&'_ u8> for &'_ F
[src]
impl Pow<u16> for F
[src]
impl<'_> Pow<&'_ u16> for F
[src]
impl<'_> Pow<u16> for &'_ F
[src]
impl<'_, '_> Pow<&'_ u16> for &'_ F
[src]
impl Pow<u32> for F
[src]
impl<'_> Pow<&'_ u32> for F
[src]
impl<'_> Pow<u32> for &'_ F
[src]
impl<'_, '_> Pow<&'_ u32> for &'_ F
[src]
impl Pow<u64> for F
[src]
impl<'_> Pow<&'_ u64> for F
[src]
impl<'_> Pow<u64> for &'_ F
[src]
impl<'_, '_> Pow<&'_ u64> for &'_ F
[src]
impl Pow<u128> for F
[src]
impl<'_> Pow<&'_ u128> for F
[src]
impl<'_> Pow<u128> for &'_ F
[src]
impl<'_, '_> Pow<&'_ u128> for &'_ F
[src]
impl Pow<usize> for F
[src]
impl<'_> Pow<&'_ usize> for F
[src]
impl<'_> Pow<usize> for &'_ F
[src]
impl<'_, '_> Pow<&'_ usize> for &'_ F
[src]
impl Pow<i8> for F
[src]
impl<'_> Pow<&'_ i8> for F
[src]
impl<'_> Pow<i8> for &'_ F
[src]
impl<'_, '_> Pow<&'_ i8> for &'_ F
[src]
impl Pow<i16> for F
[src]
impl<'_> Pow<&'_ i16> for F
[src]
impl<'_> Pow<i16> for &'_ F
[src]
impl<'_, '_> Pow<&'_ i16> for &'_ F
[src]
impl Pow<i32> for F
[src]
impl<'_> Pow<&'_ i32> for F
[src]
impl<'_> Pow<i32> for &'_ F
[src]
impl<'_, '_> Pow<&'_ i32> for &'_ F
[src]
impl Pow<i64> for F
[src]
impl<'_> Pow<&'_ i64> for F
[src]
impl<'_> Pow<i64> for &'_ F
[src]
impl<'_, '_> Pow<&'_ i64> for &'_ F
[src]
impl Pow<i128> for F
[src]
impl<'_> Pow<&'_ i128> for F
[src]
impl<'_> Pow<i128> for &'_ F
[src]
impl<'_, '_> Pow<&'_ i128> for &'_ F
[src]
impl Pow<isize> for F
[src]
impl<'_> Pow<&'_ isize> for F
[src]
impl<'_> Pow<isize> for &'_ F
[src]
impl<'_, '_> Pow<&'_ isize> for &'_ F
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T, Rhs> NumAssignOps<Rhs> for T where
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
[src]
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
impl<T, Rhs, Output> NumOps<Rhs, Output> for T where
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
[src]
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
impl<T, Base> RefNum<Base> for T where
T: NumOps<Base, Base> + NumOps<&'r Base, Base>,
[src]
T: NumOps<Base, Base> + NumOps<&'r Base, Base>,