macro_rules! with_transaction_features {
($macro:ident) => {
$macro! {
has_p2pk: P2PK = 0, count: p2pk;
has_p2ms: P2MS = 1, count: p2ms;
has_p2pkh: P2PKH = 2, count: p2pkh;
has_p2sh: P2SH = 3, count: p2sh;
has_p2wpkh: P2WPKH = 4, count: p2wpkh;
has_p2wsh: P2WSH = 5, count: p2wsh;
has_p2tr: P2TR = 6, count: p2tr;
has_p2a: P2A = 7, count: p2a;
has_op_return: OP_RETURN = 8, count: op_return;
has_empty: EMPTY = 9, count: empty;
has_unknown: UNKNOWN = 10, count: unknown;
has_fake_pubkey: FAKE_PUBKEY = 11, count: fake_pubkey;
has_fake_scripthash: FAKE_SCRIPTHASH = 12, count: fake_scripthash;
has_inscription: INSCRIPTION = 13, count: inscription;
has_annex: ANNEX = 14, count: annex;
has_sighash_all: SIGHASH_ALL = 15, count: sighash_all;
has_sighash_none: SIGHASH_NONE = 16, count: sighash_none;
has_sighash_single: SIGHASH_SINGLE = 17, count: sighash_single;
has_sighash_default: SIGHASH_DEFAULT = 18, count: sighash_default;
has_sighash_anyone_can_pay: SIGHASH_ANYONE_CAN_PAY = 19, count: sighash_anyone_can_pay;
#[traversable(hidden)]
is_unconditionally_nonstandard: UNCONDITIONALLY_NONSTANDARD = 20;
has_dust_output: DUST_OUTPUT = 21, count: dust_output;
}
};
}
pub(super) use with_transaction_features;