bi18n 0.3.0

Barebone i18n crate, usable for web interfaces
Documentation
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, PartialEq)]
pub struct I18n {
    locale: crate::Locale,
    map: ahash::AHashMap<crate::Key, String>,
}

impl I18n {
    pub fn new(locale: crate::Locale, map: ahash::AHashMap<crate::Key, String>) -> Self{
        Self{locale, map}
    }

    pub fn try_get(&self, key: &crate::Key) -> Option<&String> {
        self.map.get(key)
    }

    pub fn locale(&self) -> &crate::Locale {
        &self.locale
    }
}