f436f687df74b73cf7eee8b5c0401031d9fcd272
[senf.git] / boost / multi_index / hashed_index_fwd.hpp
1 /* Copyright 2003-2005 Joaquín M López Muñoz.
2  * Distributed under the Boost Software License, Version 1.0.
3  * (See accompanying file LICENSE_1_0.txt or copy at
4  * http://www.boost.org/LICENSE_1_0.txt)
5  *
6  * See http://www.boost.org/libs/multi_index for library home page.
7  */
8
9 #ifndef BOOST_MULTI_INDEX_HASHED_INDEX_FWD_HPP
10 #define BOOST_MULTI_INDEX_HASHED_INDEX_FWD_HPP
11
12 #if defined(_MSC_VER)&&(_MSC_VER>=1200)
13 #pragma once
14 #endif
15
16 #include <boost/multi_index/detail/hash_index_args.hpp>
17
18 namespace boost{
19
20 namespace multi_index{
21
22 namespace detail{
23
24 template<
25   typename KeyFromValue,typename Hash,typename Pred,
26   typename SuperMeta,typename TagList,typename Category
27 >
28 class hashed_index;
29
30 template<
31   typename KeyFromValue,typename Hash,typename Pred,
32   typename SuperMeta,typename TagList,typename Category
33 >
34 void swap(
35   hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& x,
36   hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& y);
37
38 } /* namespace multi_index::detail */
39
40 /* hashed_index specifiers */
41
42 template<
43   typename Arg1,typename Arg2=mpl::na,
44   typename Arg3=mpl::na,typename Arg4=mpl::na
45 >
46 struct hashed_unique;
47
48 template<
49   typename Arg1,typename Arg2=mpl::na,
50   typename Arg3=mpl::na,typename Arg4=mpl::na
51 >
52 struct hashed_non_unique;
53
54 } /* namespace multi_index */
55
56 } /* namespace boost */
57
58 #endif