Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r62996 - in sandbox/statistics/support/boost/assign/auto_size: comparison_op range
From: erwann.rogard_at_[hidden]
Date: 2010-06-15 16:10:42


Author: e_r
Date: 2010-06-15 16:10:41 EDT (Tue, 15 Jun 2010)
New Revision: 62996
URL: http://svn.boost.org/trac/boost/changeset/62996

Log:
m
Text files modified:
   sandbox/statistics/support/boost/assign/auto_size/comparison_op/range.hpp | 2 --
   sandbox/statistics/support/boost/assign/auto_size/range/converter.hpp | 11 +++++++++--
   2 files changed, 9 insertions(+), 4 deletions(-)

Modified: sandbox/statistics/support/boost/assign/auto_size/comparison_op/range.hpp
==============================================================================
--- sandbox/statistics/support/boost/assign/auto_size/comparison_op/range.hpp (original)
+++ sandbox/statistics/support/boost/assign/auto_size/comparison_op/range.hpp 2010-06-15 16:10:41 EDT (Tue, 15 Jun 2010)
@@ -1,5 +1,3 @@
-
-
 //////////////////////////////////////////////////////////////////////////////
 // assign::detail::comparison_op::range.hpp //
 // //

Modified: sandbox/statistics/support/boost/assign/auto_size/range/converter.hpp
==============================================================================
--- sandbox/statistics/support/boost/assign/auto_size/range/converter.hpp (original)
+++ sandbox/statistics/support/boost/assign/auto_size/range/converter.hpp 2010-06-15 16:10:41 EDT (Tue, 15 Jun 2010)
@@ -1,5 +1,5 @@
 //////////////////////////////////////////////////////////////////////////////
-// assign::detail::range::converter.hpp //
+// converter.hpp //
 // //
 // Copyright Thorsten Ottosen 2003-2004. //
 // (C) Copyright 2010 Erwann Rogard //
@@ -12,6 +12,7 @@
 #include <boost/assign/list_of.hpp> // contains parts of impl
 #include <boost/typeof/typeof.hpp>
 #include <boost/range.hpp>
+#include <boost/assign/auto_size/range/convert_range.hpp>
 
 // This brings the code within assign_detail::converter<> into a macro to be
 // expanded in what would otherwise be a derived class. This is to solve
@@ -56,7 +57,13 @@
     Container convert( const Container*,
         assign_detail::default_type_tag, const R& r)
     {
- return Container( boost::begin(r), boost::end(r) );
+ typedef typename boost::range_reference<Container>::type ref_;
+ typedef typename boost::remove_reference<ref_>::type val_;
+ typedef typename boost::assign::detail::result_of::convert_range<
+ const R,val_>::type tmp_;
+ tmp_ tmp = boost::assign::convert_range<
+ val_,boost::use_default>( r );
+ return Container( boost::begin( tmp ), boost::end( tmp ) );
     }
                                                                                      
     template< class Array ,class R>


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