mirror of
https://github.com/bitcoinresearchkit/brk.git
synced 2026-04-24 06:39:58 -07:00
40 lines
1.1 KiB
Rust
40 lines
1.1 KiB
Rust
use brk_error::Result;
|
|
use brk_indexer::Indexer;
|
|
use brk_types::Indexes;
|
|
use vecdb::Exit;
|
|
|
|
use crate::indexes;
|
|
|
|
use super::Vecs;
|
|
|
|
impl Vecs {
|
|
pub(crate) fn compute(
|
|
&mut self,
|
|
indexer: &Indexer,
|
|
indexes: &indexes::Vecs,
|
|
starting_indexes: &Indexes,
|
|
exit: &Exit,
|
|
) -> Result<()> {
|
|
self.time
|
|
.timestamp
|
|
.compute(indexer, indexes, starting_indexes, exit)?;
|
|
self.lookback
|
|
.compute(&self.time, starting_indexes, exit)?;
|
|
self.count
|
|
.compute(indexer, &self.lookback, starting_indexes, exit)?;
|
|
self.interval
|
|
.compute(indexer, &self.lookback, starting_indexes, exit)?;
|
|
self.size
|
|
.compute(indexer, &self.lookback, starting_indexes, exit)?;
|
|
self.weight
|
|
.compute(indexer, &self.lookback, starting_indexes, exit)?;
|
|
self.difficulty
|
|
.compute(indexer, indexes, starting_indexes, exit)?;
|
|
self.halving.compute(indexes, starting_indexes, exit)?;
|
|
|
|
let _lock = exit.lock();
|
|
self.db.compact()?;
|
|
Ok(())
|
|
}
|
|
}
|