From e02a4e259436e5db39249ed03cc80e6cf09fa16f Mon Sep 17 00:00:00 2001 From: Danny Robson Date: Tue, 25 Jul 2023 10:00:30 +1000 Subject: [PATCH] hash/{std,tuple}: operators should be const --- hash/std.hpp | 2 +- hash/tuple.hpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/hash/std.hpp b/hash/std.hpp index 32239b4b..d250a770 100644 --- a/hash/std.hpp +++ b/hash/std.hpp @@ -12,7 +12,7 @@ namespace cruft::hash { // Useful as a component in more complex hash objects (eg, hash::tuple) struct std { template - auto operator () (ValueT &&val) + auto operator () (ValueT &&val) const { using inner_t = ::std::remove_cvref_t; return ::std::hash {} (::std::forward (val)); diff --git a/hash/tuple.hpp b/hash/tuple.hpp index 1afe7700..8e7c47d5 100644 --- a/hash/tuple.hpp +++ b/hash/tuple.hpp @@ -19,7 +19,7 @@ namespace cruft::hash { public: template auto - operator() (std::tuple const &val) + operator() (std::tuple const &val) const { return compute (val, std::make_index_sequence {}); } @@ -27,7 +27,7 @@ namespace cruft::hash { private: template auto - compute (std::tuple const &val, std::index_sequence) + compute (std::tuple const &val, std::index_sequence) const { return MixT {} ( ElementT {} (std::get (val))...