From 8c0ee6d17fe0dbd7748e7b60ff01a0e8f25faa51 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Wed, 14 Jan 2026 22:13:19 +0100 Subject: implement db trait without wrappers --- database/src/backends/mod.rs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'database/src/backends/mod.rs') 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 */ -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>> + 'a>>; } -pub fn create_backend(driver: &str, path: &Path) -> Result> { +pub fn create_backend(driver: &str, path: &Path) -> Result> { 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"), }) } -- cgit v1.3