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
46
47
48
49
50
51
52
53
54
55
56
57
58
#[cfg(feature = "assertc")]
mod assertc_macros;

#[cfg(feature = "assertcp")]
mod assertcp_macros;

#[doc(hidden)]
#[macro_export]
macro_rules! __assertc_inner {
    (
        $fmt_macro:ident
        ($($parameters:tt)*)
        ($cond:expr $(, $fmt_literal:expr $(,$fmt_arg:expr)*)? $(,)?)
    ) => {
        #[allow(non_snake_case)]
        const _: () = {
            use $crate::__cf_osRcTFl4A;

            $crate::__assertc_common!{
                $fmt_macro
                ($($parameters)*)
                ($cond)
                (
                    concat!(
                        "\nassertion failed.\n",
                        $($fmt_literal,)?
                        "\n",
                    )
                    $($(,$fmt_arg)*)?
                )
            }
        };
    }
}

#[doc(hidden)]
#[macro_export]
macro_rules! __assertc_common {
    (
        $fmt_macro:ident
        ($($span:tt)*)
        ($cond:expr)
        ($($fmt_literal:expr $(,$fmt_arg:expr)*)?)
    ) => (
        const PANIC_IF_TRUE_NHPMWYD3NJA: bool = !($cond);

        const MSG_NHPMWYD3NJA: &str = $crate::pmr::$fmt_macro!(
            (PANIC_IF_TRUE_NHPMWYD3NJA)
            ($($fmt_literal,)?),
            $($($fmt_arg,)*)?
        );

        __cf_osRcTFl4A::pmr::respan_to!{
            ($($span)*)
            __cf_osRcTFl4A::pmr::assert_(PANIC_IF_TRUE_NHPMWYD3NJA, MSG_NHPMWYD3NJA)
        }
    );
}