diff options
Diffstat (limited to 'database/src/backends/mod.rs')
| -rw-r--r-- | database/src/backends/mod.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/database/src/backends/mod.rs b/database/src/backends/mod.rs index ba30b46..1a3998f 100644 --- a/database/src/backends/mod.rs +++ b/database/src/backends/mod.rs @@ -11,6 +11,10 @@ mod rocksdb; use anyhow::{Result, bail}; use std::{path::Path, sync::Arc}; +pub use memory::new as new_memory; +pub use redb::new as new_redb; +pub use rocksdb::new as new_rocksdb; + pub type WriteTxnFunction = dyn FnMut(&mut dyn WriteTransaction) -> Result<()>; pub type ReadTxnFunction = dyn FnMut(&dyn ReadTransaction) -> Result<()>; @@ -35,7 +39,7 @@ pub trait ReadTransaction { ) -> Result<Box<dyn Iterator<Item = Result<Vec<u8>>> + 'a>>; } -pub fn create_backend(driver: &str, path: &Path) -> Result<Arc<dyn Database>> { +pub fn create_database(driver: &str, path: &Path) -> Result<Arc<dyn Database>> { Ok(match driver { "rocksdb" => Arc::new(rocksdb::new(path)?), "redb" => Arc::new(redb::new(path)?), |