]> Untitled Git - bdk/commitdiff
refactor(example): Reuse `CanonicalView` in filter iter example
author志宇 <hello@evanlinjin.me>
Fri, 12 Sep 2025 06:11:28 +0000 (06:11 +0000)
committer志宇 <hello@evanlinjin.me>
Wed, 17 Sep 2025 23:46:29 +0000 (23:46 +0000)
crates/bitcoind_rpc/examples/filter_iter.rs

index 5a3dc29746293fd83ab7d75f1f35ca693692eb49..e79bde67202fa5c0bfcd8ffa142e29329ef3d802 100644 (file)
@@ -68,8 +68,10 @@ fn main() -> anyhow::Result<()> {
 
     println!("\ntook: {}s", start.elapsed().as_secs());
     println!("Local tip: {}", chain.tip().height());
-    let unspent: Vec<_> = graph
-        .canonical_view(&chain, chain.tip().block_id(), Default::default())
+
+    let canonical_view = graph.canonical_view(&chain, chain.tip().block_id(), Default::default());
+
+    let unspent: Vec<_> = canonical_view
         .filter_unspent_outpoints(graph.index.outpoints().clone())
         .collect();
     if !unspent.is_empty() {
@@ -80,14 +82,7 @@ fn main() -> anyhow::Result<()> {
         }
     }
 
-    for canon_tx in graph
-        .canonical_view(
-            &chain,
-            chain.tip().block_id(),
-            bdk_chain::CanonicalizationParams::default(),
-        )
-        .txs()
-    {
+    for canon_tx in canonical_view.txs() {
         if !canon_tx.pos.is_confirmed() {
             eprintln!("ERROR: canonical tx should be confirmed {}", canon_tx.txid);
         }