]> Untitled Git - bitcoindevkit.org/blob
e2e28acf5148ead18aaf34df316f0697c0d114fa
[bitcoindevkit.org] /
1 <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Bitcoin script slice."><title>Script in bdk_chain::bitcoin::blockdata::script - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../../../static.files/rustdoc-dd39b87e5fcfba68.css"><meta name="rustdoc-vars" data-root-path="../../../../" data-static-root-path="../../../../static.files/" data-current-crate="bdk_chain" data-themes="" data-resource-suffix="" data-rustdoc-version="1.80.0-nightly (78a775127 2024-05-11)" data-channel="nightly" data-search-js="search-d52510db62a78183.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../../../static.files/storage-118b08c4c78b968e.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../static.files/main-20a3ad099b048cf2.js"></script><noscript><link rel="stylesheet" href="../../../../static.files/noscript-df360f571f6edeae.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button><a class="logo-container" href="../../../../bdk_chain/index.html"><img src="https://github.com/bitcoindevkit/bdk/raw/master/static/bdk.png" alt=""></a></nav><nav class="sidebar"><div class="sidebar-crate"><a class="logo-container" href="../../../../bdk_chain/index.html"><img src="https://github.com/bitcoindevkit/bdk/raw/master/static/bdk.png" alt="logo"></a><h2><a href="../../../../bdk_chain/index.html">bdk_chain</a><span class="version">0.20.0</span></h2></div><h2 class="location"><a href="#">Script</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.as_bytes">as_bytes</a></li><li><a href="#method.as_mut_bytes">as_mut_bytes</a></li><li><a href="#method.builder">builder</a></li><li><a href="#method.bytes">bytes</a></li><li><a href="#method.count_sigops">count_sigops</a></li><li><a href="#method.count_sigops_legacy">count_sigops_legacy</a></li><li><a href="#method.dust_value">dust_value</a></li><li><a href="#method.first_opcode">first_opcode</a></li><li><a href="#method.fmt_asm">fmt_asm</a></li><li><a href="#method.from_bytes">from_bytes</a></li><li><a href="#method.from_bytes_mut">from_bytes_mut</a></li><li><a href="#method.instruction_indices">instruction_indices</a></li><li><a href="#method.instruction_indices_minimal">instruction_indices_minimal</a></li><li><a href="#method.instructions">instructions</a></li><li><a href="#method.instructions_minimal">instructions_minimal</a></li><li><a href="#method.into_script_buf">into_script_buf</a></li><li><a href="#method.is_empty">is_empty</a></li><li><a href="#method.is_multisig">is_multisig</a></li><li><a href="#method.is_op_return">is_op_return</a></li><li><a href="#method.is_p2pk">is_p2pk</a></li><li><a href="#method.is_p2pkh">is_p2pkh</a></li><li><a href="#method.is_p2sh">is_p2sh</a></li><li><a href="#method.is_p2tr">is_p2tr</a></li><li><a href="#method.is_p2wpkh">is_p2wpkh</a></li><li><a href="#method.is_p2wsh">is_p2wsh</a></li><li><a href="#method.is_provably_unspendable">is_provably_unspendable</a></li><li><a href="#method.is_push_only">is_push_only</a></li><li><a href="#method.is_witness_program">is_witness_program</a></li><li><a href="#method.len">len</a></li><li><a href="#method.minimal_non_dust">minimal_non_dust</a></li><li><a href="#method.minimal_non_dust_custom">minimal_non_dust_custom</a></li><li><a href="#method.new">new</a></li><li><a href="#method.p2pk_public_key">p2pk_public_key</a></li><li><a href="#method.p2wpkh_script_code">p2wpkh_script_code</a></li><li><a href="#method.script_hash">script_hash</a></li><li><a href="#method.tapscript_leaf_hash">tapscript_leaf_hash</a></li><li><a href="#method.to_asm_string">to_asm_string</a></li><li><a href="#method.to_bytes">to_bytes</a></li><li><a href="#method.to_hex_string">to_hex_string</a></li><li><a href="#method.to_p2sh">to_p2sh</a></li><li><a href="#method.to_p2tr">to_p2tr</a></li><li><a href="#method.to_p2wsh">to_p2wsh</a></li><li><a href="#method.witness_version">witness_version</a></li><li><a href="#method.wscript_hash">wscript_hash</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-AsMut%3CScript%3E-for-Script">AsMut&lt;Script&gt;</a></li><li><a href="#impl-AsMut%3CScript%3E-for-ScriptBuf">AsMut&lt;Script&gt;</a></li><li><a href="#impl-AsMut%3C%5Bu8%5D%3E-for-Script">AsMut&lt;[u8]&gt;</a></li><li><a href="#impl-AsRef%3CScript%3E-for-Script">AsRef&lt;Script&gt;</a></li><li><a href="#impl-AsRef%3CScript%3E-for-ScriptBuf">AsRef&lt;Script&gt;</a></li><li><a href="#impl-AsRef%3C%5Bu8%5D%3E-for-Script">AsRef&lt;[u8]&gt;</a></li><li><a href="#impl-Borrow%3CScript%3E-for-ScriptBuf">Borrow&lt;Script&gt;</a></li><li><a href="#impl-BorrowMut%3CScript%3E-for-ScriptBuf">BorrowMut&lt;Script&gt;</a></li><li><a href="#impl-Debug-for-Script">Debug</a></li><li><a href="#impl-Deserialize%3C'de%3E-for-%26Script">Deserialize&lt;&#x27;de&gt;</a></li><li><a href="#impl-Display-for-Script">Display</a></li><li><a href="#impl-Encodable-for-Script">Encodable</a></li><li><a href="#impl-Eq-for-Script">Eq</a></li><li><a href="#impl-From%3C%26Script%3E-for-Arc%3CScript%3E">From&lt;&amp;&#x27;a Script&gt;</a></li><li><a href="#impl-From%3C%26Script%3E-for-Box%3CScript%3E">From&lt;&amp;&#x27;a Script&gt;</a></li><li><a href="#impl-From%3C%26Script%3E-for-Cow%3C'a,+Script%3E">From&lt;&amp;&#x27;a Script&gt;</a></li><li><a href="#impl-From%3C%26Script%3E-for-Rc%3CScript%3E">From&lt;&amp;&#x27;a Script&gt;</a></li><li><a href="#impl-From%3C%26Script%3E-for-ScriptBuf">From&lt;&amp;&#x27;a Script&gt;</a></li><li><a href="#impl-From%3C%26Script%3E-for-ScriptHash">From&lt;&amp;Script&gt;</a></li><li><a href="#impl-From%3C%26Script%3E-for-WScriptHash">From&lt;&amp;Script&gt;</a></li><li><a href="#impl-From%3CCow%3C'a,+Script%3E%3E-for-Box%3CScript%3E">From&lt;Cow&lt;&#x27;a, Script&gt;&gt;</a></li><li><a href="#impl-From%3CScriptBuf%3E-for-Box%3CScript%3E">From&lt;ScriptBuf&gt;</a></li><li><a href="#impl-Hash-for-Script">Hash</a></li><li><a href="#impl-Index%3C(Bound%3Cusize%3E,+Bound%3Cusize%3E)%3E-for-Script">Index&lt;(Bound&lt;usize&gt;, Bound&lt;usize&gt;)&gt;</a></li><li><a href="#impl-Index%3CRange%3Cusize%3E%3E-for-Script">Index&lt;Range&lt;usize&gt;&gt;</a></li><li><a href="#impl-Index%3CRangeFrom%3Cusize%3E%3E-for-Script">Index&lt;RangeFrom&lt;usize&gt;&gt;</a></li><li><a href="#impl-Index%3CRangeFull%3E-for-Script">Index&lt;RangeFull&gt;</a></li><li><a href="#impl-Index%3CRangeInclusive%3Cusize%3E%3E-for-Script">Index&lt;RangeInclusive&lt;usize&gt;&gt;</a></li><li><a href="#impl-Index%3CRangeTo%3Cusize%3E%3E-for-Script">Index&lt;RangeTo&lt;usize&gt;&gt;</a></li><li><a href="#impl-Index%3CRangeToInclusive%3Cusize%3E%3E-for-Script">Index&lt;RangeToInclusive&lt;usize&gt;&gt;</a></li><li><a href="#impl-LowerHex-for-Script">LowerHex</a></li><li><a href="#impl-Ord-for-Script">Ord</a></li><li><a href="#impl-PartialEq-for-Script">PartialEq</a></li><li><a href="#impl-PartialEq%3CScript%3E-for-ScriptBuf">PartialEq&lt;Script&gt;</a></li><li><a href="#impl-PartialEq%3CScriptBuf%3E-for-Script">PartialEq&lt;ScriptBuf&gt;</a></li><li><a href="#impl-PartialOrd-for-Script">PartialOrd</a></li><li><a href="#impl-PartialOrd%3CScript%3E-for-ScriptBuf">PartialOrd&lt;Script&gt;</a></li><li><a href="#impl-PartialOrd%3CScriptBuf%3E-for-Script">PartialOrd&lt;ScriptBuf&gt;</a></li><li><a href="#impl-Serialize-for-Script">Serialize</a></li><li><a href="#impl-StructuralPartialEq-for-Script">StructuralPartialEq</a></li><li><a href="#impl-ToOwned-for-Script">ToOwned</a></li><li><a href="#impl-UpperHex-for-Script">UpperHex</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Sized-for-Script">!Sized</a></li><li><a href="#impl-Freeze-for-Script">Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-Script">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Script">Send</a></li><li><a href="#impl-Sync-for-Script">Sync</a></li><li><a href="#impl-Unpin-for-Script">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Script">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-Equivalent%3CK%3E-for-Q">Equivalent&lt;K&gt;</a></li><li><a href="#impl-ToString-for-T">ToString</a></li></ul></section><h2><a href="index.html">In bdk_chain::bitcoin::blockdata::script</a></h2></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../../../index.html">bdk_chain</a>::<wbr><a href="../../index.html">bitcoin</a>::<wbr><a href="../index.html">blockdata</a>::<wbr><a href="index.html">script</a>::<wbr><a class="struct" href="#">Script</a><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><span class="out-of-band"><button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Script(<span class="comment">/* private fields */</span>);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Bitcoin script slice.</p>
2 <p><em><a href="index.html" title="mod bdk_chain::bitcoin::blockdata::script">See also the <code>bitcoin::blockdata::script</code> module</a>.</em></p>
3 <p><code>Script</code> is a script slice, the most primitive script type. It’s usually seen in its borrowed
4 form <code>&amp;Script</code>. It is always encoded as a series of bytes representing the opcodes and data
5 pushes.</p>
6 <h3 id="validity"><a class="doc-anchor" href="#validity">§</a>Validity</h3>
7 <p><code>Script</code> does not have any validity invariants - it’s essentially just a marked slice of
8 bytes. This is similar to <a href="https://doc.rust-lang.org/nightly/std/path/struct.Path.html" title="struct std::path::Path"><code>Path</code></a> vs <a href="https://doc.rust-lang.org/nightly/std/ffi/os_str/struct.OsStr.html" title="struct std::ffi::os_str::OsStr"><code>OsStr</code></a> where they
9 are trivially cast-able to each-other and <code>Path</code> doesn’t guarantee being a usable FS path but
10 having a newtype still has value because of added methods, readability and basic type checking.</p>
11 <p>Although at least data pushes could be checked not to overflow the script, bad scripts are
12 allowed to be in a transaction (outputs just become unspendable) and there even are such
13 transactions in the chain. Thus we must allow such scripts to be placed in the transaction.</p>
14 <h3 id="slicing-safety"><a class="doc-anchor" href="#slicing-safety">§</a>Slicing safety</h3>
15 <p>Slicing is similar to how <code>str</code> works: some ranges may be incorrect and indexing by
16 <code>usize</code> is not supported. However, as opposed to <code>std</code>, we have no way of checking
17 correctness without causing linear complexity so there are <strong>no panics on invalid
18 ranges!</strong> If you supply an invalid range, you’ll get a garbled script.</p>
19 <p>The range is considered valid if it’s at a boundary of instruction. Care must be taken
20 especially with push operations because you could get a reference to arbitrary
21 attacker-supplied bytes that look like a valid script.</p>
22 <p>It is recommended to use <code>.instructions()</code> method to get an iterator over script
23 instructions and work with that instead.</p>
24 <h3 id="memory-safety"><a class="doc-anchor" href="#memory-safety">§</a>Memory safety</h3>
25 <p>The type is <code>#[repr(transparent)]</code> for internal purposes only!
26 No consumer crate may rely on the representation of the struct!</p>
27 <h3 id="references"><a class="doc-anchor" href="#references">§</a>References</h3><h4 id="bitcoin-core-references"><a class="doc-anchor" href="#bitcoin-core-references">§</a>Bitcoin Core References</h4>
28 <ul>
29 <li><a href="https://github.com/bitcoin/bitcoin/blob/d492dc1cdaabdc52b0766bf4cba4bd73178325d0/src/script/script.h#L410">CScript definition</a></li>
30 </ul>
31 </div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Script" class="impl"><a href="#impl-Script" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -&gt; &amp;'static <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class="docblock"><p>Creates a new empty script.</p>
32 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_bytes" class="method"><h4 class="code-header">pub fn <a href="#method.from_bytes" class="fn">from_bytes</a>(bytes: &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]) -&gt; &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class="docblock"><p>Treat byte slice as <code>Script</code></p>
33 </div></details><details class="toggle method-toggle" open><summary><section id="method.from_bytes_mut" class="method"><h4 class="code-header">pub fn <a href="#method.from_bytes_mut" class="fn">from_bytes_mut</a>(bytes: &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]) -&gt; &amp;mut <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class="docblock"><p>Treat mutable byte slice as <code>Script</code></p>
34 </div></details><details class="toggle method-toggle" open><summary><section id="method.as_bytes" class="method"><h4 class="code-header">pub fn <a href="#method.as_bytes" class="fn">as_bytes</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]">ⓘ</a></h4></section></summary><div class="docblock"><p>Returns the script data as a byte slice.</p>
35 </div></details><details class="toggle method-toggle" open><summary><section id="method.as_mut_bytes" class="method"><h4 class="code-header">pub fn <a href="#method.as_mut_bytes" class="fn">as_mut_bytes</a>(&amp;mut self) -&gt; &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;mut [u8]">ⓘ</a></h4></section></summary><div class="docblock"><p>Returns the script data as a mutable byte slice.</p>
36 </div></details><details class="toggle method-toggle" open><summary><section id="method.builder" class="method"><h4 class="code-header">pub fn <a href="#method.builder" class="fn">builder</a>() -&gt; <a class="struct" href="struct.Builder.html" title="struct bdk_chain::bitcoin::blockdata::script::Builder">Builder</a></h4></section></summary><div class="docblock"><p>Creates a new script builder</p>
37 </div></details><details class="toggle method-toggle" open><summary><section id="method.script_hash" class="method"><h4 class="code-header">pub fn <a href="#method.script_hash" class="fn">script_hash</a>(&amp;self) -&gt; <a class="struct" href="../../struct.ScriptHash.html" title="struct bdk_chain::bitcoin::ScriptHash">ScriptHash</a></h4></section></summary><div class="docblock"><p>Returns 160-bit hash of the script.</p>
38 </div></details><details class="toggle method-toggle" open><summary><section id="method.wscript_hash" class="method"><h4 class="code-header">pub fn <a href="#method.wscript_hash" class="fn">wscript_hash</a>(&amp;self) -&gt; <a class="struct" href="../../struct.WScriptHash.html" title="struct bdk_chain::bitcoin::WScriptHash">WScriptHash</a></h4></section></summary><div class="docblock"><p>Returns 256-bit hash of the script for P2WSH outputs.</p>
39 </div></details><details class="toggle method-toggle" open><summary><section id="method.tapscript_leaf_hash" class="method"><h4 class="code-header">pub fn <a href="#method.tapscript_leaf_hash" class="fn">tapscript_leaf_hash</a>(&amp;self) -&gt; <a class="struct" href="../../struct.TapLeafHash.html" title="struct bdk_chain::bitcoin::TapLeafHash">TapLeafHash</a></h4></section></summary><div class="docblock"><p>Computes leaf hash of tapscript.</p>
40 </div></details><details class="toggle method-toggle" open><summary><section id="method.len" class="method"><h4 class="code-header">pub fn <a href="#method.len" class="fn">len</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns the length in bytes of the script.</p>
41 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_empty" class="method"><h4 class="code-header">pub fn <a href="#method.is_empty" class="fn">is_empty</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns whether the script is the empty script.</p>
42 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_bytes" class="method"><h4 class="code-header">pub fn <a href="#method.to_bytes" class="fn">to_bytes</a>(&amp;self) -&gt; <a class="struct" href="../../base58/struct.Vec.html" title="struct bdk_chain::bitcoin::base58::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt; <a href="#" class="tooltip" data-notable-ty="Vec&lt;u8&gt;">ⓘ</a></h4></section></summary><div class="docblock"><p>Returns a copy of the script data.</p>
43 </div></details><details class="toggle method-toggle" open><summary><section id="method.bytes" class="method"><h4 class="code-header">pub fn <a href="#method.bytes" class="fn">bytes</a>(&amp;self) -&gt; <a class="struct" href="struct.Bytes.html" title="struct bdk_chain::bitcoin::blockdata::script::Bytes">Bytes</a>&lt;'_&gt; <a href="#" class="tooltip" data-notable-ty="Bytes&lt;&#39;_&gt;">ⓘ</a></h4></section></summary><div class="docblock"><p>Returns an iterator over script bytes.</p>
44 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_p2wsh" class="method"><h4 class="code-header">pub fn <a href="#method.to_p2wsh" class="fn">to_p2wsh</a>(&amp;self) -&gt; <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h4></section></summary><div class="docblock"><p>Computes the P2WSH output corresponding to this witnessScript (aka the “witness redeem
45 script”).</p>
46 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_p2tr" class="method"><h4 class="code-header">pub fn <a href="#method.to_p2tr" class="fn">to_p2tr</a>&lt;C&gt;(
47 &amp;self,
48 secp: &amp;<a class="struct" href="../../key/struct.Secp256k1.html" title="struct bdk_chain::bitcoin::key::Secp256k1">Secp256k1</a>&lt;C&gt;,
49 internal_key: <a class="struct" href="../../struct.XOnlyPublicKey.html" title="struct bdk_chain::bitcoin::XOnlyPublicKey">XOnlyPublicKey</a>
50 ) -&gt; <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a><div class="where">where
51 C: <a class="trait" href="../../key/trait.Verification.html" title="trait bdk_chain::bitcoin::key::Verification">Verification</a>,</div></h4></section></summary><div class="docblock"><p>Computes P2TR output with a given internal key and a single script spending path equal to
52 the current script, assuming that the script is a Tapscript.</p>
53 </div></details><details class="toggle method-toggle" open><summary><section id="method.witness_version" class="method"><h4 class="code-header">pub fn <a href="#method.witness_version" class="fn">witness_version</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="../../enum.WitnessVersion.html" title="enum bdk_chain::bitcoin::WitnessVersion">WitnessVersion</a>&gt;</h4></section></summary><div class="docblock"><p>Returns witness version of the script, if any, assuming the script is a <code>scriptPubkey</code>.</p>
54 <h5 id="returns"><a class="doc-anchor" href="#returns">§</a>Returns</h5>
55 <p>The witness version if this script is found to conform to the SegWit rules:</p>
56 <blockquote>
57 <p>A scriptPubKey (or redeemScript as defined in BIP16/P2SH) that consists of a 1-byte
58 push opcode (for 0 to 16) followed by a data push between 2 and 40 bytes gets a new
59 special meaning. The value of the first push is called the “version byte”. The following
60 byte vector pushed is called the “witness program”.</p>
61 </blockquote>
62 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_p2sh" class="method"><h4 class="code-header">pub fn <a href="#method.is_p2sh" class="fn">is_p2sh</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a P2SH output.</p>
63 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_p2pkh" class="method"><h4 class="code-header">pub fn <a href="#method.is_p2pkh" class="fn">is_p2pkh</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a P2PKH output.</p>
64 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_push_only" class="method"><h4 class="code-header">pub fn <a href="#method.is_push_only" class="fn">is_push_only</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script is push only.</p>
65 <p>Note: <code>OP_RESERVED</code> (<code>0x50</code>) and all the OP_PUSHNUM operations
66 are considered push operations.</p>
67 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_p2pk" class="method"><h4 class="code-header">pub fn <a href="#method.is_p2pk" class="fn">is_p2pk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a P2PK output.</p>
68 <p>You can obtain the public key, if its valid,
69 by calling <a href="../../struct.Script.html#method.p2pk_public_key" title="method bdk_chain::bitcoin::Script::p2pk_public_key"><code>p2pk_public_key()</code></a></p>
70 </div></details><details class="toggle method-toggle" open><summary><section id="method.p2pk_public_key" class="method"><h4 class="code-header">pub fn <a href="#method.p2pk_public_key" class="fn">p2pk_public_key</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../struct.PublicKey.html" title="struct bdk_chain::bitcoin::PublicKey">PublicKey</a>&gt;</h4></section></summary><div class="docblock"><p>Returns the public key if this script is P2PK with a <strong>valid</strong> public key.</p>
71 <p>This may return <code>None</code> even when <a href="../../struct.Script.html#method.is_p2pk" title="method bdk_chain::bitcoin::Script::is_p2pk"><code>is_p2pk()</code></a> returns true.
72 This happens when the public key is invalid (e.g. the point not being on the curve).
73 In this situation the script is unspendable.</p>
74 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_multisig" class="method"><h4 class="code-header">pub fn <a href="#method.is_multisig" class="fn">is_multisig</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a bare multisig output.</p>
75 <p>In a bare multisig pubkey script the keys are not hashed, the script
76 is of the form:</p>
77 <p><code>2 &lt;pubkey1&gt; &lt;pubkey2&gt; &lt;pubkey3&gt; 3 OP_CHECKMULTISIG</code></p>
78 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_witness_program" class="method"><h4 class="code-header">pub fn <a href="#method.is_witness_program" class="fn">is_witness_program</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a Segregated Witness (segwit) program.</p>
79 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_p2wsh" class="method"><h4 class="code-header">pub fn <a href="#method.is_p2wsh" class="fn">is_p2wsh</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a P2WSH output.</p>
80 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_p2wpkh" class="method"><h4 class="code-header">pub fn <a href="#method.is_p2wpkh" class="fn">is_p2wpkh</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a P2WPKH output.</p>
81 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_p2tr" class="method"><h4 class="code-header">pub fn <a href="#method.is_p2tr" class="fn">is_p2tr</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Checks whether a script pubkey is a P2TR output.</p>
82 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_op_return" class="method"><h4 class="code-header">pub fn <a href="#method.is_op_return" class="fn">is_op_return</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Check if this is an OP_RETURN output.</p>
83 </div></details><details class="toggle method-toggle" open><summary><section id="method.is_provably_unspendable" class="method"><h4 class="code-header">pub fn <a href="#method.is_provably_unspendable" class="fn">is_provably_unspendable</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated since 0.32.0: The method has potentially confusing semantics and is going to be removed, you might want <code>is_op_return</code></span></div></span></summary><div class="docblock"><p>Checks whether a script is trivially known to have no satisfying input.</p>
84 <p>This method has potentially confusing semantics and an unclear purpose, so it’s going to be
85 removed. Use <code>is_op_return</code> if you want <code>OP_RETURN</code> semantics.</p>
86 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_p2sh" class="method"><h4 class="code-header">pub fn <a href="#method.to_p2sh" class="fn">to_p2sh</a>(&amp;self) -&gt; <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h4></section></summary><div class="docblock"><p>Computes the P2SH output corresponding to this redeem script.</p>
87 </div></details><details class="toggle method-toggle" open><summary><section id="method.p2wpkh_script_code" class="method"><h4 class="code-header">pub fn <a href="#method.p2wpkh_script_code" class="fn">p2wpkh_script_code</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a>&gt;</h4></section></summary><div class="docblock"><p>Returns the script code used for spending a P2WPKH output if this script is a script pubkey
88 for a P2WPKH output. The <code>scriptCode</code> is described in <a href="https://github.com/bitcoin/bips/blob/99701f68a88ce33b2d0838eb84e115cef505b4c2/bip-0143.mediawiki">BIP143</a>.</p>
89 </div></details><details class="toggle method-toggle" open><summary><section id="method.dust_value" class="method"><h4 class="code-header">pub fn <a href="#method.dust_value" class="fn">dust_value</a>(&amp;self) -&gt; <a class="struct" href="../../struct.Amount.html" title="struct bdk_chain::bitcoin::Amount">Amount</a></h4></section><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated since 0.32.0: use minimal_non_dust and friends</span></div></span></summary><div class="docblock"><p>Returns the minimum value an output with this script should have in order to be
90 broadcastable on today’s Bitcoin network.</p>
91 </div></details><details class="toggle method-toggle" open><summary><section id="method.minimal_non_dust" class="method"><h4 class="code-header">pub fn <a href="#method.minimal_non_dust" class="fn">minimal_non_dust</a>(&amp;self) -&gt; <a class="struct" href="../../struct.Amount.html" title="struct bdk_chain::bitcoin::Amount">Amount</a></h4></section></summary><div class="docblock"><p>Returns the minimum value an output with this script should have in order to be
92 broadcastable on today’s Bitcoin network.</p>
93 <p>Dust depends on the -dustrelayfee value of the Bitcoin Core node you are broadcasting to.
94 This function uses the default value of 0.00003 BTC/kB (3 sat/vByte).</p>
95 <p>To use a custom value, use <a href="../../struct.Script.html#method.minimal_non_dust_custom" title="method bdk_chain::bitcoin::Script::minimal_non_dust_custom"><code>minimal_non_dust_custom</code></a>.</p>
96 </div></details><details class="toggle method-toggle" open><summary><section id="method.minimal_non_dust_custom" class="method"><h4 class="code-header">pub fn <a href="#method.minimal_non_dust_custom" class="fn">minimal_non_dust_custom</a>(&amp;self, dust_relay_fee: <a class="struct" href="../../struct.FeeRate.html" title="struct bdk_chain::bitcoin::FeeRate">FeeRate</a>) -&gt; <a class="struct" href="../../struct.Amount.html" title="struct bdk_chain::bitcoin::Amount">Amount</a></h4></section></summary><div class="docblock"><p>Returns the minimum value an output with this script should have in order to be
97 broadcastable on today’s Bitcoin network.</p>
98 <p>Dust depends on the -dustrelayfee value of the Bitcoin Core node you are broadcasting to.
99 This function lets you set the fee rate used in dust calculation.</p>
100 <p>The current default value in Bitcoin Core (as of v26) is 3 sat/vByte.</p>
101 <p>To use the default Bitcoin Core value, use <a href="../../struct.Script.html#method.minimal_non_dust" title="method bdk_chain::bitcoin::Script::minimal_non_dust"><code>minimal_non_dust</code></a>.</p>
102 </div></details><details class="toggle method-toggle" open><summary><section id="method.count_sigops" class="method"><h4 class="code-header">pub fn <a href="#method.count_sigops" class="fn">count_sigops</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Counts the sigops for this Script using accurate counting.</p>
103 <p>In Bitcoin Core, there are two ways to count sigops, “accurate” and “legacy”.
104 This method uses “accurate” counting. This means that OP_CHECKMULTISIG and its
105 verify variant count for N sigops where N is the number of pubkeys used in the
106 multisig. However, it will count for 20 sigops if CHECKMULTISIG is not preceded by an
107 OP_PUSHNUM from 1 - 16 (this would be an invalid script)</p>
108 <p>Bitcoin Core uses accurate counting for sigops contained within redeemScripts (P2SH)
109 and witnessScripts (P2WSH) only. It uses legacy for sigops in scriptSigs and scriptPubkeys.</p>
110 <p>(Note: taproot scripts don’t count toward the sigop count of the block,
111 nor do they have CHECKMULTISIG operations. This function does not count OP_CHECKSIGADD,
112 so do not use this to try and estimate if a taproot script goes over the sigop budget.)</p>
113 </div></details><details class="toggle method-toggle" open><summary><section id="method.count_sigops_legacy" class="method"><h4 class="code-header">pub fn <a href="#method.count_sigops_legacy" class="fn">count_sigops_legacy</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Counts the sigops for this Script using legacy counting.</p>
114 <p>In Bitcoin Core, there are two ways to count sigops, “accurate” and “legacy”.
115 This method uses “legacy” counting. This means that OP_CHECKMULTISIG and its
116 verify variant count for 20 sigops.</p>
117 <p>Bitcoin Core uses legacy counting for sigops contained within scriptSigs and
118 scriptPubkeys. It uses accurate for redeemScripts (P2SH) and witnessScripts (P2WSH).</p>
119 <p>(Note: taproot scripts don’t count toward the sigop count of the block,
120 nor do they have CHECKMULTISIG operations. This function does not count OP_CHECKSIGADD,
121 so do not use this to try and estimate if a taproot script goes over the sigop budget.)</p>
122 </div></details><details class="toggle method-toggle" open><summary><section id="method.instructions" class="method"><h4 class="code-header">pub fn <a href="#method.instructions" class="fn">instructions</a>(&amp;self) -&gt; <a class="struct" href="struct.Instructions.html" title="struct bdk_chain::bitcoin::blockdata::script::Instructions">Instructions</a>&lt;'_&gt; <a href="#" class="tooltip" data-notable-ty="Instructions&lt;&#39;_&gt;">ⓘ</a></h4></section></summary><div class="docblock"><p>Iterates over the script instructions.</p>
123 <p>Each returned item is a nested enum covering opcodes, datapushes and errors.
124 At most one error will be returned and then the iterator will end. To instead iterate over
125 the script as sequence of bytes call the <a href="../../struct.Script.html#method.bytes" title="method bdk_chain::bitcoin::Script::bytes"><code>bytes</code></a> method.</p>
126 <p>To force minimal pushes, use <a href="../../struct.Script.html#method.instructions_minimal" title="method bdk_chain::bitcoin::Script::instructions_minimal"><code>instructions_minimal</code></a>.</p>
127 </div></details><details class="toggle method-toggle" open><summary><section id="method.instructions_minimal" class="method"><h4 class="code-header">pub fn <a href="#method.instructions_minimal" class="fn">instructions_minimal</a>(&amp;self) -&gt; <a class="struct" href="struct.Instructions.html" title="struct bdk_chain::bitcoin::blockdata::script::Instructions">Instructions</a>&lt;'_&gt; <a href="#" class="tooltip" data-notable-ty="Instructions&lt;&#39;_&gt;">ⓘ</a></h4></section></summary><div class="docblock"><p>Iterates over the script instructions while enforcing minimal pushes.</p>
128 <p>This is similar to <a href="../../struct.Script.html#method.instructions" title="method bdk_chain::bitcoin::Script::instructions"><code>instructions</code></a> but an error is returned if a push
129 is not minimal.</p>
130 </div></details><details class="toggle method-toggle" open><summary><section id="method.instruction_indices" class="method"><h4 class="code-header">pub fn <a href="#method.instruction_indices" class="fn">instruction_indices</a>(&amp;self) -&gt; <a class="struct" href="struct.InstructionIndices.html" title="struct bdk_chain::bitcoin::blockdata::script::InstructionIndices">InstructionIndices</a>&lt;'_&gt; <a href="#" class="tooltip" data-notable-ty="InstructionIndices&lt;&#39;_&gt;">ⓘ</a></h4></section></summary><div class="docblock"><p>Iterates over the script instructions and their indices.</p>
131 <p>Unless the script contains an error, the returned item consists of an index pointing to the
132 position in the script where the instruction begins and the decoded instruction - either an
133 opcode or data push.</p>
134 <p>To force minimal pushes, use <a href="../../struct.Script.html#method.instruction_indices_minimal" title="method bdk_chain::bitcoin::Script::instruction_indices_minimal"><code>Self::instruction_indices_minimal</code></a>.</p>
135 </div></details><details class="toggle method-toggle" open><summary><section id="method.instruction_indices_minimal" class="method"><h4 class="code-header">pub fn <a href="#method.instruction_indices_minimal" class="fn">instruction_indices_minimal</a>(&amp;self) -&gt; <a class="struct" href="struct.InstructionIndices.html" title="struct bdk_chain::bitcoin::blockdata::script::InstructionIndices">InstructionIndices</a>&lt;'_&gt; <a href="#" class="tooltip" data-notable-ty="InstructionIndices&lt;&#39;_&gt;">ⓘ</a></h4></section></summary><div class="docblock"><p>Iterates over the script instructions and their indices while enforcing minimal pushes.</p>
136 <p>This is similar to <a href="../../struct.Script.html#method.instruction_indices" title="method bdk_chain::bitcoin::Script::instruction_indices"><code>instruction_indices</code></a> but an error is
137 returned if a push is not minimal.</p>
138 </div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_asm" class="method"><h4 class="code-header">pub fn <a href="#method.fmt_asm" class="fn">fmt_asm</a>(&amp;self, f: &amp;mut dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Write.html" title="trait core::fmt::Write">Write</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Writes the human-readable assembly representation of the script to the formatter.</p>
139 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_asm_string" class="method"><h4 class="code-header">pub fn <a href="#method.to_asm_string" class="fn">to_asm_string</a>(&amp;self) -&gt; <a class="struct" href="../../base58/struct.String.html" title="struct bdk_chain::bitcoin::base58::String">String</a></h4></section></summary><div class="docblock"><p>Returns the human-readable assembly representation of the script.</p>
140 </div></details><details class="toggle method-toggle" open><summary><section id="method.to_hex_string" class="method"><h4 class="code-header">pub fn <a href="#method.to_hex_string" class="fn">to_hex_string</a>(&amp;self) -&gt; <a class="struct" href="../../base58/struct.String.html" title="struct bdk_chain::bitcoin::base58::String">String</a></h4></section></summary><div class="docblock"><p>Formats the script as lower-case hex.</p>
141 <p>This is a more convenient and performant way to write <code>format!(&quot;{:x}&quot;, script)</code>.
142 For better performance you should generally prefer displaying the script but if <code>String</code> is
143 required (this is common in tests) this method can be used.</p>
144 </div></details><details class="toggle method-toggle" open><summary><section id="method.first_opcode" class="method"><h4 class="code-header">pub fn <a href="#method.first_opcode" class="fn">first_opcode</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../struct.Opcode.html" title="struct bdk_chain::bitcoin::Opcode">Opcode</a>&gt;</h4></section></summary><div class="docblock"><p>Returns the first opcode of the script (if there is any).</p>
145 </div></details><details class="toggle method-toggle" open><summary><section id="method.into_script_buf" class="method"><h4 class="code-header">pub fn <a href="#method.into_script_buf" class="fn">into_script_buf</a>(self: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;) -&gt; <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h4></section></summary><div class="docblock"><p>Converts a <a href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box"><code>Box&lt;Script&gt;</code></a> into a <a href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf"><code>ScriptBuf</code></a> without copying or allocating.</p>
146 </div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsMut%3C%5Bu8%5D%3E-for-Script" class="impl"><a href="#impl-AsMut%3C%5Bu8%5D%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_mut-1" class="method trait-impl"><a href="#method.as_mut-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html#tymethod.as_mut" class="fn">as_mut</a>(&amp;mut self) -&gt; &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;mut [u8]">ⓘ</a></h4></section></summary><div class='docblock'>Converts this type into a mutable reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsMut%3CScript%3E-for-Script" class="impl"><a href="#impl-AsMut%3CScript%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_mut" class="method trait-impl"><a href="#method.as_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html#tymethod.as_mut" class="fn">as_mut</a>(&amp;mut self) -&gt; &amp;mut <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>Converts this type into a mutable reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsMut%3CScript%3E-for-ScriptBuf" class="impl"><a href="#impl-AsMut%3CScript%3E-for-ScriptBuf" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_mut-2" class="method trait-impl"><a href="#method.as_mut-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html#tymethod.as_mut" class="fn">as_mut</a>(&amp;mut self) -&gt; &amp;mut <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>Converts this type into a mutable reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsRef%3C%5Bu8%5D%3E-for-Script" class="impl"><a href="#impl-AsRef%3C%5Bu8%5D%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>]&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_ref-1" class="method trait-impl"><a href="#method.as_ref-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html#tymethod.as_ref" class="fn">as_ref</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]">ⓘ</a></h4></section></summary><div class='docblock'>Converts this type into a shared reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsRef%3CScript%3E-for-Script" class="impl"><a href="#impl-AsRef%3CScript%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_ref" class="method trait-impl"><a href="#method.as_ref" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html#tymethod.as_ref" class="fn">as_ref</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>Converts this type into a shared reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsRef%3CScript%3E-for-ScriptBuf" class="impl"><a href="#impl-AsRef%3CScript%3E-for-ScriptBuf" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_ref-2" class="method trait-impl"><a href="#method.as_ref-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html#tymethod.as_ref" class="fn">as_ref</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>Converts this type into a shared reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Borrow%3CScript%3E-for-ScriptBuf" class="impl"><a href="#impl-Borrow%3CScript%3E-for-ScriptBuf" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-BorrowMut%3CScript%3E-for-ScriptBuf" class="impl"><a href="#impl-BorrowMut%3CScript%3E-for-ScriptBuf" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; &amp;mut <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-Script" class="impl"><a href="#impl-Debug-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deserialize%3C'de%3E-for-%26Script" class="impl"><a href="#impl-Deserialize%3C'de%3E-for-%26Script" class="anchor">§</a><h3 class="code-header">impl&lt;'de&gt; <a class="trait" href="../../hashes/serde/trait.Deserialize.html" title="trait bdk_chain::bitcoin::hashes::serde::Deserialize">Deserialize</a>&lt;'de&gt; for &amp;'de <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Can only deserialize borrowed bytes.</p>
147 </div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.deserialize" class="method trait-impl"><a href="#method.deserialize" class="anchor">§</a><h4 class="code-header">fn <a href="../../hashes/serde/trait.Deserialize.html#tymethod.deserialize" class="fn">deserialize</a>&lt;D&gt;(
148 deserializer: D
149 ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;&amp;'de <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>, &lt;D as <a class="trait" href="../../hashes/serde/trait.Deserializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Deserializer">Deserializer</a>&lt;'de&gt;&gt;::<a class="associatedtype" href="../../hashes/serde/trait.Deserializer.html#associatedtype.Error" title="type bdk_chain::bitcoin::hashes::serde::Deserializer::Error">Error</a>&gt;<div class="where">where
150 D: <a class="trait" href="../../hashes/serde/trait.Deserializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Deserializer">Deserializer</a>&lt;'de&gt;,</div></h4></section></summary><div class='docblock'>Deserialize this value from the given Serde deserializer. <a href="../../hashes/serde/trait.Deserialize.html#tymethod.deserialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Display-for-Script" class="impl"><a href="#impl-Display-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt-1" class="method trait-impl"><a href="#method.fmt-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Encodable-for-Script" class="impl"><a href="#impl-Encodable-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../consensus/trait.Encodable.html" title="trait bdk_chain::bitcoin::consensus::Encodable">Encodable</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.consensus_encode" class="method trait-impl"><a href="#method.consensus_encode" class="anchor">§</a><h4 class="code-header">fn <a href="../../consensus/trait.Encodable.html#tymethod.consensus_encode" class="fn">consensus_encode</a>&lt;W&gt;(&amp;self, w: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut W</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="struct" href="../../io/struct.Error.html" title="struct bdk_chain::bitcoin::io::Error">Error</a>&gt;<div class="where">where
151 W: <a class="trait" href="../../io/trait.Write.html" title="trait bdk_chain::bitcoin::io::Write">Write</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Encodes an object with a well-defined format. <a href="../../consensus/trait.Encodable.html#tymethod.consensus_encode">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%26Script%3E-for-Arc%3CScript%3E" class="impl"><a href="#impl-From%3C%26Script%3E-for-Arc%3CScript%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h3></section></summary><div class="docblock"><p>Note: This will fail to compile on old Rust for targets that don’t support atomics</p>
152 </div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(value: &amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%26Script%3E-for-Box%3CScript%3E" class="impl"><a href="#impl-From%3C%26Script%3E-for-Box%3CScript%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(value: &amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%26Script%3E-for-Cow%3C'a,+Script%3E" class="impl"><a href="#impl-From%3C%26Script%3E-for-Cow%3C'a,+Script%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="enum" href="https://doc.rust-lang.org/nightly/alloc/borrow/enum.Cow.html" title="enum alloc::borrow::Cow">Cow</a>&lt;'a, <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(value: &amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/alloc/borrow/enum.Cow.html" title="enum alloc::borrow::Cow">Cow</a>&lt;'a, <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%26Script%3E-for-Rc%3CScript%3E" class="impl"><a href="#impl-From%3C%26Script%3E-for-Rc%3CScript%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(value: &amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%26Script%3E-for-ScriptBuf" class="impl"><a href="#impl-From%3C%26Script%3E-for-ScriptBuf" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(value: &amp;'a <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%26Script%3E-for-ScriptHash" class="impl"><a href="#impl-From%3C%26Script%3E-for-ScriptHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptHash.html" title="struct bdk_chain::bitcoin::ScriptHash">ScriptHash</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(script: &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="struct" href="../../struct.ScriptHash.html" title="struct bdk_chain::bitcoin::ScriptHash">ScriptHash</a></h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%26Script%3E-for-WScriptHash" class="impl"><a href="#impl-From%3C%26Script%3E-for-WScriptHash" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.WScriptHash.html" title="struct bdk_chain::bitcoin::WScriptHash">WScriptHash</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(script: &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="struct" href="../../struct.WScriptHash.html" title="struct bdk_chain::bitcoin::WScriptHash">WScriptHash</a></h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CCow%3C'a,+Script%3E%3E-for-Box%3CScript%3E" class="impl"><a href="#impl-From%3CCow%3C'a,+Script%3E%3E-for-Box%3CScript%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/alloc/borrow/enum.Cow.html" title="enum alloc::borrow::Cow">Cow</a>&lt;'a, <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;&gt; for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(value: <a class="enum" href="https://doc.rust-lang.org/nightly/alloc/borrow/enum.Cow.html" title="enum alloc::borrow::Cow">Cow</a>&lt;'a, <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CScriptBuf%3E-for-Box%3CScript%3E" class="impl"><a href="#impl-From%3CScriptBuf%3E-for-Box%3CScript%3E" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a>&gt; for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(v: <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a>) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt;</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Hash-for-Script" class="impl"><a href="#impl-Hash-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.hash" class="method trait-impl"><a href="#method.hash" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#tymethod.hash" class="fn">hash</a>&lt;__H&gt;(&amp;self, state: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut __H</a>)<div class="where">where
153 __H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,</div></h4></section></summary><div class='docblock'>Feeds this value into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#tymethod.hash">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Index%3C(Bound%3Cusize%3E,+Bound%3Cusize%3E)%3E-for-Script" class="impl"><a href="#impl-Index%3C(Bound%3Cusize%3E,+Bound%3Cusize%3E)%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;(<a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/range/enum.Bound.html" title="enum core::ops::range::Bound">Bound</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/range/enum.Bound.html" title="enum core::ops::range::Bound">Bound</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;)&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Script subslicing operation - read <a href="#slicing-safety">slicing safety</a>!</p>
154 </div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output-6" class="associatedtype trait-impl"><a href="#associatedtype.Output-6" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>The returned type after indexing.</div></details><details class="toggle method-toggle" open><summary><section id="method.index-6" class="method trait-impl"><a href="#method.index-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index" class="fn">index</a>(
155 &amp;self,
156 index: (<a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/range/enum.Bound.html" title="enum core::ops::range::Bound">Bound</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/range/enum.Bound.html" title="enum core::ops::range::Bound">Bound</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;)
157 ) -&gt; &amp;&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;(<a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/range/enum.Bound.html" title="enum core::ops::range::Bound">Bound</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/range/enum.Bound.html" title="enum core::ops::range::Bound">Bound</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;)&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" title="type core::ops::index::Index::Output">Output</a></h4></section></summary><div class='docblock'>Performs the indexing (<code>container[index]</code>) operation. <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Index%3CRange%3Cusize%3E%3E-for-Script" class="impl"><a href="#impl-Index%3CRange%3Cusize%3E%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Script subslicing operation - read <a href="#slicing-safety">slicing safety</a>!</p>
158 </div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output-2" class="associatedtype trait-impl"><a href="#associatedtype.Output-2" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>The returned type after indexing.</div></details><details class="toggle method-toggle" open><summary><section id="method.index-2" class="method trait-impl"><a href="#method.index-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index" class="fn">index</a>(&amp;self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;) -&gt; &amp;&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" title="type core::ops::index::Index::Output">Output</a></h4></section></summary><div class='docblock'>Performs the indexing (<code>container[index]</code>) operation. <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Index%3CRangeFrom%3Cusize%3E%3E-for-Script" class="impl"><a href="#impl-Index%3CRangeFrom%3Cusize%3E%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFrom.html" title="struct core::ops::range::RangeFrom">RangeFrom</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Script subslicing operation - read <a href="#slicing-safety">slicing safety</a>!</p>
159 </div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output-5" class="associatedtype trait-impl"><a href="#associatedtype.Output-5" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>The returned type after indexing.</div></details><details class="toggle method-toggle" open><summary><section id="method.index-5" class="method trait-impl"><a href="#method.index-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index" class="fn">index</a>(
160 &amp;self,
161 index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFrom.html" title="struct core::ops::range::RangeFrom">RangeFrom</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;
162 ) -&gt; &amp;&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFrom.html" title="struct core::ops::range::RangeFrom">RangeFrom</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" title="type core::ops::index::Index::Output">Output</a></h4></section></summary><div class='docblock'>Performs the indexing (<code>container[index]</code>) operation. <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Index%3CRangeFull%3E-for-Script" class="impl"><a href="#impl-Index%3CRangeFull%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Script subslicing operation - read <a href="#slicing-safety">slicing safety</a>!</p>
163 </div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output-4" class="associatedtype trait-impl"><a href="#associatedtype.Output-4" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>The returned type after indexing.</div></details><details class="toggle method-toggle" open><summary><section id="method.index-4" class="method trait-impl"><a href="#method.index-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index" class="fn">index</a>(&amp;self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>) -&gt; &amp;&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" title="type core::ops::index::Index::Output">Output</a></h4></section></summary><div class='docblock'>Performs the indexing (<code>container[index]</code>) operation. <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Index%3CRangeInclusive%3Cusize%3E%3E-for-Script" class="impl"><a href="#impl-Index%3CRangeInclusive%3Cusize%3E%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeInclusive.html" title="struct core::ops::range::RangeInclusive">RangeInclusive</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Script subslicing operation - read <a href="#slicing-safety">slicing safety</a>!</p>
164 </div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl"><a href="#associatedtype.Output" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>The returned type after indexing.</div></details><details class="toggle method-toggle" open><summary><section id="method.index" class="method trait-impl"><a href="#method.index" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index" class="fn">index</a>(
165 &amp;self,
166 index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeInclusive.html" title="struct core::ops::range::RangeInclusive">RangeInclusive</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;
167 ) -&gt; &amp;&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeInclusive.html" title="struct core::ops::range::RangeInclusive">RangeInclusive</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" title="type core::ops::index::Index::Output">Output</a></h4></section></summary><div class='docblock'>Performs the indexing (<code>container[index]</code>) operation. <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Index%3CRangeTo%3Cusize%3E%3E-for-Script" class="impl"><a href="#impl-Index%3CRangeTo%3Cusize%3E%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeTo.html" title="struct core::ops::range::RangeTo">RangeTo</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Script subslicing operation - read <a href="#slicing-safety">slicing safety</a>!</p>
168 </div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output-3" class="associatedtype trait-impl"><a href="#associatedtype.Output-3" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>The returned type after indexing.</div></details><details class="toggle method-toggle" open><summary><section id="method.index-3" class="method trait-impl"><a href="#method.index-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index" class="fn">index</a>(
169 &amp;self,
170 index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeTo.html" title="struct core::ops::range::RangeTo">RangeTo</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;
171 ) -&gt; &amp;&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeTo.html" title="struct core::ops::range::RangeTo">RangeTo</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" title="type core::ops::index::Index::Output">Output</a></h4></section></summary><div class='docblock'>Performs the indexing (<code>container[index]</code>) operation. <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Index%3CRangeToInclusive%3Cusize%3E%3E-for-Script" class="impl"><a href="#impl-Index%3CRangeToInclusive%3Cusize%3E%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeToInclusive.html" title="struct core::ops::range::RangeToInclusive">RangeToInclusive</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="docblock"><p>Script subslicing operation - read <a href="#slicing-safety">slicing safety</a>!</p>
172 </div><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output-1" class="associatedtype trait-impl"><a href="#associatedtype.Output-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h4></section></summary><div class='docblock'>The returned type after indexing.</div></details><details class="toggle method-toggle" open><summary><section id="method.index-1" class="method trait-impl"><a href="#method.index-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index" class="fn">index</a>(
173 &amp;self,
174 index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeToInclusive.html" title="struct core::ops::range::RangeToInclusive">RangeToInclusive</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;
175 ) -&gt; &amp;&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeToInclusive.html" title="struct core::ops::range::RangeToInclusive">RangeToInclusive</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>&gt;&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output" title="type core::ops::index::Index::Output">Output</a></h4></section></summary><div class='docblock'>Performs the indexing (<code>container[index]</code>) operation. <a href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-LowerHex-for-Script" class="impl"><a href="#impl-LowerHex-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.LowerHex.html" title="trait core::fmt::LowerHex">LowerHex</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt-2" class="method trait-impl"><a href="#method.fmt-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.LowerHex.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.LowerHex.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Ord-for-Script" class="impl"><a href="#impl-Ord-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp" class="fn">cmp</a>(&amp;self, other: &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class='docblock'>This method returns an <a href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering"><code>Ordering</code></a> between <code>self</code> and <code>other</code>. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CScript%3E-for-ScriptBuf" class="impl"><a href="#impl-PartialEq%3CScript%3E-for-ScriptBuf" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-2" class="method trait-impl"><a href="#method.eq-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&amp;self, other: &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
176 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
177 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CScriptBuf%3E-for-Script" class="impl"><a href="#impl-PartialEq%3CScriptBuf%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a>&lt;<a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a>&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-1" class="method trait-impl"><a href="#method.eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&amp;self, other: &amp;<a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
178 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
179 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq-for-Script" class="impl"><a href="#impl-PartialEq-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&amp;self, other: &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
180 by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#263">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
181 sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CScript%3E-for-ScriptBuf" class="impl"><a href="#impl-PartialOrd%3CScript%3E-for-ScriptBuf" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>&lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>&gt; for <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-2" class="method trait-impl"><a href="#method.partial_cmp-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&amp;self, other: &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>&gt;</h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.lt-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1179">source</a></span><a href="#method.lt-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.le-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1197">source</a></span><a href="#method.le-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;=</code>
182 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1214">source</a></span><a href="#method.gt-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.ge-2" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1232">source</a></span><a href="#method.ge-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;=</code>
183 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CScriptBuf%3E-for-Script" class="impl"><a href="#impl-PartialOrd%3CScriptBuf%3E-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>&lt;<a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a>&gt; for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-1" class="method trait-impl"><a href="#method.partial_cmp-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&amp;self, other: &amp;<a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>&gt;</h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.lt-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1179">source</a></span><a href="#method.lt-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.le-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1197">source</a></span><a href="#method.le-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;=</code>
184 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1214">source</a></span><a href="#method.gt-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.ge-1" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1232">source</a></span><a href="#method.ge-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;=</code>
185 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd-for-Script" class="impl"><a href="#impl-PartialOrd-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl"><a href="#method.partial_cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&amp;self, other: &amp;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>&gt;</h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.lt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1179">source</a></span><a href="#method.lt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.le" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1197">source</a></span><a href="#method.le" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;=</code>
186 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1214">source</a></span><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.ge" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1232">source</a></span><a href="#method.ge" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;Rhs</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;=</code>
187 operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Serialize-for-Script" class="impl"><a href="#impl-Serialize-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../../hashes/serde/trait.Serialize.html" title="trait bdk_chain::bitcoin::hashes::serde::Serialize">Serialize</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.serialize" class="method trait-impl"><a href="#method.serialize" class="anchor">§</a><h4 class="code-header">fn <a href="../../hashes/serde/trait.Serialize.html#tymethod.serialize" class="fn">serialize</a>&lt;S&gt;(
188 &amp;self,
189 serializer: S
190 ) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;&lt;S as <a class="trait" href="../../hashes/serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>&gt;::<a class="associatedtype" href="../../hashes/serde/trait.Serializer.html#associatedtype.Ok" title="type bdk_chain::bitcoin::hashes::serde::Serializer::Ok">Ok</a>, &lt;S as <a class="trait" href="../../hashes/serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>&gt;::<a class="associatedtype" href="../../hashes/serde/trait.Serializer.html#associatedtype.Error" title="type bdk_chain::bitcoin::hashes::serde::Serializer::Error">Error</a>&gt;<div class="where">where
191 S: <a class="trait" href="../../hashes/serde/trait.Serializer.html" title="trait bdk_chain::bitcoin::hashes::serde::Serializer">Serializer</a>,</div></h4></section></summary><div class="docblock"><p>User-facing serialization for <code>Script</code>.</p>
192 </div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ToOwned-for-Script" class="impl"><a href="#impl-ToOwned-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = <a class="struct" href="../../struct.ScriptBuf.html" title="struct bdk_chain::bitcoin::ScriptBuf">ScriptBuf</a></h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&amp;self) -&gt; &lt;<a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a> as <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a>&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" title="type alloc::borrow::ToOwned::Owned">Owned</a></h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.63.0">1.63.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#77">source</a></span><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&amp;self, target: &amp;mut Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" title="type alloc::borrow::ToOwned::Owned">Owned</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-UpperHex-for-Script" class="impl"><a href="#impl-UpperHex-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.UpperHex.html" title="trait core::fmt::UpperHex">UpperHex</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt-3" class="method trait-impl"><a href="#method.fmt-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.UpperHex.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.UpperHex.html#tymethod.fmt">Read more</a></div></details></div></details><section id="impl-Eq-for-Script" class="impl"><a href="#impl-Eq-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section><section id="impl-StructuralPartialEq-for-Script" class="impl"><a href="#impl-StructuralPartialEq-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-Script" class="impl"><a href="#impl-Freeze-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section><section id="impl-RefUnwindSafe-for-Script" class="impl"><a href="#impl-RefUnwindSafe-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section><section id="impl-Send-for-Script" class="impl"><a href="#impl-Send-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section><section id="impl-Sized-for-Script" class="impl"><a href="#impl-Sized-for-Script" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section><section id="impl-Sync-for-Script" class="impl"><a href="#impl-Sync-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section><section id="impl-Unpin-for-Script" class="impl"><a href="#impl-Unpin-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section><section id="impl-UnwindSafe-for-Script" class="impl"><a href="#impl-UnwindSafe-for-Script" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../struct.Script.html" title="struct bdk_chain::bitcoin::Script">Script</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#140">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
193 T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
194 T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow-1" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210">source</a><a href="#method.borrow-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
195 T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut-1" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Equivalent%3CK%3E-for-Q" class="impl"><a href="#impl-Equivalent%3CK%3E-for-Q" class="anchor">§</a><h3 class="code-header">impl&lt;Q, K&gt; Equivalent&lt;K&gt; for Q<div class="where">where
196 Q: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
197 K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;Q&gt; + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.equivalent" class="method trait-impl"><a href="#method.equivalent" class="anchor">§</a><h4 class="code-header">fn <a class="fn">equivalent</a>(&amp;self, key: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;K</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Checks if this value is equivalent to the given key. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToString-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/string.rs.html#2548">source</a><a href="#impl-ToString-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html" title="trait alloc::string::ToString">ToString</a> for T<div class="where">where
198 T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.to_string" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/string.rs.html#2554">source</a><a href="#method.to_string" class="anchor">§</a><h4 class="code-header">default fn <a href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html#tymethod.to_string" class="fn">to_string</a>(&amp;self) -&gt; <a class="struct" href="../../base58/struct.String.html" title="struct bdk_chain::bitcoin::base58::String">String</a></h4></section></summary><div class='docblock'>Converts the given value to a <code>String</code>. <a href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html#tymethod.to_string">Read more</a></div></details></div></details></div><script type="text/json" id="notable-traits-data">{"&[u8]":"<h3>Notable traits for <code>&amp;[<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.u8.html\">u8</a>]</code></h3><pre><code><div class=\"where\">impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> for &amp;[<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.u8.html\">u8</a>]</div>","&mut [u8]":"<h3>Notable traits for <code>&amp;mut [<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.u8.html\">u8</a>]</code></h3><pre><code><div class=\"where\">impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> for &amp;mut [<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.u8.html\">u8</a>]</div>","Bytes<'_>":"<h3>Notable traits for <code><a class=\"struct\" href=\"struct.Bytes.html\" title=\"struct bdk_chain::bitcoin::blockdata::script::Bytes\">Bytes</a>&lt;'_&gt;</code></h3><pre><code><div class=\"where\">impl <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"struct.Bytes.html\" title=\"struct bdk_chain::bitcoin::blockdata::script::Bytes\">Bytes</a>&lt;'_&gt;</div><div class=\"where\"> type <a href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" class=\"associatedtype\">Item</a> = <a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.u8.html\">u8</a>;</div>","InstructionIndices<'_>":"<h3>Notable traits for <code><a class=\"struct\" href=\"struct.InstructionIndices.html\" title=\"struct bdk_chain::bitcoin::blockdata::script::InstructionIndices\">InstructionIndices</a>&lt;'a&gt;</code></h3><pre><code><div class=\"where\">impl&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"struct.InstructionIndices.html\" title=\"struct bdk_chain::bitcoin::blockdata::script::InstructionIndices\">InstructionIndices</a>&lt;'a&gt;</div><div class=\"where\"> type <a href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" class=\"associatedtype\">Item</a> = <a class=\"enum\" href=\"https://doc.rust-lang.org/nightly/core/result/enum.Result.html\" title=\"enum core::result::Result\">Result</a>&lt;(<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.usize.html\">usize</a>, <a class=\"enum\" href=\"enum.Instruction.html\" title=\"enum bdk_chain::bitcoin::blockdata::script::Instruction\">Instruction</a>&lt;'a&gt;), <a class=\"enum\" href=\"enum.Error.html\" title=\"enum bdk_chain::bitcoin::blockdata::script::Error\">Error</a>&gt;;</div>","Instructions<'_>":"<h3>Notable traits for <code><a class=\"struct\" href=\"struct.Instructions.html\" title=\"struct bdk_chain::bitcoin::blockdata::script::Instructions\">Instructions</a>&lt;'a&gt;</code></h3><pre><code><div class=\"where\">impl&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"struct.Instructions.html\" title=\"struct bdk_chain::bitcoin::blockdata::script::Instructions\">Instructions</a>&lt;'a&gt;</div><div class=\"where\"> type <a href=\"https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" class=\"associatedtype\">Item</a> = <a class=\"enum\" href=\"https://doc.rust-lang.org/nightly/core/result/enum.Result.html\" title=\"enum core::result::Result\">Result</a>&lt;<a class=\"enum\" href=\"enum.Instruction.html\" title=\"enum bdk_chain::bitcoin::blockdata::script::Instruction\">Instruction</a>&lt;'a&gt;, <a class=\"enum\" href=\"enum.Error.html\" title=\"enum bdk_chain::bitcoin::blockdata::script::Error\">Error</a>&gt;;</div>","Vec<u8>":"<h3>Notable traits for <code><a class=\"struct\" href=\"../../base58/struct.Vec.html\" title=\"struct bdk_chain::bitcoin::base58::Vec\">Vec</a>&lt;<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.u8.html\">u8</a>, A&gt;</code></h3><pre><code><div class=\"where\">impl&lt;A&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> for <a class=\"struct\" href=\"../../base58/struct.Vec.html\" title=\"struct bdk_chain::bitcoin::base58::Vec\">Vec</a>&lt;<a class=\"primitive\" href=\"https://doc.rust-lang.org/nightly/std/primitive.u8.html\">u8</a>, A&gt;<div class=\"where\">where\n A: <a class=\"trait\" href=\"https://doc.rust-lang.org/nightly/core/alloc/trait.Allocator.html\" title=\"trait core::alloc::Allocator\">Allocator</a>,</div></div>"}</script></section></div></main></body></html>