summaryrefslogtreecommitdiffstats
path: root/util/generic/enum_cast.cpp
diff options
context:
space:
mode:
authorkshalnev <[email protected]>2025-03-27 09:05:01 +0300
committerkshalnev <[email protected]>2025-03-27 09:20:00 +0300
commit54394ecb8d819f075dddd15ed8cdb4fb822d66cd (patch)
tree17e481976ebfee5cff047cdf5773844199c72a20 /util/generic/enum_cast.cpp
parent6f57592a3b6099c881ca20f5b54520a3852a1d56 (diff)
Added SafeCastToEnum
commit_hash:44102d9b2c000eefdfd91997a40a055b29d647c7
Diffstat (limited to 'util/generic/enum_cast.cpp')
-rw-r--r--util/generic/enum_cast.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/util/generic/enum_cast.cpp b/util/generic/enum_cast.cpp
new file mode 100644
index 00000000000..8db625ef440
--- /dev/null
+++ b/util/generic/enum_cast.cpp
@@ -0,0 +1,12 @@
+#include "enum_cast.h"
+
+#include <util/generic/yexception.h>
+#include <util/system/type_name.h>
+
+namespace NPrivate {
+
+ [[noreturn]] void OnSafeCastToEnumUnexpectedValue(const std::type_info& valueTypeInfo) {
+ ythrow TBadCastException() << "Unexpected enum " << TypeName(valueTypeInfo) << " value";
+ }
+
+} // namespace NPrivate