#include "hsExceptions.h" #include const char *hsException::what() const HS_NOEXCEPT { char buffer[64]; static const char *kErrorNames[] = { "kNo_hsError", "kNilParam_hsError", "kBadParam_hsError", "kInternal_hsError", "kOS_hsError" }; static_assert(arrsize(kErrorNames) == hsErrorEnum_MAX, "kErrorNames not in sync with hsErrorEnum"); if (fError >= 0 && fError < hsErrorEnum_MAX) snprintf(buffer, arrsize(buffer), "%s (%ld)", kErrorNames[fError], fParam); else snprintf(buffer, arrsize(buffer), "Unknown hsException error %d (%ld)", fError, fParam); return buffer; }