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_SEQUENCED_INDEX_FWD_HPP 10 #define BOOST_MULTI_INDEX_SEQUENCED_INDEX_FWD_HPP 11 12 #if defined(_MSC_VER) 13 #pragma once 14 #endif 15 16 #include <boost/multi_index/tag.hpp> 17 18 namespace boost{ 19 20 namespace multi_index{ 21 22 namespace detail{ 23 24 template<typename SuperMeta,typename TagList> 25 class sequenced_index; 26 27 template< 28 typename SuperMeta1,typename TagList1, 29 typename SuperMeta2,typename TagList2 30 > 31 bool operator==( 32 const sequenced_index<SuperMeta1,TagList1>& x, 33 const sequenced_index<SuperMeta2,TagList2>& y); 34 35 template< 36 typename SuperMeta1,typename TagList1, 37 typename SuperMeta2,typename TagList2 38 > 39 bool operator<( 40 const sequenced_index<SuperMeta1,TagList1>& x, 41 const sequenced_index<SuperMeta2,TagList2>& y); 42 43 template< 44 typename SuperMeta1,typename TagList1, 45 typename SuperMeta2,typename TagList2 46 > 47 bool operator!=( 48 const sequenced_index<SuperMeta1,TagList1>& x, 49 const sequenced_index<SuperMeta2,TagList2>& y); 50 51 template< 52 typename SuperMeta1,typename TagList1, 53 typename SuperMeta2,typename TagList2 54 > 55 bool operator>( 56 const sequenced_index<SuperMeta1,TagList1>& x, 57 const sequenced_index<SuperMeta2,TagList2>& y); 58 59 template< 60 typename SuperMeta1,typename TagList1, 61 typename SuperMeta2,typename TagList2 62 > 63 bool operator>=( 64 const sequenced_index<SuperMeta1,TagList1>& x, 65 const sequenced_index<SuperMeta2,TagList2>& y); 66 67 template< 68 typename SuperMeta1,typename TagList1, 69 typename SuperMeta2,typename TagList2 70 > 71 bool operator<=( 72 const sequenced_index<SuperMeta1,TagList1>& x, 73 const sequenced_index<SuperMeta2,TagList2>& y); 74 75 template<typename SuperMeta,typename TagList> 76 void swap( 77 sequenced_index<SuperMeta,TagList>& x, 78 sequenced_index<SuperMeta,TagList>& y); 79 80 } /* namespace multi_index::detail */ 81 82 /* index specifiers */ 83 84 template <typename TagList=tag<> > 85 struct sequenced; 86 87 } /* namespace multi_index */ 88 89 } /* namespace boost */ 90 91 #endif 92