use std::{collections::HashMap, cell::RefCell};
peg::parser!(grammar parser() for str {
pub rule keyvals() -> HashMap<&'input str, &'input str>
= map:({ RefCell::new(HashMap::new()) })
(k:$(['a'..='z']+) ":" v:$(['a'..='z']+) {
map.borrow_mut().insert(k, v)
})**","
{ map.into_inner() }
});
// Expect
//peg::parser!(grammar parser() for str {
// pub rule keyvals() -> HashMap<&'input str, &'input str>
// = mut map:({ HashMap::new() })
// (k:$(['a'..='z']+) ":" v:$(['a'..='z']+) {
// map.insert(k, v)
// })**","
// { map }
//});