bsv_wasm/script/
script_bit.rs

1use crate::utils::{from_hex, to_hex};
2use crate::OpCodes;
3use serde::*;
4use strum_macros::Display;
5
6#[derive(Debug, Clone, Display, PartialEq, Eq, Serialize, Deserialize)]
7#[serde(untagged)]
8pub enum ScriptBit {
9    OpCode(OpCodes),
10    If { code: OpCodes, pass: Vec<ScriptBit>, fail: Vec<ScriptBit> },
11    Push(#[serde(serialize_with = "to_hex", deserialize_with = "from_hex")] Vec<u8>),
12    PushData(OpCodes, #[serde(serialize_with = "to_hex", deserialize_with = "from_hex")] Vec<u8>),
13    Coinbase(#[serde(serialize_with = "to_hex", deserialize_with = "from_hex")] Vec<u8>),
14}