openvm_pairing_guest/
lib.rs1#![no_std]
2use strum_macros::FromRepr;
3
4pub const OPCODE: u8 = 0x2b;
6pub const PAIRING_FUNCT3: u8 = 0b011;
7
8#[derive(Debug, Copy, Clone, PartialEq, Eq, FromRepr)]
10#[repr(u8)]
11pub enum PairingBaseFunct7 {
12 HintFinalExp = 0,
13}
14
15impl PairingBaseFunct7 {
16 pub const PAIRING_MAX_KINDS: u8 = 16;
17}
18
19extern crate alloc;
20extern crate self as openvm_ecc;
21
22#[cfg(feature = "halo2curves")]
23pub use halo2curves_axiom as halo2curves;
24pub use openvm_algebra_guest as algebra;
25
26#[cfg(all(feature = "halo2curves", not(target_os = "zkvm")))]
30pub mod halo2curves_shims;
31pub mod pairing;
33
34#[cfg(feature = "bls12_381")]
36pub mod bls12_381;
37#[cfg(feature = "bn254")]
39pub mod bn254;