$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: tschwinger_at_[hidden]
Date: 2007-10-23 09:25:58
Author: t_schwinger
Date: 2007-10-23 09:25:57 EDT (Tue, 23 Oct 2007)
New Revision: 40354
URL: http://svn.boost.org/trac/boost/changeset/40354
Log:
removes dependencies to MPL intrinsics (removes top-level cv-qualifiers from element types, now)
Text files modified: 
   trunk/boost/fusion/support/deduce_sequence.hpp |    15 ++++++++-------                         
   1 files changed, 8 insertions(+), 7 deletions(-)
Modified: trunk/boost/fusion/support/deduce_sequence.hpp
==============================================================================
--- trunk/boost/fusion/support/deduce_sequence.hpp	(original)
+++ trunk/boost/fusion/support/deduce_sequence.hpp	2007-10-23 09:25:57 EDT (Tue, 23 Oct 2007)
@@ -11,8 +11,8 @@
 
 #include <boost/fusion/support/deduce.hpp>
 #include <boost/fusion/sequence/conversion/as_vector.hpp>
-#include <boost/fusion/sequence/intrinsic/mpl.hpp>
-#include <boost/mpl/transform.hpp>
+#include <boost/fusion/sequence/view/transform_view.hpp>
+
 
 namespace boost { namespace fusion { namespace traits
 {
@@ -22,19 +22,20 @@
     {
         struct deducer
         {
-            template <typename T>
-            struct apply
+            template <typename Sig>
+            struct result;
+
+            template <class Self, typename T>
+            struct result< Self(T) >
                 : fusion::traits::deduce<T>
             { };
         };
     }
 
-    // We cannot use fusion::transform_view here as result_of looses cv qualifiers
-    // on built in types
     template <class Sequence>
     struct deduce_sequence
         : result_of::as_vector<
-            typename mpl::transform<Sequence, detail::deducer>::type>
+            fusion::transform_view<Sequence, detail::deducer> >
     { };
 
 }}}