aboutsummaryrefslogtreecommitdiff
path: root/database/src/backends/rocksdb.rs
diff options
context:
space:
mode:
Diffstat (limited to 'database/src/backends/rocksdb.rs')
-rw-r--r--database/src/backends/rocksdb.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/database/src/backends/rocksdb.rs b/database/src/backends/rocksdb.rs
index 1475dac..056af9e 100644
--- a/database/src/backends/rocksdb.rs
+++ b/database/src/backends/rocksdb.rs
@@ -4,7 +4,7 @@
Copyright (C) 2026 metamuffin <metamuffin.org>
*/
-use crate::backends::{Database, ReadTransaction, WriteTransaction, WriteTxnFunction};
+use crate::backends::{Database, ReadTransaction, WriteTransaction};
use anyhow::Result;
use rocksdb::{Direction, ErrorKind, IteratorMode, OptimisticTransactionDB};
use std::path::Path;
@@ -14,7 +14,10 @@ pub fn new(path: &Path) -> Result<OptimisticTransactionDB> {
}
impl Database for OptimisticTransactionDB {
- fn write_transaction(&self, f: &mut WriteTxnFunction) -> Result<()> {
+ fn write_transaction(
+ &self,
+ f: &mut dyn FnMut(&mut dyn WriteTransaction) -> Result<()>,
+ ) -> Result<()> {
loop {
let mut txn = self.transaction();
f(&mut txn)?;
@@ -25,7 +28,10 @@ impl Database for OptimisticTransactionDB {
}
}
}
- fn read_transaction(&self, f: &mut super::ReadTxnFunction) -> Result<()> {
+ fn read_transaction(
+ &self,
+ f: &mut dyn FnMut(&dyn ReadTransaction) -> Result<()>,
+ ) -> Result<()> {
loop {
let txn = self.transaction();
f(&txn)?;