summaryrefslogtreecommitdiff
path: root/asl/meta.hpp
diff options
context:
space:
mode:
authorSteven Le Rouzic <steven.lerouzic@gmail.com>2025-01-07 23:17:50 +0100
committerSteven Le Rouzic <steven.lerouzic@gmail.com>2025-01-07 23:17:50 +0100
commitb94a42b978251c4cdb4eb0be2a2e8d9dc8949eba (patch)
tree81ac62603714fbee3db7cc2c616d170cd6b5fe2c /asl/meta.hpp
parente18b054779766269a4b9ca68729c380d24c0535d (diff)
More work on hashing
Diffstat (limited to 'asl/meta.hpp')
-rw-r--r--asl/meta.hpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/asl/meta.hpp b/asl/meta.hpp
index c353b0f..8940ec6 100644
--- a/asl/meta.hpp
+++ b/asl/meta.hpp
@@ -189,8 +189,11 @@ template<> struct _is_integer_helper<uint64_t> : true_type {};
template<typename T> concept is_integer = _is_integer_helper<un_cv_t<T>>::value;
+template<typename T> concept is_enum = __is_enum(T);
+
template<typename T> struct is_uniquely_represented : false_type {};
template<is_integer T> struct is_uniquely_represented<T> : true_type {};
+template<is_enum T> struct is_uniquely_represented<T> : true_type {};
template<> struct is_uniquely_represented<uint128_t> : true_type {};
template<> struct is_uniquely_represented<byte> : true_type {};