pub trait CurveCyclewhere
Self::E1: MulAssign<<Self::E2 as CurveGroup>::BaseField>,
Self::E2: MulAssign<<Self::E1 as CurveGroup>::BaseField>,{
type E1: CurveGroup<BaseField = <Self::E2 as PrimeGroup>::ScalarField, ScalarField = <Self::E2 as CurveGroup>::BaseField>;
type E2: CurveGroup;
}Expand description
Wrapper trait representing a cycle of elliptic curves (E1, E2) such that the base field of E1 is the scalar field of E2, and the scalar field of E1 is the base field of E2.
Required Associated Types§
type E1: CurveGroup<BaseField = <Self::E2 as PrimeGroup>::ScalarField, ScalarField = <Self::E2 as CurveGroup>::BaseField>
type E2: CurveGroup
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".