baichun-framework-core 0.1.0

Core module for Baichun-Rust framework
Documentation
/// 创建错误宏
#[macro_export]
macro_rules! error {
    ($kind:ident, $msg:expr) => {
        $crate::error::Error::$kind($msg.to_string())
    };
}

/// 确保条件为真,否则返回错误
#[macro_export]
macro_rules! ensure {
    ($cond:expr, $kind:ident, $msg:expr) => {
        if !$cond {
            return Err($crate::error!($kind, $msg));
        }
    };
}

/// 创建业务错误宏
#[macro_export]
macro_rules! business_err {
    ($msg:expr) => {
        $crate::error!(Business, $msg)
    };
}

/// 创建系统错误宏
#[macro_export]
macro_rules! system_err {
    ($msg:expr) => {
        $crate::error!(System, $msg)
    };
}

/// 创建验证错误宏
#[macro_export]
macro_rules! validation_err {
    ($msg:expr) => {
        $crate::error!(Validation, $msg)
    };
}

/// 创建认证错误宏
#[macro_export]
macro_rules! auth_err {
    ($msg:expr) => {
        $crate::error!(Authentication, $msg)
    };
}

/// 创建授权错误宏
#[macro_export]
macro_rules! authz_err {
    ($msg:expr) => {
        $crate::error!(Authorization, $msg)
    };
}

/// 创建未知错误宏
#[macro_export]
macro_rules! unknown_err {
    ($msg:expr) => {
        $crate::error!(Unknown, $msg)
    };
}