pub struct Context<'a, const FULL_ROUNDS: usize, G: KimchiCurve<FULL_ROUNDS>, OpeningProof: OpenProof<G, FULL_ROUNDS>, SRS> {
pub verifier_index: &'a VerifierIndex<FULL_ROUNDS, G, SRS>,
pub proof: &'a ProverProof<G, OpeningProof, FULL_ROUNDS>,
pub public_input: &'a [G::ScalarField],
}Fields§
§verifier_index: &'a VerifierIndex<FULL_ROUNDS, G, SRS>The VerifierIndex associated to the proof
proof: &'a ProverProof<G, OpeningProof, FULL_ROUNDS>The proof to verify
public_input: &'a [G::ScalarField]The public input used in the creation of the proof
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'a, const FULL_ROUNDS: usize, G, OpeningProof, SRS> Freeze for Context<'a, FULL_ROUNDS, G, OpeningProof, SRS>where
&'a VerifierIndex<FULL_ROUNDS, G, SRS>: Freeze,
&'a ProverProof<G, OpeningProof, FULL_ROUNDS>: Freeze,
&'a [<G as AffineRepr>::ScalarField]: Freeze,
impl<'a, const FULL_ROUNDS: usize, G, OpeningProof, SRS> RefUnwindSafe for Context<'a, FULL_ROUNDS, G, OpeningProof, SRS>where
&'a VerifierIndex<FULL_ROUNDS, G, SRS>: RefUnwindSafe,
&'a ProverProof<G, OpeningProof, FULL_ROUNDS>: RefUnwindSafe,
&'a [<G as AffineRepr>::ScalarField]: RefUnwindSafe,
impl<'a, const FULL_ROUNDS: usize, G, OpeningProof, SRS> Send for Context<'a, FULL_ROUNDS, G, OpeningProof, SRS>where
&'a VerifierIndex<FULL_ROUNDS, G, SRS>: Send,
&'a ProverProof<G, OpeningProof, FULL_ROUNDS>: Send,
&'a [<G as AffineRepr>::ScalarField]: Send,
impl<'a, const FULL_ROUNDS: usize, G, OpeningProof, SRS> Sync for Context<'a, FULL_ROUNDS, G, OpeningProof, SRS>where
&'a VerifierIndex<FULL_ROUNDS, G, SRS>: Sync,
&'a ProverProof<G, OpeningProof, FULL_ROUNDS>: Sync,
&'a [<G as AffineRepr>::ScalarField]: Sync,
impl<'a, const FULL_ROUNDS: usize, G, OpeningProof, SRS> Unpin for Context<'a, FULL_ROUNDS, G, OpeningProof, SRS>where
&'a VerifierIndex<FULL_ROUNDS, G, SRS>: Unpin,
&'a ProverProof<G, OpeningProof, FULL_ROUNDS>: Unpin,
&'a [<G as AffineRepr>::ScalarField]: Unpin,
impl<'a, const FULL_ROUNDS: usize, G, OpeningProof, SRS> UnsafeUnpin for Context<'a, FULL_ROUNDS, G, OpeningProof, SRS>where
&'a VerifierIndex<FULL_ROUNDS, G, SRS>: UnsafeUnpin,
&'a ProverProof<G, OpeningProof, FULL_ROUNDS>: UnsafeUnpin,
&'a [<G as AffineRepr>::ScalarField]: UnsafeUnpin,
impl<'a, const FULL_ROUNDS: usize, G, OpeningProof, SRS> UnwindSafe for Context<'a, FULL_ROUNDS, G, OpeningProof, SRS>where
&'a VerifierIndex<FULL_ROUNDS, G, SRS>: UnwindSafe,
&'a ProverProof<G, OpeningProof, FULL_ROUNDS>: UnwindSafe,
&'a [<G as AffineRepr>::ScalarField]: UnwindSafe,
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