slang/util/Util.h file

Various utility functions and basic types used throughout the library.

Namespaces

namespace slang
Root namespace.
namespace slang::assert
Assertion-related utilities.
namespace std
STL namespace.

Classes

class slang::assert::AssertionException
An exception thrown when an ASSERT condition fails.
template<typename T>
class slang::not_null
A wrapper around a pointer that indicates that it should never be null.

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.