mirror of
https://github.com/bitcoinresearchkit/brk.git
synced 2026-05-26 01:34:45 -07:00
global: snapshot
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
use brk_traversable::Traversable;
|
||||
use rayon::prelude::*;
|
||||
use vecdb::AnyCollectableVec;
|
||||
use vecdb::AnyWritableVec;
|
||||
|
||||
use crate::Filtered;
|
||||
|
||||
@@ -78,14 +78,14 @@ where
|
||||
)
|
||||
}
|
||||
|
||||
fn iter_any_collectable(&self) -> impl Iterator<Item = &dyn AnyCollectableVec> {
|
||||
fn iter_any_writable(&self) -> impl Iterator<Item = &dyn AnyWritableVec> {
|
||||
[
|
||||
Box::new(self.ge_amount.iter_any_collectable())
|
||||
as Box<dyn Iterator<Item = &dyn AnyCollectableVec>>,
|
||||
Box::new(self.amount_range.iter_any_collectable())
|
||||
as Box<dyn Iterator<Item = &dyn AnyCollectableVec>>,
|
||||
Box::new(self.lt_amount.iter_any_collectable())
|
||||
as Box<dyn Iterator<Item = &dyn AnyCollectableVec>>,
|
||||
Box::new(self.ge_amount.iter_any_writable())
|
||||
as Box<dyn Iterator<Item = &dyn AnyWritableVec>>,
|
||||
Box::new(self.amount_range.iter_any_writable())
|
||||
as Box<dyn Iterator<Item = &dyn AnyWritableVec>>,
|
||||
Box::new(self.lt_amount.iter_any_writable())
|
||||
as Box<dyn Iterator<Item = &dyn AnyWritableVec>>,
|
||||
]
|
||||
.into_iter()
|
||||
.flatten()
|
||||
|
||||
@@ -4,7 +4,7 @@ use brk_error::Result;
|
||||
use brk_traversable::{Traversable, TreeNode};
|
||||
use brk_types::OutputType;
|
||||
use rayon::prelude::*;
|
||||
use vecdb::AnyCollectableVec;
|
||||
use vecdb::AnyWritableVec;
|
||||
|
||||
use super::{Filter, Filtered};
|
||||
|
||||
@@ -308,16 +308,16 @@ impl<T: Traversable> Traversable for ByAddressType<T> {
|
||||
)
|
||||
}
|
||||
|
||||
fn iter_any_collectable(&self) -> impl Iterator<Item = &dyn AnyCollectableVec> {
|
||||
let mut iter: Box<dyn Iterator<Item = &dyn AnyCollectableVec>> =
|
||||
Box::new(self.p2pk65.iter_any_collectable());
|
||||
iter = Box::new(iter.chain(self.p2pk33.iter_any_collectable()));
|
||||
iter = Box::new(iter.chain(self.p2pkh.iter_any_collectable()));
|
||||
iter = Box::new(iter.chain(self.p2sh.iter_any_collectable()));
|
||||
iter = Box::new(iter.chain(self.p2wpkh.iter_any_collectable()));
|
||||
iter = Box::new(iter.chain(self.p2wsh.iter_any_collectable()));
|
||||
iter = Box::new(iter.chain(self.p2tr.iter_any_collectable()));
|
||||
iter = Box::new(iter.chain(self.p2a.iter_any_collectable()));
|
||||
fn iter_any_writable(&self) -> impl Iterator<Item = &dyn AnyWritableVec> {
|
||||
let mut iter: Box<dyn Iterator<Item = &dyn AnyWritableVec>> =
|
||||
Box::new(self.p2pk65.iter_any_writable());
|
||||
iter = Box::new(iter.chain(self.p2pk33.iter_any_writable()));
|
||||
iter = Box::new(iter.chain(self.p2pkh.iter_any_writable()));
|
||||
iter = Box::new(iter.chain(self.p2sh.iter_any_writable()));
|
||||
iter = Box::new(iter.chain(self.p2wpkh.iter_any_writable()));
|
||||
iter = Box::new(iter.chain(self.p2wsh.iter_any_writable()));
|
||||
iter = Box::new(iter.chain(self.p2tr.iter_any_writable()));
|
||||
iter = Box::new(iter.chain(self.p2a.iter_any_writable()));
|
||||
iter
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ use std::ops::Range;
|
||||
|
||||
use brk_traversable::{Traversable, TreeNode};
|
||||
use brk_types::{HalvingEpoch, OutputType};
|
||||
use vecdb::AnyCollectableVec;
|
||||
use vecdb::AnyWritableVec;
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub enum Filter {
|
||||
@@ -82,7 +82,7 @@ impl<T: Traversable> Traversable for Filtered<T> {
|
||||
self.1.to_tree_node()
|
||||
}
|
||||
|
||||
fn iter_any_collectable(&self) -> impl Iterator<Item = &dyn AnyCollectableVec> {
|
||||
self.1.iter_any_collectable()
|
||||
fn iter_any_writable(&self) -> impl Iterator<Item = &dyn AnyWritableVec> {
|
||||
self.1.iter_any_writable()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user