• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Copyright 2003-2013 Joaquin M Lopez Munoz.
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)
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 bool operator==(
35   const hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& x,
36   const hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& y);
37 
38 template<
39   typename KeyFromValue,typename Hash,typename Pred,
40   typename SuperMeta,typename TagList,typename Category
41 >
42 bool operator!=(
43   const hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& x,
44   const hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& y);
45 
46 template<
47   typename KeyFromValue,typename Hash,typename Pred,
48   typename SuperMeta,typename TagList,typename Category
49 >
50 void swap(
51   hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& x,
52   hashed_index<KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>& y);
53 
54 } /* namespace multi_index::detail */
55 
56 /* hashed_index specifiers */
57 
58 template<
59   typename Arg1,typename Arg2=mpl::na,
60   typename Arg3=mpl::na,typename Arg4=mpl::na
61 >
62 struct hashed_unique;
63 
64 template<
65   typename Arg1,typename Arg2=mpl::na,
66   typename Arg3=mpl::na,typename Arg4=mpl::na
67 >
68 struct hashed_non_unique;
69 
70 } /* namespace multi_index */
71 
72 } /* namespace boost */
73 
74 #endif
75