#[macro_export]
macro_rules! btreemap {
() => (::std::collections::BTreeMap::new());
($($key:expr_2021 => $value:expr_2021,)+) => (btreemap!($($key => $value),+));
($($key:expr_2021 => $value:expr_2021),*) => {
::std::collections::BTreeMap::from([
$(
($key.into(), $value.into()),
)*
])
};
}
#[cfg(test)]
mod tests {
#[test]
fn test_btreemap() {
use std::collections::BTreeMap;
assert_eq!(btreemap! {}, BTreeMap::<usize, usize>::new());
let mut map = BTreeMap::new();
map.insert(1, "1");
assert_eq!(btreemap! { 1 => "1" }, map);
let mut map = BTreeMap::new();
map.insert("1", "one");
map.insert("2", "two");
assert_eq!(btreemap! { "1" => "one", "2" => "two" }, map);
}
}