haar_lib/macros/
ds_macros.rs1#[macro_export]
5macro_rules! hashset {
6 ($($a:expr),*) => {{
7 let mut a = std::collections::HashSet::new();
8 a.extend(vec![$($a),*]);
9 a
10 }}
11}
12
13#[macro_export]
15macro_rules! btreeset {
16 ($($a:expr),*) => {{
17 let mut a = std::collections::BTreeSet::new();
18 a.extend(vec![$($a),*]);
19 a
20 }}
21}
22
23#[macro_export]
25macro_rules! hashmap {
26 ($($key:expr => $val:expr),*) => {{
27 let mut a = std::collections::HashMap::new();
28 a.extend(vec![$(($key, $val)),*]);
29 a
30 }}
31}
32
33#[macro_export]
35macro_rules! btreemap {
36 ($($key:expr => $val:expr),*) => {{
37 let mut a = std::collections::BTreeMap::new();
38 a.extend(vec![$(($key, $val)),*]);
39 a
40 }}
41}
42
43#[cfg(test)]
44mod tests {
45 #[test]
46 fn test() {
47 dbg!(hashset!(1, 2, 3, 3, 4));
48 dbg!(btreeset!(1, 2, 3, 3, 4));
49 dbg!(hashmap!(1 => "a", 2 => "b", 3 => "c", 3 => "d", 4 => "e"));
50 dbg!(btreemap!(1 => "a", 2 => "b", 3 => "c", 3 => "d", 4 => "e"));
51 }
52}