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>
运行时错误检查的断言工具类。 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(const Callback &cb)
注册致命错误的回调函数。 Registers a fatal error callback.
static Callback libxr_fatal_error_callback_
已注册的致命错误回调函数。 Registered fatal error callback.
static void RegisterFatalErrorCB(T &&cb)
注册致命错误的回调函数。 Registers a fatal error callback
提供一个通用的回调包装,支持动态参数传递。 Provides a generic callback wrapper, supporting dynamic argument passing.