Convenience method to append extra message in brackets
Tries to evaluate expr. If it fails, checks the global errno and uses matching message as base for exception message, as well as throws the exception.
Calls Func automatically checking errno and storing name
Calls enforceRet interpreting return value as error code
Calls enforceRet expecting Func to return non-NULL
Initializes local reusable error message based on supplied errno value
Initializes local reusable error message based on global errno value and resets errno to 0.
Provides standard reusable exception API
Exception class which reads, stores and resets the thread-local errno