ASSERT - Assert#
Enhanced assert/error checking module with detailed logging.
This implementation provides comprehensive assert handling with:
File name, line number, and expression logging
Debug session detection and breakpoint triggering
Conditional debug asserts via SL_LOG_DEBUG_ASSERT_ENABLE flag
Assert Macros:
SL_LOG_CRASH_ASSERT: Always active, triggers assert handler
SL_LOG_DEBUG_ASSERT: Active only when SL_LOG_DEBUG_ASSERT_ENABLE is defined
assert: Core assert implementation with detailed logging
Macros#
Core assert implementation with file, line, and expression logging.
Crash assert - always enabled regardless of SL_LOG_DEBUG_ASSERT_ENABLE configuration.
Debug assert - enabled only when SL_LOG_DEBUG_ASSERT_ENABLE is defined.
Macro Definition Documentation#
debug_assert#
#define debug_assertValue:
Core assert implementation with file, line, and expression logging.
If the condition is false, constructs a detailed error string and passes it to sli_assert_implementation for handling.
SL_LOG_CRASH_ASSERT#
#define SL_LOG_CRASH_ASSERTValue:
(condition)
Crash assert - always enabled regardless of SL_LOG_DEBUG_ASSERT_ENABLE configuration.
SL_LOG_DEBUG_ASSERT#
#define SL_LOG_DEBUG_ASSERTValue:
(condition)
Debug assert - enabled only when SL_LOG_DEBUG_ASSERT_ENABLE is defined.
In debug builds, maps to SL_LOG_CRASH_ASSERT for full error handling. In release builds, this macro is disabled (no-op) to save code space.