Struct crypto_bigint::modular::runtime_mod::DynResidueParams
source · pub struct DynResidueParams<const LIMBS: usize> { /* private fields */ }Expand description
The parameters to efficiently go to and from the Montgomery form for an odd modulus provided at runtime.
Implementations§
source§impl<const LIMBS: usize> DynResidueParams<LIMBS>
impl<const LIMBS: usize> DynResidueParams<LIMBS>
sourcepub const fn new(modulus: &Uint<LIMBS>) -> Self
pub const fn new(modulus: &Uint<LIMBS>) -> Self
Instantiates a new set of ResidueParams representing the given modulus, which must be odd.
If modulus is not odd, this function will panic; use new_checked if you want to be able to detect an invalid modulus.
sourcepub fn new_checked(modulus: &Uint<LIMBS>) -> CtOption<Self>
👎Deprecated since 0.5.3: This functionality will be moved to new in a future release.
pub fn new_checked(modulus: &Uint<LIMBS>) -> CtOption<Self>
new in a future release.Instantiates a new set of ResidueParams representing the given modulus if it is odd.
Returns a CtOption that is None if the provided modulus is not odd; this is a safer version of new, which can panic.
sourcepub const fn modulus(&self) -> &Uint<LIMBS>
pub const fn modulus(&self) -> &Uint<LIMBS>
Returns the modulus which was used to initialize these parameters.
sourcepub const fn from_residue_params<P>() -> Selfwhere
P: ResidueParams<LIMBS>,
pub const fn from_residue_params<P>() -> Selfwhere
P: ResidueParams<LIMBS>,
Create DynResidueParams corresponding to a ResidueParams.
Trait Implementations§
source§impl<const LIMBS: usize> Clone for DynResidueParams<LIMBS>
impl<const LIMBS: usize> Clone for DynResidueParams<LIMBS>
source§fn clone(&self) -> DynResidueParams<LIMBS>
fn clone(&self) -> DynResidueParams<LIMBS>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl<const LIMBS: usize> ConditionallySelectable for DynResidueParams<LIMBS>
impl<const LIMBS: usize> ConditionallySelectable for DynResidueParams<LIMBS>
source§impl<const LIMBS: usize> ConstantTimeEq for DynResidueParams<LIMBS>
impl<const LIMBS: usize> ConstantTimeEq for DynResidueParams<LIMBS>
source§impl<const LIMBS: usize> Debug for DynResidueParams<LIMBS>
impl<const LIMBS: usize> Debug for DynResidueParams<LIMBS>
source§impl<const LIMBS: usize> PartialEq for DynResidueParams<LIMBS>
impl<const LIMBS: usize> PartialEq for DynResidueParams<LIMBS>
source§fn eq(&self, other: &DynResidueParams<LIMBS>) -> bool
fn eq(&self, other: &DynResidueParams<LIMBS>) -> bool
self and other values to be equal, and is used
by ==.impl<const LIMBS: usize> Copy for DynResidueParams<LIMBS>
impl<const LIMBS: usize> Eq for DynResidueParams<LIMBS>
impl<const LIMBS: usize> StructuralPartialEq for DynResidueParams<LIMBS>
Auto Trait Implementations§
impl<const LIMBS: usize> Freeze for DynResidueParams<LIMBS>
impl<const LIMBS: usize> RefUnwindSafe for DynResidueParams<LIMBS>
impl<const LIMBS: usize> Send for DynResidueParams<LIMBS>
impl<const LIMBS: usize> Sync for DynResidueParams<LIMBS>
impl<const LIMBS: usize> Unpin for DynResidueParams<LIMBS>
impl<const LIMBS: usize> UnwindSafe for DynResidueParams<LIMBS>
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
source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.