Struct snarkvm_gadgets::algorithms::prf::poseidon::PoseidonPRFGadget
source · [−]pub struct PoseidonPRFGadget<F: PrimeField + PoseidonDefaultParametersField, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool>(_);
Trait Implementations
sourceimpl<F: PrimeField + PoseidonDefaultParametersField, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool> PRFGadget<PoseidonPRF<F, RATE, OPTIMIZED_FOR_WEIGHTS>, F> for PoseidonPRFGadget<F, RATE, OPTIMIZED_FOR_WEIGHTS>
impl<F: PrimeField + PoseidonDefaultParametersField, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool> PRFGadget<PoseidonPRF<F, RATE, OPTIMIZED_FOR_WEIGHTS>, F> for PoseidonPRFGadget<F, RATE, OPTIMIZED_FOR_WEIGHTS>
type Input = Vec<FpGadget<F>>
type Output = FpGadget<F>
type Seed = FpGadget<F>
fn check_evaluation_gadget<CS: ConstraintSystem<F>>(
cs: CS,
seed: &Self::Seed,
input: &Self::Input
) -> Result<Self::Output, SynthesisError>
Auto Trait Implementations
impl<F, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool> RefUnwindSafe for PoseidonPRFGadget<F, RATE, OPTIMIZED_FOR_WEIGHTS> where
F: RefUnwindSafe,
impl<F, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool> Send for PoseidonPRFGadget<F, RATE, OPTIMIZED_FOR_WEIGHTS>
impl<F, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool> Sync for PoseidonPRFGadget<F, RATE, OPTIMIZED_FOR_WEIGHTS>
impl<F, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool> Unpin for PoseidonPRFGadget<F, RATE, OPTIMIZED_FOR_WEIGHTS> where
F: Unpin,
impl<F, const RATE: usize, const OPTIMIZED_FOR_WEIGHTS: bool> UnwindSafe for PoseidonPRFGadget<F, RATE, OPTIMIZED_FOR_WEIGHTS> where
F: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more