std_macro_extensions/b_tree_set/
macro.rs

1/// Creates a new `BTreeSet<T>`.
2///
3/// This macro provides two ways to initialize a `BTreeSet`:
4///
5/// 1. **Empty Set**:
6///    - Calling `b_tree_set!()` creates an empty `BTreeSet`.
7///
8/// 2. **With Elements**:
9///    - You can also initialize a `BTreeSet` with elements by providing a comma-separated list of values, e.g., `b_tree_set!(1, 2, 3)`.
10///    - This will create a `BTreeSet` containing the specified elements.
11#[macro_export]
12macro_rules! b_tree_set {
13    () => {
14        std::collections::BTreeSet::new()
15    };
16    ($($elem:expr),*) => {{
17        let mut set = std::collections::BTreeSet::new();
18        $( set.insert($elem); )*
19        set
20    }};
21}