diff --git a/include/boost/multi_index/composite_key.hpp b/include/boost/multi_index/composite_key.hpp index cedc75e..2c21a6a 100644 --- a/include/boost/multi_index/composite_key.hpp +++ b/include/boost/multi_index/composite_key.hpp @@ -1,4 +1,4 @@ -/* Copyright 2003-2008 Joaquin M Lopez Munoz. +/* Copyright 2003-2011 Joaquin M Lopez Munoz. * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at * http://www.boost.org/LICENSE_1_0.txt) @@ -998,7 +998,7 @@ public: const composite_key_result& x, const Value& y)const { - return operator()(x,make_tuple(cref(y))); + return operator()(x,boost::make_tuple(boost::cref(y))); } #endif @@ -1033,7 +1033,7 @@ public: const Value& x, const composite_key_result& y)const { - return operator()(make_tuple(cref(x)),y); + return operator()(boost::make_tuple(boost::cref(x)),y); } #endif diff --git a/include/boost/multi_index/hashed_index.hpp b/include/boost/multi_index/hashed_index.hpp index 393a585..0ee4aeb 100644 --- a/include/boost/multi_index/hashed_index.hpp +++ b/include/boost/multi_index/hashed_index.hpp @@ -1,4 +1,4 @@ -/* Copyright 2003-2010 Joaquin M Lopez Munoz. +/* Copyright 2003-2011 Joaquin M Lopez Munoz. * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at * http://www.boost.org/LICENSE_1_0.txt) @@ -19,7 +19,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -605,7 +607,7 @@ BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS: hash(tuples::get<2>(args_list.get_head())), eq(tuples::get<3>(args_list.get_head())), buckets(al,header()->impl(),tuples::get<0>(args_list.get_head())), - mlf(1.0), + mlf(1.0f), first_bucket(buckets.size()) { calculate_max_load(); @@ -1240,6 +1242,20 @@ struct hashed_non_unique } /* namespace boost */ +/* Boost.Foreach compatibility */ + +template< + typename KeyFromValue,typename Hash,typename Pred, + typename SuperMeta,typename TagList,typename Category +> +inline boost::mpl::true_* boost_foreach_is_noncopyable( + boost::multi_index::detail::hashed_index< + KeyFromValue,Hash,Pred,SuperMeta,TagList,Category>*&, + boost::foreach::tag) +{ + return 0; +} + #undef BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT #endif diff --git a/include/boost/multi_index/ordered_index.hpp b/include/boost/multi_index/ordered_index.hpp index a49e4cf..20475e0 100644 --- a/include/boost/multi_index/ordered_index.hpp +++ b/include/boost/multi_index/ordered_index.hpp @@ -1,4 +1,4 @@ -/* Copyright 2003-2010 Joaquin M Lopez Munoz. +/* Copyright 2003-2011 Joaquin M Lopez Munoz. * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at * http://www.boost.org/LICENSE_1_0.txt) @@ -45,7 +45,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -1385,6 +1387,20 @@ struct ordered_non_unique } /* namespace boost */ +/* Boost.Foreach compatibility */ + +template< + typename KeyFromValue,typename Compare, + typename SuperMeta,typename TagList,typename Category +> +inline boost::mpl::true_* boost_foreach_is_noncopyable( + boost::multi_index::detail::ordered_index< + KeyFromValue,Compare,SuperMeta,TagList,Category>*&, + boost::foreach::tag) +{ + return 0; +} + #undef BOOST_MULTI_INDEX_ORD_INDEX_CHECK_INVARIANT #endif diff --git a/include/boost/multi_index/random_access_index.hpp b/include/boost/multi_index/random_access_index.hpp index b779549..c45913a 100644 --- a/include/boost/multi_index/random_access_index.hpp +++ b/include/boost/multi_index/random_access_index.hpp @@ -1,4 +1,4 @@ -/* Copyright 2003-2008 Joaquin M Lopez Munoz. +/* Copyright 2003-2011 Joaquin M Lopez Munoz. * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at * http://www.boost.org/LICENSE_1_0.txt) @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -1003,6 +1004,16 @@ struct random_access } /* namespace boost */ +/* Boost.Foreach compatibility */ + +template +inline boost::mpl::true_* boost_foreach_is_noncopyable( + boost::multi_index::detail::random_access_index*&, + boost::foreach::tag) +{ + return 0; +} + #undef BOOST_MULTI_INDEX_RND_INDEX_CHECK_INVARIANT #endif diff --git a/include/boost/multi_index/sequenced_index.hpp b/include/boost/multi_index/sequenced_index.hpp index 8e09115..e8832ee 100644 --- a/include/boost/multi_index/sequenced_index.hpp +++ b/include/boost/multi_index/sequenced_index.hpp @@ -1,4 +1,4 @@ -/* Copyright 2003-2008 Joaquin M Lopez Munoz. +/* Copyright 2003-2011 Joaquin M Lopez Munoz. * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at * http://www.boost.org/LICENSE_1_0.txt) @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -917,6 +918,16 @@ struct sequenced } /* namespace boost */ +/* Boost.Foreach compatibility */ + +template +inline boost::mpl::true_* boost_foreach_is_noncopyable( + boost::multi_index::detail::sequenced_index*&, + boost::foreach::tag) +{ + return 0; +} + #undef BOOST_MULTI_INDEX_SEQ_INDEX_CHECK_INVARIANT #endif