diff --git a/include/boost/hash2/hash_append.hpp b/include/boost/hash2/hash_append.hpp index 0992d6a..f5c410f 100644 --- a/include/boost/hash2/hash_append.hpp +++ b/include/boost/hash2/hash_append.hpp @@ -164,6 +164,13 @@ template BOOST_CXX14_CONSTE // do_hash_append +struct hash_append_tag +{ +}; + +namespace detail +{ + // integral types template @@ -313,9 +320,6 @@ template // tuple-likes -namespace detail -{ - template BOOST_CXX14_CONSTEXPR void hash_append_tuple( Hash& h, Flavor const& f, T const& v, boost::mp11::integer_sequence ) { using std::get; @@ -323,8 +327,6 @@ template BOOST_CXX14_CONSTE (void)a; } -} // namespace detail - template BOOST_CXX14_CONSTEXPR typename std::enable_if< !container_hash::is_range::value && container_hash::is_tuple_like::value, void >::type @@ -387,10 +389,6 @@ template // classes with tag_invoke -struct hash_append_tag -{ -}; - template BOOST_CXX14_CONSTEXPR typename std::enable_if< detail::has_tag_invoke::value, void >::type @@ -399,6 +397,8 @@ template tag_invoke( hash_append_tag(), h, f, v ); } +} // namespace detail + // hash_append template @@ -410,7 +410,7 @@ BOOST_CXX14_CONSTEXPR void hash_append( Hash& h, Flavor const& f, T const& v ) } else { - do_hash_append( h, f, v ); + detail::do_hash_append( h, f, v ); } }