Chris@101
|
1 /* Copyright 2003-2013 Joaquin M Lopez Munoz.
|
Chris@16
|
2 * Distributed under the Boost Software License, Version 1.0.
|
Chris@16
|
3 * (See accompanying file LICENSE_1_0.txt or copy at
|
Chris@16
|
4 * http://www.boost.org/LICENSE_1_0.txt)
|
Chris@16
|
5 *
|
Chris@16
|
6 * See http://www.boost.org/libs/multi_index for library home page.
|
Chris@16
|
7 */
|
Chris@16
|
8
|
Chris@16
|
9 #ifndef BOOST_MULTI_INDEX_SEQUENCED_INDEX_FWD_HPP
|
Chris@16
|
10 #define BOOST_MULTI_INDEX_SEQUENCED_INDEX_FWD_HPP
|
Chris@16
|
11
|
Chris@101
|
12 #if defined(_MSC_VER)
|
Chris@16
|
13 #pragma once
|
Chris@16
|
14 #endif
|
Chris@16
|
15
|
Chris@16
|
16 #include <boost/multi_index/tag.hpp>
|
Chris@16
|
17
|
Chris@16
|
18 namespace boost{
|
Chris@16
|
19
|
Chris@16
|
20 namespace multi_index{
|
Chris@16
|
21
|
Chris@16
|
22 namespace detail{
|
Chris@16
|
23
|
Chris@16
|
24 template<typename SuperMeta,typename TagList>
|
Chris@16
|
25 class sequenced_index;
|
Chris@16
|
26
|
Chris@16
|
27 template<
|
Chris@16
|
28 typename SuperMeta1,typename TagList1,
|
Chris@16
|
29 typename SuperMeta2,typename TagList2
|
Chris@16
|
30 >
|
Chris@16
|
31 bool operator==(
|
Chris@16
|
32 const sequenced_index<SuperMeta1,TagList1>& x,
|
Chris@16
|
33 const sequenced_index<SuperMeta2,TagList2>& y);
|
Chris@16
|
34
|
Chris@16
|
35 template<
|
Chris@16
|
36 typename SuperMeta1,typename TagList1,
|
Chris@16
|
37 typename SuperMeta2,typename TagList2
|
Chris@16
|
38 >
|
Chris@16
|
39 bool operator<(
|
Chris@16
|
40 const sequenced_index<SuperMeta1,TagList1>& x,
|
Chris@16
|
41 const sequenced_index<SuperMeta2,TagList2>& y);
|
Chris@16
|
42
|
Chris@16
|
43 template<
|
Chris@16
|
44 typename SuperMeta1,typename TagList1,
|
Chris@16
|
45 typename SuperMeta2,typename TagList2
|
Chris@16
|
46 >
|
Chris@16
|
47 bool operator!=(
|
Chris@16
|
48 const sequenced_index<SuperMeta1,TagList1>& x,
|
Chris@16
|
49 const sequenced_index<SuperMeta2,TagList2>& y);
|
Chris@16
|
50
|
Chris@16
|
51 template<
|
Chris@16
|
52 typename SuperMeta1,typename TagList1,
|
Chris@16
|
53 typename SuperMeta2,typename TagList2
|
Chris@16
|
54 >
|
Chris@16
|
55 bool operator>(
|
Chris@16
|
56 const sequenced_index<SuperMeta1,TagList1>& x,
|
Chris@16
|
57 const sequenced_index<SuperMeta2,TagList2>& y);
|
Chris@16
|
58
|
Chris@16
|
59 template<
|
Chris@16
|
60 typename SuperMeta1,typename TagList1,
|
Chris@16
|
61 typename SuperMeta2,typename TagList2
|
Chris@16
|
62 >
|
Chris@16
|
63 bool operator>=(
|
Chris@16
|
64 const sequenced_index<SuperMeta1,TagList1>& x,
|
Chris@16
|
65 const sequenced_index<SuperMeta2,TagList2>& y);
|
Chris@16
|
66
|
Chris@16
|
67 template<
|
Chris@16
|
68 typename SuperMeta1,typename TagList1,
|
Chris@16
|
69 typename SuperMeta2,typename TagList2
|
Chris@16
|
70 >
|
Chris@16
|
71 bool operator<=(
|
Chris@16
|
72 const sequenced_index<SuperMeta1,TagList1>& x,
|
Chris@16
|
73 const sequenced_index<SuperMeta2,TagList2>& y);
|
Chris@16
|
74
|
Chris@16
|
75 template<typename SuperMeta,typename TagList>
|
Chris@16
|
76 void swap(
|
Chris@16
|
77 sequenced_index<SuperMeta,TagList>& x,
|
Chris@16
|
78 sequenced_index<SuperMeta,TagList>& y);
|
Chris@16
|
79
|
Chris@16
|
80 } /* namespace multi_index::detail */
|
Chris@16
|
81
|
Chris@16
|
82 /* index specifiers */
|
Chris@16
|
83
|
Chris@16
|
84 template <typename TagList=tag<> >
|
Chris@16
|
85 struct sequenced;
|
Chris@16
|
86
|
Chris@16
|
87 } /* namespace multi_index */
|
Chris@16
|
88
|
Chris@16
|
89 } /* namespace boost */
|
Chris@16
|
90
|
Chris@16
|
91 #endif
|