mdbook_journal/journal/entry/
meta.rs

1pub use crate::prelude::*;
2
3pub use serde_yaml::Value as MetaValue;
4
5#[derive(Debug, Default, Serialize, Clone)]
6#[serde(transparent)]
7pub struct EntryMeta {
8    data: BTreeMap<String, MetaValue>,
9}
10
11/// Entry Meta-Data
12///
13/// Collection of all non-reserved data found from
14/// the front-matter of an entry.
15///
16impl EntryMeta {
17    pub fn insert<K, V>(&mut self, key: K, value: V)
18    where
19        K: Into<String>,
20        V: Into<MetaValue>,
21    {
22        self.data.insert(key.into(), value.into());
23    }
24
25    pub fn get<K>(&self, key: &K) -> Option<&MetaValue>
26    where
27        K: AsRef<str>,
28    {
29        self.data.get(key.as_ref())
30    }
31}