use rt_map::RtMap;
struct A(u32);
fn main() {
let mut rt_map = RtMap::new();
rt_map.insert('a', A(1));
rt_map.insert('b', A(2));
let mut a = rt_map.borrow_mut(&'a');
let mut b = rt_map.borrow_mut(&'b');
a.0 = 2;
b.0 = 3;
drop(a);
drop(b);
let a_0 = rt_map.borrow(&'a');
let _a_1 = rt_map.borrow(&'a');
let b = rt_map.borrow(&'b');
println!("A: {}", a_0.0);
println!("B: {}", b.0);
let a_try_borrow_mut = rt_map.try_borrow_mut(&'a');
let exists = if a_try_borrow_mut.is_ok() {
"Ok(..)"
} else {
"Err"
};
println!("a_try_borrow_mut: {}", exists); }