Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-09-17 08:33:43

0001 #ifndef BOOST_HASH2_HASH_APPEND_FWD_HPP_INCLUDED
0002 #define BOOST_HASH2_HASH_APPEND_FWD_HPP_INCLUDED
0003 
0004 // Copyright 2024 Peter Dimov.
0005 // Distributed under the Boost Software License, Version 1.0.
0006 // https://www.boost.org/LICENSE_1_0.txt
0007 
0008 #include <boost/config.hpp>
0009 
0010 namespace boost
0011 {
0012 namespace hash2
0013 {
0014 
0015 #if defined(BOOST_GCC) && BOOST_GCC < 120000
0016 
0017 // Due to a bug in GCC 11 and earlier, the default argument
0018 // for Flavor needs to be present on the first declaration
0019 
0020 struct default_flavor;
0021 
0022 template<class Hash, class Flavor = default_flavor, class T> BOOST_CXX14_CONSTEXPR void hash_append( Hash& h, Flavor const& f, T const& v );
0023 template<class Hash, class Flavor = default_flavor, class It> BOOST_CXX14_CONSTEXPR void hash_append_range( Hash& h, Flavor const& f, It first, It last );
0024 template<class Hash, class Flavor = default_flavor, class T> BOOST_CXX14_CONSTEXPR void hash_append_size( Hash& h, Flavor const& f, T const& v );
0025 template<class Hash, class Flavor = default_flavor, class It> BOOST_CXX14_CONSTEXPR void hash_append_range_and_size( Hash& h, Flavor const& f, It first, It last );
0026 template<class Hash, class Flavor = default_flavor, class It> BOOST_CXX14_CONSTEXPR void hash_append_unordered_range( Hash& h, Flavor const& f, It first, It last );
0027 
0028 #else
0029 
0030 template<class Hash, class Flavor, class T> BOOST_CXX14_CONSTEXPR void hash_append( Hash& h, Flavor const& f, T const& v );
0031 template<class Hash, class Flavor, class It> BOOST_CXX14_CONSTEXPR void hash_append_range( Hash& h, Flavor const& f, It first, It last );
0032 template<class Hash, class Flavor, class T> BOOST_CXX14_CONSTEXPR void hash_append_size( Hash& h, Flavor const& f, T const& v );
0033 template<class Hash, class Flavor, class It> BOOST_CXX14_CONSTEXPR void hash_append_range_and_size( Hash& h, Flavor const& f, It first, It last );
0034 template<class Hash, class Flavor, class It> BOOST_CXX14_CONSTEXPR void hash_append_unordered_range( Hash& h, Flavor const& f, It first, It last );
0035 
0036 #endif
0037 
0038 struct hash_append_tag;
0039 
0040 } // namespace hash2
0041 } // namespace boost
0042 
0043 #endif // #ifndef BOOST_HASH2_HASH_APPEND_FWD_HPP_INCLUDED