nodedb_lite/storage/pagedb_storage/open/
memory.rs1use std::sync::Arc;
6
7use pagedb::vfs::memory::MemVfs;
8use pagedb::{Db, RealmId};
9
10use crate::error::LiteError;
11use crate::storage::pagedb_storage::types::{PagedbStorage, lite_open_options};
12
13impl PagedbStorage<MemVfs> {
14 pub async fn open_in_memory() -> Result<Self, LiteError> {
19 let kek = [0u8; 32];
20 let realm = RealmId::new([0u8; 16]);
21 let vfs = MemVfs::new();
22 let db = Db::open(vfs, kek, 4096, realm, lite_open_options())
23 .await
24 .map_err(LiteError::from)?;
25 Ok(Self {
26 db: Arc::new(db),
27 #[cfg(not(target_arch = "wasm32"))]
28 snapshot_descriptor: None,
29 })
30 }
31}