fn generate_pedersen_hash_exp_table() -> Vec<Vec<Vec<jubjub::SubgroupPoint>>> {
    let window = PEDERSEN_HASH_EXP_WINDOW_SIZE;

    PEDERSEN_HASH_GENERATORS
        .iter()
        .cloned()
        .map(|mut g| {
            let mut tables = vec![];

            let mut num_bits = 0;
            while num_bits <= jubjub::Scalar::NUM_BITS {
                let mut table = Vec::with_capacity(1 << window);
                let mut base = jubjub::SubgroupPoint::identity();

                for _ in 0..(1 << window) {
                    table.push(base);
                    base += g;
                }

                tables.push(table);
                num_bits += window;

                for _ in 0..window {
                    g = g.double();
                }
            }

            tables
        })
        .collect()
}
/// Creates the exp table for the Pedersen hash generators.
Creates the exp table for the Pedersen hash generators.
Creates the exp table for the Pedersen hash generators .
fn generate_pedersen_hash_exp_table() -> Vec<Vec<Vec<jubjub::SubgroupPoint>>> {
    let window = PEDERSEN_HASH_EXP_WINDOW_SIZE;
    PEDERSEN_HASH_GENERATORS
        .iter()
        .cloned()
        .map(|mut g| {
            let mut tables = vec![];
            let mut num_bits = 0;
            while num_bits <= jubjub::Scalar::NUM_BITS {
                let mut table = Vec::with_capacity(1 << window);
                let mut base = jubjub::SubgroupPoint::identity();
                for _ in 0..(1 << window) {
                    table.push(base);
                    base += g;
                }
                tables.push(table);
                num_bits += window;
                for _ in 0..window {
                    g = g.double();
                }
            }
            tables
        })
        .collect()
}
fn generate_pedersen_hash_exp_table ( ) -> Vec < Vec < Vec < jubjub :: SubgroupPoint > > > { let window = PEDERSEN_HASH_EXP_WINDOW_SIZE ; PEDERSEN_HASH_GENERATORS . iter ( ) . cloned ( ) . map ( | mut g | { let mut tables = vec ! [ ] ; let mut num_bits = 0 ; while num_bits <= jubjub :: Scalar :: NUM_BITS { let mut table = Vec :: with_capacity ( 1 << window ) ; let mut base = jubjub :: SubgroupPoint :: identity ( ) ; for _ in 0 .. ( 1 << window ) { table . push ( base ) ; base += g ; } tables . push ( table ) ; num_bits += window ; for _ in 0 .. window { g = g . double ( ) ; } } tables } ) . collect ( ) }
Creates the exp table for the Pedersen hash generators.
Creates the exp table for the Pedersen hash generators .