use std::sync::Arc;
use pagedb::vfs::memory::MemVfs;
use pagedb::{Db, RealmId};
use crate::error::LiteError;
use crate::storage::pagedb_storage::types::{PagedbStorage, lite_open_options};
impl PagedbStorage<MemVfs> {
pub async fn open_in_memory() -> Result<Self, LiteError> {
let kek = [0u8; 32];
let realm = RealmId::new([0u8; 16]);
let vfs = MemVfs::new();
let db = Db::open(vfs, kek, 4096, realm, lite_open_options())
.await
.map_err(LiteError::from)?;
Ok(Self {
db: Arc::new(db),
#[cfg(not(target_arch = "wasm32"))]
snapshot_descriptor: None,
})
}
}