zkcg_verifier/core/
proof.rs1#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
2pub enum ProofSystem {
3 Halo2,
4 ZkVm,
5 Groth16,
6 Stark,
7 Custom(&'static str),
8}
9
10#[derive(Clone, Debug, PartialEq, Eq)]
11pub struct Proof {
12 pub system: ProofSystem,
13 pub data: Vec<u8>,
14}
15
16impl Proof {
17 pub fn new(system: ProofSystem, data: impl Into<Vec<u8>>) -> Self {
18 Self {
19 system,
20 data: data.into(),
21 }
22 }
23}
24
25impl ProofSystem {
26 pub const fn custom(name: &'static str) -> Self {
27 Self::Custom(name)
28 }
29}