Struct snarkvm_wasm::algorithms::merkle_tree::merkle_path::MerklePathGadget [−][src]
pub struct MerklePathGadget<P, HG, F> where
P: MerkleParameters,
F: Field,
HG: CRHGadget<<P as MerkleParameters>::H, F>, { /* fields omitted */ }Implementations
impl<P, HG, F> MerklePathGadget<P, HG, F> where
P: MerkleParameters,
F: Field,
HG: CRHGadget<<P as MerkleParameters>::H, F>, [src]
impl<P, HG, F> MerklePathGadget<P, HG, F> where
P: MerkleParameters,
F: Field,
HG: CRHGadget<<P as MerkleParameters>::H, F>, [src]pub fn check_membership<CS>(
&self,
cs: CS,
parameters: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::ParametersGadget,
root: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget,
leaf: impl ToBytesGadget<F>
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
parameters: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::ParametersGadget,
root: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget,
leaf: impl ToBytesGadget<F>
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>,
pub fn conditionally_check_membership<CS>(
&self,
cs: CS,
parameters: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::ParametersGadget,
root: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget,
leaf: impl ToBytesGadget<F>,
should_enforce: &Boolean
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
parameters: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::ParametersGadget,
root: &<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget,
leaf: impl ToBytesGadget<F>,
should_enforce: &Boolean
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>,
Trait Implementations
impl<P, HGadget, F> AllocGadget<MerklePath<P>, F> for MerklePathGadget<P, HGadget, F> where
P: MerkleParameters,
F: Field,
HGadget: CRHGadget<<P as MerkleParameters>::H, F>, [src]
impl<P, HGadget, F> AllocGadget<MerklePath<P>, F> for MerklePathGadget<P, HGadget, F> where
P: MerkleParameters,
F: Field,
HGadget: CRHGadget<<P as MerkleParameters>::H, F>, [src]pub fn alloc<Fn, T, CS>(
cs: CS,
value_gen: Fn
) -> Result<MerklePathGadget<P, HGadget, F>, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<MerklePath<P>>, [src]
cs: CS,
value_gen: Fn
) -> Result<MerklePathGadget<P, HGadget, F>, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<MerklePath<P>>,
pub fn alloc_input<Fn, T, CS>(
cs: CS,
value_gen: Fn
) -> Result<MerklePathGadget<P, HGadget, F>, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<MerklePath<P>>, [src]
cs: CS,
value_gen: Fn
) -> Result<MerklePathGadget<P, HGadget, F>, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<MerklePath<P>>,
fn alloc_constant<Fn, T, CS>(_cs: CS, _f: Fn) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>, [src]
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>,
fn alloc_checked<Fn, T, CS>(cs: CS, f: Fn) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>, [src]
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>,
fn alloc_input_checked<Fn, T, CS>(cs: CS, f: Fn) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>, [src]
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>,
Auto Trait Implementations
impl<P, HG, F> RefUnwindSafe for MerklePathGadget<P, HG, F> where
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: RefUnwindSafe,
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: RefUnwindSafe,
impl<P, HG, F> Send for MerklePathGadget<P, HG, F> where
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: Send,
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: Send,
impl<P, HG, F> Sync for MerklePathGadget<P, HG, F> where
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: Sync,
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: Sync,
impl<P, HG, F> Unpin for MerklePathGadget<P, HG, F> where
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: Unpin,
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: Unpin,
impl<P, HG, F> UnwindSafe for MerklePathGadget<P, HG, F> where
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: UnwindSafe,
<HG as CRHGadget<<P as MerkleParameters>::H, F>>::OutputGadget: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<T> Pointable for T
impl<T> Pointable for Timpl<T> Same<T> for T
impl<T> Same<T> for Ttype Output = T
type Output = TShould always be Self
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,