The different node types in miniscript.
Declared in <script/miniscript.h>
enum class Fragment : int;
| Name | Description |
|---|---|
JUST_0 | OP_0 |
JUST_1 | OP_1 |
PK_K | [key] |
PK_H | OP_DUP OP_HASH160 [keyhash]OP_EQUALVERIFY |
OLDER | [n]OP_CHECKSEQUENCEVERIFY |
AFTER | [n]OP_CHECKLOCKTIMEVERIFY |
SHA256 | OP_SIZE 32 OP_EQUALVERIFY OP_SHA256 [hash]OP_EQUAL |
HASH256 | OP_SIZE 32 OP_EQUALVERIFY OP_HASH256 [hash]OP_EQUAL |
RIPEMD160 | OP_SIZE 32 OP_EQUALVERIFY OP_RIPEMD160 [hash]OP_EQUAL |
HASH160 | OP_SIZE 32 OP_EQUALVERIFY OP_HASH160 [hash]OP_EQUAL |
WRAP_A | OP_TOALTSTACK [X]OP_FROMALTSTACK |
WRAP_S | OP_SWAP [X] |
WRAP_C | [X]OP_CHECKSIG |
WRAP_D | OP_DUP OP_IF [X]OP_ENDIF |
WRAP_V | [X]OP_VERIFY (or -VERIFY version of last opcode in X) |
WRAP_J | OP_SIZE OP_0NOTEQUAL OP_IF [X]OP_ENDIF |
WRAP_N | [X]OP_0NOTEQUAL |
AND_V | [X][Y] |
AND_B | [X][Y]OP_BOOLAND |
OR_B | [X][Y]OP_BOOLOR |
OR_C | [X]OP_NOTIF [Y]OP_ENDIF |
OR_D | [X]OP_IFDUP OP_NOTIF [Y]OP_ENDIF |
OR_I | OP_IF [X]OP_ELSE [Y]OP_ENDIF |
ANDOR | [X]OP_NOTIF [Z]OP_ELSE [Y]OP_ENDIF |
THRESH | [X1]OP_ADD)* [k]OP_EQUAL |
MULTI | [k][key_n]* [n]OP_CHECKMULTISIG (only available within P2WSH context) |
MULTI_A | [key_0]OP_CHECKSIG ([key_n]OP_CHECKSIGADD)* [k]OP_NUMEQUAL (only within Tapscript ctx) |