slang::assert namespace

Assertion-related utilities.

Classes

class AssertionException
An exception thrown when an ASSERT condition fails.

Functions

void assertFailed(const char* expr, const std::source_location& location)
A handler that runs when an ASSERT condition fails; it will unconditionally throw an exception.
void handleThrow(const char* msg, const std::source_location& location)
A handler that runs when an exception is thrown but exceptions are disabled; it will unconditionally abort the program.
void handleUnreachable(const std::source_location& location)
A handler that runs when a code path is reached that is supposed to be unreachable.

Function documentation

void slang::assert::assertFailed(const char* expr, const std::source_location& location)

A handler that runs when an ASSERT condition fails; it will unconditionally throw an exception.

void slang::assert::handleThrow(const char* msg, const std::source_location& location)

A handler that runs when an exception is thrown but exceptions are disabled; it will unconditionally abort the program.

void slang::assert::handleUnreachable(const std::source_location& location)

A handler that runs when a code path is reached that is supposed to be unreachable.

An exception will be thrown or the program will be aborted.