use anyhow::Result; pub struct Database { pub keys: sled::Tree, pub messages: sled::Tree, pub groups: sled::Tree, pub aliases: sled::Tree, _db: sled::Db, } impl Database { pub fn open(data_dir: &str) -> Result { let db = sled::open(data_dir)?; let keys = db.open_tree("keys")?; let messages = db.open_tree("messages")?; let groups = db.open_tree("groups")?; let aliases = db.open_tree("aliases")?; Ok(Database { keys, messages, groups, aliases, _db: db, }) } }