|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r70143 - in sandbox/assign_v2: boost/assign/v2/detail/traits boost/assign/v2/ref/array boost/assign/v2/utility boost/assign/v2/utility/conversion boost/assign/v2/value/deque libs/assign/v2 libs/assign/v2/test/ref libs/assign/v2/test/utility libs/assign/v2/test/value libs/assign/v2/test/value/modifier libs/assign/v2/test/value/pipe libs/assign/v2/test/value/pipe/modifier
From: erwann.rogard_at_[hidden]
Date: 2011-03-18 18:01:27
Author: e_r
Date: 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
New Revision: 70143
URL: http://svn.boost.org/trac/boost/changeset/70143
Log:
upd assign_v2
Text files modified:
sandbox/assign_v2/boost/assign/v2/detail/traits/type.hpp | 16 -------
sandbox/assign_v2/boost/assign/v2/ref/array/interface.hpp | 2
sandbox/assign_v2/boost/assign/v2/utility/conversion/convert.hpp | 1
sandbox/assign_v2/boost/assign/v2/utility/csv.hpp | 20 ++++++----
sandbox/assign_v2/boost/assign/v2/value/deque/csv_deque.hpp | 2
sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.cpp | 6 +-
sandbox/assign_v2/libs/assign/v2/test/utility/chain.cpp | 12 ++----
sandbox/assign_v2/libs/assign/v2/test/utility/conversion.cpp | 20 ++++++---
sandbox/assign_v2/libs/assign/v2/test/utility/csv.cpp | 10 ++---
sandbox/assign_v2/libs/assign/v2/test/value/deque.cpp | 80 +++++++++++++++++++++++++++------------
sandbox/assign_v2/libs/assign/v2/test/value/fun.cpp | 8 ++--
sandbox/assign_v2/libs/assign/v2/test/value/modifier/iterate.cpp | 25 +++++-------
sandbox/assign_v2/libs/assign/v2/test/value/modifier/lookup.cpp | 15 ++++---
sandbox/assign_v2/libs/assign/v2/test/value/modifier/repeat.cpp | 15 +++----
sandbox/assign_v2/libs/assign/v2/test/value/modifier/standard.cpp | 23 +++++------
sandbox/assign_v2/libs/assign/v2/test/value/pipe/fun.cpp | 1
sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/iterate.cpp | 1
sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/lookup.cpp | 1
sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/repeat.cpp | 1
sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/standard.cpp | 7 +--
sandbox/assign_v2/libs/assign/v2/test/value/pipe/put.cpp | 6 +-
sandbox/assign_v2/libs/assign/v2/test/value/ptr.cpp | 8 ++--
sandbox/assign_v2/libs/assign/v2/test/value/put.cpp | 10 ++--
sandbox/assign_v2/libs/assign/v2/tutorial.cpp | 27 +++++++++----
24 files changed, 169 insertions(+), 148 deletions(-)
Modified: sandbox/assign_v2/boost/assign/v2/detail/traits/type.hpp
==============================================================================
--- sandbox/assign_v2/boost/assign/v2/detail/traits/type.hpp (original)
+++ sandbox/assign_v2/boost/assign/v2/detail/traits/type.hpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -1,15 +1 @@
-//////////////////////////////////////////////////////////////////////////////
-// Boost.Assign v2 //
-// //
-// Copyright (C) 2003-2004 Thorsten Ottosen //
-// Copyright (C) 2010 Erwann Rogard //
-// Use, modification and distribution are subject to the //
-// Boost Software License, Version 1.0. (See accompanying file //
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
-//////////////////////////////////////////////////////////////////////////////
-#ifndef BOOST_ASSIGN_V2_DETAIL_TRAITS_TYPE_ER_2010_HPP
-#define BOOST_ASSIGN_V2_DETAIL_TRAITS_TYPE_ER_2010_HPP
-#include <boost/assign/v2/detail/traits/type/has_value_type.hpp>
-#include <boost/assign/v2/detail/traits/type/value.hpp>
-
-#endif // BOOST_ASSIGN_V2_DETAIL_TRAITS_TYPE_ER_2010_HPP
+// TODO remove file
\ No newline at end of file
Modified: sandbox/assign_v2/boost/assign/v2/ref/array/interface.hpp
==============================================================================
--- sandbox/assign_v2/boost/assign/v2/ref/array/interface.hpp (original)
+++ sandbox/assign_v2/boost/assign/v2/ref/array/interface.hpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -65,7 +65,7 @@
typedef interface<Impl, D> this_;
typedef typename traits_::result_of_get_ result_of_get_;
//->
- typedef /*<-*/typename traits_::param_type BOOST_ASSIGN_V2_IGNORE(/*->*/unspecified/*<-*/)/*->*/param_type;
+ typedef /*<-*/typename traits_::param_type BOOST_ASSIGN_V2_IGNORE(/*->*/unspecified/*<-*/) /*->*/param_type;
public:
Modified: sandbox/assign_v2/boost/assign/v2/utility/conversion/convert.hpp
==============================================================================
--- sandbox/assign_v2/boost/assign/v2/utility/conversion/convert.hpp (original)
+++ sandbox/assign_v2/boost/assign/v2/utility/conversion/convert.hpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -60,7 +60,6 @@
}BOOST_ASSIGN_V2_IGNORE(/*->*/;/*<-*/)/*->*/
}// conversion_aux
-//using conversion_aux::convert;
namespace result_of{
template<typename /*<<Container>>*/ C, typename /*<<Range>>*/R>
Modified: sandbox/assign_v2/boost/assign/v2/utility/csv.hpp
==============================================================================
--- sandbox/assign_v2/boost/assign/v2/utility/csv.hpp (original)
+++ sandbox/assign_v2/boost/assign/v2/utility/csv.hpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -16,6 +16,7 @@
#include <boost/mpl/fold.hpp>
#include <boost/mpl/placeholders.hpp>
#include <boost/mpl/vector.hpp>
+#include <boost/mpl/vector/vector0.hpp>
#if BOOST_ASSIGN_V2_ENABLE_CPP0X
#include <utility>
#include <boost/assign/v2/temporary/variadic_vector.hpp>
@@ -58,23 +59,25 @@
namespace result_of{
template<typename F, typename V>
- struct csv /*<-*/: ::boost::mpl::apply1<
+ struct csv/*<-*/
+ : ::boost::mpl::apply1<
csv_aux::result<F>,
V
- >{}/*->*/;
+ >
+ {}/*->*/;
}// nth_result_of
-//->
-#if BOOST_ASSIGN_V2_ENABLE_CPP0X
//<-
+#if BOOST_ASSIGN_V2_ENABLE_CPP0X
+//->
- template<typename F, typename T>
+ template<typename F>
typename result_of::csv<F const&,
- ::boost::mpl::vector<T>
+ ::boost::mpl::vector0<>
>::type
- csv( F const& functor, T&& t )/*<-*/
+ csv( F const& functor)/*<-*/
{
- return functor( t );
+ return functor;
}BOOST_ASSIGN_V2_IGNORE(/*->*/;/*<-*/)/*->*/
template<typename F, typename T, typename... Args>
@@ -86,6 +89,7 @@
return csv( functor( t ), std::forward<Args>( args )... );
}BOOST_ASSIGN_V2_IGNORE(/*->*/;/*<-*/)/*->*/
+//]
#else
#define BOOST_ASSIGN_V2_MACRO1(z, i, data) BOOST_PP_CAT(T, i) data
#define BOOST_ASSIGN_V2_MACRO2(z, i, data) ( BOOST_PP_CAT(_, i) )
Modified: sandbox/assign_v2/boost/assign/v2/value/deque/csv_deque.hpp
==============================================================================
--- sandbox/assign_v2/boost/assign/v2/value/deque/csv_deque.hpp (original)
+++ sandbox/assign_v2/boost/assign/v2/value/deque/csv_deque.hpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -48,7 +48,7 @@
template<typename T>
struct csv_deque/*<-*/
- : value_aux::result_of::deque<T>
+ : value_aux::result_of::csv_deque<T>
{}/*->*/;
}// result_of
Modified: sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -30,12 +30,12 @@
T x = 72, y = 31, z = 48;
typedef as2::ref::nth_result_of::csv_array<3, T>::type ar_;
ar_ ar = as2::ref::csv_array( x, y, z );
- /*<-*/{/*->*/
+ {
T& a = ar[0]; T& b = ar[2];
-
+
BOOST_ASSIGN_V2_CHECK( &a == &x );
BOOST_ASSIGN_V2_CHECK( &b == &z );
- /*<-*/}/*->*/
+ }
//]
{
T& a = ar.front(); T& b = ar.back();
Modified: sandbox/assign_v2/libs/assign/v2/test/utility/chain.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/utility/chain.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/utility/chain.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -56,10 +56,8 @@
array<word, 3> head; std::list<word> tail( 3 );
copy( words, begin( head | as2::_chain( tail ) ) );
- BOOST_ASSIGN_V2_CHECK( head.front() == "foo" );
- BOOST_ASSIGN_V2_CHECK( head.back() == "baz" );
- BOOST_ASSIGN_V2_CHECK( tail.front() == "qux" );
- BOOST_ASSIGN_V2_CHECK( tail.back() == "grault" );
+ BOOST_ASSIGN_V2_CHECK( range::equal( head, as2::csv_deque<word>( "foo", "bar", "baz" ) ) );
+ BOOST_ASSIGN_V2_CHECK( range::equal( tail, as2::csv_deque<word>( "qux", "quux", "grault" ) ) );
//]
}
// Boost.Assign.v2 containers
@@ -73,10 +71,8 @@
begin( consecutive5 && (/*<< rvalue! >>*/ as2::ref::csv_array( six, seven, eight ) | as2::ref::_get ) )
);
- BOOST_ASSIGN_V2_CHECK( consecutive5.front() == 1 );
- BOOST_ASSIGN_V2_CHECK( consecutive5.back() == 5 );
- BOOST_ASSIGN_V2_CHECK( six == 6 );
- BOOST_ASSIGN_V2_CHECK( eight == 8 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( consecutive5, as2::csv_deque( 1, 2, 3, 4, 5 ) ) );
+ BOOST_ASSIGN_V2_CHECK( six == 6 ); BOOST_ASSIGN_V2_CHECK( seven == 7 ); BOOST_ASSIGN_V2_CHECK( eight == 8 );
//]
}
Modified: sandbox/assign_v2/libs/assign/v2/test/utility/conversion.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/utility/conversion.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/utility/conversion.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -16,6 +16,7 @@
#include <boost/assign/v2/utility/conversion/check.hpp>
#include <boost/assign/v2/ref/array.hpp>
#include <boost/assign/v2/value/deque.hpp>
+#include <boost/range/algorithm/equal.hpp>
#include <libs/assign/v2/test/utility/conversion.h>
namespace test_assign_v2{
@@ -41,21 +42,22 @@
{
//[test_utility_conversion_vec_array
std::vector<int> r( 3 ); r[0] = 72; r[1] = 31; r[2] = 48;
- typedef array<int, 3> ar_; ar_ const& ar = ( r | as2::convert<ar_>() );
+ typedef array<int, 3> ar_;
+ ar_ const& ar = ( r | as2::convert<ar_>() );
- BOOST_ASSIGN_V2_CHECK( ar.front() == 72 );
- BOOST_ASSIGN_V2_CHECK( ar.back() == 48 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( ar, as2::csv_deque( 72, 31, 48 ) ) );
//]
}
{
//[test_utility_conversion_vec_stack
std::vector<int> r( 3 ); r[0] = 72; r[1] = 31; r[2] = 48;
std::stack<int> lifo = as2::converter( r );
+
BOOST_ASSIGN_V2_CHECK( lifo.top() == 48 );
//]
}
{
- //test_utility_conversion_stl
+ //[test_utility_conversion_stl
typedef int T; typedef std::vector<T> R; R r( 3 ); r[0] = 72; r[1] = 31; r[2] = 48;
f< std::vector<T> >( as2::converter( r ), r );
f< std::deque<T> >( as2::converter( r ), r );
@@ -73,6 +75,7 @@
( as2::ref::csv_array( 4, 5, 6 ) | as2::convert<row_>() )
( as2::ref::csv_array( 7, 8, 9 ) | as2::convert<row_>() )
);
+
for(int i = 0; i < 9; i++)
{
BOOST_ASSIGN_V2_CHECK( matrix3x3[ i / 3 ][ i % 3 ] == i + 1 );
@@ -83,27 +86,30 @@
{
//[test_utility_conversion_as2_deque_array
std::vector<int> r( 3 ); r[0] = 72; r[1] = 31; r[2] = 48;
- typedef array<int, 3> ar_; ar_ const& ar = ( as2::csv_deque( 72, 31, 48 ) | as2::convert<ar_>() );
+ typedef array<int, 3> ar_;
+ ar_ const& ar = ( as2::csv_deque( 72, 31, 48 ) | as2::convert<ar_>() );
- BOOST_ASSIGN_V2_CHECK( ar.front() == 72 );
- BOOST_ASSIGN_V2_CHECK( ar.back() == 48 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( ar, as2::csv_deque( 72, 31, 48 ) ) );
//]
}
{
//[test_utility_conversion_ref_array_stack
std::stack<int> lifo = /*<<Notice unqualified (name lookup)>>*/converter( as2::ref::array( 72 )( 31 )( 48 ) );
+
BOOST_ASSIGN_V2_CHECK( lifo.top() == 48 );
//]
}
{
//[test_utility_conversion_ref_array_queue
std::queue<int> fifo = /*<<Notice unqualified (name lookup)>>*/converter( as2::ref::csv_array( 72, 31, 48 ) );
+
BOOST_ASSIGN_V2_CHECK( fifo.front() == 72 );
//]
}
{
//[test_utility_conversion_as2_deque_stack
std::stack<int> lifo = /*<<Notice unqualified (name lookup)>>*/converter( as2::csv_deque( 72, 31, 48 ) );
+
BOOST_ASSIGN_V2_CHECK( lifo.top() == 48 );
//]
}
Modified: sandbox/assign_v2/libs/assign/v2/test/utility/csv.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/utility/csv.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/utility/csv.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -13,6 +13,7 @@
#include <boost/assign/v2/value/deque.hpp>
#include <boost/assign/v2/value/put.hpp>
#include <boost/assign/v2/value/modifier/push_front.hpp>
+#include <boost/range/algorithm/equal.hpp>
#include <libs/assign/v2/test/utility/csv.h>
namespace test_assign_v2{
@@ -28,8 +29,7 @@
std::deque<int> cont;
as2::csv( as2::put( cont ), 72, 31, 48 );
- BOOST_ASSIGN_V2_CHECK( cont.front() == 72 );
- BOOST_ASSIGN_V2_CHECK( cont.back() == 48 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( cont, as2::csv_deque( 72, 31, 48 ) ) );
//]
}
{
@@ -37,8 +37,7 @@
std::deque<int> cont;
as2::csv( as2::put( cont ) % as2::_push_front, 72, 31, 48 );
- BOOST_ASSIGN_V2_CHECK( cont.front() == 48 );
- BOOST_ASSIGN_V2_CHECK( cont.back() == 72 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( cont, as2::csv_deque( 48, 31, 72 ) ) );
//]
}
{
@@ -48,8 +47,7 @@
as2::csv( as2::deque<int>( as2::_nil ) % as2::_push_front, 72, 31, 48 )
);
- BOOST_ASSIGN_V2_CHECK( cont.front() == 48 );
- BOOST_ASSIGN_V2_CHECK( cont.back() == 72 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( cont, as2::csv_deque( 48, 31, 72 ) ) );
//]
}
}
Modified: sandbox/assign_v2/libs/assign/v2/test/value/deque.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/deque.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/deque.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -7,13 +7,15 @@
// Boost Software License, Version 1.0. (See accompanying file //
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
////////////////////////////////////////////////////////////////////////////
+#include <deque>
#include <string>
+#include <utility>
#include <boost/mpl/assert.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/assign/v2/detail/config/check.hpp>
#include <boost/assign/v2/value/deque/csv_deque.hpp>
#include <boost/assign/v2/value/deque/deque.hpp>
-
+#include <boost/range/algorithm/equal.hpp>
#include <libs/assign/v2/test/value/deque.h>
namespace test_assign_v2{
@@ -22,36 +24,64 @@
void test()
{
-
+
using namespace boost;
namespace as2 = assign::v2;
{
- //[test_put_deque_ints
- typedef as2::result_of::deque<int>::type C0;
- C0 empty_cont = as2::deque<int>( as2::_nil );
-
- BOOST_ASSIGN_V2_CHECK( empty_cont( 72 )( 31 )( 48 ).front() == 72 );
- BOOST_ASSIGN_V2_CHECK( as2::deque<int>( 72 )( 31 )( 48 ).back() == 48 );
-
- typedef as2::result_of::csv_deque<int>::type C1;
- C1 cont = as2::csv_deque( 72, 31, 48 );
-
- BOOST_ASSIGN_V2_CHECK( cont.front() == 72 );
- BOOST_ASSIGN_V2_CHECK( as2::csv_deque( 72 )( 31 )( 48 ).back() == 48 );
-
- BOOST_MPL_ASSERT(( is_same<C0, C1> ));
-
+ //[test_value_deque_pair
+ typedef std::string str_;
+ typedef std::pair<str_, str_> T;
+ typedef as2::result_of::deque<T>::type C;
+ C airports = as2::deque<T>("AUH", "Abu Dhabi")("JFK", "New York")("LHR", "Heathrow")( "PEK", "Beijing" );
+
+ std::deque<T> benchmark;
+ benchmark.push_back( T("AUH", "Abu Dhabi") );
+ benchmark.push_back( T("JFK", "New York") );
+ benchmark.push_back( T("LHR", "Heathrow") );
+ benchmark.push_back( T("PEK", "Beijing") );
+
+ range::equal( benchmark, airports );
+ //]
+ } {
+ //[test_value_deque_ints
+ typedef as2::result_of::deque<int>::type C1;
+ typedef as2::result_of::csv_deque<int>::type C2;
+
+ BOOST_MPL_ASSERT(( is_same<C1, C2> ));
+
+ C1 empty_cont = as2::deque<int>( as2::_nil );
+ C1 cont1 = empty_cont( 72 )( 31 )( 48 );
+ C1 cont2 = as2::deque<int>( 72 )( 31 )( 48 );
+ C1 cont3 = as2::csv_deque( 72, 31, 48 );
+ C1 cont4 = as2::csv_deque( 72, 31 )( 48 );
+
+ std::deque<int> benchmark;
+ benchmark.push_back( 72 );
+ benchmark.push_back( 31 );
+ benchmark.push_back( 48 );
+
+ BOOST_ASSIGN_V2_CHECK( range::equal( benchmark, cont1 ) );
+ BOOST_ASSIGN_V2_CHECK( range::equal( benchmark, cont2 ) );
+ BOOST_ASSIGN_V2_CHECK( range::equal( benchmark, cont3 ) );
+ BOOST_ASSIGN_V2_CHECK( range::equal( benchmark, cont4 ) );
//]
}
{
- //[test_put_deque_str_literal
- typedef std::string str_;
- BOOST_ASSIGN_V2_CHECK(
- str_( as2::deque<const char*>( "x" )( "y" )( "z" )[1] ) == "y"
- );
- BOOST_ASSIGN_V2_CHECK(
- str_( as2::csv_deque( "x", "y", "z" )[1] ) == "y"
- );
+ //[test_value_deque_str_literal
+ typedef as2::result_of::deque<char*>::type C1;
+ typedef as2::result_of::csv_deque<const char[2]>::type C2;
+
+ BOOST_MPL_ASSERT(( is_same<C1, C2> ));
+
+ C1 deque1 = as2::deque<char*>( "x" )( "y" )( "z" );
+ C2 deque2 = as2::csv_deque( "x", "y", "z" );
+
+ std::deque<std::string> benchmark;
+ benchmark.push_back( "x" ); benchmark.push_back( "y" ); benchmark.push_back( "z" );
+
+ BOOST_ASSIGN_V2_CHECK( range::equal( benchmark, deque1 ) );
+ BOOST_ASSIGN_V2_CHECK( range::equal( benchmark, deque2 ) );
+
//]
}
}
Modified: sandbox/assign_v2/libs/assign/v2/test/value/fun.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/fun.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/fun.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -22,6 +22,7 @@
#include <boost/lambda/lambda.hpp>
#include <boost/lambda/construct.hpp>
#include <boost/numeric/conversion/bounds.hpp>
+#include <boost/range/algorithm/equal.hpp>
#include <boost/typeof/typeof.hpp>
#include <libs/assign/v2/test/value/fun.h>
@@ -68,7 +69,7 @@
using namespace lambda;
namespace as2 = assign::v2;
{
- //[test_put_fun_math
+ //[test_value_fun_math
std::vector<double> exponent;
typedef function<double(double)> f_;
(
@@ -82,7 +83,7 @@
//]
}
{
- //[test_put_fun_recursive
+ //[test_value_fun_recursive
int i = 1, k = 1;
BOOST_AUTO(
factorials, (
@@ -92,8 +93,7 @@
)/*<<Equivalent to `factorials( k *= i++ )` for [^i = 1, ..., 5]>>*/()()()()()
);
- BOOST_ASSIGN_V2_CHECK( factorials.front() == ( 1 ) );
- BOOST_ASSIGN_V2_CHECK( factorials.back() == ( 120 ) );
+ BOOST_ASSIGN_V2_CHECK( range::equal( factorials, as2::csv_deque( 1, 2, 6, 24, 120 ) ) );
//]
}
Modified: sandbox/assign_v2/libs/assign/v2/test/value/modifier/iterate.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/modifier/iterate.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/modifier/iterate.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -18,6 +18,7 @@
#include <boost/lambda/construct.hpp>
#include <boost/mpl/assert.hpp>
#include <boost/mpl/apply.hpp>
+#include <boost/range/algorithm/equal.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/typeof/typeof.hpp>
#include <libs/assign/v2/test/value/modifier/iterate.h>
@@ -35,7 +36,7 @@
using namespace lambda;
namespace as2 = assign::v2;
{
- //[test_put_modifier_iterate_meta
+ //[test_value_modifier_iterate_meta
typedef as2::value_aux::keyword_iterate keyword_;
typedef as2::modifier_tag::iterate_arg arg_;
typedef as2::value_aux::modulo_modifier<keyword_, arg_> modulo_;
@@ -50,18 +51,15 @@
//]
}
{
- //[test_put_modifier_iterate_shifted
+ //[test_value_modifier_iterate_shifted
typedef int T; array<T, 4> powers; powers[0] = 1; powers[1] = 10;
- int shift = 2; ( as2::put( powers ) % ( as2::_iterate = var( shift )++ ) )( 100 )( 1000 );
+ int index = 2; ( as2::put( powers ) % ( as2::_iterate = var( index )++ ) )( 100 )( 1000 );
- BOOST_ASSIGN_V2_CHECK( powers[0] == 1 );
- BOOST_ASSIGN_V2_CHECK( powers[1] == 10 );
- BOOST_ASSIGN_V2_CHECK( powers[2] == 100 );
- BOOST_ASSIGN_V2_CHECK( powers[3] == 1000 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( powers, as2::csv_deque( 1, 10, 100, 1000 ) ) );
//]
}
{
- //[test_put_modifier_iterate_meta_deque
+ //[test_value_modifier_iterate_meta_deque
typedef as2::value_aux::keyword_iterate keyword_;
typedef as2::modifier_tag::iterate_arg arg_;
typedef as2::value_aux::modulo_modifier<keyword_, arg_> modulo_;
@@ -75,19 +73,16 @@
//]
}
{
- //[test_put_modifier_iterate_shifted_deque
+ //[test_value_modifier_iterate_shifted_deque
as2::result_of::deque<int>::type missing_tail = as2::deque<int>( 1 )( 10 )( -1 )( -1 );
- int shift = 2;
+ int index = 2;
BOOST_AUTO(
powers,
- ( missing_tail % ( as2::_iterate = var( shift )++ ) )( 100 )( 1000 )
+ ( missing_tail % ( as2::_iterate = var( index )++ ) )( 100 )( 1000 )
);
- BOOST_ASSIGN_V2_CHECK( powers[0] == 1 );
- BOOST_ASSIGN_V2_CHECK( powers[1] == 10 );
- BOOST_ASSIGN_V2_CHECK( powers[2] == 100 );
- BOOST_ASSIGN_V2_CHECK( powers[3] == 1000 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( powers, as2::csv_deque( 1, 10, 100, 1000 ) ) );
//]
}
}
Modified: sandbox/assign_v2/libs/assign/v2/test/value/modifier/lookup.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/modifier/lookup.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/modifier/lookup.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -35,7 +35,7 @@
using namespace lambda;
namespace as2 = assign::v2;
{
- //[test_put_modifier_lookup_meta
+ //[test_value_modifier_lookup_meta
typedef BOOST_TYPEOF(_1) arg_;
typedef as2::value_aux::keyword_lookup keyword_;
typedef as2::value_aux::modulo_modifier<keyword_, arg_> modulo_;
@@ -50,16 +50,19 @@
//]
}
{
- //[test_put_modifier_lookup_map
- typedef std::map<std::string, int> C; C year; ( as2::put( year )( "feb", 28 )( "apr", 30 )( "jun", 30 )( "sep", 30 )( "nov", 30 )
- % ( as2::_fun = _1 ) % ( as2::_lookup = ( _1 = 31 ) ) )/*<<Calls `year["jan"] = 31` etc.>>*/( "jan" )( "mar" )( "may" )( "jul" )( "aug" )( "oct" )( "dec" );
+ //[test_value_modifier_lookup_map
+ typedef std::string str_; typedef std::map<str_, int> C; C year;
+ (
+ as2::put( year )( "feb", 28 )( "apr", 30 )( "jun", 30 )( "sep", 30 )( "nov", 30 )
+ % ( as2::_fun = _1 ) % ( as2::_lookup = ( _1 = 31 ) )
+ )/*<<Calls `year["jan"] = 31` etc.>>*/( "jan" )( "mar" )( "may" )( "jul" )( "aug" )( "oct" )( "dec" );
BOOST_ASSIGN_V2_CHECK( year["jan"] == 31 );
BOOST_ASSIGN_V2_CHECK( year["dec"] == 31 );
//]
}
{
- //[test_put_modifier_lookup_meta_deque
+ //[test_value_modifier_lookup_meta_deque
typedef BOOST_TYPEOF(_1) arg_;
typedef as2::value_aux::keyword_lookup keyword_;
typedef as2::value_aux::modulo_modifier<keyword_, arg_> modulo_;
@@ -73,7 +76,7 @@
//]
}
{
- //[test_put_modifier_lookup_map_deque
+ //[test_value_modifier_lookup_map_deque
BOOST_AUTO(
days_in_first_quater,
(
Modified: sandbox/assign_v2/libs/assign/v2/test/value/modifier/repeat.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/modifier/repeat.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/modifier/repeat.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -10,11 +10,11 @@
#include <vector>
#include <boost/typeof/typeof.hpp>
#include <boost/assign/v2/detail/config/check.hpp>
-
#include <boost/assign/v2/value/modifier/push_front.hpp>
#include <boost/assign/v2/value/modifier/repeat.hpp>
#include <boost/assign/v2/value/put.hpp>
#include <boost/assign/v2/value/deque.hpp>
+#include <boost/range/algorithm/equal.hpp>
#include <libs/assign/v2/test/value/modifier/repeat.h>
namespace test_assign_v2{
@@ -27,26 +27,23 @@
using namespace boost;
namespace as2 = assign::v2;
{
- //[test_put_modifier_repeat_simple
+ //[test_value_modifier_repeat_simple
std::vector<int> cont;
( as2::put( cont ) % ( as2::_repeat = 2 ) )( 72 )( 31 )( 48 );
- BOOST_ASSIGN_V2_CHECK( cont.size() == 6 );
- BOOST_ASSIGN_V2_CHECK( cont.front() == 72 );
- BOOST_ASSIGN_V2_CHECK( cont.back() == 48 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( cont, as2::csv_deque( 72, 72, 31, 31, 48, 48 ) ) );
//]
}
{
- //[test_put_modifier_repeat_compose
+ //[test_value_modifier_repeat_compose
BOOST_AUTO(
cont, (
as2::deque<int>( as2::_nil ) % as2::_push_front % ( as2::_repeat = 2 )
)( 72 )( 31 )( 48 )
);
- BOOST_ASSIGN_V2_CHECK( boost::size( cont ) == 6 );
+
+ BOOST_ASSIGN_V2_CHECK( range::equal( cont, as2::csv_deque( 48, 48, 31, 31, 72, 72 ) ) );
//]
- BOOST_ASSIGN_V2_CHECK( cont.front() == 48 );
- BOOST_ASSIGN_V2_CHECK( cont.back() == 72 );
}
}
Modified: sandbox/assign_v2/libs/assign/v2/test/value/modifier/standard.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/modifier/standard.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/modifier/standard.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -18,6 +18,7 @@
#include <boost/assign/v2/value/deque.hpp>
#include <boost/range/begin.hpp>
#include <boost/range/end.hpp>
+#include <boost/range/algorithm/equal.hpp>
#include <boost/range/algorithm/lower_bound.hpp>
#include <boost/range/algorithm/upper_bound.hpp>
#include <boost/lambda/lambda.hpp>
@@ -45,7 +46,7 @@
// PUT
{
- //[test_put_modifier_standard_meta
+ //[test_value_modifier_standard_meta
typedef as2::result_of::put<std::vector<int> >::type put_;
typedef as2::value_aux::keyword_standard_modifier keyword_;
typedef as2::modifier_tag::push_front tag_;
@@ -57,7 +58,7 @@
//]
}
{
- //[test_put_modifier_push_front
+ //[test_value_modifier_push_front
std::deque<double> sqrt2;
( as2::put( sqrt2 ) % as2::_push_front )( 1.41421 )( 1.4142 )( 1.414 )( 1.41 );
@@ -67,7 +68,7 @@
//]
}
{
- //[test_put_modifier_push
+ //[test_value_modifier_push
std::queue<int> fifo; ( as2::put( fifo ) % as2::_push )( 72 )( 31 )( 48 );
BOOST_ASSIGN_V2_CHECK( fifo.front() == 72 );
@@ -75,7 +76,7 @@
//]
}
{
- //[test_put_modifier_insert
+ //[test_value_modifier_insert
std::set<std::string> letters; ( as2::put( letters ) % as2::_insert )( "d" )( "a" )( "c" )( "b" );
BOOST_ASSIGN_V2_CHECK( letters.lower_bound( "a" ) == boost::begin( letters ) );
@@ -83,17 +84,16 @@
//]
}
{
- //[test_put_modifier_push_back
- typedef int int_; std::list<int> list;
+ //[test_value_modifier_push_back
+ std::list<int> list;
( as2::put( list ) % as2::_push_back )( 72 )( 31 )( 48 );
- BOOST_ASSIGN_V2_CHECK( list.front() == 72 );
- BOOST_ASSIGN_V2_CHECK( list.back() == 48 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( list, as2::csv_deque( 72, 31, 48 ) ) );
//]
}
// DEQUE
{
- //[test_put_modifier_meta_deque
+ //[test_value_modifier_meta_deque
typedef as2::result_of::deque<int>::type put_;
typedef as2::value_aux::keyword_standard_modifier keyword_;
typedef as2::modifier_tag::push_front tag_;
@@ -106,14 +106,13 @@
//]
}
{
- //[test_put_modifier_push_front_deque
+ //[test_value_modifier_push_front_deque
BOOST_AUTO(
powers,
( as2::deque<int>( as2::_nil ) % as2::_push_front )( 16 )( 8 )( 4 )( 2 )( 1 )
);
- BOOST_ASSIGN_V2_CHECK( powers[0] == 1 );
- BOOST_ASSIGN_V2_CHECK( powers[4] == 16 );
+ BOOST_ASSIGN_V2_CHECK( range::equal( powers, as2::csv_deque( 1, 2, 4, 8, 16 ) ) );
//]
}
}
Modified: sandbox/assign_v2/libs/assign/v2/test/value/pipe/fun.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/pipe/fun.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/pipe/fun.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -37,6 +37,7 @@
{
//[csv_pipe_modulo_fun_math
int i = 0, k = 1; std::list<int> factorials;
+
BOOST_ASSIGN_V2_CHECK(
range::equal(
factorials | (
Modified: sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/iterate.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/iterate.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/iterate.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -14,6 +14,7 @@
#include <boost/assign/v2/value/deque/csv_deque.hpp>
#include <boost/array.hpp>
#include <boost/lambda/lambda.hpp>
+#include <boost/range/algorithm/equal.hpp>
#include <libs/assign/v2/test/value/pipe/modifier/iterate.h>
namespace test_assign_v2{
Modified: sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/lookup.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/lookup.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/lookup.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -12,7 +12,6 @@
#include <boost/lambda/lambda.hpp>
#include <boost/typeof/typeof.hpp>
#include <boost/assign/v2/detail/config/check.hpp>
-
#include <boost/assign/v2/value/fun.hpp>
#include <boost/assign/v2/value/modifier/lookup.hpp>
#include <boost/assign/v2/value/pipe/put.hpp>
Modified: sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/repeat.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/repeat.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/repeat.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -9,7 +9,6 @@
//////////////////////////////////////////////////////////////////////////////
#include <vector>
#include <boost/assign/v2/detail/config/check.hpp>
-
#include <boost/assign/v2/value/modifier/repeat.hpp>
#include <boost/assign/v2/value/pipe/put.hpp>
#include <boost/assign/v2/value/deque.hpp>
Modified: sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/standard.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/standard.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/pipe/modifier/standard.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -16,7 +16,6 @@
#include <boost/range/begin.hpp>
#include <boost/range/iterator.hpp>
#include <boost/assign/v2/detail/config/check.hpp>
-
#include <boost/assign/v2/value/modifier/standard.hpp>
#include <boost/assign/v2/value/pipe/csv_put.hpp>
#include <boost/assign/v2/value/pipe/put.hpp>
@@ -41,7 +40,7 @@
// ------------------------------------------------------------------- //
{
- //[test_put_pipe_modifier_push_front
+ //[test_value_pipe_modifier_push_front
std::deque<int> powers; int front = (
powers | ( as2::_csv_put % as2::_push_front )( 16, 8, 4, 2, 1 )
).front();
@@ -51,7 +50,7 @@
//]
}
{
- //[test_put_pipe_modifier_push
+ //[test_value_pipe_modifier_push
typedef int int_; std::queue<int_> fifo; int_ front = (
fifo | ( as2::_put % as2::_push )( 72 )( 31 )( 48 )
).front();
@@ -61,7 +60,7 @@
//]
}
{
- //[test_put_pipe_modifier_insert
+ //[test_value_pipe_modifier_insert
typedef std::set<double> doubles_; doubles_ sqrt2;
range_iterator<doubles_>::type lower = (
sqrt2 | ( as2::_put % as2::_insert )( 1.414 )( 1.41421 )( 1.41 )( 1.4142 )
Modified: sandbox/assign_v2/libs/assign/v2/test/value/pipe/put.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/pipe/put.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/pipe/put.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -30,12 +30,12 @@
using namespace boost;
namespace as2 = assign::v2;
{
- //[test_put_pipe_put_str_literal
+ //[test_value_pipe_put_str_literal
typedef const char* T; typedef std::string str_; std::deque<T> cont;
BOOST_ASSIGN_V2_CHECK(
boost::range::equal(
cont | /*<<`"x"`, `"y"` and `"z"` are kept as `const char(&)[2]`>>*/as2::_csv_put( "x", "y", "z" ),
- as2::csv_deque( "x" )( "y" )( "z" )
+ as2::csv_deque( "x", "y", "z" )
)
);
BOOST_ASSIGN_V2_CHECK( str_( cont[1] ) == "y" );
@@ -43,7 +43,7 @@
//]
}
{
- //[test_put_pipe_put_intervals
+ //[test_value_pipe_put_intervals
boost::array<int, 2> interval; boost::array<int, 6> all6;
BOOST_ASSIGN_V2_CHECK(
boost::range::equal(
Modified: sandbox/assign_v2/libs/assign/v2/test/value/ptr.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/ptr.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/ptr.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -28,7 +28,7 @@
namespace as2 = boost::assign::v2;
{
- //[test_put_ptr_array
+ //[test_value_ptr_array
typedef int T;
T x = 1, y = 2, z = 3; boost::ptr_array<T, 3> cont;
as2::put( cont )( x )( y )( z );
@@ -38,7 +38,7 @@
//]
}
{
- //[test_put_ptr_deque
+ //[test_value_ptr_deque
typedef int T; T x = 1, y = 2, z = 0; boost::ptr_deque<T> cont;
as2::put( cont )( x )( y )( z );
@@ -47,7 +47,7 @@
//]
}
{
- //[test_put_ptr_list
+ //[test_value_ptr_list
typedef int T; T x = 1, y = 2, z = 0; boost::ptr_list<T> cont;
as2::put( cont )( x )( y )( z );
@@ -56,7 +56,7 @@
//]
}
{
- //[test_put_ptr_vector
+ //[test_value_ptr_vector
typedef int T; T x = 1, y = 2, z = 0; boost::ptr_vector<T> cont;
as2::put( cont )( x )( y )( z );
Modified: sandbox/assign_v2/libs/assign/v2/test/value/put.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/value/put.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/value/put.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -42,7 +42,7 @@
namespace as2 = assign::v2;
{
- //[test_put_put_bitset
+ //[test_value_put_bitset
typedef std::string str_; typedef std::bitset<3> data_; /*<<Keep in mind that although `data_( str_( "011" ) )`, for instance, is valid, `consecutive.push_back( str_( "011" ) )` isn't (GCC4.2)>>*/ std::vector<data_> consecutive;
/*<<Calls `consecutive.push_back( data_( t ) );` for [^t = ]`str_( "000" )`[^, ..., ]`str_( "111" )`>>*/as2::put( consecutive )
( str_( "000" ) )( str_( "001" ) )
@@ -58,7 +58,7 @@
// unsigned i else warning comparison between signed & unsigned
}
{
- //[test_put_put_numeric_kb
+ //[test_value_put_numeric_kb
std::vector<int> numeric( 10 ); iota( numeric, 0 ); typedef std::string str_;
typedef variant< int, str_ > data_; array<data_, 16> numeric_kb;
as2::put( numeric_kb )
@@ -74,7 +74,7 @@
BOOST_ASSIGN_V2_CHECK( get<int>( numeric_kb.back() ) == 9 );
}
{
- //[test_put_put_ragged
+ //[test_value_put_ragged
typedef double data_; typedef std::vector<data_> variable_size_;
variable_size_ a( 3 ); a[0] = 0.71; a[1] = 0.63; a[2] = 0.85;
variable_size_ b( 4 ); b[0] = 0.61; b[1] = 0.69; b[2] = 0.92; b[3] = 0.55;
@@ -101,7 +101,7 @@
BOOST_ASSIGN_V2_CHECK( fabs( ragged[2].back() + 99.99 ) < eps );
}
{
- //[test_put_put_stl
+ //[test_value_put_stl
std::queue<int> adapter; /*<<Calls `adapter.push( t )` for [^t = 72, 31, 48]>>*/as2::put( adapter )( 72 )( 31 )( 48 );
array<int, 3> array; /*<<Calls `array[i] = t` for [^( i, t ) = ( 0, 72 ), ( 1, 31 ), ( 2, 48 )]>>*/as2::put( array )( 72 )( 31 )( 48 );
std::set<int> assoc; /*<<Calls `assoc.insert( t )` for [^t = 72, 31, 48]>>*/as2::put( assoc )( 72 )( 31 )( 48 );
@@ -118,7 +118,7 @@
}
{
// http://bioinfo.mbb.yale.edu/~mbg/dom/fun3/area-codes/
- //[test_put_put_area_codes
+ //[test_value_put_area_codes
typedef const char us_state_ [3]; us_state_ ct = "CT", nj = "NJ", ny = "NY";
typedef int area_code_; typedef tuple<us_state_/*<<Notice the [*reference]>>*/&, area_code_> data_; std::deque< data_ > tri_state_area;
/*<<Calls `tri_state.push_back( data_( s, c ) )` for [^( s, c ) =( ny, 212 )...( ct, 203 )]>>*/
Modified: sandbox/assign_v2/libs/assign/v2/tutorial.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/tutorial.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/tutorial.cpp 2011-03-18 18:01:24 EDT (Fri, 18 Mar 2011)
@@ -48,6 +48,7 @@
typedef std::string T; ptr_set<T> assoc;
T x = "isomer", y = "ephemeral", z = "prosaic";
csv( put( assoc ), x, z, y );
+
assert( assoc.count( x ) == 1 );
assert( assoc.count( z ) == 1 );
//]
@@ -55,7 +56,8 @@
{
//[tutorial_piping
using namespace lambda;
- std::deque<int> cont; range::stable_partition( cont | _csv_put( 0, 1, 2, 3, 4, 5 ), _1 % 2 );
+ std::deque<int> cont;
+ range::stable_partition( cont | _csv_put( 0, 1, 2, 3, 4, 5 ), _1 % 2 );
//]
//[tutorial_container_generation
assert( range::equal( cont, csv_deque(1, 3, 5, 0, 2, 4) ) );
@@ -65,6 +67,7 @@
//[tutorial_ref_array
int x = 4, y = 6, z = -1;
int const& max = *max_element( ref::csv_array( x, y, z ) );
+
assert( &max == &y );
//]
}
@@ -76,30 +79,36 @@
consecutive8,
begin( consecutive5 | _chain( ref::csv_array( six, seven, eight ) | ref::_get ) )
);
- assert(consecutive5[0] == 1); assert(consecutive5[4] == 5);
- assert( six == 6 ); assert( eight == 8 );
+
+ assert( range::equal( consecutive5, csv_deque(1, 2, 3, 4, 5) ) );
+ assert( six == 6 ); assert( seven == 7 ); assert( eight == 8 );
//]
}
{
//[tutorial_conversion
std::queue<int> fifo = converter( csv_deque( 72, 31, 48 ) );
- assert( fifo.front() == 72 );
+
+ assert( fifo.front() == 72 ); assert( fifo.back() == 48 );
//]
}
{
//[tutorial_arg_forwarding
- std::map<std::string, int> map; put( map )( "foo", 1 )( "bar", 2 )( "baz", 3 );
- assert( map["bar"] == 2 );
+ std::map<std::string, int> map;
+ put( map )( "foo", 1 )( "bar", 2 )( "baz", 3 );
+
+ assert( map["bar"] = 2 );
//]
}
{
//[tutorial_parametrization
using namespace lambda;
typedef int T; array<T, 4> powers = converter( csv_deque( 1, 10, -1, -1 ) );
- std::size_t shift = 2; ( put( powers ) % ( _iterate = var( shift )++ ) )( 100 )( 1000 );
+ std::size_t index = 2; ( put( powers ) % ( _iterate = var( index )++ ) )( 100 )( 1000 );
- int value = 1;
- for(shift = 0; shift < powers.size(); shift++){ assert( powers[shift] == value ); value *=10; }
+ for(int value = 1, index = 0; index < powers.size(); index++, value *=10 )
+ {
+ assert( powers[index] == value );
+ }
//]
}
}
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