From 8a7891d561fc06bb8305b53e204e235812afb22c Mon Sep 17 00:00:00 2001 From: lisyarus Date: Wed, 23 Aug 2023 00:01:52 +0300 Subject: [PATCH] Make util::hash_combine and hash_sequence constexpr --- libs/util/include/psemek/util/hash.hpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/util/include/psemek/util/hash.hpp b/libs/util/include/psemek/util/hash.hpp index 701d93a4..2f8a77cd 100644 --- a/libs/util/include/psemek/util/hash.hpp +++ b/libs/util/include/psemek/util/hash.hpp @@ -6,9 +6,9 @@ namespace psemek::util { - inline void hash_combine(std::size_t & seed, std::size_t value) + constexpr void hash_combine(std::size_t & seed, std::size_t value) { - static const std::size_t k = 0x9ddfea08eb382d69ULL; + constexpr std::size_t k = 0x9ddfea08eb382d69ULL; std::size_t a = (value ^ seed) * k; a ^= (a >> 47); std::size_t b = (seed ^ a) * k; @@ -17,7 +17,7 @@ namespace psemek::util } template ())>>> - void hash_sequence(std::size_t & seed, Iterator begin, Iterator end, Hash hash = Hash{}) + constexpr void hash_sequence(std::size_t & seed, Iterator begin, Iterator end, Hash hash = Hash{}) { for (; begin != end; ++begin) {