pub struct ArithmeticSponge<F: Field, SC: SpongeConstants> {
pub sponge_state: SpongeState,
pub state: Vec<F>,
pub constants: PhantomData<SC>,
/* private fields */
}
Fields§
§sponge_state: SpongeState
§state: Vec<F>
§constants: PhantomData<SC>
Implementations§
Source§impl<F: Field, SC: SpongeConstants> ArithmeticSponge<F, SC>
impl<F: Field, SC: SpongeConstants> ArithmeticSponge<F, SC>
pub fn full_round(&mut self, r: usize)
pub fn poseidon_block_cipher(&mut self)
Trait Implementations§
Source§impl<F: Clone + Field, SC: Clone + SpongeConstants> Clone for ArithmeticSponge<F, SC>
impl<F: Clone + Field, SC: Clone + SpongeConstants> Clone for ArithmeticSponge<F, SC>
Source§fn clone(&self) -> ArithmeticSponge<F, SC>
fn clone(&self) -> ArithmeticSponge<F, SC>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<F: Field, SC: SpongeConstants> Sponge<F, F> for ArithmeticSponge<F, SC>
impl<F: Field, SC: SpongeConstants> Sponge<F, F> for ArithmeticSponge<F, SC>
Source§fn new(params: &'static ArithmeticSpongeParams<F>) -> ArithmeticSponge<F, SC>
fn new(params: &'static ArithmeticSpongeParams<F>) -> ArithmeticSponge<F, SC>
Create a new cryptographic sponge using arithmetic sponge
params
Auto Trait Implementations§
impl<F, SC> Freeze for ArithmeticSponge<F, SC>
impl<F, SC> RefUnwindSafe for ArithmeticSponge<F, SC>where
SC: RefUnwindSafe,
F: RefUnwindSafe,
impl<F, SC> Send for ArithmeticSponge<F, SC>where
SC: Send,
impl<F, SC> Sync for ArithmeticSponge<F, SC>where
SC: Sync,
impl<F, SC> Unpin for ArithmeticSponge<F, SC>
impl<F, SC> UnwindSafe for ArithmeticSponge<F, SC>
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