#[repr(transparent)]pub struct Num<Fp: PrimeField>(pub Fp);Tuple Fields§
§0: FpImplementations§
Source§impl<Fp: PrimeField> Num<Fp>
impl<Fp: PrimeField> Num<Fp>
pub const ZERO: Self
pub const ONE: Self
pub const MODULUS: NumRepr<Fp::Inner>
pub const MODULUS_BITS: u32 = Fp::MODULUS_BITS
pub fn is_even(&self) -> bool
pub fn is_odd(&self) -> bool
pub fn double(self) -> Self
pub fn square(self) -> Self
pub fn new(n: Fp) -> Self
pub fn checked_inv(self) -> Option<Self>
pub fn is_zero(self) -> bool
pub fn from_uint(v: NumRepr<Fp::Inner>) -> Option<Self>
pub fn from_uint_reduced(v: NumRepr<Fp::Inner>) -> Self
pub fn from_mont_uint(v: NumRepr<Fp::Inner>) -> Option<Self>
pub fn from_uint_unchecked(v: NumRepr<Fp::Inner>) -> Self
pub fn from_mont_uint_unchecked(v: NumRepr<Fp::Inner>) -> Self
pub fn sqrt(&self) -> Option<Self>
pub fn even_sqrt(&self) -> Option<Self>
pub fn to_uint(&self) -> NumRepr<Fp::Inner>
pub fn to_mont_uint(&self) -> NumRepr<Fp::Inner>
pub fn as_mont_uint(&self) -> &NumRepr<Fp::Inner>
pub fn as_mont_uint_mut(&mut self) -> &mut NumRepr<Fp::Inner>
pub fn to_other<Fq: PrimeField>(&self) -> Option<Num<Fq>>
pub fn to_other_reduced<Fq: PrimeField>(&self) -> Num<Fq>
Trait Implementations§
Source§impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Add<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Add<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
Source§impl<U: PrimeField> Add for Num<U>
impl<U: PrimeField> Add for Num<U>
Source§impl<'macro_lifetime, U: PrimeField> AddAssign<&'macro_lifetime Num<U>> for Num<U>
impl<'macro_lifetime, U: PrimeField> AddAssign<&'macro_lifetime Num<U>> for Num<U>
Source§fn add_assign(&mut self, other: &'macro_lifetime Num<U>)
fn add_assign(&mut self, other: &'macro_lifetime Num<U>)
Performs the
+= operation. Read moreSource§impl<U: PrimeField> AddAssign for Num<U>
impl<U: PrimeField> AddAssign for Num<U>
Source§fn add_assign(&mut self, other: Num<U>)
fn add_assign(&mut self, other: Num<U>)
Performs the
+= operation. Read moreSource§impl<Fp: PrimeField> BitIterBE for Num<Fp>
impl<Fp: PrimeField> BitIterBE for Num<Fp>
type Iter = BitIteratorBE<<Fp as PrimeFieldParams>::Inner>
fn bit_iter_be(&self) -> Self::Iter
Source§impl<Fp: PrimeField> BitIterLE for Num<Fp>
impl<Fp: PrimeField> BitIterLE for Num<Fp>
type Iter = BitIteratorLE<<Fp as PrimeFieldParams>::Inner>
fn bit_iter_le(&self) -> Self::Iter
Source§impl<Fp: PrimeField> BorshDeserialize for Num<Fp>
impl<Fp: PrimeField> BorshDeserialize for Num<Fp>
Source§impl<Fp: PrimeField> BorshSerialize for Num<Fp>
impl<Fp: PrimeField> BorshSerialize for Num<Fp>
Source§impl<Fp: PrimeField> Debug for Num<Fp>
impl<Fp: PrimeField> Debug for Num<Fp>
Source§impl<'de, Fp: PrimeField> Deserialize<'de> for Num<Fp>
impl<'de, Fp: PrimeField> Deserialize<'de> for Num<Fp>
Source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
Deserialize this value from the given Serde deserializer. Read more
Source§impl<Fp: PrimeField> Display for Num<Fp>
impl<Fp: PrimeField> Display for Num<Fp>
Source§impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Div<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Div<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
Source§impl<U: PrimeField> Div for Num<U>
impl<U: PrimeField> Div for Num<U>
Source§impl<'macro_lifetime, U: PrimeField> DivAssign<&'macro_lifetime Num<U>> for Num<U>
impl<'macro_lifetime, U: PrimeField> DivAssign<&'macro_lifetime Num<U>> for Num<U>
Source§fn div_assign(&mut self, other: &'macro_lifetime Num<U>)
fn div_assign(&mut self, other: &'macro_lifetime Num<U>)
Performs the
/= operation. Read moreSource§impl<U: PrimeField> DivAssign for Num<U>
impl<U: PrimeField> DivAssign for Num<U>
Source§fn div_assign(&mut self, other: Num<U>)
fn div_assign(&mut self, other: Num<U>)
Performs the
/= operation. Read moreSource§impl<Fp: PrimeField> FromStr for Num<Fp>
impl<Fp: PrimeField> FromStr for Num<Fp>
Source§impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Mul<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Mul<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
Source§impl<U: PrimeField> Mul for Num<U>
impl<U: PrimeField> Mul for Num<U>
Source§impl<'macro_lifetime, U: PrimeField> MulAssign<&'macro_lifetime Num<U>> for Num<U>
impl<'macro_lifetime, U: PrimeField> MulAssign<&'macro_lifetime Num<U>> for Num<U>
Source§fn mul_assign(&mut self, other: &'macro_lifetime Num<U>)
fn mul_assign(&mut self, other: &'macro_lifetime Num<U>)
Performs the
*= operation. Read moreSource§impl<U: PrimeField> MulAssign for Num<U>
impl<U: PrimeField> MulAssign for Num<U>
Source§fn mul_assign(&mut self, other: Num<U>)
fn mul_assign(&mut self, other: Num<U>)
Performs the
*= operation. Read moreSource§impl<'macro_lifetime, U: PrimeField> Neg for &'macro_lifetime Num<U>
impl<'macro_lifetime, U: PrimeField> Neg for &'macro_lifetime Num<U>
Source§impl<U: PrimeField> Neg for Num<U>
impl<U: PrimeField> Neg for Num<U>
Source§impl<Fp: PrimeField> PartialEq for Num<Fp>
impl<Fp: PrimeField> PartialEq for Num<Fp>
Source§impl<Fp: PrimeField> RefCast for Num<Fp>
impl<Fp: PrimeField> RefCast for Num<Fp>
Source§impl<Fp: PrimeField> SeedBoxGen<Num<Fp>> for SeedboxChaCha20
impl<Fp: PrimeField> SeedBoxGen<Num<Fp>> for SeedboxChaCha20
Source§impl<Fp: PrimeField> Serialize for Num<Fp>
impl<Fp: PrimeField> Serialize for Num<Fp>
Source§impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Sub<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
impl<'macro_lifetime_a, 'macro_lifetime_b, U: PrimeField> Sub<&'macro_lifetime_a Num<U>> for &'macro_lifetime_b Num<U>
Source§impl<U: PrimeField> Sub for Num<U>
impl<U: PrimeField> Sub for Num<U>
Source§impl<'macro_lifetime, U: PrimeField> SubAssign<&'macro_lifetime Num<U>> for Num<U>
impl<'macro_lifetime, U: PrimeField> SubAssign<&'macro_lifetime Num<U>> for Num<U>
Source§fn sub_assign(&mut self, other: &'macro_lifetime Num<U>)
fn sub_assign(&mut self, other: &'macro_lifetime Num<U>)
Performs the
-= operation. Read moreSource§impl<U: PrimeField> SubAssign for Num<U>
impl<U: PrimeField> SubAssign for Num<U>
Source§fn sub_assign(&mut self, other: Num<U>)
fn sub_assign(&mut self, other: Num<U>)
Performs the
-= operation. Read moreimpl<Fp: Copy + PrimeField> Copy for Num<Fp>
impl<Fp: PrimeField> Eq for Num<Fp>
Auto Trait Implementations§
impl<Fp> Freeze for Num<Fp>where
Fp: Freeze,
impl<Fp> RefUnwindSafe for Num<Fp>where
Fp: RefUnwindSafe,
impl<Fp> Send for Num<Fp>where
Fp: Send,
impl<Fp> Sync for Num<Fp>where
Fp: Sync,
impl<Fp> Unpin for Num<Fp>where
Fp: Unpin,
impl<Fp> UnwindSafe for Num<Fp>where
Fp: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more