use std::collections::HashMap;
pub fn to_bool(key: &str) -> bool {
return match key {
"true" | "True" | "TRUE" => true,
"false" | "False" | "FALSE" | "0" | "null" | "NULL" | "Null" => false,
_ => true,
};
}
pub fn get_string(map: &HashMap<String, String>, key: &str) -> String {
if let Some(val) = map.get(key) {
return val.to_string();
}
return String::new();
}
pub fn get_bool(map: &HashMap<String, String>, key: &str) -> bool {
if let Some(val) = map.get(key) {
return to_bool(val);
}
return false;
}
pub fn get_vec(map: &HashMap<String, String>, key: &str) -> Vec<String> {
if key.len() == 0 {
return vec![];
}
let val = map.get(key);
match val {
Some(val) => val.split(",").map(|s| s.to_string()).collect(),
None => vec![],
}
}
pub fn must_get_string(map: &HashMap<String, String>, key: &str) -> String {
if let Some(val) = map.get(key) {
return val.to_string();
}
panic!("key: {} not found!", key);
}
pub fn must_get_bool(map: &HashMap<String, String>, key: &str) -> bool {
if let Some(val) = map.get(key) {
return to_bool(val);
}
panic!("key: {} not found!", key);
}