revm_precompile/
bls12_381.rs

1use crate::PrecompileWithAddress;
2
3mod g1;
4pub mod g1_add;
5pub mod g1_msm;
6mod g2;
7pub mod g2_add;
8pub mod g2_msm;
9pub mod map_fp2_to_g2;
10pub mod map_fp_to_g1;
11pub mod msm;
12pub mod pairing;
13mod utils;
14
15/// Returns the BLS12-381 precompiles with their addresses.
16pub fn precompiles() -> impl Iterator<Item = PrecompileWithAddress> {
17    [
18        g1_add::PRECOMPILE,
19        g1_msm::PRECOMPILE,
20        g2_add::PRECOMPILE,
21        g2_msm::PRECOMPILE,
22        pairing::PRECOMPILE,
23        map_fp_to_g1::PRECOMPILE,
24        map_fp2_to_g2::PRECOMPILE,
25    ]
26    .into_iter()
27}