bsv_wasm/script/
script_bit.rs1use 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}