use crate::database::latest::trees::category; use crate::status_json::StatusJson; use bincode::{deserialize, serialize}; use std::collections::HashMap; pub fn get_category( tree: &sled::Tree, key: &category::K, ) -> Result, StatusJson> { Ok(match tree.get(serialize(key)?)? { Some(raw) => Some(deserialize(&raw)?), None => None, }) } pub fn get_all_categories( tree: &sled::Tree, ) -> Result, StatusJson> { Ok(tree .iter() .map(|result| { result.map(|(k, v)| deserialize(&k).and_then(|k| deserialize(&v).map(|v| (k, v)))) }) .collect::, _>>()??) }