pub trait AccumulationSchemeSDK:
for<'a> PolynomialCommitmentScheme<G1Affine, Rc<Halo2Loader<'a>>, VerifyingKey = Svk, Output = KzgAccumulator<G1Affine, Rc<Halo2Loader<'a>>>>
+ for<'a> AccumulationScheme<G1Affine, Rc<Halo2Loader<'a>>, Accumulator = KzgAccumulator<G1Affine, Rc<Halo2Loader<'a>>>, VerifyingKey = KzgAsVerifyingKey>
+ PolynomialCommitmentScheme<G1Affine, NativeLoader, VerifyingKey = Svk, Output = KzgAccumulator<G1Affine, NativeLoader>>
+ AccumulationScheme<G1Affine, NativeLoader, Accumulator = KzgAccumulator<G1Affine, NativeLoader>, VerifyingKey = KzgAsVerifyingKey>
+ AccumulationSchemeProver<G1Affine, ProvingKey = KzgAsProvingKey<G1Affine>> { }
Expand description
SDK trait which makes it possible for other project directly use the AggregationCircuit with any `AccumulationScheme’ like GWC & SHPLONK
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.