veho 0.0.20

a iterable toolset
Documentation
use std::collections::HashMap;

type Dict = HashMap<String, Vec<String>>;

#[cfg(test)]
mod hashmap_test {
    use veho::hashmap::Mappers;

    use crate::deco::deco_entries;
    use crate::hashmap::hashmap_test::Dict;

    #[test]
    fn reference_test() {
        let mut dict = Dict::new();
        dict.insert("Gesualdo".to_string(),
                    vec!["many madrigals".to_string(), "Tenebrae Responsoria".to_string()]);
        dict.insert("Caravaggio".to_string(),
                    vec!["The Musicians".to_string(), "The Calling of St. Matthew".to_string()]);
        dict.insert("Cellini".to_string(),
                    vec!["Perseus with the head of Medusa".to_string(), "a salt cellar".to_string()]);
        let dict2 = (&dict).mapper(|k, v| { (k, format!("{:?}", v)) });
        let text = deco_entries(&dict2, ": ");
        println!(">> dict = {:}", text);
        show(&dict);
        println!(">> dict = {:?}", dict);
    }

    fn show(table: &Dict) {
        for (artist, works) in table {
            println!(">> [{}]", artist);
            for work in works {
                println!("     {}", work);
            }
        }
    }
}