aboutsummaryrefslogtreecommitdiff
path: root/database/src/backends/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'database/src/backends/mod.rs')
-rw-r--r--database/src/backends/mod.rs17
1 files changed, 8 insertions, 9 deletions
diff --git a/database/src/backends/mod.rs b/database/src/backends/mod.rs
index 580548e..4cbb4cf 100644
--- a/database/src/backends/mod.rs
+++ b/database/src/backends/mod.rs
@@ -4,18 +4,17 @@
Copyright (C) 2026 metamuffin <metamuffin.org>
*/
-pub mod memory;
-pub mod redb;
-pub mod rocksdb;
+mod memory;
+mod redb;
+mod rocksdb;
-use crate::backends::{memory::Memory, redb::Redb, rocksdb::Rocksdb};
use anyhow::{Result, bail};
use std::{path::Path, sync::Arc};
pub type WriteTxnFunction = dyn FnMut(&mut dyn WriteTransaction) -> Result<()>;
pub type ReadTxnFunction = dyn FnMut(&dyn ReadTransaction) -> Result<()>;
-pub trait Db {
+pub trait Database {
fn write_transaction(&self, f: &mut WriteTxnFunction) -> Result<()>;
fn read_transaction(&self, f: &mut ReadTxnFunction) -> Result<()>;
}
@@ -32,11 +31,11 @@ pub trait ReadTransaction {
) -> Result<Box<dyn Iterator<Item = Result<Vec<u8>>> + 'a>>;
}
-pub fn create_backend(driver: &str, path: &Path) -> Result<Arc<dyn Db>> {
+pub fn create_backend(driver: &str, path: &Path) -> Result<Arc<dyn Database>> {
Ok(match driver {
- "rocksdb" => Arc::new(Rocksdb::new(path)?),
- "redb" => Arc::new(Redb::new(path)?),
- "memory" => Arc::new(Memory::new()),
+ "rocksdb" => Arc::new(rocksdb::new(path)?),
+ "redb" => Arc::new(redb::new(path)?),
+ "memory" => Arc::new(memory::new()),
_ => bail!("unknown db driver"),
})
}