diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2024-04-03 23:56:57 +0200 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2024-04-04 00:16:57 +0200 |
commit | 437794834f64a2ef2111f9e9437ab876eff4df88 (patch) | |
tree | 3466e01b5a008b190e4f9bb8d70afc9552107598 /entity/constraints.hpp | |
parent | 949a94fd81c3f5f1788c17bb986dd9dde2f9c735 (diff) |
entity: fix getting enum min/max
Diffstat (limited to 'entity/constraints.hpp')
-rw-r--r-- | entity/constraints.hpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/entity/constraints.hpp b/entity/constraints.hpp index c807fddc..6a5587d5 100644 --- a/entity/constraints.hpp +++ b/entity/constraints.hpp @@ -26,6 +26,14 @@ struct limit_traits<T> }; template<typename T> +requires std::is_enum_v<T> +struct limit_traits<T> +{ + static constexpr T min() { return T(limits<std::underlying_type_t<T>>::min); } + static constexpr T max() { return T(limits<std::underlying_type_t<T>>::max); } +}; + +template<typename T> struct limit_traits { static_assert(std::is_nothrow_default_constructible_v<T>); |