yaib 0.2.0

yaib is Yet Another i3 Bar, with a focus on displaying lots of data
Documentation
pub type Rules<'a> = Vec<(&'a str, String)>;

pub struct Format<'a> {
    format: String,
    rules: Rules<'a>,
}

impl<'a> Format<'a> {
    pub fn new(format: String, rules: Rules<'a>) -> Self {
        Self { format, rules }
    }

    pub fn format(&self) -> String {
        let mut res = self.format.clone();

        for rule in &self.rules {
            res = res.replace(rule.0, &rule.1);
        }

        res
    }
}