2009-03-09 20:56:23 +00:00
|
|
|
// Copyright 2005-2009 Daniel James.
|
2022-10-28 03:32:18 +03:00
|
|
|
// Copyright 2021, 2022 Peter Dimov.
|
2021-10-17 04:00:10 +03:00
|
|
|
// Distributed under the Boost Software License, Version 1.0.
|
|
|
|
|
// https://www.boost.org/LICENSE_1_0.txt
|
2009-03-08 09:45:11 +00:00
|
|
|
|
2021-10-17 04:00:10 +03:00
|
|
|
#ifndef BOOST_FUNCTIONAL_HASH_FWD_HPP
|
2009-03-08 09:45:11 +00:00
|
|
|
#define BOOST_FUNCTIONAL_HASH_FWD_HPP
|
|
|
|
|
|
2017-12-19 17:48:18 +00:00
|
|
|
#include <cstddef>
|
|
|
|
|
|
2009-03-08 09:45:11 +00:00
|
|
|
namespace boost
|
|
|
|
|
{
|
|
|
|
|
|
2022-09-13 20:10:35 +03:00
|
|
|
namespace container_hash
|
|
|
|
|
{
|
2009-03-08 09:45:11 +00:00
|
|
|
|
2022-09-13 20:10:35 +03:00
|
|
|
template<class T> struct is_range;
|
|
|
|
|
template<class T> struct is_contiguous_range;
|
|
|
|
|
template<class T> struct is_unordered_range;
|
2022-10-28 03:32:18 +03:00
|
|
|
template<class T> struct is_described_class;
|
2009-03-08 09:45:11 +00:00
|
|
|
|
2022-09-13 20:10:35 +03:00
|
|
|
} // namespace container_hash
|
|
|
|
|
|
|
|
|
|
template<class T> struct hash;
|
|
|
|
|
|
|
|
|
|
template<class T> void hash_combine( std::size_t& seed, T const& v );
|
|
|
|
|
|
|
|
|
|
template<class It> void hash_range( std::size_t&, It, It );
|
2022-09-15 18:00:04 +03:00
|
|
|
template<class It> std::size_t hash_range( It, It );
|
2022-09-13 20:10:35 +03:00
|
|
|
|
|
|
|
|
template<class It> void hash_unordered_range( std::size_t&, It, It );
|
2022-09-15 18:00:04 +03:00
|
|
|
template<class It> std::size_t hash_unordered_range( It, It );
|
2022-09-13 20:10:35 +03:00
|
|
|
|
|
|
|
|
} // namespace boost
|
2009-03-08 09:45:11 +00:00
|
|
|
|
2021-10-17 04:00:10 +03:00
|
|
|
#endif // #ifndef BOOST_FUNCTIONAL_HASH_FWD_HPP
|