1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#[macro_export] macro_rules! hashset { () => { { ::std::collections::HashSet::new() } }; ($elem:expr $(, $tail:expr)*) => { { let mut set = ::std::collections::HashSet::new(); set.insert($elem); $( set.insert($tail); )* set } }; }