pub trait Data {
fn new(type_name: &'static str) -> Self
where
Self: Sized;
fn type_name(&self) -> &'static str;
fn rows(&self) -> &BTreeMap<String, Map<String, Value>>;
fn rows_mut(&mut self) -> &mut BTreeMap<String, Map<String, Value>>;
fn into_rows(self) -> BTreeMap<String, Map<String, Value>>;
fn all_ids(&self) -> Vec<&String> ⓘ { ... }
fn all_ids_sorted(&self) -> Value { ... }
fn contains(&self, id: &str) -> bool { ... }
fn get(&self, id: &str) -> Option<&Map<String, Value>> { ... }
fn get_mut(&mut self, id: &str) -> Option<&mut Map<String, Value>> { ... }
fn insert_row(&mut self, id: &str, row: Map<String, Value>) { ... }
fn insert_row_value(&mut self, id: &str, key: &str, value: Value) { ... }
}