summaryrefslogtreecommitdiff
path: root/boost/container_hash/hash_fwd.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/container_hash/hash_fwd.hpp')
-rw-r--r--boost/container_hash/hash_fwd.hpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/boost/container_hash/hash_fwd.hpp b/boost/container_hash/hash_fwd.hpp
new file mode 100644
index 0000000000..a87c182d39
--- /dev/null
+++ b/boost/container_hash/hash_fwd.hpp
@@ -0,0 +1,36 @@
+
+// Copyright 2005-2009 Daniel James.
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+// Based on Peter Dimov's proposal
+// http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2005/n1756.pdf
+// issue 6.18.
+
+#if !defined(BOOST_FUNCTIONAL_HASH_FWD_HPP)
+#define BOOST_FUNCTIONAL_HASH_FWD_HPP
+
+#include <boost/config/workaround.hpp>
+#include <cstddef>
+
+#if defined(BOOST_HAS_PRAGMA_ONCE)
+#pragma once
+#endif
+
+
+namespace boost
+{
+ template <class T> struct hash;
+
+ template <class T> void hash_combine(std::size_t& seed, T const& v);
+
+ template <class It> std::size_t hash_range(It, It);
+ template <class It> void hash_range(std::size_t&, It, It);
+
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x551))
+ template <class T> inline std::size_t hash_range(T*, T*);
+ template <class T> inline void hash_range(std::size_t&, T*, T*);
+#endif
+}
+
+#endif