fastnum 0.7.4

Fast decimal numbers library
Documentation
pub(crate) mod const_generics;

macro_rules! err_prefix {
    () => {
        "(fastnum)"
    };
}

pub(crate) use err_prefix;

macro_rules! err_msg {
    ($msg: expr) => {
        concat!($crate::utils::err_prefix!(), " ", $msg)
    };
}

pub(crate) use err_msg;

#[allow(unused_macros)]
macro_rules! assert_eq_size {
    ($x:ty, $($xs:ty),+ $(,)?) => {
        #[cfg(debug_assertions)]
        const _: fn() = || {
            $(let _ = core::mem::transmute::<$x, $xs>;)+
        };
    };
}

#[allow(unused_imports)]
pub(crate) use assert_eq_size;

#[allow(unused_macros)]
macro_rules! const_assert_eq {
    ($x:expr, $y:expr $(,)?) => {
        $crate::utils::const_assert!($x.eq($y));
    };
}

#[allow(unused_imports)]
pub(crate) use const_assert_eq;

#[allow(unused_macros)]
macro_rules! const_assert {
    ($x:expr $(,)?) => {
        #[allow(unknown_lints, clippy::eq_op)]
        #[cfg(debug_assertions)]
        const _: [(); 0 - !{
            const __ASSERT: bool = $x;
            __ASSERT
        } as usize] = [];
    };
}

#[allow(unused_imports)]
pub(crate) use const_assert;

#[allow(unused_macros)]
macro_rules! result_expect {
    ($res: expr, $msg: expr) => {
        match $res {
            Ok(value) => value,
            _ => panic!($msg),
        }
    };
}

#[allow(unused_imports)]
pub(crate) use result_expect;