$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
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>