[#miniscript-Fragment]
= xref:miniscript.adoc[miniscript]::Fragment
:relfileprefix: ../
:mrdocs:

The different node types in miniscript&period;

== Synopsis

Declared in `&lt;script&sol;miniscript&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
enum class Fragment : int;
----

== Members

[cols="1,4"]
|===
| Name| Description
| `JUST&lowbar;0` 
| OP&lowbar;0
| `JUST&lowbar;1` 
| OP&lowbar;1
| `PK&lowbar;K` 
| &lsqb;key&rsqb;
| `PK&lowbar;H` 
| OP&lowbar;DUP OP&lowbar;HASH160 &lsqb;keyhash&rsqb;OP&lowbar;EQUALVERIFY
| `OLDER` 
| &lsqb;n&rsqb;OP&lowbar;CHECKSEQUENCEVERIFY
| `AFTER` 
| &lsqb;n&rsqb;OP&lowbar;CHECKLOCKTIMEVERIFY
| `SHA256` 
| OP&lowbar;SIZE 32 OP&lowbar;EQUALVERIFY OP&lowbar;SHA256 &lsqb;hash&rsqb;OP&lowbar;EQUAL
| `HASH256` 
| OP&lowbar;SIZE 32 OP&lowbar;EQUALVERIFY OP&lowbar;HASH256 &lsqb;hash&rsqb;OP&lowbar;EQUAL
| `RIPEMD160` 
| OP&lowbar;SIZE 32 OP&lowbar;EQUALVERIFY OP&lowbar;RIPEMD160 &lsqb;hash&rsqb;OP&lowbar;EQUAL
| `HASH160` 
| OP&lowbar;SIZE 32 OP&lowbar;EQUALVERIFY OP&lowbar;HASH160 &lsqb;hash&rsqb;OP&lowbar;EQUAL
| `WRAP&lowbar;A` 
| OP&lowbar;TOALTSTACK &lsqb;X&rsqb;OP&lowbar;FROMALTSTACK
| `WRAP&lowbar;S` 
| OP&lowbar;SWAP &lsqb;X&rsqb;
| `WRAP&lowbar;C` 
| &lsqb;X&rsqb;OP&lowbar;CHECKSIG
| `WRAP&lowbar;D` 
| OP&lowbar;DUP OP&lowbar;IF &lsqb;X&rsqb;OP&lowbar;ENDIF
| `WRAP&lowbar;V` 
| &lsqb;X&rsqb;OP&lowbar;VERIFY (or &hyphen;VERIFY version of last opcode in X)
| `WRAP&lowbar;J` 
| OP&lowbar;SIZE OP&lowbar;0NOTEQUAL OP&lowbar;IF &lsqb;X&rsqb;OP&lowbar;ENDIF
| `WRAP&lowbar;N` 
| &lsqb;X&rsqb;OP&lowbar;0NOTEQUAL
| `AND&lowbar;V` 
| &lsqb;X&rsqb;&lsqb;Y&rsqb;
| `AND&lowbar;B` 
| &lsqb;X&rsqb;&lsqb;Y&rsqb;OP&lowbar;BOOLAND
| `OR&lowbar;B` 
| &lsqb;X&rsqb;&lsqb;Y&rsqb;OP&lowbar;BOOLOR
| `OR&lowbar;C` 
| &lsqb;X&rsqb;OP&lowbar;NOTIF &lsqb;Y&rsqb;OP&lowbar;ENDIF
| `OR&lowbar;D` 
| &lsqb;X&rsqb;OP&lowbar;IFDUP OP&lowbar;NOTIF &lsqb;Y&rsqb;OP&lowbar;ENDIF
| `OR&lowbar;I` 
| OP&lowbar;IF &lsqb;X&rsqb;OP&lowbar;ELSE &lsqb;Y&rsqb;OP&lowbar;ENDIF
| `ANDOR` 
| &lsqb;X&rsqb;OP&lowbar;NOTIF &lsqb;Z&rsqb;OP&lowbar;ELSE &lsqb;Y&rsqb;OP&lowbar;ENDIF
| `THRESH` 
| &lsqb;X1&rsqb;OP&lowbar;ADD)&ast; &lsqb;k&rsqb;OP&lowbar;EQUAL
| `MULTI` 
| &lsqb;k&rsqb;&lsqb;key&lowbar;n&rsqb;&ast; &lsqb;n&rsqb;OP&lowbar;CHECKMULTISIG (only available within P2WSH context)
| `MULTI&lowbar;A` 
| &lsqb;key&lowbar;0&rsqb;OP&lowbar;CHECKSIG (&lsqb;key&lowbar;n&rsqb;OP&lowbar;CHECKSIGADD)&ast; &lsqb;k&rsqb;OP&lowbar;NUMEQUAL (only within Tapscript ctx)
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
