ergo_lib/chain/json.rs
1//! JSON serialization
2
3use serde::{Deserialize, Serialize};
4
5use ergotree_interpreter::sigma_protocol::prover::ProofBytes;
6
7pub(crate) mod context_extension;
8pub(crate) mod hint;
9pub(crate) mod parameters;
10pub(crate) mod transaction;
11
12/// Serde remote type
13#[cfg_attr(
14 feature = "json",
15 derive(Serialize, Deserialize),
16 serde(into = "String", try_from = "String"),
17 serde(remote = "ProofBytes")
18)]
19#[derive(PartialEq, Eq, Hash, Debug, Clone)]
20pub enum ProofBytesSerde {
21 /// Empty proof
22 Empty,
23 /// Non-empty proof
24 Some(Vec<u8>),
25}