pub fn auth_hash<A: 'static + PoseidonArity>(chunk: &[Option<bls12_381::Scalar>]) -> bls12_381::Scalar {
    let zero = bls12_381::Scalar::zero();
    let chunk: Vec<_> = chunk.iter().map(|o| o.unwrap_or(zero)).collect();
    let mut p = Poseidon::new_with_preimage(&chunk, A::params());
    p.hash()
}
/// Hash function used to create the authenticated Merkle tree.
Hash function used to create the authenticated Merkle tree.
Hash function used to create the authenticated Merkle tree .
pub fn auth_hash<A: 'static + PoseidonArity>(chunk: &[Option<bls12_381::Scalar>]) -> bls12_381::Scalar {
    let zero = bls12_381::Scalar::zero();
    let chunk: Vec<_> = chunk.iter().map(|o| o.unwrap_or(zero)).collect();
    let mut p = Poseidon::new_with_preimage(&chunk, A::params());
    p.hash()
}
pub fn auth_hash < A : ' static + PoseidonArity > ( chunk : & [ Option < bls12_381 :: Scalar > ] ) -> bls12_381 :: Scalar { let zero = bls12_381 :: Scalar :: zero ( ) ; let chunk : Vec < _ > = chunk . iter ( ) . map ( | o | o . unwrap_or ( zero ) ) . collect ( ) ; let mut p = Poseidon :: new_with_preimage ( & chunk , A :: params ( ) ) ; p . hash ( ) }
Hash function used to create the authenticated Merkle tree.
Hash function used to create the authenticated Merkle tree .
chunk
&[Option<bls12_381::Scalar>]
chunk
&[Option<bls12_381::Scalar>]