macro_rules! impl_mont_field_element {
    (
        $curve:tt,
        $fe:tt,
        $bytes:ty,
        $uint:ty,
        $modulus:expr,
        $arr:ty,
        $from_mont:ident,
        $to_mont:ident,
        $add:ident,
        $sub:ident,
        $mul:ident,
        $neg:ident,
        $square:ident
    ) => { ... };
}Expand description
Implements a field element type whose internal representation is in
Montgomery form, providing a combination of trait impls and inherent impls
which are const fn where possible.
Accepts a set of const fn arithmetic operation functions as arguments.
§Inherent impls
const ZERO: Selfconst ONE: Self(multiplicative identity)pub fn from_bytespub fn from_slicepub fn from_uintfn from_uint_uncheckedpub fn to_bytespub fn to_canonicalpub fn is_oddpub fn is_zeropub fn double
NOTE: field implementations must provide their own inherent impls of the following methods in order for the code generated by this macro to compile:
pub fn invertpub fn sqrt
§Trait impls
AsRef<$arr>ConditionallySelectableConstantTimeEqConstantTimeGreaterConstantTimeLessDefaultDefaultIsZeroesEqFieldPartialEq
§Ops
AddAddAssignSubSubAssignMulMulAssignNeg