1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
macro_rules! pub_in_crate {(
    $(
        $(#[$meta:meta])*
        use $($first:ident)? $(:: $extra:ident)* :: {
            $($tree:tt)*
        };
    )*
) => (
    $(
        $(#[$meta])*
        pub(in crate)
        use $($first)? $(:: $extra)* :: {
            $($tree)*
        };
    )*
)}

macro_rules! use_prelude {() => (
    #[allow(unused_imports)]
    pub(in crate) use crate::utils::prelude::*;
)}

macro_rules! cfg_std {(
    $($item:item)*
) => (
    $(
        #[cfg(feature = "std")]
        #[cfg_attr(feature = "nightly",
            doc(cfg(feature = "std")),
        )]
        $item
    )*
)}

macro_rules! cfg_alloc {(
    $($item:item)*
) => (
    $(
        #[cfg(feature = "alloc")]
        #[cfg_attr(feature = "nightly",
            doc(cfg(any(feature = "alloc", feature = "std"))),
        )]
        $item
    )*
)}