9#include "libxr_def.hpp"
25void libxr_fatal_error(
const char *file, uint32_t line,
bool in_isr);
71#ifdef LIBXR_DEBUG_BUILD
90 template <SizeLimitMode mode>
93 if constexpr (
mode == SizeLimitMode::EQUAL)
95 ASSERT(
limit == size);
97 else if constexpr (
mode == SizeLimitMode::MORE)
99 ASSERT(
limit <= size);
101 else if constexpr (
mode == SizeLimitMode::LESS)
103 ASSERT(
limit >= size);
118 template <SizeLimitMode mode>
133 static inline std::optional<LibXR::Callback<const char *, uint32_t>>
运行时错误检查的断言工具类。 Provides assertion mechanisms for runtime error checking.
static void SizeLimitCheck(size_t limit, size_t size)
在非调试模式下的占位大小检查函数(无实际作用)。 Dummy size limit check for non-debug builds.
static void RegisterFatalErrorCB(LibXR::Callback< const char *, uint32_t > &&cb)
通过移动语义注册致命错误的回调函数。 Registers a fatal error callback with move semantics.
static std::optional< LibXR::Callback< const char *, uint32_t > > libxr_fatal_error_callback_
存储已注册的致命错误回调函数。 Stores the registered fatal error callback.
static void RegisterFatalErrorCB(const LibXR::Callback< const char *, uint32_t > &cb)
注册致命错误的回调函数。 Registers a fatal error callback.
提供一个通用的回调包装,支持动态参数传递。 Provides a generic callback wrapper, supporting dynamic argument passing.
LibXR Color Control Library / LibXR终端颜色控制库
constexpr auto min(T1 a, T2 b) -> typename std::common_type< T1, T2 >::type
计算两个数的最小值