|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r65458 - in sandbox/SOC/2009/fusion/boost/fusion: adapted/detail/mpl algorithm/iteration/detail algorithm/query/detail algorithm/query/ext_ algorithm/transformation algorithm/transformation/detail algorithm/transformation/detail/filter_key_view container/detail/variadic_templates container/ext_ container/list/detail functional/invocation/detail functional/invocation/detail/pp functional/invocation/detail/variadic_templates iterator iterator/detail support support/internal view/detail view/ext_ view/filter_view view/filter_view/detail view/joint_view view/joint_view/detail view/repetitive_view/detail view/transform_view view/transform_view/detail view/zip_view view/zip_view/detail
From: mr.chr.schmidt_at_[hidden]
Date: 2010-09-19 05:51:47
Author: cschmidt
Date: 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
New Revision: 65458
URL: http://svn.boost.org/trac/boost/changeset/65458
Log:
Optimizations
Text files modified:
sandbox/SOC/2009/fusion/boost/fusion/adapted/detail/mpl/tag_of.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/algorithm/iteration/detail/fold.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/detail/find_if.hpp | 16 +++++-----
sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/ext_/find_if_s.hpp | 2
sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/filter_key_view/has_key_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/is_in_seq.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/replace_if.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase_key.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/container/detail/variadic_templates/as_seq.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/container/ext_/tree.hpp | 4 ++
sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/begin_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/next_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/value_at_impl.hpp | 8 ++---
sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/invoke.hpp | 8 ++--
sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/member_object_pointer_helper.hpp | 8 ++--
sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/pp/invoke_impl.hpp | 20 ++++++------
sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/variadic_templates/invoke_impl.hpp | 8 ++--
sandbox/SOC/2009/fusion/boost/fusion/iterator/advance.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/iterator/detail/distance.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/iterator/next.hpp | 2
sandbox/SOC/2009/fusion/boost/fusion/iterator/prior.hpp | 2
sandbox/SOC/2009/fusion/boost/fusion/support/deduce.hpp | 58 ++++++++++++++++++++--------------------
sandbox/SOC/2009/fusion/boost/fusion/support/internal/ref.hpp | 24 ++++++++--------
sandbox/SOC/2009/fusion/boost/fusion/support/internal/result_of.hpp | 8 ++--
sandbox/SOC/2009/fusion/boost/fusion/support/tag_of.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/detail/strictest_traversal.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/ext_/segmented_iterator.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/detail/filter_view_iterator.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/filter_view.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/begin_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/next_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/joint_view.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/next_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/prior_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/detail/transform_view_iterator.hpp | 12 ++++----
sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/transform_view.hpp | 12 ++++----
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/at_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/deref_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/distance_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/end_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/next_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/prior_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_at_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_of_impl.hpp | 4 +-
sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/zip_view.hpp | 4 +-
46 files changed, 158 insertions(+), 158 deletions(-)
Modified: sandbox/SOC/2009/fusion/boost/fusion/adapted/detail/mpl/tag_of.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/adapted/detail/mpl/tag_of.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/adapted/detail/mpl/tag_of.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -49,8 +49,8 @@
typedef typename detail::identity<T>::type identity_t;
typedef typename
- mpl::eval_if<
- mpl::is_sequence<identity_t>
+ mpl::eval_if_c<
+ mpl::is_sequence<identity_t>::value
, mpl::identity<mpl_sequence_tag>
, mpl::eval_if<
mpl::and_<
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/iteration/detail/fold.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/iteration/detail/fold.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/iteration/detail/fold.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -326,8 +326,8 @@
typedef preevaluate<F> preevaluater;
typedef typename
- mpl::eval_if<
- typename preevaluater::is_preevaluable
+ mpl::eval_if_c<
+ preevaluater::is_preevaluable::value
, preevaluater
, BOOST_PP_CAT(
result_of_first_unrolled,BOOST_FUSION_FOLD_NAME)<
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/detail/find_if.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/detail/find_if.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/detail/find_if.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -46,11 +46,11 @@
template<typename Begin, typename End, typename Pred>
struct main_find_if
- : mpl::eval_if<
+ : mpl::eval_if_c<
mpl::or_<
result_of::equal_to<Begin, End>
, mpl::apply1<Pred,Begin>
- >
+ >::value
, mpl::identity<Begin>
, next_find_if<Begin, End, Pred>
>
@@ -98,8 +98,8 @@
struct unrolled_find_if<It0, Pred, N>
#define BOOST_FUSION_UNROLLED_FIND_IF_HIERARCHY(Z,N,_) \
- , mpl::eval_if< \
- apply_offset_filter<It0, Pred, N> \
+ , mpl::eval_if_c< \
+ apply_offset_filter<It0, Pred, N>::value \
, result_of::advance_c<It0,N>
#define BOOST_FUSION_UNROLLED_FIND_IF_HIERARCHY_CLOSE(Z,N,_) >
@@ -109,8 +109,8 @@
BOOST_PP_EQUAL(BOOST_PP_INC(N_),BOOST_FUSION_UNROLLED_DEPTH), \
BOOST_FUSION_UNROLLED_FIND_IF_IMPL_DECLERATION, \
BOOST_FUSION_UNROLLED_FIND_IF_IMPL_SPECIALIZATION)(N_) \
- : mpl::eval_if< \
- typename mpl::apply1<Pred,It0>::type \
+ : mpl::eval_if_c< \
+ mpl::apply1<Pred,It0>::type::value \
, mpl::identity<It0> \
, mpl::eval_if< \
apply_offset_filter<It0, Pred, 1> \
@@ -139,8 +139,8 @@
template<typename It, typename Pred>
struct unrolled_find_if<It, Pred, 1>
- : mpl::eval_if<
- typename mpl::apply1<Pred,It>::type
+ : mpl::eval_if_c<
+ mpl::apply1<Pred,It>::type::value
, mpl::identity<It>
, result_of::next<It>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/ext_/find_if_s.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/ext_/find_if_s.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/query/ext_/find_if_s.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -130,7 +130,7 @@
not_found;
typedef typename
- mpl::eval_if<is_found_, found, not_found>::type
+ mpl::eval_if_c<is_found_::value, found, not_found>::type
type;
static type
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/filter_key_view/has_key_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/filter_key_view/has_key_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/filter_key_view/has_key_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -29,8 +29,8 @@
typedef typename detail::remove_reference<Seq>::type seq;
typedef typename
- mpl::eval_if<
- mpl::apply1<typename seq::pred_type,Key>
+ mpl::eval_if_c<
+ mpl::apply1<typename seq::pred_type,Key>::value
, mpl::identity<mpl::false_>
, result_of::has_key<typename seq::storage_type,Key>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/is_in_seq.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/is_in_seq.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/is_in_seq.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -20,8 +20,8 @@
template<typename It, typename Begin,typename End>
struct is_in_range
- : mpl::eval_if<
- result_of::equal_to<It,Begin>
+ : mpl::eval_if_c<
+ result_of::equal_to<It,Begin>::value
, mpl::identity<mpl::true_>
, mpl::eval_if<
result_of::equal_to<Begin,End>
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/replace_if.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/replace_if.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/detail/replace_if.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -30,7 +30,7 @@
};
#else
//TODO!!!
- : mpl::if_<
+ : mpl::if_c<
mpl::and_<
is_convertible<
typename remove_reference<NewValue>::type*
@@ -38,7 +38,7 @@
>
, is_rref<NewValue>
, is_lrref<U>
- >
+ >::value
, typename remove_reference<U>::type&
, U
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -31,8 +31,8 @@
typedef typename result_of::end<Seq>::type end_type;
typedef typename
- mpl::eval_if<
- result_of::equal_to<BeginRef, end_type>
+ mpl::eval_if_c<
+ result_of::equal_to<BeginRef, end_type>::value
, mpl::identity<BeginRef>
, result_of::next<BeginRef>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase_key.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase_key.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/algorithm/transformation/erase_key.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -37,8 +37,8 @@
BOOST_FUSION_MPL_ASSERT((has_key<Seq,Key>));
typedef typename
- mpl::eval_if<
- traits::is_forward<Seq>
+ mpl::eval_if_c<
+ traits::is_forward<Seq>::value
, erase<
Seq
, typename find_key<Seq, Key>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/container/detail/variadic_templates/as_seq.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/detail/variadic_templates/as_seq.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/detail/variadic_templates/as_seq.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -38,8 +38,8 @@
typedef typename
mpl::apply1<
mpl::unpack_args<variadic_quote<BOOST_FUSION_SEQ_NAME> >
- , typename mpl::eval_if<
- traits::is_random_access<Seq>
+ , typename mpl::eval_if_c<
+ traits::is_random_access<Seq>::value
, mpl::identity<seq>
, mpl::fold<
seq
Modified: sandbox/SOC/2009/fusion/boost/fusion/container/ext_/tree.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/ext_/tree.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/ext_/tree.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -56,7 +56,9 @@
typedef Left left_type;
typedef Right right_type;
typedef typename
- mpl::if_<traits::is_sequence<Data>, Data, single_view<Data> >::type
+ mpl::if_c<
+ traits::is_sequence<Data>, Data, single_view<Data>::value
+ >::type
data_view;
#ifdef BOOST_NO_VARIADIC_TEMPLATES
typedef vector3<Left, data_view, Right> segments_type;
Modified: sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/begin_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/begin_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/begin_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -29,8 +29,8 @@
typedef typename result_of::empty<Seq>::type empty;
typedef typename
- mpl::if_<
- empty
+ mpl::if_c<
+ empty::value
, nil_iterator
, cons_iterator<typename detail::add_lref<Seq>::type>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/next_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/next_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/next_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -40,8 +40,8 @@
typedef typename result_of::empty<cdr_type>::type empty;
typedef typename
- mpl::if_<
- empty
+ mpl::if_c<
+ empty::value
, nil_iterator
, cons_iterator<cdr_type>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/value_at_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/value_at_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/value_at_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -21,13 +21,11 @@
template<typename Seq, typename N>
struct apply
{
- typedef typename
- detail::remove_reference<Seq>::type
- seq;
+ typedef typename detail::remove_reference<Seq>::type seq;
typedef typename
- mpl::eval_if<
- N
+ mpl::eval_if_c<
+ N::value ? true : false
, apply<typename seq::cdr_type, mpl::int_<N::value-1> >
, mpl::identity<typename seq::car_type>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/invoke.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/invoke.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/invoke.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -58,8 +58,8 @@
#else
template<typename FQualified=void,typename F=void, typename Seq=void>
inline typename result_of::BOOST_FUSION_INVOKE_NAME<
- typename mpl::if_<
- is_same<FQualified, void>
+ typename mpl::if_c<
+ is_same<FQualified, void>::value
, F&&
, FQualified
>::type
@@ -68,8 +68,8 @@
BOOST_FUSION_INVOKE_NAME(F&& f, Seq&& seq)
{
return result_of::BOOST_FUSION_INVOKE_NAME<
- typename mpl::if_<
- is_same<FQualified, void>
+ typename mpl::if_c<
+ is_same<FQualified, void>::value
, F&&
, FQualified
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/member_object_pointer_helper.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/member_object_pointer_helper.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/member_object_pointer_helper.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -71,7 +71,7 @@
is_directly_convertible;
typedef typename
- mpl::if_<
+ mpl::if_c<
mpl::or_<
is_const<object_type>
, mpl::and_<
@@ -82,13 +82,13 @@
mpl::not_<is_directly_convertible>
, const_pointee<Instance>
>
- >
+ >::value
, class_type const
, class_type
>::type
const_class_type;
typedef typename
- mpl::if_<
+ mpl::if_c<
mpl::or_<
is_volatile<object_type>
, mpl::and_<
@@ -99,7 +99,7 @@
mpl::not_<is_directly_convertible>
, volatile_pointee<Instance>
>
- >
+ >::value
, const_class_type volatile
, const_class_type
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/pp/invoke_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/pp/invoke_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/pp/invoke_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -94,8 +94,8 @@
typedef void type;
#else
typedef
- mpl::eval_if<
- traits::is_random_access<SeqRef>
+ mpl::eval_if_c<
+ traits::is_random_access<SeqRef>::value
, random_access_impl::
BOOST_PP_CAT(result_of_unrolled_,BOOST_FUSION_INVOKE_NAME)<
result_of::size<SeqRef>::value
@@ -114,8 +114,8 @@
typedef preevaluate<F> preevaluater;
typedef typename
- mpl::eval_if<
- typename preevaluater::is_preevaluable
+ mpl::eval_if_c<
+ preevaluater::is_preevaluable::value
, preevaluater
# ifndef BOOST_FUSION_NO_MEMBER_PTR
, mpl::eval_if<
@@ -141,11 +141,11 @@
#ifdef BOOST_FUSION_NO_MEMBER_PTR
function_object
#else
- typename mpl::eval_if<
- is_member_function_pointer<f>
+ typename mpl::eval_if_c<
+ is_member_function_pointer<f>::value
, mpl::identity<member_function_ptr>
- , mpl::if_<
- is_member_object_pointer<f>
+ , mpl::if_c<
+ is_member_object_pointer<f>::value
, member_object_ptr
, function_object
>
@@ -153,8 +153,8 @@
#endif
f_type;
- return mpl::if_<
- traits::is_random_access<SeqRef>
+ return mpl::if_c<
+ traits::is_random_access<SeqRef>::value
, random_access_impl::
BOOST_PP_CAT(BOOST_FUSION_INVOKE_NAME,_impl)<
f_type
Modified: sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/variadic_templates/invoke_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/variadic_templates/invoke_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/functional/invocation/detail/variadic_templates/invoke_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -346,8 +346,8 @@
typedef void type;
#else
typedef
- mpl::eval_if<
- traits::is_bidirectional<SeqRef>
+ mpl::eval_if_c<
+ traits::is_bidirectional<SeqRef>::value
, bidirectional_impl::
BOOST_PP_CAT(result_of_unrolled_,BOOST_FUSION_INVOKE_NAME)<
result_of::size<SeqRef>::value
@@ -366,8 +366,8 @@
typedef preevaluate<F> preevaluater;
typedef typename
- mpl::eval_if<
- typename preevaluater::is_preevaluable
+ mpl::eval_if_c<
+ preevaluater::is_preevaluable::value
, preevaluater
# ifndef BOOST_FUSION_NO_MEMBER_PTR
, mpl::eval_if<
Modified: sandbox/SOC/2009/fusion/boost/fusion/iterator/advance.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/iterator/advance.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/iterator/advance.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -60,14 +60,14 @@
}
template<int N, typename It>
- inline typename result_of::advance_c<It const&, N>::type const
+ inline typename result_of::advance_c<It const&, N>::type
advance_c(It const& it)
{
return result_of::advance_c<It const&, N>::call(it);
}
template<typename N, typename It>
- inline typename result_of::advance<It const&, N>::type const
+ inline typename result_of::advance<It const&, N>::type
advance(It const& it)
{
return result_of::advance<It const&, N>::call(it);
Modified: sandbox/SOC/2009/fusion/boost/fusion/iterator/detail/distance.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/iterator/detail/distance.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/iterator/detail/distance.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -37,8 +37,8 @@
template<typename Begin, typename End>
struct linear_distance
- : mpl::eval_if<
- result_of::equal_to<Begin, End>
+ : mpl::eval_if_c<
+ result_of::equal_to<Begin, End>::value
, mpl::identity<mpl::int_<0> >
, next_distance<Begin, End>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/iterator/next.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/iterator/next.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/iterator/next.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -32,7 +32,7 @@
}
template<typename It>
- typename result_of::next<It const&>::type const
+ typename result_of::next<It const&>::type
next(It const& it)
{
return result_of::next<It const&>::call(it);
Modified: sandbox/SOC/2009/fusion/boost/fusion/iterator/prior.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/iterator/prior.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/iterator/prior.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -32,7 +32,7 @@
}
template<typename It>
- typename result_of::prior<It const&>::type const
+ typename result_of::prior<It const&>::type
prior(It const& it)
{
return result_of::prior<It const&>::call(it);
Modified: sandbox/SOC/2009/fusion/boost/fusion/support/deduce.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/support/deduce.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/support/deduce.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -53,29 +53,29 @@
typedef T& type;
};
-#define BOOST_FUSION_DEDUCE_CV_REF_SPECIALIZATION(MODIFIER,DEDUCE)\
- template<typename T>\
- struct DEDUCE<T MODIFIER>\
- {\
- typedef detail::is_po_callable<T MODIFIER> is_po_callable;\
- \
- typedef typename\
- mpl::eval_if<\
- typename is_po_callable::type\
- , mpl::if_<\
- typename is_po_callable::is_pointer\
- , T\
- , T MODIFIER\
- >\
- , deduce<T>\
- >::type\
- type;\
- };\
- \
- template<typename T>\
- struct deduce<reference_wrapper<T> MODIFIER>\
- {\
- typedef T& type;\
+#define BOOST_FUSION_DEDUCE_CV_REF_SPECIALIZATION(MODIFIER,DEDUCE) \
+ template<typename T> \
+ struct DEDUCE<T MODIFIER> \
+ { \
+ typedef detail::is_po_callable<T MODIFIER> is_po_callable; \
+ \
+ typedef typename \
+ mpl::eval_if_c< \
+ is_po_callable::type::value \
+ , mpl::if_c< \
+ is_po_callable::is_pointer::value \
+ , T \
+ , T MODIFIER \
+ > \
+ , deduce<T> \
+ >::type \
+ type; \
+ }; \
+ \
+ template<typename T> \
+ struct deduce<reference_wrapper<T> MODIFIER> \
+ { \
+ typedef T& type; \
};
BOOST_FUSION_DEDUCE_CV_REF_SPECIALIZATION(volatile&,deduce)
@@ -144,8 +144,8 @@
#ifdef BOOST_NO_RVALUE_REFERENCES
typedef typename
- mpl::if_<
- is_regular_reference
+ mpl::if_c<
+ is_regular_reference::value
, T
, typename add_lref<deduced>::type
>::type
@@ -153,14 +153,14 @@
#else
//8.5.3p5...
typedef typename
- mpl::eval_if<
- is_regular_reference
- , mpl::if_<
+ mpl::eval_if_c<
+ is_regular_reference::value
+ , mpl::if_c<
mpl::or_<
mpl::not_<is_rref<T> >
, is_class<deduced>
, is_array<deduced>
- >
+ >::value
, T
, deduced&
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/support/internal/ref.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/support/internal/ref.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/support/internal/ref.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -224,8 +224,8 @@
typedef typename remove_reference<TestType>::type test_type;
typedef typename
- mpl::if_<
- is_const<test_type>
+ mpl::if_c<
+ is_const<test_type>::value
, typename add_const<Type>::type
, Type
>::type
@@ -233,8 +233,8 @@
const_type;
typedef typename
- mpl::if_<
- is_volatile<test_type>
+ mpl::if_c<
+ is_volatile<test_type>::value
, typename add_volatile<const_type>::type
, const_type
>::type
@@ -245,11 +245,11 @@
cv_type;
typedef typename
- mpl::eval_if<
+ mpl::eval_if_c<
//8.5.3p5...
- is_rref<TestType>
- , mpl::if_<
- mpl::or_<is_class<Type>, is_array<Type> >
+ is_rref<TestType>::value
+ , mpl::if_c<
+ mpl::or_<is_class<Type>, is_array<Type> >::value
, cv_type&&
, cv_type
>
@@ -271,12 +271,12 @@
//8.5.3p5...
template<typename TestType,typename Type>
struct forward_as<TestType,Type&&>
- : mpl::if_<
- mpl::or_<is_class<Type>, is_array<Type> >
+ : mpl::if_c<
+ mpl::or_<is_class<Type>, is_array<Type> >::value
, Type&&
#if BOOST_WORKAROUND(BOOST_MSVC,==1600)
- , typename mpl::if_<
- is_function<Type>
+ , typename mpl::if_c<
+ is_function<Type>::value
, Type&
, Type
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/support/internal/result_of.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/support/internal/result_of.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/support/internal/result_of.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -89,8 +89,8 @@
{
typedef typename has_result_type<F>::type is_preevaluable;
typedef typename
- mpl::eval_if<
- is_preevaluable
+ mpl::eval_if_c<
+ is_preevaluable::value
, get_result_type<F>
, mpl::identity<void>
>::type
@@ -199,8 +199,8 @@
typedef is_po_callable<F> is_po_callable_;
typedef typename
- mpl::if_<
- typename is_po_callable_::type
+ mpl::if_c<
+ is_po_callable_::type::value
, typename is_po_callable_::f&
, typename is_po_callable_::identity_f
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/support/tag_of.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/support/tag_of.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/support/tag_of.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -45,8 +45,8 @@
typedef typename detail::identity<T>::type identity_t;
typedef typename
- mpl::eval_if<
- detail::has_fusion_tag<identity_t>
+ mpl::eval_if_c<
+ detail::has_fusion_tag<identity_t>::value
, detail::get_fusion_tag<identity_t>
, detail::tag_of_fallback<T>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/detail/strictest_traversal.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/detail/strictest_traversal.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/detail/strictest_traversal.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -34,8 +34,8 @@
strictest_so_far_identity;
typedef typename
- mpl::if_<
- is_base_of<strictest_so_far_identity,next_tag>
+ mpl::if_c<
+ is_base_of<strictest_so_far_identity,next_tag>::value
, strictest_so_far_identity
, next_tag
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/ext_/segmented_iterator.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/ext_/segmented_iterator.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/ext_/segmented_iterator.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -64,8 +64,8 @@
typedef mpl::true_ is_view;
typedef Iterator iterator_type;
- typedef typename mpl::if_<
- traits::is_view<sequence_non_ref_type>
+ typedef typename mpl::if_c<
+ traits::is_view<sequence_non_ref_type>::value
, sequence_non_ref_type
, sequence_non_ref_type &
>::type sequence_type;
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/detail/filter_view_iterator.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/detail/filter_view_iterator.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/detail/filter_view_iterator.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -44,8 +44,8 @@
Begin
, End
, mpl::bind1<
- typename mpl::eval_if<
- pred_is_metafunction
+ typename mpl::eval_if_c<
+ pred_is_metafunction::value
, mpl::lambda<Pred>
, mpl::identity<Pred>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/filter_view.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/filter_view.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/filter_view/filter_view.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -55,8 +55,8 @@
typedef PredIsMetafunction pred_is_metafunction;
typedef typename
- mpl::eval_if<
- traits::is_associative<seq_type>
+ mpl::eval_if_c<
+ traits::is_associative<seq_type>::value
, mpl::inherit2<forward_traversal_tag,associative_tag>
, mpl::identity<forward_traversal_tag>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/begin_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/begin_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/begin_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -48,8 +48,8 @@
equal_to;
typedef typename
- mpl::if_<
- equal_to
+ mpl::if_c<
+ equal_to::value
, concat_iterator<typename seq::category, concat_type>
, joint_view_iterator<
typename seq::category
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/next_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/next_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/detail/next_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -35,8 +35,8 @@
equal_to;
typedef typename
- mpl::if_<
- equal_to
+ mpl::if_c<
+ equal_to::value
, concat_iterator<typename it::category, concat_type>
, joint_view_iterator<
typename it::category
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/joint_view.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/joint_view.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/joint_view/joint_view.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -56,11 +56,11 @@
typedef typename storage2_type::type seq2_type;
typedef typename
- mpl::eval_if<
+ mpl::eval_if_c<
mpl::and_<
traits::is_associative<seq1_type>
, traits::is_associative<seq2_type>
- >
+ >::value
, mpl::inherit2<forward_traversal_tag,associative_tag>
, forward_traversal_tag
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/next_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/next_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/next_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -42,8 +42,8 @@
typedef
repetitive_view_iterator<
typename it::seq_type
- , typename mpl::eval_if<
- new_iterator
+ , typename mpl::eval_if_c<
+ new_iterator::value
, result_of::begin<typename it::seq_type>
, mpl::identity<next_it>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/prior_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/prior_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/repetitive_view/detail/prior_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -40,8 +40,8 @@
repetitive_view_iterator<
typename it::seq_type
, typename result_of::prior<
- typename mpl::if_<
- new_iterator
+ typename mpl::if_c<
+ new_iterator::value
, seq_end
, typename it::it_type
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/detail/transform_view_iterator.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/detail/transform_view_iterator.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/detail/transform_view_iterator.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -25,8 +25,8 @@
typedef FRef transform_type;
typedef It it_type;
typedef typename
- mpl::eval_if<
- traits::is_random_access<it_type>
+ mpl::eval_if_c<
+ traits::is_random_access<it_type>::value
, random_access_traversal_tag
, mpl::if_<
traits::is_bidirectional<it_type>
@@ -39,8 +39,8 @@
typedef transform_view_iterator_tag fusion_tag;
typedef typename
- mpl::eval_if<
- is_associative
+ mpl::eval_if_c<
+ is_associative::value
, mpl::inherit2<it_category,associative_tag>
, it_category
>::type
@@ -97,8 +97,8 @@
typedef transform_view_iterator2_tag fusion_tag;
typedef typename
- mpl::eval_if<
- is_associative
+ mpl::eval_if_c<
+ is_associative::value
, mpl::inherit2<strictest_traversal,associative_tag>
, strictest_traversal
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/transform_view.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/transform_view.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/transform_view/transform_view.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -92,8 +92,8 @@
typedef fusion_sequence_tag tag;
typedef mpl::true_ is_view;
typedef typename
- mpl::eval_if<
- is_associative
+ mpl::eval_if_c<
+ is_associative::value
, mpl::inherit2<strictest_traversal,associative_tag>
, strictest_traversal
>::type
@@ -157,8 +157,8 @@
typedef BOOST_FUSION_DETAIL_VIEW_STROAGE(Seq) storage_type;
typedef typename storage_type::type seq_type;
typedef typename
- mpl::eval_if<
- traits::is_random_access<seq_type>
+ mpl::eval_if_c<
+ traits::is_random_access<seq_type>::value
, random_access_traversal_tag
, mpl::if_<
traits::is_bidirectional<seq_type>
@@ -170,8 +170,8 @@
typedef F transform_type;
typedef typename
- mpl::eval_if<
- is_associative
+ mpl::eval_if_c<
+ is_associative::value
, mpl::inherit2<seq_category,associative_tag>
, seq_category
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/at_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/at_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/at_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -32,8 +32,8 @@
template<typename Self, typename SeqRef>
struct result<Self(SeqRef)>
- : mpl::eval_if<
- is_same<SeqRef, unused_type const&>
+ : mpl::eval_if_c<
+ is_same<SeqRef, unused_type const&>::value
, mpl::identity<unused_type const&>
, result_of::at<SeqRef, N>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/deref_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/deref_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/deref_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -31,8 +31,8 @@
template<typename Self, typename It>
struct result<Self(It)>
- : mpl::eval_if<
- is_same<It, unused_type const&>
+ : mpl::eval_if_c<
+ is_same<It, unused_type const&>::value
, mpl::identity<unused_type const&>
, result_of::deref<It>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/distance_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/distance_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/distance_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -59,11 +59,11 @@
found_it;
typedef typename
- mpl::eval_if<
+ mpl::eval_if_c<
is_same<
found_it
, typename result_of::end<typename It1::iterators>::type
- >
+ >::value
, detail::default_distance<It1, It2>
, detail::best_distance<found_it, It2>
>::type
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/end_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/end_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/end_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -38,8 +38,8 @@
template<typename Self, typename SeqRef>
struct result<Self(SeqRef)>
- : mpl::eval_if<
- is_same<SeqRef, unused_type const&>
+ : mpl::eval_if_c<
+ is_same<SeqRef, unused_type const&>::value
, mpl::identity<unused_type const&>
, get_endpoint<SeqRef, M>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/next_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/next_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/next_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -29,8 +29,8 @@
template<typename Self, typename It>
struct result<Self(It)>
- : mpl::eval_if<
- is_same<It, unused_type const&>
+ : mpl::eval_if_c<
+ is_same<It, unused_type const&>::value
, mpl::identity<unused_type const&>
, result_of::next<It>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/prior_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/prior_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/prior_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -29,8 +29,8 @@
template<typename Self, typename It>
struct result<Self(It)>
- : mpl::eval_if<
- is_same<It, unused_type const&>
+ : mpl::eval_if_c<
+ is_same<It, unused_type const&>::value
, mpl::identity<unused_type const&>
, result_of::prior<It>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_at_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_at_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_at_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -30,8 +30,8 @@
template<typename Self, typename SeqRef>
struct result<Self(SeqRef)>
- : mpl::eval_if<
- is_same<SeqRef, unused_type const&>
+ : mpl::eval_if_c<
+ is_same<SeqRef, unused_type const&>::value
, mpl::identity<unused_type const&>
, result_of::value_at<SeqRef, N>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_of_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_of_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/detail/value_of_impl.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -29,8 +29,8 @@
template<typename Self, typename It>
struct result<Self(It)>
- : mpl::eval_if<
- is_same<It, unused_type const&>
+ : mpl::eval_if_c<
+ is_same<It, unused_type const&>::value
, mpl::identity<unused_type const&>
, result_of::value_of<It>
>
Modified: sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/zip_view.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/zip_view.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/view/zip_view/zip_view.hpp 2010-09-19 05:51:40 EDT (Sun, 19 Sep 2010)
@@ -156,8 +156,8 @@
typedef fusion_sequence_tag tag;
typedef mpl::true_ is_view;
typedef typename
- mpl::eval_if<
- result_of::size<Seqs>
+ mpl::eval_if_c<
+ result_of::size<Seqs>::value ? true : false
, detail::min_size<real_seqs>
, mpl::int_<0>
>::type
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk