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