1#[macro_export]
8macro_rules! map {
9 ($($key:expr => $value:expr),*) => {
10 {
11 let mut map = ::std::collections::HashMap::new();
12 $(
13 map.insert($key, $value);
14 )*
15 map
16 }
17 };
18}
19
20#[macro_export]
27macro_rules! set {
28 ($($value:expr), *) => {
29 {
30 let mut v = ::std::collections::HashSet::new();
31 $(
32 v.insert($value);
33 )*
34 v
35 }
36 };
37}
38
39#[test]
40fn it_works() {
41 let set = set!("a", "b");
42 println!("{:?}", set);
43
44
45 let map = map!{
46 "a" => 1,
47 "b" => 2
48 };
49 println!("{:?}", map);
50}