#[macro_export] macro_rules! bench_impl { ($map: ty) => { fn insert(map: &mut $map) { let _ = map.insert(123u8); let _ = map.insert(123u16); let _ = map.insert(123u32); let _ = map.insert(123u64); let _ = map.insert(123u128); let _ = map.insert(123i8); let _ = map.insert(123i16); let _ = map.insert(123i32); let _ = map.insert(123i64); let _ = map.insert(123i128); let _ = map.insert(123usize); let _ = map.insert(123isize); let _ = map.insert(123.0f32); let _ = map.insert(123.0f64); } fn get(map: &$map) { let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); let _ = map.get::(); } fn remove(map: &mut $map) { let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); let _ = map.remove::(); } }; }