<img src="https://github.com/bitcoindevkit/bdk/raw/master/static/bdk.png" alt="logo"></div>
</a><h2 class="location"><a href="#">SqliteDatabase</a></h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><div class="sidebar-links"><a href="#structfield.connection">connection</a><a href="#structfield.path">path</a></div><h3 class="sidebar-title"><a href="#implementations">Associated Constants</a></h3><div class="sidebar-links"><a href="#associatedconstant.ALIGN">ALIGN</a></div><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><div class="sidebar-links"><a href="#method.new">new</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-BatchDatabase">BatchDatabase</a><a href="#impl-BatchOperations">BatchOperations</a><a href="#impl-ConfigurableDatabase">ConfigurableDatabase</a><a href="#impl-Database">Database</a><a href="#impl-Debug">Debug</a><a href="#impl-From%3C%3CSqliteDatabase%20as%20BatchDatabase%3E%3A%3ABatch%3E">From<<SqliteDatabase as BatchDatabase>::Batch></a><a href="#impl-From%3CSqliteDatabase%3E">From<SqliteDatabase></a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">!RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">!Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">!UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow<T></a><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a><a href="#impl-From%3CT%3E">From<T></a><a href="#impl-Into%3CU%3E">Into<U></a><a href="#impl-Pointable">Pointable</a><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a><a href="#impl-TryInto%3CU%3E">TryInto<U></a><a href="#impl-VZip%3CV%3E">VZip<V></a></div></div><h2 class="location">In <a href="../index.html">bdk</a>::<wbr><a href="index.html">database</a></h2><div id="sidebar-vars" data-name="SqliteDatabase" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../bdk/index.html">
<img src="https://github.com/bitcoindevkit/bdk/raw/master/static/bdk.png" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
- <h1 class="fqn"><span class="in-band">Struct <a href="../index.html">bdk</a>::<wbr><a href="index.html">database</a>::<wbr><a class="struct" href="#">SqliteDatabase</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#63-68" title="goto source code">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust struct"><code>pub struct SqliteDatabase {
+ <h1 class="fqn"><span class="in-band">Struct <a href="../index.html">bdk</a>::<wbr><a href="index.html">database</a>::<wbr><a class="struct" href="#">SqliteDatabase</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#68-73" title="goto source code">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust struct"><code>pub struct SqliteDatabase {
pub path: <a class="struct" href="https://doc.rust-lang.org/nightly/std/path/struct.PathBuf.html" title="struct std::path::PathBuf">PathBuf</a>,
pub connection: Connection,
}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Sqlite database stored on filesystem</p>
<a href="index.html" title="crate::database"><code>crate::database</code></a></p>
</div></details><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.path" class="structfield small-section-header"><a href="#structfield.path" class="anchor field"></a><code>path: <a class="struct" href="https://doc.rust-lang.org/nightly/std/path/struct.PathBuf.html" title="struct std::path::PathBuf">PathBuf</a></code></span><div class="docblock"><p>Path on the local filesystem to store the sqlite file</p>
</div><span id="structfield.connection" class="structfield small-section-header"><a href="#structfield.connection" class="anchor field"></a><code>connection: Connection</code></span><div class="docblock"><p>A rusqlite connection object to the sqlite database</p>
-</div><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#70-627" title="goto source code">source</a></div><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.new" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#73-79" title="goto source code">source</a></div><a href="#method.new" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.new" class="fnname">new</a><T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="struct" href="https://doc.rust-lang.org/nightly/std/path/struct.Path.html" title="struct std::path::Path">Path</a>>>(path: T) -> Self</h4></div></summary><div class="docblock"><p>Instantiate a new SqliteDatabase instance by creating a connection
+</div><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#75-632" title="goto source code">source</a></div><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.new" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#78-84" title="goto source code">source</a></div><a href="#method.new" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.new" class="fnname">new</a><T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="struct" href="https://doc.rust-lang.org/nightly/std/path/struct.Path.html" title="struct std::path::Path">Path</a>>>(path: T) -> Self</h4></div></summary><div class="docblock"><p>Instantiate a new SqliteDatabase instance by creating a connection
to the database stored at path</p>
-</div></details></div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-BatchDatabase" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#903-916" title="goto source code">source</a></div><a href="#impl-BatchDatabase" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Batch" class="type trait-impl has-srclink"><a href="#associatedtype.Batch" class="anchor"></a><h4 class="code-header">type <a href="trait.BatchDatabase.html#associatedtype.Batch" class="associatedtype">Batch</a> = <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h4></div></summary><div class='docblock'><p>Container for the operations</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.begin_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#906-910" title="goto source code">source</a></div><a href="#method.begin_batch" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchDatabase.html#tymethod.begin_batch" class="fnname">begin_batch</a>(&self) -> Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a></h4></div></summary><div class='docblock'><p>Create a new batch container</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.commit_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#912-915" title="goto source code">source</a></div><a href="#method.commit_batch" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchDatabase.html#tymethod.commit_batch" class="fnname">commit_batch</a>(&mut self, batch: Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Consume and apply a batch of operations</p>
-</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-BatchOperations" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#629-783" title="goto source code">source</a></div><a href="#impl-BatchOperations" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#630-639" title="goto source code">source</a></div><a href="#method.set_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_script_pubkey" class="fnname">set_script_pubkey</a>(<br> &mut self, <br> script: &Script, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> child: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store a script_pubkey along with its keychain and child number.</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#641-651" title="goto source code">source</a></div><a href="#method.set_utxo" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_utxo" class="fnname">set_utxo</a>(&mut self, utxo: &<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store a <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a></p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#653-663" title="goto source code">source</a></div><a href="#method.set_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_raw_tx" class="fnname">set_raw_tx</a>(&mut self, transaction: &Transaction) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store a raw transaction</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#665-680" title="goto source code">source</a></div><a href="#method.set_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_tx" class="fnname">set_tx</a>(&mut self, transaction: &<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store the metadata of a transaction</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#682-685" title="goto source code">source</a></div><a href="#method.set_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_last_index" class="fnname">set_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store the last derivation index for a given keychain.</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#687-690" title="goto source code">source</a></div><a href="#method.set_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_sync_time" class="fnname">set_sync_time</a>(&mut self, ct: <a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store the sync time</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#692-706" title="goto source code">source</a></div><a href="#method.del_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_script_pubkey_from_path" class="fnname">del_script_pubkey_from_path</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> child: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete a script_pubkey given the keychain and its child number.</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#708-719" title="goto source code">source</a></div><a href="#method.del_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_path_from_script_pubkey" class="fnname">del_path_from_script_pubkey</a>(<br> &mut self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete the data related to a specific script_pubkey, meaning the keychain and the child
+</div></details></div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-BatchDatabase" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#908-921" title="goto source code">source</a></div><a href="#impl-BatchDatabase" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Batch" class="type trait-impl has-srclink"><a href="#associatedtype.Batch" class="anchor"></a><h4 class="code-header">type <a href="trait.BatchDatabase.html#associatedtype.Batch" class="associatedtype">Batch</a> = <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h4></div></summary><div class='docblock'><p>Container for the operations</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.begin_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#911-915" title="goto source code">source</a></div><a href="#method.begin_batch" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchDatabase.html#tymethod.begin_batch" class="fnname">begin_batch</a>(&self) -> Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a></h4></div></summary><div class='docblock'><p>Create a new batch container</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.commit_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#917-920" title="goto source code">source</a></div><a href="#method.commit_batch" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchDatabase.html#tymethod.commit_batch" class="fnname">commit_batch</a>(&mut self, batch: Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Consume and apply a batch of operations</p>
+</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-BatchOperations" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#634-788" title="goto source code">source</a></div><a href="#impl-BatchOperations" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#635-644" title="goto source code">source</a></div><a href="#method.set_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_script_pubkey" class="fnname">set_script_pubkey</a>(<br> &mut self, <br> script: &Script, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> child: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store a script_pubkey along with its keychain and child number.</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#646-656" title="goto source code">source</a></div><a href="#method.set_utxo" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_utxo" class="fnname">set_utxo</a>(&mut self, utxo: &<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store a <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a></p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#658-668" title="goto source code">source</a></div><a href="#method.set_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_raw_tx" class="fnname">set_raw_tx</a>(&mut self, transaction: &Transaction) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store a raw transaction</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#670-685" title="goto source code">source</a></div><a href="#method.set_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_tx" class="fnname">set_tx</a>(&mut self, transaction: &<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store the metadata of a transaction</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#687-690" title="goto source code">source</a></div><a href="#method.set_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_last_index" class="fnname">set_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store the last derivation index for a given keychain.</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.set_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#692-695" title="goto source code">source</a></div><a href="#method.set_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.set_sync_time" class="fnname">set_sync_time</a>(&mut self, ct: <a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Store the sync time</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#697-711" title="goto source code">source</a></div><a href="#method.del_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_script_pubkey_from_path" class="fnname">del_script_pubkey_from_path</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> child: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete a script_pubkey given the keychain and its child number.</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#713-724" title="goto source code">source</a></div><a href="#method.del_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_path_from_script_pubkey" class="fnname">del_path_from_script_pubkey</a>(<br> &mut self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete the data related to a specific script_pubkey, meaning the keychain and the child
number. <a href="trait.BatchOperations.html#tymethod.del_path_from_script_pubkey">Read more</a></p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#721-729" title="goto source code">source</a></div><a href="#method.del_utxo" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_utxo" class="fnname">del_utxo</a>(&mut self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete a <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a> given its [<code>OutPoint</code>]</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#731-739" title="goto source code">source</a></div><a href="#method.del_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_raw_tx" class="fnname">del_raw_tx</a>(&mut self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete a raw transaction given its [<code>Txid</code>]</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#741-759" title="goto source code">source</a></div><a href="#method.del_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_tx" class="fnname">del_tx</a>(<br> &mut self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete the metadata of a transaction and optionally the raw transaction itself</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#761-771" title="goto source code">source</a></div><a href="#method.del_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_last_index" class="fnname">del_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete the last derivation index for a keychain.</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#773-782" title="goto source code">source</a></div><a href="#method.del_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_sync_time" class="fnname">del_sync_time</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Reset the sync time to <code>None</code> <a href="trait.BatchOperations.html#tymethod.del_sync_time">Read more</a></p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#726-734" title="goto source code">source</a></div><a href="#method.del_utxo" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_utxo" class="fnname">del_utxo</a>(&mut self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete a <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a> given its [<code>OutPoint</code>]</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#736-744" title="goto source code">source</a></div><a href="#method.del_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_raw_tx" class="fnname">del_raw_tx</a>(&mut self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete a raw transaction given its [<code>Txid</code>]</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#746-764" title="goto source code">source</a></div><a href="#method.del_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_tx" class="fnname">del_tx</a>(<br> &mut self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete the metadata of a transaction and optionally the raw transaction itself</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#766-776" title="goto source code">source</a></div><a href="#method.del_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_last_index" class="fnname">del_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Delete the last derivation index for a keychain.</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.del_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#778-787" title="goto source code">source</a></div><a href="#method.del_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="trait.BatchOperations.html#tymethod.del_sync_time" class="fnname">del_sync_time</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Reset the sync time to <code>None</code> <a href="trait.BatchOperations.html#tymethod.del_sync_time">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-ConfigurableDatabase" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#380-386" title="goto source code">source</a></div><a href="#impl-ConfigurableDatabase" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.ConfigurableDatabase.html" title="trait bdk::database::ConfigurableDatabase">ConfigurableDatabase</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Config" class="type trait-impl has-srclink"><a href="#associatedtype.Config" class="anchor"></a><h4 class="code-header">type <a href="trait.ConfigurableDatabase.html#associatedtype.Config" class="associatedtype">Config</a> = <a class="struct" href="any/struct.SqliteDbConfiguration.html" title="struct bdk::database::any::SqliteDbConfiguration">SqliteDbConfiguration</a></h4></div></summary><div class='docblock'><p>Type that contains the configuration</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from_config" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#383-385" title="goto source code">source</a></div><a href="#method.from_config" class="anchor"></a><h4 class="code-header">fn <a href="trait.ConfigurableDatabase.html#tymethod.from_config" class="fnname">from_config</a>(config: &Self::<a class="associatedtype" href="trait.ConfigurableDatabase.html#associatedtype.Config" title="type bdk::database::ConfigurableDatabase::Config">Config</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Create a new instance given a configuration</p>
-</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Database" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#785-901" title="goto source code">source</a></div><a href="#impl-Database" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.check_descriptor_checksum" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#786-806" title="goto source code">source</a></div><a href="#method.check_descriptor_checksum" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.check_descriptor_checksum" class="fnname">check_descriptor_checksum</a><B: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>>>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> bytes: B<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Read and checks the descriptor checksum for a given keychain. <a href="trait.Database.html#tymethod.check_descriptor_checksum">Read more</a></p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_script_pubkeys" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#808-816" title="goto source code">source</a></div><a href="#method.iter_script_pubkeys" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_script_pubkeys" class="fnname">iter_script_pubkeys</a>(<br> &self, <br> keychain: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of script_pubkeys</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_utxos" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#818-820" title="goto source code">source</a></div><a href="#method.iter_utxos" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_utxos" class="fnname">iter_utxos</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a>s</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_raw_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#822-824" title="goto source code">source</a></div><a href="#method.iter_raw_txs" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_raw_txs" class="fnname">iter_raw_txs</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of raw transactions</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#826-831" title="goto source code">source</a></div><a href="#method.iter_txs" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_txs" class="fnname">iter_txs</a>(&self, include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of transactions metadata</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#833-843" title="goto source code">source</a></div><a href="#method.get_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_script_pubkey_from_path" class="fnname">get_script_pubkey_from_path</a>(<br> &self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> child: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch a script_pubkey given the child number of a keychain.</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#845-853" title="goto source code">source</a></div><a href="#method.get_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_path_from_script_pubkey" class="fnname">get_path_from_script_pubkey</a>(<br> &self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch the keychain and child number of a given script_pubkey</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#855-857" title="goto source code">source</a></div><a href="#method.get_utxo" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_utxo" class="fnname">get_utxo</a>(&self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch a <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a> given its [<code>OutPoint</code>]</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#859-864" title="goto source code">source</a></div><a href="#method.get_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_raw_tx" class="fnname">get_raw_tx</a>(&self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch a raw transaction given its [<code>Txid</code>]</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#866-876" title="goto source code">source</a></div><a href="#method.get_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_tx" class="fnname">get_tx</a>(<br> &self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch the transaction metadata and optionally also the raw transaction</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#878-882" title="goto source code">source</a></div><a href="#method.get_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_last_index" class="fnname">get_last_index</a>(&self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the last derivation index for a keychain.</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#884-886" title="goto source code">source</a></div><a href="#method.get_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_sync_time" class="fnname">get_sync_time</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the sync time, if present</p>
-</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.increment_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#888-900" title="goto source code">source</a></div><a href="#method.increment_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.increment_last_index" class="fnname">increment_last_index</a>(&mut self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Increment the last derivation index for a keychain and return it <a href="trait.Database.html#tymethod.increment_last_index">Read more</a></p>
-</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Debug" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#62" title="goto source code">source</a></div><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">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.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#62" title="goto source code">source</a></div><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="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>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></p>
+</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Database" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#790-906" title="goto source code">source</a></div><a href="#impl-Database" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.check_descriptor_checksum" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#791-811" title="goto source code">source</a></div><a href="#method.check_descriptor_checksum" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.check_descriptor_checksum" class="fnname">check_descriptor_checksum</a><B: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>>>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> bytes: B<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Read and checks the descriptor checksum for a given keychain. <a href="trait.Database.html#tymethod.check_descriptor_checksum">Read more</a></p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_script_pubkeys" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#813-821" title="goto source code">source</a></div><a href="#method.iter_script_pubkeys" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_script_pubkeys" class="fnname">iter_script_pubkeys</a>(<br> &self, <br> keychain: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of script_pubkeys</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_utxos" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#823-825" title="goto source code">source</a></div><a href="#method.iter_utxos" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_utxos" class="fnname">iter_utxos</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a>s</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_raw_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#827-829" title="goto source code">source</a></div><a href="#method.iter_raw_txs" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_raw_txs" class="fnname">iter_raw_txs</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of raw transactions</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.iter_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#831-836" title="goto source code">source</a></div><a href="#method.iter_txs" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.iter_txs" class="fnname">iter_txs</a>(&self, include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the list of transactions metadata</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#838-848" title="goto source code">source</a></div><a href="#method.get_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_script_pubkey_from_path" class="fnname">get_script_pubkey_from_path</a>(<br> &self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> child: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch a script_pubkey given the child number of a keychain.</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#850-858" title="goto source code">source</a></div><a href="#method.get_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_path_from_script_pubkey" class="fnname">get_path_from_script_pubkey</a>(<br> &self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch the keychain and child number of a given script_pubkey</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#860-862" title="goto source code">source</a></div><a href="#method.get_utxo" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_utxo" class="fnname">get_utxo</a>(&self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch a <a href="../struct.LocalUtxo.html" title="LocalUtxo"><code>LocalUtxo</code></a> given its [<code>OutPoint</code>]</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#864-869" title="goto source code">source</a></div><a href="#method.get_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_raw_tx" class="fnname">get_raw_tx</a>(&self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch a raw transaction given its [<code>Txid</code>]</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#871-881" title="goto source code">source</a></div><a href="#method.get_tx" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_tx" class="fnname">get_tx</a>(<br> &self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Fetch the transaction metadata and optionally also the raw transaction</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#883-887" title="goto source code">source</a></div><a href="#method.get_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_last_index" class="fnname">get_last_index</a>(&self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the last derivation index for a keychain.</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.get_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#889-891" title="goto source code">source</a></div><a href="#method.get_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.get_sync_time" class="fnname">get_sync_time</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Return the sync time, if present</p>
+</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.increment_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#893-905" title="goto source code">source</a></div><a href="#method.increment_last_index" class="anchor"></a><h4 class="code-header">fn <a href="trait.Database.html#tymethod.increment_last_index" class="fnname">increment_last_index</a>(&mut self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class='docblock'><p>Increment the last derivation index for a keychain and return it <a href="trait.Database.html#tymethod.increment_last_index">Read more</a></p>
+</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Debug" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#67" title="goto source code">source</a></div><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">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.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#67" title="goto source code">source</a></div><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="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>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></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3C%3CSqliteDatabase%20as%20BatchDatabase%3E%3A%3ABatch%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#118" title="goto source code">source</a></div><a href="#impl-From%3C%3CSqliteDatabase%20as%20BatchDatabase%3E%3A%3ABatch%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><<<a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a> as <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a>>::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a>> for <a class="enum" href="any/enum.AnyBatch.html" title="enum bdk::database::any::AnyBatch">AnyBatch</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#118" title="goto source code">source</a></div><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="fnname">from</a>(inner: <<a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a> as <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a>>::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a>) -> Self</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CSqliteDatabase%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#96" title="goto source code">source</a></div><a href="#impl-From%3CSqliteDatabase%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a>> for <a class="enum" href="any/enum.AnyDatabase.html" title="enum bdk::database::any::AnyDatabase">AnyDatabase</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#96" title="goto source code">source</a></div><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="fnname">from</a>(inner: <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a>) -> Self</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><div id="impl-RefUnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">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.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div><div id="impl-Send" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">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.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div><div id="impl-Sync" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">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.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div><div id="impl-Unpin" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">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.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div><div id="impl-UnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">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.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Any" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#132-136" title="goto source code">source</a></div><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br> T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.type_id" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#133" title="goto source code">source</a></div><a href="#method.type_id" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></div></summary><div class='docblock'><p>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></p>
</div></details><h2 id="associated-types" class="small-section-header">Associated Types<a href="#associated-types" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Batch" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/mod.rs.html#168" title="goto source code">source</a></div><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a>: <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a></h4></div></summary><div class="docblock"><p>Container for the operations</p>
</div></details></div><h2 id="required-methods" class="small-section-header">Required methods<a href="#required-methods" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle" open><summary><div id="tymethod.begin_batch" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/mod.rs.html#171" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.begin_batch" class="fnname">begin_batch</a>(&self) -> Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a></h4></div></summary><div class="docblock"><p>Create a new batch container</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.commit_batch" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/mod.rs.html#173" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.commit_batch" class="fnname">commit_batch</a>(&mut self, batch: Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class="docblock"><p>Consume and apply a batch of operations</p>
-</div></details></div><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase-for-Tree" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#393-403" title="goto source code">source</a></div><a href="#impl-BatchDatabase-for-Tree" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for Tree</h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-1" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-1" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = Batch</h4></div><div id="method.begin_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#396-398" title="goto source code">source</a></div><a href="#method.begin_batch" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.begin_batch" class="fnname">begin_batch</a>(&self) -> Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a></h4></div><div id="method.commit_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#400-402" title="goto source code">source</a></div><a href="#method.commit_batch" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.commit_batch" class="fnname">commit_batch</a>(&mut self, batch: Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#319-350" title="goto source code">source</a></div><a href="#impl-BatchDatabase" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="enum" href="any/enum.AnyDatabase.html" title="enum bdk::database::any::AnyDatabase">AnyDatabase</a></h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-2" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-2" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = <a class="enum" href="any/enum.AnyBatch.html" title="enum bdk::database::any::AnyBatch">AnyBatch</a></h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/memory.rs.html#454-468" title="goto source code">source</a></div><a href="#impl-BatchDatabase-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="struct" href="memory/struct.MemoryDatabase.html" title="struct bdk::database::memory::MemoryDatabase">MemoryDatabase</a></h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-3" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-3" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = Self</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase-2" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#903-916" title="goto source code">source</a></div><a href="#impl-BatchDatabase-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-4" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-4" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h4></div></div></details></div><script type="text/javascript" src="../../implementors/bdk/database/trait.BatchDatabase.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="bdk" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.60.0-nightly (51126be1b 2022-01-24)" ></div>
+</div></details></div><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase-for-Tree" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#393-403" title="goto source code">source</a></div><a href="#impl-BatchDatabase-for-Tree" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for Tree</h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-1" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-1" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = Batch</h4></div><div id="method.begin_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#396-398" title="goto source code">source</a></div><a href="#method.begin_batch" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.begin_batch" class="fnname">begin_batch</a>(&self) -> Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a></h4></div><div id="method.commit_batch" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#400-402" title="goto source code">source</a></div><a href="#method.commit_batch" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.commit_batch" class="fnname">commit_batch</a>(&mut self, batch: Self::<a class="associatedtype" href="trait.BatchDatabase.html#associatedtype.Batch" title="type bdk::database::BatchDatabase::Batch">Batch</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#319-350" title="goto source code">source</a></div><a href="#impl-BatchDatabase" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="enum" href="any/enum.AnyDatabase.html" title="enum bdk::database::any::AnyDatabase">AnyDatabase</a></h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-2" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-2" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = <a class="enum" href="any/enum.AnyBatch.html" title="enum bdk::database::any::AnyBatch">AnyBatch</a></h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/memory.rs.html#454-468" title="goto source code">source</a></div><a href="#impl-BatchDatabase-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="struct" href="memory/struct.MemoryDatabase.html" title="struct bdk::database::memory::MemoryDatabase">MemoryDatabase</a></h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-3" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-3" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = Self</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchDatabase-2" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#908-921" title="goto source code">source</a></div><a href="#impl-BatchDatabase-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchDatabase.html" title="trait bdk::database::BatchDatabase">BatchDatabase</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></summary><div class="impl-items"><div id="associatedtype.Batch-4" class="type trait-impl has-srclink"><a href="#associatedtype.Batch-4" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Batch" class="associatedtype">Batch</a> = <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h4></div></div></details></div><script type="text/javascript" src="../../implementors/bdk/database/trait.BatchDatabase.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="bdk" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.60.0-nightly (51126be1b 2022-01-24)" ></div>
</body></html>
\ No newline at end of file
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.del_last_index" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/mod.rs.html#104" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.del_last_index" class="fnname">del_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class="docblock"><p>Delete the last derivation index for a keychain.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.del_sync_time" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/mod.rs.html#108" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.del_sync_time" class="fnname">del_sync_time</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class="docblock"><p>Reset the sync time to <code>None</code></p>
<p>Returns the removed value</p>
-</div></details></div><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchOperations-for-Tree" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#189-191" title="goto source code">source</a></div><a href="#impl-BatchOperations-for-Tree" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for Tree</h3></div></summary><div class="impl-items"><div id="method.set_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_script_pubkey" class="fnname">set_script_pubkey</a>(<br> &mut self, <br> script: &Script, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_utxo" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_utxo" class="fnname">set_utxo</a>(&mut self, utxo: &<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_raw_tx" class="fnname">set_raw_tx</a>(&mut self, transaction: &Transaction) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_tx" class="fnname">set_tx</a>(&mut self, transaction: &<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_last_index" class="fnname">set_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_sync_time" class="fnname">set_sync_time</a>(&mut self, data: <a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_script_pubkey_from_path" class="fnname">del_script_pubkey_from_path</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_path_from_script_pubkey" class="fnname">del_path_from_script_pubkey</a>(<br> &mut self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_utxo" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_utxo" class="fnname">del_utxo</a>(&mut self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_raw_tx" class="fnname">del_raw_tx</a>(&mut self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_tx" class="fnname">del_tx</a>(<br> &mut self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_last_index" class="fnname">del_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_sync_time" class="fnname">del_sync_time</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchOperations-for-Batch" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#199-201" title="goto source code">source</a></div><a href="#impl-BatchOperations-for-Batch" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for Batch</h3></div></summary><div class="impl-items"><div id="method.set_script_pubkey-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_script_pubkey-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_script_pubkey" class="fnname">set_script_pubkey</a>(<br> &mut self, <br> script: &Script, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_utxo-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_utxo-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_utxo" class="fnname">set_utxo</a>(&mut self, utxo: &<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_raw_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_raw_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_raw_tx" class="fnname">set_raw_tx</a>(&mut self, transaction: &Transaction) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_tx" class="fnname">set_tx</a>(&mut self, transaction: &<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_last_index-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_last_index-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_last_index" class="fnname">set_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_sync_time-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_sync_time-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_sync_time" class="fnname">set_sync_time</a>(&mut self, data: <a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_script_pubkey_from_path-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_script_pubkey_from_path-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_script_pubkey_from_path" class="fnname">del_script_pubkey_from_path</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_path_from_script_pubkey-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_path_from_script_pubkey-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_path_from_script_pubkey" class="fnname">del_path_from_script_pubkey</a>(<br> &mut self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_utxo-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_utxo-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_utxo" class="fnname">del_utxo</a>(&mut self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_raw_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_raw_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_raw_tx" class="fnname">del_raw_tx</a>(&mut self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_tx" class="fnname">del_tx</a>(<br> &mut self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_last_index-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_last_index-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_last_index" class="fnname">del_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_sync_time-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_sync_time-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_sync_time" class="fnname">del_sync_time</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><div id="impl-BatchOperations" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#260-317" title="goto source code">source</a></div><a href="#impl-BatchOperations" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="enum" href="any/enum.AnyBatch.html" title="enum bdk::database::any::AnyBatch">AnyBatch</a></h3></div><div id="impl-BatchOperations-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#120-190" title="goto source code">source</a></div><a href="#impl-BatchOperations-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="enum" href="any/enum.AnyDatabase.html" title="enum bdk::database::any::AnyDatabase">AnyDatabase</a></h3></div><div id="impl-BatchOperations-2" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/memory.rs.html#131-292" title="goto source code">source</a></div><a href="#impl-BatchOperations-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="struct" href="memory/struct.MemoryDatabase.html" title="struct bdk::database::memory::MemoryDatabase">MemoryDatabase</a></h3></div><div id="impl-BatchOperations-3" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#629-783" title="goto source code">source</a></div><a href="#impl-BatchOperations-3" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></div><script type="text/javascript" src="../../implementors/bdk/database/trait.BatchOperations.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="bdk" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.60.0-nightly (51126be1b 2022-01-24)" ></div>
+</div></details></div><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchOperations-for-Tree" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#189-191" title="goto source code">source</a></div><a href="#impl-BatchOperations-for-Tree" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for Tree</h3></div></summary><div class="impl-items"><div id="method.set_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_script_pubkey" class="fnname">set_script_pubkey</a>(<br> &mut self, <br> script: &Script, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_utxo" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_utxo" class="fnname">set_utxo</a>(&mut self, utxo: &<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_raw_tx" class="fnname">set_raw_tx</a>(&mut self, transaction: &Transaction) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_tx" class="fnname">set_tx</a>(&mut self, transaction: &<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_last_index" class="fnname">set_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.set_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_sync_time" class="fnname">set_sync_time</a>(&mut self, data: <a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_script_pubkey_from_path" class="fnname">del_script_pubkey_from_path</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_path_from_script_pubkey" class="fnname">del_path_from_script_pubkey</a>(<br> &mut self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_utxo" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_utxo" class="fnname">del_utxo</a>(&mut self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_raw_tx" class="fnname">del_raw_tx</a>(&mut self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_tx" class="fnname">del_tx</a>(<br> &mut self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_last_index" class="fnname">del_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#190" title="goto source code">source</a></div><a href="#method.del_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_sync_time" class="fnname">del_sync_time</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-BatchOperations-for-Batch" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#199-201" title="goto source code">source</a></div><a href="#impl-BatchOperations-for-Batch" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for Batch</h3></div></summary><div class="impl-items"><div id="method.set_script_pubkey-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_script_pubkey-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_script_pubkey" class="fnname">set_script_pubkey</a>(<br> &mut self, <br> script: &Script, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_utxo-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_utxo-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_utxo" class="fnname">set_utxo</a>(&mut self, utxo: &<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_raw_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_raw_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_raw_tx" class="fnname">set_raw_tx</a>(&mut self, transaction: &Transaction) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_tx" class="fnname">set_tx</a>(&mut self, transaction: &<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_last_index-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_last_index-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_last_index" class="fnname">set_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.set_sync_time-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.set_sync_time-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.set_sync_time" class="fnname">set_sync_time</a>(&mut self, data: <a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_script_pubkey_from_path-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_script_pubkey_from_path-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_script_pubkey_from_path" class="fnname">del_script_pubkey_from_path</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_path_from_script_pubkey-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_path_from_script_pubkey-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_path_from_script_pubkey" class="fnname">del_path_from_script_pubkey</a>(<br> &mut self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_utxo-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_utxo-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_utxo" class="fnname">del_utxo</a>(&mut self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_raw_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_raw_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_raw_tx" class="fnname">del_raw_tx</a>(&mut self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_tx-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_tx-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_tx" class="fnname">del_tx</a>(<br> &mut self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_last_index-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_last_index-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_last_index" class="fnname">del_last_index</a>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.del_sync_time-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#200" title="goto source code">source</a></div><a href="#method.del_sync_time-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.del_sync_time" class="fnname">del_sync_time</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><div id="impl-BatchOperations" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#260-317" title="goto source code">source</a></div><a href="#impl-BatchOperations" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="enum" href="any/enum.AnyBatch.html" title="enum bdk::database::any::AnyBatch">AnyBatch</a></h3></div><div id="impl-BatchOperations-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#120-190" title="goto source code">source</a></div><a href="#impl-BatchOperations-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="enum" href="any/enum.AnyDatabase.html" title="enum bdk::database::any::AnyDatabase">AnyDatabase</a></h3></div><div id="impl-BatchOperations-2" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/memory.rs.html#131-292" title="goto source code">source</a></div><a href="#impl-BatchOperations-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="struct" href="memory/struct.MemoryDatabase.html" title="struct bdk::database::memory::MemoryDatabase">MemoryDatabase</a></h3></div><div id="impl-BatchOperations-3" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#634-788" title="goto source code">source</a></div><a href="#impl-BatchOperations-3" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.BatchOperations.html" title="trait bdk::database::BatchOperations">BatchOperations</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></div><script type="text/javascript" src="../../implementors/bdk/database/trait.BatchOperations.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="bdk" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.60.0-nightly (51126be1b 2022-01-24)" ></div>
</body></html>
\ No newline at end of file
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.get_sync_time" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/mod.rs.html#155" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.get_sync_time" class="fnname">get_sync_time</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class="docblock"><p>Return the sync time, if present</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.increment_last_index" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/mod.rs.html#160" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.increment_last_index" class="fnname">increment_last_index</a>(&mut self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></summary><div class="docblock"><p>Increment the last derivation index for a keychain and return it</p>
<p>It should insert and return <code>0</code> if not present in the database</p>
-</div></details></div><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Database-for-Tree" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#203-382" title="goto source code">source</a></div><a href="#impl-Database-for-Tree" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for Tree</h3></div></summary><div class="impl-items"><div id="method.check_descriptor_checksum" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#204-222" title="goto source code">source</a></div><a href="#method.check_descriptor_checksum" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.check_descriptor_checksum" class="fnname">check_descriptor_checksum</a><B: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>>>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> bytes: B<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_script_pubkeys" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#224-232" title="goto source code">source</a></div><a href="#method.iter_script_pubkeys" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_script_pubkeys" class="fnname">iter_script_pubkeys</a>(<br> &self, <br> keychain: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_utxos" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#234-257" title="goto source code">source</a></div><a href="#method.iter_utxos" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_utxos" class="fnname">iter_utxos</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_raw_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#259-267" title="goto source code">source</a></div><a href="#method.iter_raw_txs" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_raw_txs" class="fnname">iter_raw_txs</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#269-283" title="goto source code">source</a></div><a href="#method.iter_txs" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_txs" class="fnname">iter_txs</a>(&self, include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#285-292" title="goto source code">source</a></div><a href="#method.get_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_script_pubkey_from_path" class="fnname">get_script_pubkey_from_path</a>(<br> &self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#294-308" title="goto source code">source</a></div><a href="#method.get_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_path_from_script_pubkey" class="fnname">get_path_from_script_pubkey</a>(<br> &self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#310-330" title="goto source code">source</a></div><a href="#method.get_utxo" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_utxo" class="fnname">get_utxo</a>(&self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#332-335" title="goto source code">source</a></div><a href="#method.get_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_raw_tx" class="fnname">get_raw_tx</a>(&self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#337-349" title="goto source code">source</a></div><a href="#method.get_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_tx" class="fnname">get_tx</a>(<br> &self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#351-354" title="goto source code">source</a></div><a href="#method.get_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_last_index" class="fnname">get_last_index</a>(&self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#356-362" title="goto source code">source</a></div><a href="#method.get_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_sync_time" class="fnname">get_sync_time</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.increment_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#365-381" title="goto source code">source</a></div><a href="#method.increment_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.increment_last_index" class="fnname">increment_last_index</a>(&mut self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><div id="impl-Database" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#192-258" title="goto source code">source</a></div><a href="#impl-Database" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="enum" href="any/enum.AnyDatabase.html" title="enum bdk::database::any::AnyDatabase">AnyDatabase</a></h3></div><div id="impl-Database-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/memory.rs.html#294-452" title="goto source code">source</a></div><a href="#impl-Database-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="struct" href="memory/struct.MemoryDatabase.html" title="struct bdk::database::memory::MemoryDatabase">MemoryDatabase</a></h3></div><div id="impl-Database-2" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#785-901" title="goto source code">source</a></div><a href="#impl-Database-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></div><script type="text/javascript" src="../../implementors/bdk/database/trait.Database.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="bdk" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.60.0-nightly (51126be1b 2022-01-24)" ></div>
+</div></details></div><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Database-for-Tree" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#203-382" title="goto source code">source</a></div><a href="#impl-Database-for-Tree" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for Tree</h3></div></summary><div class="impl-items"><div id="method.check_descriptor_checksum" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#204-222" title="goto source code">source</a></div><a href="#method.check_descriptor_checksum" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.check_descriptor_checksum" class="fnname">check_descriptor_checksum</a><B: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>>>(<br> &mut self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> bytes: B<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_script_pubkeys" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#224-232" title="goto source code">source</a></div><a href="#method.iter_script_pubkeys" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_script_pubkeys" class="fnname">iter_script_pubkeys</a>(<br> &self, <br> keychain: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_utxos" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#234-257" title="goto source code">source</a></div><a href="#method.iter_utxos" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_utxos" class="fnname">iter_utxos</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_raw_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#259-267" title="goto source code">source</a></div><a href="#method.iter_raw_txs" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_raw_txs" class="fnname">iter_raw_txs</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.iter_txs" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#269-283" title="goto source code">source</a></div><a href="#method.iter_txs" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.iter_txs" class="fnname">iter_txs</a>(&self, include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_script_pubkey_from_path" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#285-292" title="goto source code">source</a></div><a href="#method.get_script_pubkey_from_path" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_script_pubkey_from_path" class="fnname">get_script_pubkey_from_path</a>(<br> &self, <br> keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <br> path: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Script>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_path_from_script_pubkey" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#294-308" title="goto source code">source</a></div><a href="#method.get_path_from_script_pubkey" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_path_from_script_pubkey" class="fnname">get_path_from_script_pubkey</a>(<br> &self, <br> script: &Script<br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_utxo" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#310-330" title="goto source code">source</a></div><a href="#method.get_utxo" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_utxo" class="fnname">get_utxo</a>(&self, outpoint: &OutPoint) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.LocalUtxo.html" title="struct bdk::LocalUtxo">LocalUtxo</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_raw_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#332-335" title="goto source code">source</a></div><a href="#method.get_raw_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_raw_tx" class="fnname">get_raw_tx</a>(&self, txid: &Txid) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Transaction>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_tx" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#337-349" title="goto source code">source</a></div><a href="#method.get_tx" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_tx" class="fnname">get_tx</a>(<br> &self, <br> txid: &Txid, <br> include_raw: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../struct.TransactionDetails.html" title="struct bdk::TransactionDetails">TransactionDetails</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#351-354" title="goto source code">source</a></div><a href="#method.get_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_last_index" class="fnname">get_last_index</a>(&self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.get_sync_time" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#356-362" title="goto source code">source</a></div><a href="#method.get_sync_time" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.get_sync_time" class="fnname">get_sync_time</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.SyncTime.html" title="struct bdk::database::SyncTime">SyncTime</a>>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div><div id="method.increment_last_index" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/keyvalue.rs.html#365-381" title="goto source code">source</a></div><a href="#method.increment_last_index" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.increment_last_index" class="fnname">increment_last_index</a>(&mut self, keychain: <a class="enum" href="../enum.KeychainKind.html" title="enum bdk::KeychainKind">KeychainKind</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="enum" href="../enum.Error.html" title="enum bdk::Error">Error</a>></h4></div></div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><div id="impl-Database" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/any.rs.html#192-258" title="goto source code">source</a></div><a href="#impl-Database" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="enum" href="any/enum.AnyDatabase.html" title="enum bdk::database::any::AnyDatabase">AnyDatabase</a></h3></div><div id="impl-Database-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/memory.rs.html#294-452" title="goto source code">source</a></div><a href="#impl-Database-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="struct" href="memory/struct.MemoryDatabase.html" title="struct bdk::database::memory::MemoryDatabase">MemoryDatabase</a></h3></div><div id="impl-Database-2" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/bdk/database/sqlite.rs.html#790-906" title="goto source code">source</a></div><a href="#impl-Database-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.Database.html" title="trait bdk::database::Database">Database</a> for <a class="struct" href="struct.SqliteDatabase.html" title="struct bdk::database::SqliteDatabase">SqliteDatabase</a></h3></div></div><script type="text/javascript" src="../../implementors/bdk/database/trait.Database.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="bdk" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.60.0-nightly (51126be1b 2022-01-24)" ></div>
</body></html>
\ No newline at end of file
<span id="1079">1079</span>
<span id="1080">1080</span>
<span id="1081">1081</span>
+<span id="1082">1082</span>
+<span id="1083">1083</span>
+<span id="1084">1084</span>
+<span id="1085">1085</span>
+<span id="1086">1086</span>
+<span id="1087">1087</span>
+<span id="1088">1088</span>
+<span id="1089">1089</span>
+<span id="1090">1090</span>
+<span id="1091">1091</span>
+<span id="1092">1092</span>
+<span id="1093">1093</span>
+<span id="1094">1094</span>
+<span id="1095">1095</span>
+<span id="1096">1096</span>
+<span id="1097">1097</span>
+<span id="1098">1098</span>
+<span id="1099">1099</span>
</pre><pre class="rust"><code><span class="comment">// Bitcoin Dev Kit</span>
<span class="comment">// Written in 2020 by Alekos Filini <alekos.filini@gmail.com></span>
<span class="comment">//</span>
<span class="string">"DELETE FROM transactions;"</span>,
<span class="string">"DELETE FROM utxos;"</span>,
<span class="string">"DROP INDEX idx_txid_vout;"</span>,
+ <span class="string">"CREATE UNIQUE INDEX idx_utxos_txid_vout ON utxos(txid, vout);"</span>,
+ <span class="string">"ALTER TABLE utxos RENAME TO utxos_old;"</span>,
+ <span class="string">"CREATE TABLE utxos (value INTEGER, keychain TEXT, vout INTEGER, txid BLOB, script BLOB, is_spent BOOLEAN DEFAULT 0);"</span>,
+ <span class="string">"INSERT INTO utxos SELECT value, keychain, vout, txid, script, is_spent FROM utxos_old;"</span>,
+ <span class="string">"DROP TABLE utxos_old;"</span>,
<span class="string">"CREATE UNIQUE INDEX idx_utxos_txid_vout ON utxos(txid, vout);"</span>
];
}
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">get_connection</span><span class="op"><</span><span class="ident">T</span>: <span class="ident">AsRef</span><span class="op"><</span><span class="ident">Path</span><span class="op">></span><span class="op">></span>(<span class="ident">path</span>: <span class="kw-2">&</span><span class="ident">T</span>) -> <span class="prelude-ty">Result</span><span class="op"><</span><span class="ident">Connection</span>, <span class="ident">Error</span><span class="op">></span> {
- <span class="kw">let</span> <span class="ident">connection</span> <span class="op">=</span> <span class="ident">Connection::open</span>(<span class="ident">path</span>)<span class="question-mark">?</span>;
- <span class="ident">migrate</span>(<span class="kw-2">&</span><span class="ident">connection</span>)<span class="question-mark">?</span>;
+ <span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">connection</span> <span class="op">=</span> <span class="ident">Connection::open</span>(<span class="ident">path</span>)<span class="question-mark">?</span>;
+ <span class="ident">migrate</span>(<span class="kw-2">&mut</span> <span class="ident">connection</span>)<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(<span class="ident">connection</span>)
}
)
}
-<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">migrate</span>(<span class="ident">conn</span>: <span class="kw-2">&</span><span class="ident">Connection</span>) -> <span class="ident">rusqlite::Result</span><span class="op"><</span>()<span class="op">></span> {
+<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">migrate</span>(<span class="ident">conn</span>: <span class="kw-2">&mut</span> <span class="ident">Connection</span>) -> <span class="prelude-ty">Result</span><span class="op"><</span>(), <span class="ident">Error</span><span class="op">></span> {
<span class="kw">let</span> <span class="ident">version</span> <span class="op">=</span> <span class="ident">get_schema_version</span>(<span class="ident">conn</span>)<span class="question-mark">?</span>;
<span class="kw">let</span> <span class="ident">stmts</span> <span class="op">=</span> <span class="kw-2">&</span><span class="ident">MIGRATIONS</span>[(<span class="ident">version</span> <span class="kw">as</span> <span class="ident">usize</span>)..];
- <span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">i</span>: <span class="ident">i32</span> <span class="op">=</span> <span class="ident">version</span>;
- <span class="kw">if</span> <span class="ident">version</span> <span class="op">==</span> <span class="ident">MIGRATIONS</span>.<span class="ident">len</span>() <span class="kw">as</span> <span class="ident">i32</span> {
+ <span class="comment">// begin transaction, all migration statements and new schema version commit or rollback</span>
+ <span class="kw">let</span> <span class="ident">tx</span> <span class="op">=</span> <span class="ident">conn</span>.<span class="ident">transaction</span>()<span class="question-mark">?</span>;
+
+ <span class="comment">// execute every statement and return `Some` new schema version</span>
+ <span class="comment">// if execution fails, return `Error::Rusqlite`</span>
+ <span class="comment">// if no statements executed returns `None`</span>
+ <span class="kw">let</span> <span class="ident">new_version</span> <span class="op">=</span> <span class="ident">stmts</span>
+ .<span class="ident">iter</span>()
+ .<span class="ident">enumerate</span>()
+ .<span class="ident">map</span>(<span class="op">|</span><span class="ident">version_stmt</span><span class="op">|</span> {
+ <span class="macro">log::info!</span>(
+ <span class="string">"executing db migration {}: `{}`"</span>,
+ <span class="ident">version</span> <span class="op">+</span> <span class="ident">version_stmt</span>.<span class="number">0</span> <span class="kw">as</span> <span class="ident">i32</span> <span class="op">+</span> <span class="number">1</span>,
+ <span class="ident">version_stmt</span>.<span class="number">1</span>
+ );
+ <span class="ident">tx</span>.<span class="ident">execute</span>(<span class="ident">version_stmt</span>.<span class="number">1</span>, [])
+ <span class="comment">// map result value to next migration version</span>
+ .<span class="ident">map</span>(<span class="op">|</span><span class="kw">_</span><span class="op">|</span> <span class="ident">version_stmt</span>.<span class="number">0</span> <span class="kw">as</span> <span class="ident">i32</span> <span class="op">+</span> <span class="ident">version</span> <span class="op">+</span> <span class="number">1</span>)
+ })
+ .<span class="ident">last</span>()
+ .<span class="ident">transpose</span>()<span class="question-mark">?</span>;
+
+ <span class="comment">// if `Some` new statement version, set new schema version</span>
+ <span class="kw">if</span> <span class="kw">let</span> <span class="prelude-val">Some</span>(<span class="ident">version</span>) <span class="op">=</span> <span class="ident">new_version</span> {
+ <span class="ident">set_schema_version</span>(<span class="kw-2">&</span><span class="ident">tx</span>, <span class="ident">version</span>)<span class="question-mark">?</span>;
+ } <span class="kw">else</span> {
<span class="macro">log::info!</span>(<span class="string">"db up to date, no migration needed"</span>);
- <span class="kw">return</span> <span class="prelude-val">Ok</span>(());
}
- <span class="kw">for</span> <span class="ident">stmt</span> <span class="kw">in</span> <span class="ident">stmts</span> {
- <span class="kw">let</span> <span class="ident">res</span> <span class="op">=</span> <span class="ident">conn</span>.<span class="ident">execute</span>(<span class="ident">stmt</span>, []);
- <span class="kw">if</span> <span class="ident">res</span>.<span class="ident">is_err</span>() {
- <span class="macro">println!</span>(<span class="string">"migration failed on:\n{}\n{:?}"</span>, <span class="ident">stmt</span>, <span class="ident">res</span>);
- <span class="kw">break</span>;
- }
-
- <span class="ident">i</span> <span class="op">+</span><span class="op">=</span> <span class="number">1</span>;
- }
-
- <span class="ident">set_schema_version</span>(<span class="ident">conn</span>, <span class="ident">i</span>)<span class="question-mark">?</span>;
-
+ <span class="comment">// commit transaction</span>
+ <span class="ident">tx</span>.<span class="ident">commit</span>()<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(())
}