diff --git a/include/boost/container_hash/extensions.hpp b/include/boost/container_hash/extensions.hpp index 3636060..94adfa5 100644 --- a/include/boost/container_hash/extensions.hpp +++ b/include/boost/container_hash/extensions.hpp @@ -32,18 +32,6 @@ namespace boost { - template - std::size_t hash_value(std::pair const&); - - template - std::size_t hash_value(std::pair const& v) - { - std::size_t seed = 0; - boost::hash_combine(seed, v.first); - boost::hash_combine(seed, v.second); - return seed; - } - #if !defined(BOOST_NO_CXX11_HDR_TUPLE) namespace hash_detail { template diff --git a/include/boost/container_hash/hash.hpp b/include/boost/container_hash/hash.hpp index d9e62cf..4ab436b 100644 --- a/include/boost/container_hash/hash.hpp +++ b/include/boost/container_hash/hash.hpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #if !defined(BOOST_NO_CXX11_HDR_TYPEINDEX) @@ -167,6 +168,19 @@ namespace boost return seed; } + // pair + + template + std::size_t hash_value( std::pair const& v ) + { + std::size_t seed = 0; + + boost::hash_combine( seed, v.first ); + boost::hash_combine( seed, v.second ); + + return seed; + } + // ranges (list, set, deque...) template