summaryrefslogtreecommitdiff
path: root/asl/base/utility.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'asl/base/utility.hpp')
-rw-r--r--asl/base/utility.hpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/asl/base/utility.hpp b/asl/base/utility.hpp
index f371ab4..c4801b1 100644
--- a/asl/base/utility.hpp
+++ b/asl/base/utility.hpp
@@ -69,6 +69,12 @@ constexpr U bit_cast(T value) requires (sizeof(T) == sizeof(U))
return __builtin_bit_cast(U, value);
}
+template<is_enum T>
+constexpr auto to_underlying(T value)
+{
+ return static_cast<underlying_t<T>>(value);
+}
+
// NOLINTBEGIN(*-macro-parentheses)
#define ASL_DELETE_COPY(T) \
T(const T&) = delete; \