pub mod db_context;
pub mod hashmap_store;
pub mod transactions;
use anyhow::Result;
pub trait CommandUnitOfWork {
fn begin_transaction(&mut self) -> Result<()>;
fn commit(&mut self) -> Result<()>;
fn rollback(&mut self) -> Result<()>;
fn create_savepoint(&self) -> Result<types::Savepoint>;
fn restore_to_savepoint(&mut self, savepoint: types::Savepoint) -> Result<()>;
}
pub trait QueryUnitOfWork {
fn begin_transaction(&self) -> Result<()>;
fn end_transaction(&self) -> Result<()>;
}
use crate::types;