From 1c8d339bb079522a748cc18f0f85ede3e219ee21 Mon Sep 17 00:00:00 2001 From: Joel de Guzman Date: Fri, 12 Aug 2011 12:07:36 +0000 Subject: [PATCH] Better is_equal test [SVN r73698] --- .../algorithm/transformation/pop_back.hpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/include/boost/fusion/algorithm/transformation/pop_back.hpp b/include/boost/fusion/algorithm/transformation/pop_back.hpp index a461f3f5..2244376d 100644 --- a/include/boost/fusion/algorithm/transformation/pop_back.hpp +++ b/include/boost/fusion/algorithm/transformation/pop_back.hpp @@ -47,14 +47,22 @@ namespace boost { namespace fusion } }; + template + struct equal_to_helper + : mpl::identity + {}; + + template + struct equal_to_helper + : result_of::next< + typename I::iterator_base_type> + {}; + template struct equal_to : result_of::equal_to< - typename mpl::if_c<(I1::is_last|I2::is_last) - , typename result_of::next< - typename I1::iterator_base_type>::type - , typename I1::iterator_base_type>::type - , typename I2::iterator_base_type + typename equal_to_helper::type + , typename equal_to_helper::type > {};