Struct ark_bls12_381_ext::Config
source · pub struct Config<H: CurveHooks>(/* private fields */);
Trait Implementations§
source§impl<H: CurveHooks> Bls12Config for Config<H>
impl<H: CurveHooks> Bls12Config for Config<H>
source§fn multi_miller_loop(
g1: impl IntoIterator<Item = impl Into<G1Prepared<Self>>>,
g2: impl IntoIterator<Item = impl Into<G2Prepared<Self>>>
) -> MillerLoopOutput<Bls12<Self>>
fn multi_miller_loop( g1: impl IntoIterator<Item = impl Into<G1Prepared<Self>>>, g2: impl IntoIterator<Item = impl Into<G2Prepared<Self>>> ) -> MillerLoopOutput<Bls12<Self>>
Multi Miller loop jumping into the user-defined multi_miller_loop
hook.
For any internal error returns TargetField::zero()
.
source§fn final_exponentiation(
target: MillerLoopOutput<Bls12<Self>>
) -> Option<PairingOutput<Bls12<Self>>>
fn final_exponentiation( target: MillerLoopOutput<Bls12<Self>> ) -> Option<PairingOutput<Bls12<Self>>>
Final exponentiation jumping into the user-defined final_exponentiation
hook.
For any internal error returns None
.
source§const X_IS_NEGATIVE: bool = true
const X_IS_NEGATIVE: bool = true
Is
Self::X
negative?source§const TWIST_TYPE: TwistType = <ArkConfig as ArkBls12Config>::TWIST_TYPE
const TWIST_TYPE: TwistType = <ArkConfig as ArkBls12Config>::TWIST_TYPE
What kind of twist is this?
type Fp = <Config as Bls12Config>::Fp
type Fp2Config = <Config as Bls12Config>::Fp2Config
type Fp6Config = <Config as Bls12Config>::Fp6Config
type Fp12Config = <Config as Bls12Config>::Fp12Config
type G1Config = Config<H>
type G2Config = Config<H>
impl<H: Copy + CurveHooks> Copy for Config<H>
Auto Trait Implementations§
impl<H> RefUnwindSafe for Config<H>
impl<H> Send for Config<H>
impl<H> Sync for Config<H>
impl<H> Unpin for Config<H>
impl<H> UnwindSafe for Config<H>
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