Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r69041 - in sandbox/assign_v2/libs/assign/v2: src test test/detail test/put test/put/container test/put/pipe test/put/pipe/csv test/put/pipe/functor test/ref test/unit_testing test/utility
From: erwann.rogard_at_[hidden]
Date: 2011-02-19 05:56:16


Author: e_r
Date: 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
New Revision: 69041
URL: http://svn.boost.org/trac/boost/changeset/69041

Log:
upd assign_v2
Text files modified:
   sandbox/assign_v2/libs/assign/v2/src/main.cpp | 8 -
   sandbox/assign_v2/libs/assign/v2/test/detail/functor.cpp | 24 +++---
   sandbox/assign_v2/libs/assign/v2/test/other.cpp | 85 ++++++++++++---------
   sandbox/assign_v2/libs/assign/v2/test/put.cpp | 21 ++--
   sandbox/assign_v2/libs/assign/v2/test/put/container.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/put/container/csv.cpp | 44 +++++++++--
   sandbox/assign_v2/libs/assign/v2/test/put/container/functor.cpp | 55 ++++++++++++-
   sandbox/assign_v2/libs/assign/v2/test/put/container/range.cpp | 8 -
   sandbox/assign_v2/libs/assign/v2/test/put/deque.cpp | 37 ++-------
   sandbox/assign_v2/libs/assign/v2/test/put/ext.cpp | 40 ---------
   sandbox/assign_v2/libs/assign/v2/test/put/modulo.cpp | 6 -
   sandbox/assign_v2/libs/assign/v2/test/put/pipe.cpp | 3
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv.cpp | 6 +
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/container.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/rhs.cpp | 5
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.cpp | 81 --------------------
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.h | 26 ------
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor.cpp | 6 +
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/container.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/forward.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/rhs.cpp | 6
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/modulo.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/range.cpp | 8 +-
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.cpp | 153 ---------------------------------------
   sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.h | 26 ------
   sandbox/assign_v2/libs/assign/v2/test/put/ptr.cpp | 75 +------------------
   sandbox/assign_v2/libs/assign/v2/test/put/std.cpp | 20 ----
   sandbox/assign_v2/libs/assign/v2/test/ref.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/ref/array.cpp | 64 +---------------
   sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.cpp | 88 ----------------------
   sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.h | 25 ------
   sandbox/assign_v2/libs/assign/v2/test/ref/list.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/ref/wrapper.cpp | 2
   sandbox/assign_v2/libs/assign/v2/test/unit_testing/Jamfile.v2 | 2
   sandbox/assign_v2/libs/assign/v2/test/unit_testing/put.cpp | 63 +++++++++++-----
   sandbox/assign_v2/libs/assign/v2/test/unit_testing/ref.cpp | 8 +-
   sandbox/assign_v2/libs/assign/v2/test/utility/chain.cpp | 45 ++++++++++-
   sandbox/assign_v2/libs/assign/v2/test/utility/convert.cpp | 49 ++++++++----
   38 files changed, 337 insertions(+), 766 deletions(-)

Modified: sandbox/assign_v2/libs/assign/v2/src/main.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/src/main.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/src/main.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -32,14 +32,8 @@
             xxx_utility::test();
         xxx_other::test();
     }
+
 /*
- {
- using namespace example_assign_v2;
-
- xxx_ref::run(std::cout);
- xxx_put::run(std::cout);
- xxx_utility::run(std::cout);
- }
         {
             using namespace speed_assign_v2;
         std::ofstream ofs("results");

Modified: sandbox/assign_v2/libs/assign/v2/test/detail/functor.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/detail/functor.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/detail/functor.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -18,7 +18,7 @@
 #include <boost/tuple/tuple.hpp>
 
 #include <boost/assign/v2/detail/config/tuple_limit_arity.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/detail/functor/constructor.hpp>
 
 #include <boost/assign/v2/detail/config/enable_cpp0x.hpp>
@@ -53,7 +53,7 @@
             typedef int const& y_ref_;
             typedef int z_;
 
-#define MACRO(Z, n, data) data
+#define BOOST_ASSIGN_V2_MACRO(Z, n, data) data
 
             typedef boost::tuple<
                 BOOST_PP_EXPR_IF(
@@ -62,16 +62,16 @@
                 )
                 BOOST_PP_ENUM_TRAILING(
                     BOOST_PP_IF(BOOST_PP_DEC(BOOST_ASSIGN_V2_n),1,0),
- MACRO,
+ BOOST_ASSIGN_V2_MACRO,
                     y_ref_
                 )
                 BOOST_PP_ENUM_TRAILING(
                     BOOST_PP_SUB(BOOST_ASSIGN_V2_n,2),
- MACRO,
+ BOOST_ASSIGN_V2_MACRO,
                     z_
                 )
> t_;
-#undef MACRO
+#undef BOOST_ASSIGN_V2_MACRO
 
             typedef functor_aux::constructor<t_> f_;
             f_ f;
@@ -79,7 +79,7 @@
             int x = -1;
             int const y = 0;
 
-#define MACRO(z, n, data) data
+#define BOOST_ASSIGN_V2_MACRO(z, n, data) data
 
             t_ t = f(
                 BOOST_PP_EXPR_IF(
@@ -88,16 +88,16 @@
                 )
                 BOOST_PP_ENUM_TRAILING(
                     BOOST_PP_IF(BOOST_PP_DEC(BOOST_ASSIGN_V2_n),1,0),
- MACRO,
+ BOOST_ASSIGN_V2_MACRO,
                     y
                 )
                 BOOST_PP_ENUM_TRAILING(
                     BOOST_PP_SUB(BOOST_ASSIGN_V2_n, 2),
- MACRO,
+ BOOST_ASSIGN_V2_MACRO,
                     1
                 )
             );
-#undef MACRO
+#undef BOOST_ASSIGN_V2_MACRO
             BOOST_PP_EXPR_IF(
                 BOOST_ASSIGN_V2_n,
                 BOOST_ASSIGN_V2_CHECK(
@@ -111,7 +111,7 @@
                 );
             )
 
-#define MACRO(z, i, data ) \
+#define BOOST_ASSIGN_V2_MACRO(z, i, data ) \
     BOOST_ASSIGN_V2_CHECK( \
         boost::get< BOOST_PP_ADD(i,2) >( t ) == 1 \
     ); \
@@ -119,10 +119,10 @@
 
             BOOST_PP_REPEAT(
                 BOOST_PP_SUB(BOOST_ASSIGN_V2_n,2),
- MACRO,
+ BOOST_ASSIGN_V2_MACRO,
                 ~
             )
-#undef MACRO
+#undef BOOST_ASSIGN_V2_MACRO
 
             typedef std::string str_;
             const str_ cpp

Modified: sandbox/assign_v2/libs/assign/v2/test/other.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/other.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/other.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -8,20 +8,15 @@
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
 //////////////////////////////////////////////////////////////////////////////
 #include <utility>
-#include <deque>
-#include <map>
 #include <vector>
-#include <string>
-#include <boost/typeof/typeof.hpp>
-#include <boost/tuple/tuple.hpp>
-#include <boost/range/size.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
-#include <boost/assign/v2/put/deque.hpp>
-#include <boost/assign/v2/put/container/functor.hpp>
-#include <boost/assign/v2/put/ext.hpp>
-#include <boost/assign/v2/ref/array.hpp>
+#include <boost/range/algorithm/copy.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
+#include <boost/assign/v2/utility/chain.hpp>
+#include <boost/assign/v2/ref/wrapper/adaptor_get.hpp>
+#include <boost/assign/v2/ref/array/csv.hpp>
+#include <boost/assign/v2/ref/array/functor.hpp>
 #include <boost/assign/v2/ref/array/functor/converter.hpp>
-
+#include <boost/assign/v2/put/deque/csv.hpp>
 #include <libs/assign/v2/test/other.h>
 
 namespace test_assign_v2{
@@ -30,42 +25,58 @@
         // Tests interaction between different functionalities
 
     void test(){
+
             namespace as2 = boost::assign::v2;
     
             {
                 //[array_converter
- typedef std::pair<int, int> T;
+ typedef std::pair<std::string, int> T;
                 typedef std::vector<T> cont_;
- // notice name lookup
- cont_ cont = converter( as2::ref::array( T(0, 0) )( T(1, 2) ) );
- BOOST_ASSIGN_V2_CHECK( cont[1].first == 1 );
- BOOST_ASSIGN_V2_CHECK( cont[1].second == 2 );
+ cont_ cont = converter( // name lookup
+ as2::ref::array( T("jan", 31) )( T("feb", 28) )( T("mar", 31) )
+ );
+ BOOST_ASSIGN_V2_CHECK( cont[1].first == "feb" );
+ BOOST_ASSIGN_V2_CHECK( cont[1].second == 28 );
             //]
+ BOOST_ASSIGN_V2_CHECK( cont[0].first == "jan" );
+ BOOST_ASSIGN_V2_CHECK( cont[0].second == 31 );
+ BOOST_ASSIGN_V2_CHECK( cont[2].first == "mar" );
+ BOOST_ASSIGN_V2_CHECK( cont[2].second == 31 );
             }
         {
- //[deque_repeat
- BOOST_AUTO(
- cont, (
- as2::deque<int>( as2::_nil ) % ( as2::_repeat = 2 )
- )( -1 )( 0 )( 1 )
+ //[chain_w
+ std::vector<int> v( 3 ); v[0] = -1; v[1] = 0; v[2] = 1;
+ boost::array<int, 2> ar; int z; // lvalues
+ boost::copy(
+ v,
+ boost::begin(
+ ar | as2::_chain(
+ as2::ref::csv_array( z ) // rvalue!
+ | as2::ref::_get
+ )
+ )
             );
- BOOST_ASSIGN_V2_CHECK( boost::size( cont ) == 6 );
- BOOST_ASSIGN_V2_CHECK( cont.front() == -1 );
- BOOST_ASSIGN_V2_CHECK( cont.back() == 1 );
- }
+ BOOST_ASSIGN_V2_CHECK( ar[0] == -1 );
+ BOOST_ASSIGN_V2_CHECK( ar[1] == 0 );
+ BOOST_ASSIGN_V2_CHECK( z == 1 );
+ //]
+ }
                 {
- //[ref
- int x = -1, y = 0;
- std::deque< boost::tuple<std::string, int&> > cont;
- as2::put( cont )( "x" , x )( "y" , y );
- BOOST_ASSIGN_V2_CHECK( boost::get<0>( cont[0] ) == "x" );
- BOOST_ASSIGN_V2_CHECK( boost::get<0>( cont[1] ) == "y" );
- BOOST_ASSIGN_V2_CHECK( &boost::get<1>( cont[0] ) == &x );
- BOOST_ASSIGN_V2_CHECK( &boost::get<1>( cont[1] ) == &y );
+ //[array_converter
+ typedef std::pair<std::string, int> T;
+ typedef std::vector<T> cont_;
+ cont_ cont = converter( // name lookup
+ as2::ref::array( T("jan", 31) )( T("feb", 28) )( T("mar", 31) )
+ );
+ BOOST_ASSIGN_V2_CHECK( cont[1].first == "feb" );
+ BOOST_ASSIGN_V2_CHECK( cont[1].second == 28 );
             //]
-
- }
- }
+ BOOST_ASSIGN_V2_CHECK( cont[0].first == "jan" );
+ BOOST_ASSIGN_V2_CHECK( cont[0].second == 31 );
+ BOOST_ASSIGN_V2_CHECK( cont[2].first == "mar" );
+ BOOST_ASSIGN_V2_CHECK( cont[2].second == 31 );
+ }
+ }
 
 }// xxx_other
 }// xxx_test_assign

Modified: sandbox/assign_v2/libs/assign/v2/test/put.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,30 +7,29 @@
 // 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 <libs/assign/v2/test/put/container.h>
 #include <libs/assign/v2/test/put/deduce.h>
+#include <libs/assign/v2/test/put/container.h>
 #include <libs/assign/v2/test/put/deque.h>
-#include <libs/assign/v2/test/put/ext.h>
 #include <libs/assign/v2/test/put/modulo.h>
-//#include <libs/assign/v2/test/put/pipe.h>
-#include <libs/assign/v2/test/put/ptr.h>
 #include <libs/assign/v2/test/put/std.h>
+#include <libs/assign/v2/test/put/ext.h>
+#include <libs/assign/v2/test/put/ptr.h>
+#include <libs/assign/v2/test/put/pipe.h>
 #include <libs/assign/v2/test/put.h>
 
 namespace test_assign_v2{
 namespace xxx_put{
 
- void test(){
-
- xxx_container::test();
+ void test()
+ {
             xxx_deduce::test();
+ xxx_container::test();
+ xxx_modulo::test();
             xxx_deque::test();
+ xxx_std::test();
             xxx_ext::test();
- xxx_modulo::test();
             xxx_ptr::test();
- //xxx_pipe::test();
- xxx_std::test();
-
+ xxx_pipe::test();
     }
     
 }// xxx_put

Modified: sandbox/assign_v2/libs/assign/v2/test/put/container.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/container.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/container.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -9,6 +9,7 @@
 //////////////////////////////////////////////////////////////////////////////
 #include <libs/assign/v2/test/put/container/functor.h>
 #include <libs/assign/v2/test/put/container/csv.h>
+#include <libs/assign/v2/test/put/container/range.h>
 #include <libs/assign/v2/test/put/container.h>
 
 
@@ -20,6 +21,7 @@
     {
             xxx_functor::test();
             xxx_csv::test();
+ xxx_range::test();
     }
     
 }// xxx_container

Modified: sandbox/assign_v2/libs/assign/v2/test/put/container/csv.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/container/csv.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/container/csv.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -8,7 +8,10 @@
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
 //////////////////////////////////////////////////////////////////////////////
 #include <list>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <map>
+#include <string>
+#include <boost/ptr_container/ptr_vector.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/container.hpp>
 #include <libs/assign/v2/test/put/container/csv.h>
 
@@ -20,17 +23,40 @@
         void test()
         {
                 namespace as2 = boost::assign::v2;
- //[csv_list
- typedef int T; T x = 1, y = 2, z = 0;
- std::list<T> seq1, seq2;
- ( as2::put( seq1 ) )( x )( y )( z );
- ( as2::csv_put( seq2 ) )( x, y, z );
- BOOST_ASSIGN_V2_CHECK( seq1 == seq2 );
- //]
+ {
+ //[csv_list
+ typedef int T; T x = 1, y = 2, z = 0;
+ std::list<T> seq1, seq2;
+ ( as2::put( seq1 ) )( x )( y )( z );
+ ( as2::csv_put( seq2 ) )( x, y, z );
+ BOOST_ASSIGN_V2_CHECK( seq1 == seq2 );
+ //]
+ }
+ {
+ //[csv_map
+ typedef std::map<std::string, int> cont_;
+ typedef cont_::value_type type; cont_ cont;
+ as2::csv_put( cont )(
+ type("jan", 31), type("feb", 28), type("mar", 31)
+ );
+ BOOST_ASSIGN_V2_CHECK( cont["feb"] == 28 );
+ //]
+ BOOST_ASSIGN_V2_CHECK( cont["jan"] == 31 );
+ BOOST_ASSIGN_V2_CHECK( cont["mar"] == 31 );
+ }
+ {
+ //[ptr_vector
+ typedef int T; T x = 1, y = 2, z = 0;
+ boost::ptr_vector<T> seq1, seq2;
+ as2::csv_put( seq1 )( x, y, z );
+ as2::put( seq2 )( x )( y )( z );
+ BOOST_ASSIGN_V2_CHECK( seq1 == seq2 );
+ //]
+ }
+ // TODO ptr_map
         }
 
 }// xxx_csv
 }// xxx_container
 }// xxx_put
 }// test_assign_v2
-

Modified: sandbox/assign_v2/libs/assign/v2/test/put/container/functor.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/container/functor.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/container/functor.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -16,7 +16,8 @@
 #include <stack>
 #include <vector>
 #include <string>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/tuple/tuple.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/container/functor.hpp>
 
 #include <libs/assign/v2/test/put/container/functor.h>
@@ -30,15 +31,15 @@
         namespace as2 = boost::assign::v2;
         {
             //[array
- typedef int T;
- T x = 1, y = 2, z = 3;
- boost::array<T, 3> ar;
- as2::put( ar )( x )( y )( z );
+ typedef int T; T x = 1, y = 2, z = 3;
+ boost::array<T, 3> ar; as2::put( ar )( x )( y )( z );
             BOOST_ASSIGN_V2_CHECK( ar[0] == x );
             BOOST_ASSIGN_V2_CHECK( ar[2] == z );
             //]
         }
         {
+ // std::string may be replaced by const char* using a custom
+ // comparator
                 //[map
             std::map<std::string, int> assoc;
             as2::put( assoc )( "jan", 31 )( "feb", 28 )( "mar", 31 );
@@ -84,7 +85,7 @@
         }
         {
             //[queue
- typedef int T; T x = 8, y = 7, z = 6;
+ typedef int T; T x = 8, y = 7, z = 4;
             std::queue<T> fifo;
             as2::put( fifo )( x )( y )( z );
             BOOST_ASSIGN_V2_CHECK( fifo.front() == x );
@@ -97,9 +98,49 @@
             std::stack<T> lifo;
             as2::put( lifo )( x )( y )( z );
             BOOST_ASSIGN_V2_CHECK( lifo.top() == z ); lifo.pop();
- BOOST_ASSIGN_V2_CHECK( lifo.top() == y );
+ BOOST_ASSIGN_V2_CHECK( lifo.top() == y ); lifo.pop();
+ BOOST_ASSIGN_V2_CHECK( lifo.top() == x ); lifo.pop();
             //]
                 }
+ {
+ using namespace boost;
+ //[tuple
+ typedef int& ref_; typedef std::string val_;
+ typedef boost::tuple<ref_, val_> T;
+ int x = 31, y = 28, z = 31; std::vector<T> seq;
+ as2::put( seq )( x, "jan" )( y, "feb" )( z, "mar" );
+ BOOST_ASSIGN_V2_CHECK( &get<0>( seq[1] ) == &y );
+ BOOST_ASSIGN_V2_CHECK( get<1>( seq[1] ) == "feb" );
+ //]
+ BOOST_ASSIGN_V2_CHECK( &get<0>( seq[0] ) == &x );
+ BOOST_ASSIGN_V2_CHECK( get<1>( seq[0] ) == "jan" );
+ BOOST_ASSIGN_V2_CHECK( &get<0>( seq[2] ) == &z );
+ BOOST_ASSIGN_V2_CHECK( get<1>( seq[2] ) == "mar" );
+ }
+ {
+ //[default_constr1
+ typedef int T; T x = 1, z = 0;
+ std::vector<T> seq; as2::put( seq )( x )()( z );
+ BOOST_ASSIGN_V2_CHECK( seq[0] == x );
+ BOOST_ASSIGN_V2_CHECK( seq[1] == T() );
+ BOOST_ASSIGN_V2_CHECK( seq[2] == z );
+ //]
+ }
+ {
+ using namespace boost;
+ //[default_constr2
+ typedef std::string a_; typedef int b_;
+ typedef boost::tuple<a_, b_> T;
+ a_ a0 = "jan", a1 = "feb", a2 = "mar"; b_ b0 = 31, b1 = 28, b2 = 31;
+ std::vector<T> seq; as2::put( seq )( a0, b0 )()( a2 );
+ BOOST_ASSIGN_V2_CHECK( get<0>( seq[0] ) == a0 );
+ BOOST_ASSIGN_V2_CHECK( get<1>( seq[0] ) == b0 );
+ BOOST_ASSIGN_V2_CHECK( get<0>( seq[1] ) == get<0>( T() ) );
+ BOOST_ASSIGN_V2_CHECK( get<1>( seq[1] ) == get<1>( T() ) );
+ BOOST_ASSIGN_V2_CHECK( get<0>( seq[2] ) == a2 );
+ BOOST_ASSIGN_V2_CHECK( get<1>( seq[2] ) == b_() );
+ //]
+ }
     }// test()
 
 }// xxx_functor

Modified: sandbox/assign_v2/libs/assign/v2/test/put/container/range.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/container/range.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/container/range.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -11,7 +11,7 @@
 #include <stack>
 #include <vector>
 #include <boost/array.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/container/range.hpp>
 #include <libs/assign/v2/test/put/container/range.h>
 
@@ -28,7 +28,6 @@
             typedef int T; T x = 1, y = 2, z = 0;
         std::vector<T> r( 3 ); r[0] = x; r[1] = y; r[2] = z;
         //]
-
         // Forwards to put()
                 {
                 //[range_array
@@ -39,11 +38,10 @@
         }
                 {
                 //[range_stack
- typedef std::stack<T> cont_;
- BOOST_ASSIGN_V2_CHECK( as2::put_range<cont_>( r ).top() == x );
+ typedef std::stack<T> lifo_;
+ BOOST_ASSIGN_V2_CHECK( as2::put_range<lifo_>( r ).top() == z );
             //]
         }
-
         // Calls C(b, e)
                 {
                 //[range_deque

Modified: sandbox/assign_v2/libs/assign/v2/test/put/deque.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/deque.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/deque.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,10 +7,10 @@
 // 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 <string>
-#include <boost/assign/v2/put/deque.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
-
+#include <libs/assign/v2/test/put/deque/csv.h>
+#include <libs/assign/v2/test/put/deque/functor.h>
+#include <libs/assign/v2/test/put/deque/modulo.h>
+#include <libs/assign/v2/test/put/deque/std.h>
 #include <libs/assign/v2/test/put/deque.h>
 
 namespace test_assign_v2{
@@ -19,31 +19,10 @@
 
         void test()
     {
- namespace as2 = boost::assign::v2;
- {
- //[csv_deque
- typedef int T; T x = 1, y = 2, z = 0;
- as2::result_of::deque<T>::type cont = as2::csv_deque( x, y, z );
- BOOST_ASSIGN_V2_CHECK( cont.front() == x );
- BOOST_ASSIGN_V2_CHECK( cont.back() == z );
- //]
- }
- {
- //[deque
- typedef int T; T x = 1, y = 2, z = 0;
- as2::result_of::deque<T>::type cont = as2::deque<T>( x )( y )( z );
- BOOST_ASSIGN_V2_CHECK( cont.front() == x );
- BOOST_ASSIGN_V2_CHECK( cont.back() == z );
- //]
- }
- {
- //[deque_str
- typedef std::string str_;
- BOOST_ASSIGN_V2_CHECK(
- str_( as2::csv_deque( "x" )( "y" )( "z" )[1] ) == "y"
- );
- //]
- }
+ xxx_csv::test();
+ xxx_functor::test();
+ xxx_modulo::test();
+ xxx_std::test();
     }
 
 }// xxx_deque

Modified: sandbox/assign_v2/libs/assign/v2/test/put/ext.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/ext.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/ext.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,14 +7,7 @@
 // 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 <vector>
-#include <map>
-#include <stack>
-#include <boost/lambda/lambda.hpp>
-#include <boost/array.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
-#include <boost/assign/v2/put/ext.hpp>
-#include <boost/assign/v2/put/container.hpp>
+#include <libs/assign/v2/test/put/ext/functor.h>
 #include <libs/assign/v2/test/put/ext.h>
 
 namespace test_assign_v2{
@@ -23,36 +16,7 @@
 
     void test()
     {
- namespace as2 = boost::assign::v2;
- namespace bl = boost::lambda;
- {
- //[iterate
- boost::array<int, 3> cont;
- ( as2::put( cont ) % as2::_iterate )( 1 )( 2 )( 3 );
- BOOST_ASSIGN_V2_CHECK( cont[0] == 1 );
- BOOST_ASSIGN_V2_CHECK( cont[2] == 3 );
- //]
- }
- {
- //[lookup
- std::map<std::string, int> cont;
- cont["jan"] = 31; cont["feb"] = 29; cont["mar"] = 32;
- (
- as2::put( cont ) % ( as2::_lookup = ( bl::_1 -= 1 ) )
- )( "feb" )( "mar" );
- BOOST_ASSIGN_V2_CHECK( cont["feb"] == 28 );
- BOOST_ASSIGN_V2_CHECK( cont["mar"] == 31 );
- //]
- }
- {
- //[repeat
- std::vector<int> cont;
- ( as2::put( cont ) % ( as2::_repeat = 2 ) )( -1 )( 0 )( 1 );
- BOOST_ASSIGN_V2_CHECK( cont.size() == 6 );
- BOOST_ASSIGN_V2_CHECK( cont.front() == -1 );
- BOOST_ASSIGN_V2_CHECK( cont.back() == 1 );
- //]
- }
+ xxx_functor::test();
     }
 
 }// xxx_ext

Modified: sandbox/assign_v2/libs/assign/v2/test/put/modulo.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/modulo.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/modulo.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -9,7 +9,7 @@
 //////////////////////////////////////////////////////////////////////////////
 #include <vector>
 #include <deque>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/container.hpp>
 #include <boost/assign/v2/put/std/push_front.hpp>
 #include <boost/assign/v2/put/modulo/fun.hpp>
@@ -36,7 +36,7 @@
                 //]
         }
         {
- //[modulo_modifier
+ //[modulo_push_front
             typedef int T; T x = 1, y = 2, z = 0;
                 std::deque<int> cont;
                 ( as2::put( cont ) % ( as2::_modifier
@@ -50,5 +50,3 @@
 }// xxx_modulo
 }// xxx_put
 }// test_assign_v2
-
-

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -11,7 +11,7 @@
 #include <libs/assign/v2/test/put/pipe/functor.h>
 #include <libs/assign/v2/test/put/pipe/csv.h>
 #include <libs/assign/v2/test/put/pipe/range.h>
-#include <libs/assign/v2/test/put/pipe/ext.h>
+#include <libs/assign/v2/test/put/pipe.h>
 
 namespace test_assign_v2{
 namespace xxx_put{
@@ -22,7 +22,6 @@
             xxx_csv::test();
             xxx_functor::test();
             xxx_range::test();
- xxx_ext::test();
     }
     
 }// xxx_pipe

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,7 +7,10 @@
 // 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 <libs/assign/v2/test/put/pipe/csv/container.h>
 #include <libs/assign/v2/test/put/pipe/csv/rhs.h>
+#include <libs/assign/v2/test/put/pipe/csv/fun.h>
+#include <libs/assign/v2/test/put/pipe/csv/std.h>
 #include <libs/assign/v2/test/put/pipe/csv.h>
 
 namespace test_assign_v2{
@@ -16,7 +19,10 @@
 namespace xxx_csv{
 
     void test(){
+ xxx_container::test();
         xxx_rhs::test();
+ xxx_fun::test();
+ xxx_std::test();
     }
 
 }// xxx_csv

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/container.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/container.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/container.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -8,7 +8,7 @@
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
 //////////////////////////////////////////////////////////////////////////////
 #include <list>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/pipe/csv.hpp>
 #include <libs/assign/v2/test/put/pipe/functor/container.h>
 

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/rhs.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/rhs.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/csv/rhs.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -11,7 +11,8 @@
 #include <boost/preprocessor/expr_if.hpp>
 #include <boost/mpl/int.hpp>
 #include <boost/typeof/typeof.hpp>
-#include <boost/assign/v2/detail/checking/equal.hpp>
+#include <boost/assign/v2/detail/check/equal_val.hpp>
+#include <boost/assign/v2/detail/check/equal_ref.hpp>
 #include <boost/assign/v2/put/pipe/csv.hpp>
 
 #include <libs/assign/v2/test/put/pipe/csv/rhs.h>
@@ -40,7 +41,7 @@
         cint_ x = -1, y = 0, z = 1;
         int x1 = x + 5, y1 = y + 5, z1 = z + 5;
 
- namespace chk = as2::checking;
+ namespace chk = as2::check_aux;
         typedef chk::equal_ref r_;
         typedef chk::equal_val v_;
 

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -1,80 +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) //
-//////////////////////////////////////////////////////////////////////////////
-#include <map>
-#include <deque>
-#include <string>
-
-#include <boost/lambda/lambda.hpp>
-
-#include <boost/assign/v2/put/pipe.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
-#include <boost/assign/v2/put/ext/lookup.hpp>
-#include <boost/assign/v2/put/ext/repeat.hpp>
-#include <boost/assign/v2/put/ext/iterate.hpp>
-#include <libs/assign/v2/test/put/pipe/ext.h>
-
-namespace test_assign_v2{
-namespace xxx_put{
-namespace xxx_pipe{
-namespace xxx_ext{
-
- void test(){
-
- // This test is also about string literals
-
- namespace as2 = boost::assign::v2;
- namespace bl = boost::lambda;
- typedef std::string str_;
- {
- std::map<str_,int> cont;
- cont["x"] = -1; cont["y"] = 0; cont["z"] = 1;
- cont | (
- as2::_csv_put % ( as2::_lookup = ( bl::_1 +=2 ) )
- )( "z", "x", "y" );
- BOOST_ASSIGN_V2_CHECK( cont["y"] == 2 );
- BOOST_ASSIGN_V2_CHECK( cont["x"] == 1 );
- BOOST_ASSIGN_V2_CHECK( cont["z"] == 3 );
- }
- {
- std::deque<const char*> cont;
- cont | as2::_put( "x" )( "y" )( "z" );
- //]
- BOOST_ASSIGN_V2_CHECK( str_( cont[0] ) == "x" );
- BOOST_ASSIGN_V2_CHECK( str_( cont[1] ) == "y" );
- BOOST_ASSIGN_V2_CHECK( str_( cont[2] ) == "z" );
- }
- {
- std::deque<int> cont;
- cont | (
- as2::_csv_put % ( as2::_repeat = 2 )
- )( -1, 0, 1 );
- BOOST_ASSIGN_V2_CHECK( cont[0] == -1 );
- BOOST_ASSIGN_V2_CHECK( cont[1] == -1 );
- BOOST_ASSIGN_V2_CHECK( cont[2] == 0 );
- BOOST_ASSIGN_V2_CHECK( cont[3] == 0 );
- BOOST_ASSIGN_V2_CHECK( cont[4] == 1 );
- BOOST_ASSIGN_V2_CHECK( cont[5] == 1 );
- }
- {
- std::deque<int> cont(3);
- cont[0] = -1;
- cont | (
- as2::_csv_put % ( as2::_iterate = 1 )
- )( 0, 1 );
- BOOST_ASSIGN_V2_CHECK( cont[0] == -1 );
- BOOST_ASSIGN_V2_CHECK( cont[1] == 0 );
- BOOST_ASSIGN_V2_CHECK( cont[2] == 1 );
- }
- }
-
-}// xxx_ext
-}// xxx_pipe
-}// xxx_put
-}// xxx_test_assign
+// TODO remove file
\ No newline at end of file

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.h
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.h (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/ext.h 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -1,25 +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 LIBS_ASSIGN_V2_TEST_PUT_PIPE_EXT_ER_2010_H
-#define LIBS_ASSIGN_V2_TEST_PUT_PIPE_EXT_ER_2010_H
-
-namespace test_assign_v2{
-namespace xxx_put{
-namespace xxx_pipe{
-namespace xxx_ext{
-
- void test();
-
-}// xxx_ext
-}// xxx_pipe
-}// xxx_put
-}// xxx_test_assign
-
-#endif
+// TODO remove file
\ No newline at end of file

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -10,6 +10,9 @@
 #include <libs/assign/v2/test/put/pipe/functor/container.h>
 #include <libs/assign/v2/test/put/pipe/functor/forward.h>
 #include <libs/assign/v2/test/put/pipe/functor/rhs.h>
+#include <libs/assign/v2/test/put/pipe/functor/fun.h>
+#include <libs/assign/v2/test/put/pipe/functor/std.h>
+#include <libs/assign/v2/test/put/pipe/functor/str_literal.h>
 #include <libs/assign/v2/test/put/pipe/functor.h>
 
 namespace test_assign_v2{
@@ -21,6 +24,9 @@
         xxx_container::test();
         xxx_forward::test();
         xxx_rhs::test();
+ xxx_fun::test();
+ xxx_std::test();
+ xxx_str_literal::test();
     }
 
 }// xxx_functor

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/container.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/container.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/container.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -16,7 +16,7 @@
 #include <stack>
 #include <vector>
 #include <string>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/pipe/functor.hpp>
 
 #include <libs/assign/v2/test/put/pipe/functor/container.h>

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/forward.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/forward.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/forward.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -10,7 +10,7 @@
 #include <deque>
 #include <vector>
 #include <string>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/ref/list_tuple/container.hpp>
 #include <boost/assign/v2/put/container/functor.hpp>
 #include <boost/assign/v2/put/pipe/functor/forward.hpp>

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/rhs.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/rhs.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/functor/rhs.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -10,8 +10,8 @@
 #include <string>
 #include <boost/mpl/int.hpp>
 #include <boost/typeof/typeof.hpp>
-#include <boost/assign/v2/detail/checking/equal.hpp>
-#include <boost/assign/v2/detail/checking/constants.hpp>
+#include <boost/assign/v2/detail/check/equal_val.hpp>
+#include <boost/assign/v2/detail/check/equal_ref.hpp>
 #include <boost/assign/v2/put/ext/repeat.hpp>
 #include <boost/assign/v2/put/pipe/functor.hpp>
 #include <libs/assign/v2/test/put/pipe/functor/rhs.h>
@@ -69,7 +69,7 @@
                 )
             );
             
- namespace chk = as2::checking;
+ namespace chk = as2::check_aux;
             typedef chk::equal_ref r_;
             typedef chk::equal_val v_;
             

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/modulo.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/modulo.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/modulo.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -10,7 +10,7 @@
 #include <list>
 #include <boost/mpl/vector/vector10.hpp>
 #include <boost/assign/v2/detail/functor/identity.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/std/push_front.hpp>
 #include <boost/assign/v2/put/container.hpp>
 #include <boost/assign/v2/put/modulo/fun.hpp>

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/range.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/range.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/range.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -11,7 +11,7 @@
 #include <stack>
 #include <vector>
 #include <boost/array.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/put/pipe/range.hpp>
 
 #include <libs/assign/v2/test/put/pipe/range.h>
@@ -40,11 +40,11 @@
         }
                 {
                 //[range_stack
- typedef std::stack<T> cont_;
+ typedef std::stack<T> lifo_;
                     BOOST_ASSIGN_V2_CHECK(
                     (
- ::boost::type<cont_>() | as2::_put_range( r )
- ).top() == x
+ ::boost::type<lifo_>() | as2::_put_range( r )
+ ).top() == z
             );
             //]
         }

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -1,152 +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) //
-//////////////////////////////////////////////////////////////////////////////
-#include <boost/array.hpp>
-#include <deque>
-#include <list>
-#include <map>
-#include <queue>
-#include <set>
-#include <stack>
-#include <vector>
-
-#include <boost/assign/v2/detail/checking/container.hpp>
-#include <boost/assign/v2/detail/checking/constants.hpp>
-#include <boost/assign/v2/put/pipe/functor.hpp>
-#include <boost/assign/v2/put/pipe/csv.hpp>
-
-#include <libs/assign/v2/test/put/pipe/stl.h>
-
-namespace test_assign_v2{
-namespace xxx_put{
-namespace xxx_pipe{
-namespace xxx_stl{
-
- void test(){
- using namespace boost::assign::v2;
- using namespace checking::container;
- using namespace checking::constants;
- { // Array
-
- typedef boost::array<int,8> cont_;
- {
- cont_ cont;
- do_check(
- cont | _put( a )( b )( c )( d )( e )( f )( g )( h )
- );
- }
- {
- cont_ cont;
- do_check(
- cont | _csv_put( a, b, c, d, e, f, g, h )
- );
- }
- }
- { // Associative
- {
- typedef std::map<int, int> cont_;
- cont_ cont;
- {
- do_check(
- cont |
- _put( a, a )( b, b )( c, c )
- ( d, d )( e, e )( f, f )
- ( g, g )( h, h )
- );
- }
- }// map
- {
- typedef std::set<int> cont_;
- {
- cont_ cont;
- do_check(
- cont |
- _put( a )( b )( c )
- ( d )( e )( f )
- ( g )( h )
- );
- }
- {
- cont_ cont;
- do_check( cont | _csv_put( a, b, c, d, e, f, g, h ) );
- }
- }// map
- }// Associative
- {
- // Sequence
- {
- typedef std::deque<int> cont_;
- {
- cont_ cont;
- do_check(
- cont | _put( a )( b )( c )( d )( e )( f )( g )( h )
- );
- }
- {
- cont_ cont;
- do_check( cont | _csv_put( a, b, c, d, e, f, g, h ) );
- }
- }// deque
- {
- typedef std::list<int> cont_;
- {
- cont_ cont;
- do_check(
- cont | _put( a )( b )( c )( d )( e )( f )( g )( h )
- );
- }
- }// list
- {
- typedef std::vector<int> cont_;
- {
- cont_ cont;
- do_check(
- cont |
- _put( a )( b )( c )( d )( e )( f )( g )( h )
- );
- }
- }// vector
- } // Sequence
- {
- // Push
- {
- typedef std::queue<int> cont_;
- {
- cont_ cont;
- do_check(
- cont |
- _put( a )( b )( c )( d )( e )( f )( g )( h )
- );
- }
- {
- cont_ cont;
- do_check( cont | _csv_put( a, b, c, d, e, f, g, h ) );
- }
- }// queue
- // Push
- {
- typedef std::stack<int> cont_;
- {
- cont_ cont;
- do_check(
- cont | _put( a )( b )( c )( d )( e )( f )( g )( h )
- );
- }
- {
- cont_ cont;
- do_check( cont | _csv_put( a, b, c, d, e, f, g, h ) );
- }
- }// queue
- }// Push
- }// test()
-
-}// xxx_stl
-}// xxx_pipe
-}// xxx_put
-}// xxx_test_assign
+// TODO remove file
\ No newline at end of file

Modified: sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.h
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.h (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/pipe/stl.h 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -1,25 +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 LIBS_ASSIGN_V2_TEST_PUT_PIPE_STL_ER_2010_H
-#define LIBS_ASSIGN_V2_TEST_PUT_PIPE_STL_ER_2010_H
-
-namespace test_assign_v2{
-namespace xxx_put{
-namespace xxx_pipe{
-namespace xxx_stl{
-
- void test();
-
-}// xxx_stl
-}// xxx_pipe
-}// xxx_put
-}// xxx_test_assign
-
-#endif
+// TODO remove file
\ No newline at end of file

Modified: sandbox/assign_v2/libs/assign/v2/test/put/ptr.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/ptr.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/ptr.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,83 +7,16 @@
 // 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 <string>
-
-#include <boost/ptr_container/ptr_array.hpp>
-#include <boost/ptr_container/ptr_deque.hpp>
-#include <boost/ptr_container/ptr_list.hpp>
-#include <boost/ptr_container/ptr_map.hpp>
-#include <boost/ptr_container/ptr_set.hpp>
-#include <boost/ptr_container/ptr_vector.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
-#include <boost/assign/v2/put/container.hpp>
-
+#include <libs/assign/v2/test/put/ptr/functor.h>
 #include <libs/assign/v2/test/put/ptr.h>
 
 namespace test_assign_v2{
 namespace xxx_put{
 namespace xxx_ptr{
 
- void test(){
- namespace as2 = boost::assign::v2;
- {
- //[array
- typedef int T;
- T x = 1, y = 2, z = 3;
- boost::ptr_array<T, 3> ar;
- as2::put( ar )( x )( y )( z );
- BOOST_ASSIGN_V2_CHECK( ar[0] == x );
- BOOST_ASSIGN_V2_CHECK( ar[2] == z );
- //]
- }
- {
- //[map
-/* // TODO
- boost::ptr_map<std::string, int> assoc;
- as2::put( assoc )( "jan", 31 )( "feb", 28 )( "mar", 31 );
- BOOST_ASSIGN_V2_CHECK( assoc["feb"] == 28 );
-*/
- //]
- }
- {
- //[set
-/* // TODO
- typedef std::string T;
- boost::ptr_set<T> assoc;
- T x = "isomer", y = "ephemeral", z = "prosaic";
- as2::put( assoc )( x )( y )( z );
- BOOST_ASSIGN_V2_CHECK( assoc.count( x ) == 1 );
- BOOST_ASSIGN_V2_CHECK( assoc.count( z ) == 1 );
-*/
- //]
- }
- {
- //[deque
- typedef int T; T x = 1, y = 2, z = 0;
- boost::ptr_deque<T> seq;
- as2::put( seq )( x )( y )( z );
- BOOST_ASSIGN_V2_CHECK( seq.front() == x );
- BOOST_ASSIGN_V2_CHECK( seq.back() == z );
- //]
- }
- {
- //[list
- typedef int T; T x = 1, y = 2, z = 0;
- boost::ptr_list<T> seq;
- ( as2::put( seq ) )( x )( y )( z );
- BOOST_ASSIGN_V2_CHECK( seq.front() == x );
- BOOST_ASSIGN_V2_CHECK( seq.back() == z );
- //]
- }
- {
- //[vector
- typedef int T; T x = 1, y = 2, z = 0;
- boost::ptr_vector<T> seq;
- as2::put( seq )( x )( y )( z );
- BOOST_ASSIGN_V2_CHECK( seq.front() == x );
- BOOST_ASSIGN_V2_CHECK( seq.back() == z );
- //]
- }
+ void test()
+ {
+ xxx_functor::test();
     }// test
   
 }// xxx_ptr

Modified: sandbox/assign_v2/libs/assign/v2/test/put/std.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/put/std.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/put/std.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,10 +7,7 @@
 // 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 <boost/assign/v2/detail/checking/check.hpp>
-#include <boost/assign/v2/put/std/push_front.hpp>
-#include <boost/assign/v2/put/container.hpp>
+#include <libs/assign/v2/test/put/std/functor.h>
 #include <libs/assign/v2/test/put/std.h>
 
 namespace test_assign_v2{
@@ -19,20 +16,7 @@
 
     void test()
     {
- namespace as2 = boost::assign::v2;
-
- /* Only have to check those that are in /std which are not in
- /deduce/dependee.hpp */
-
- {
- //[std_deque
- typedef int T; T x = 0, y = 2, z = 1;
- std::deque<T> seq;
- ( as2::put( seq ) % as2::_push_front )( x )( y )( z );
- BOOST_ASSIGN_V2_CHECK( seq[0] == z );
- BOOST_ASSIGN_V2_CHECK( seq[2] == x );
- //]
- }
+ xxx_functor::test();
     }
 
 }// xxx_std

Modified: sandbox/assign_v2/libs/assign/v2/test/ref.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/ref.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/ref.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -22,7 +22,7 @@
     
         xxx_array::test();
         xxx_convert_traits::test();
- xxx_csv_array::test();
+ xxx_array::test();
         xxx_list::test();
         xxx_list_tuple::test();
         xxx_wrapper::test();

Modified: sandbox/assign_v2/libs/assign/v2/test/ref/array.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/ref/array.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/ref/array.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,23 +7,8 @@
 // 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 <list>
-#include <map>
-#include <queue>
-#include <set>
-#include <stack>
-#include <vector>
-#include <boost/mpl/int.hpp>
-#include <boost/mpl/empty_base.hpp>
-#include <boost/range/begin.hpp>
-#include <boost/range/algorithm/copy.hpp>
-#include <boost/typeof/typeof.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
-#include <boost/assign/v2/detail/checking/constants.hpp>
-#include <boost/assign/v2/detail/checking/container.hpp>
-#include <boost/assign/v2/ref/array/functor.hpp>
-#include <boost/assign/v2/ref/wrapper.hpp>
+#include <libs/assign/v2/test/ref/array/functor.h>
+#include <libs/assign/v2/test/ref/array/csv.h>
 #include <libs/assign/v2/test/ref/array.h>
 
 namespace test_assign_v2{
@@ -32,49 +17,8 @@
 
     void test()
     {
- namespace as2 = boost::assign::v2;
- {
- // Array
- typedef as2::ref::nth_result_of::array<8, int const>::type ar_;
- using namespace as2::checking::constants;
- ar_ ar = as2::ref::array( a )( b )( c )( d )( e )( f )( g )( h );
- {
-
- typedef as2::container_tag::array tag_;
- namespace ns = as2::checking::container;
- as2::checking::do_check(tag_(), ar );
- }
- }
- {
- // Assignement of references
- int a1, b1, c1, d1, e1, f1, g1, h1;
- typedef std::vector<int> vec_;
- vec_ vec;
- {
- using namespace as2::checking::constants;
- vec.push_back( a );
- vec.push_back( b );
- vec.push_back( c );
- vec.push_back( d );
- vec.push_back( e );
- vec.push_back( f );
- vec.push_back( g );
- vec.push_back( h );
- }
- boost::copy(
- vec,
- boost::begin(
- as2::ref::array( a1 )( b1 )( c1 )( d1 )
- ( e1 )( f1 )( g1 )( h1 ) | as2::ref::_get
- )
- );
- {
- namespace ns = as2::checking::container;
- ns::do_check( as2::ref::array<int const>
- ( a1 )( b1 )( c1 )( d1 )( e1 )( f1 )( g1 )( h1 )
- );
- }
- }
+ xxx_functor::test();
+ xxx_csv::test();
     }
 
 }// xxx_array

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-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -1,87 +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) //
-//////////////////////////////////////////////////////////////////////////////
-#include <vector>
-#include <boost/mpl/int.hpp>
-#include <boost/mpl/empty_base.hpp>
-#include <boost/range/begin.hpp>
-#include <boost/range/algorithm/copy.hpp>
-#include <boost/typeof/typeof.hpp>
-#include <boost/assign/v2/detail/checking/constants.hpp>
-#include <boost/assign/v2/detail/checking/range.hpp>
-#include <boost/assign/v2/detail/checking/array.hpp>
-#include <boost/assign/v2/ref/array/csv.hpp>
-#include <boost/assign/v2/ref/wrapper.hpp>
-#include <libs/assign/v2/test/ref/csv_array.h>
-
-namespace test_assign_v2{
-namespace xxx_ref{
-namespace xxx_csv_array{
-
- void test()
- {
- namespace as2 = boost::assign::v2;
- typedef as2::ref::assign_tag::copy copy_;
-
- using namespace as2::checking::constants;
- {
- typedef as2::ref::nth_result_of::csv_array<8, int const>::type ar_;
- using namespace as2::checking::constants;
- ar_ ar = as2::ref::csv_array( a , b , c , d , e , f , g , h );
- {
- typedef as2::container_tag::array tag_;
- as2::checking::do_check(tag_(), ar );
- }
- {
- namespace ns = as2::checking::iterator;
- ns::do_check( boost::begin( ar ) );
- }
- {
- typedef as2::container_tag::range tag_;
- as2::checking::do_check(tag_(), ar );
- }
- }
- {
- int a1, b1, c1, d1, e1, f1, g1, h1;
- typedef std::vector<int> vec_;
- vec_ vec;
- {
- using namespace as2::checking::constants;
- vec.push_back( a );
- vec.push_back( b );
- vec.push_back( c );
- vec.push_back( d );
- vec.push_back( e );
- vec.push_back( f );
- vec.push_back( g );
- vec.push_back( h );
- }
- boost::copy(
- vec,
- boost::begin(
- as2::ref::csv_array(
- a1 , b1 , c1 , d1 , e1 , f1 , g1 , h1
- ) | as2::ref::_get
- )
- );
- {
- typedef as2::container_tag::array tag_;
- as2::checking::do_check(
- tag_(),
- as2::ref::csv_array<int const>(
- a1 , b1 , c1 , d1 , e1 , f1 , g1 , h1
- )
- );
- }
- }
- }
-
-}// xxx_csv_array
-}// xxx_ref
-}// test_assign
+// TODO remove file
\ No newline at end of file

Modified: sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.h
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.h (original)
+++ sandbox/assign_v2/libs/assign/v2/test/ref/csv_array.h 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -1,24 +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_TEST_REF_CSV_ARRAY_ER_2010_H
-#define BOOST_ASSIGN_V2_TEST_REF_CSV_ARRAY_ER_2010_H
-
-namespace test_assign_v2{
-namespace xxx_ref{
-namespace xxx_csv_array{
-
- void test();
-
-}// xxx_csv_array
-}// xxx_ref
-}// test_assign
-
-#endif
-
+// TODO remove file
\ No newline at end of file

Modified: sandbox/assign_v2/libs/assign/v2/test/ref/list.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/ref/list.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/ref/list.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -14,7 +14,7 @@
 #include <boost/mpl/vector/vector0.hpp>
 #include <boost/mpl/vector/vector10.hpp>
 #include <boost/array.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/ref/wrapper/copy.hpp>
 #include <boost/assign/v2/ref/list.hpp>
 #include <boost/type_traits/add_reference.hpp>

Modified: sandbox/assign_v2/libs/assign/v2/test/ref/wrapper.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/ref/wrapper.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/ref/wrapper.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -9,7 +9,7 @@
 //////////////////////////////////////////////////////////////////////////////
 #include <boost/mpl/assert.hpp>
 #include <boost/assign/v2/ref/wrapper.hpp>
-#include <boost/assign/v2/detail/checking/check.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
 #include <boost/assign/v2/detail/config/enable_cpp0x.hpp>
 #include <libs/assign/v2/test/ref/wrapper.h>
 

Modified: sandbox/assign_v2/libs/assign/v2/test/unit_testing/Jamfile.v2
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/unit_testing/Jamfile.v2 (original)
+++ sandbox/assign_v2/libs/assign/v2/test/unit_testing/Jamfile.v2 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -17,8 +17,8 @@
 
 test-suite assign :
     [ assign-test detail ]
- [ assign-test put ]
     [ assign-test ref ]
+ [ assign-test put ]
     [ assign-test utility ]
 ;
 

Modified: sandbox/assign_v2/libs/assign/v2/test/unit_testing/put.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/unit_testing/put.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/unit_testing/put.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -17,23 +17,35 @@
 
 #include <libs/assign/v2/test/put/deduce.cpp>
 #include <libs/assign/v2/test/put/modulo.cpp>
+
 #include <libs/assign/v2/test/put/container/functor.cpp>
 #include <libs/assign/v2/test/put/container/csv.cpp>
 #include <libs/assign/v2/test/put/container/range.cpp>
-#include <libs/assign/v2/test/put/std.cpp>
-#include <libs/assign/v2/test/put/ext.cpp>
-#include <libs/assign/v2/test/put/ptr.cpp>
-#include <libs/assign/v2/test/put/deque.cpp>
 
-#include <libs/assign/v2/test/put/pipe/modulo.cpp>
-#include <libs/assign/v2/test/put/pipe/functor/rhs.cpp>
-#include <libs/assign/v2/test/put/pipe/functor/forward.cpp>
+#include <libs/assign/v2/test/put/std/functor.cpp>
+#include <libs/assign/v2/test/put/ext/functor.cpp>
+#include <libs/assign/v2/test/put/ptr/functor.cpp>
+
+#include <libs/assign/v2/test/put/deque/modulo.cpp>
+#include <libs/assign/v2/test/put/deque/functor.cpp>
+#include <libs/assign/v2/test/put/deque/csv.cpp>
+#include <libs/assign/v2/test/put/deque/std.cpp>
+
 #include <libs/assign/v2/test/put/pipe/functor/container.cpp>
-#include <libs/assign/v2/test/put/pipe/csv/rhs.cpp>
+#include <libs/assign/v2/test/put/pipe/functor/forward.cpp>
+#include <libs/assign/v2/test/put/pipe/functor/rhs.cpp>
+#include <libs/assign/v2/test/put/pipe/functor/fun.cpp>
+#include <libs/assign/v2/test/put/pipe/functor/std.cpp>
+#include <libs/assign/v2/test/put/pipe/functor/str_literal.cpp>
+
 #include <libs/assign/v2/test/put/pipe/csv/container.cpp>
-#include <libs/assign/v2/test/put/pipe/ext.cpp>
-#include <libs/assign/v2/test/put/pipe/range.cpp>
+#include <libs/assign/v2/test/put/pipe/csv/rhs.cpp>
+#include <libs/assign/v2/test/put/pipe/csv/fun.cpp>
+#include <libs/assign/v2/test/put/pipe/csv/std.cpp>
+#include <libs/assign/v2/test/put/pipe/csv/ext.cpp>
 
+#include <libs/assign/v2/test/put/pipe/modulo.cpp>
+#include <libs/assign/v2/test/put/pipe/range.cpp>
 
 #include <boost/test/unit_test.hpp>
 using boost::unit_test::test_suite;
@@ -45,22 +57,33 @@
             namespace ns = xxx_put;
                 test->add( BOOST_TEST_CASE( &ns::xxx_deduce::test ) );
                 test->add( BOOST_TEST_CASE( &ns::xxx_modulo::test ) );
+
+
                 test->add( BOOST_TEST_CASE( &ns::xxx_container::xxx_functor::test ) );
                 test->add( BOOST_TEST_CASE( &ns::xxx_container::xxx_csv::test ) );
                 test->add( BOOST_TEST_CASE( &ns::xxx_container::xxx_range::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_std::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_ext::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_ptr::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_deque::test ) );
+
+ test->add( BOOST_TEST_CASE( &ns::xxx_std::xxx_functor::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_ext::xxx_functor::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_ptr::xxx_functor::test ) );
+
+ test->add( BOOST_TEST_CASE( &ns::xxx_deque::xxx_modulo::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_deque::xxx_functor::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_deque::xxx_csv::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_deque::xxx_std::test ) );
 
- test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_modulo::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_rhs::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_forward::test ) );
                 test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_container::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_csv::xxx_rhs::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_forward::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_rhs::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_fun::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_std::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_functor::xxx_str_literal::test ) );
+
                 test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_csv::xxx_container::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_ext::test ) );
- test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_range::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_csv::xxx_rhs::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_csv::xxx_fun::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_csv::xxx_std::test ) );
+ test->add( BOOST_TEST_CASE( &ns::xxx_pipe::xxx_csv::xxx_ext::test ) );
     }
     return test;
 }

Modified: sandbox/assign_v2/libs/assign/v2/test/unit_testing/ref.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/unit_testing/ref.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/unit_testing/ref.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -18,8 +18,8 @@
 #include <libs/assign/v2/test/ref/wrapper.cpp>
 #include <libs/assign/v2/test/ref/list.cpp>
 #include <libs/assign/v2/test/ref/list_tuple.cpp>
-#include <libs/assign/v2/test/ref/array.cpp>
-#include <libs/assign/v2/test/ref/csv_array.cpp>
+#include <libs/assign/v2/test/ref/array/functor.cpp>
+#include <libs/assign/v2/test/ref/array/csv.cpp>
 
 #include <boost/test/unit_test.hpp>
 using boost::unit_test::test_suite;
@@ -33,8 +33,8 @@
                 test->add( BOOST_TEST_CASE( &xxx_wrapper::test ) );
                 test->add( BOOST_TEST_CASE( &xxx_list::test ) );
                 test->add( BOOST_TEST_CASE( &xxx_list_tuple::test ) );
- test->add( BOOST_TEST_CASE( &xxx_array::test ) );
- test->add( BOOST_TEST_CASE( &xxx_csv_array::test ) );
+ test->add( BOOST_TEST_CASE( &xxx_array::xxx_functor::test ) );
+ test->add( BOOST_TEST_CASE( &xxx_array::xxx_csv::test ) );
     }
     return test;
 }

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-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -7,21 +7,58 @@
 // 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 <iterator>
+#include <vector>
+#include <list>
+#include <boost/next_prior.hpp>
+#include <boost/range/begin.hpp>
+#include <boost/range/end.hpp>
+#include <boost/range/algorithm/copy.hpp>
+#include <boost/range/algorithm/equal.hpp>
 #include <boost/assign/v2/utility/chain/check.hpp>
+#include <boost/assign/v2/utility/chain.hpp>
 #include <libs/assign/v2/test/utility/chain.h>
 
 namespace test_assign_v2{
 namespace xxx_utility{
 namespace xxx_chain{
 
+
     void test()
     {
             namespace as2 = boost::assign::v2;
- namespace ns = as2::checking::chain;
- ns::do_check<int>();
- ns::do_check<double>();
- }
+ {
+ namespace ns = as2::check_chain_aux;
+ { typedef int T; ns::static_<T>(); ns::static_<T>(); }
+ { typedef double T; ns::static_<T>(); ns::static_<T>(); }
+ }
+ {
+ //[chain_r
+ typedef int T;
+ boost::array<T, 2> ar; ar[0] = 0; ar[1] = 1;
+ std::list<T> list; list.push_back( 2 ); list.push_back( 3 );
+ std::vector<T> v( boost::begin( ar ), boost::end( ar ) );
+ boost::copy( list, std::back_inserter( v ) );
+ BOOST_ASSIGN_V2_CHECK(
+ boost::range::equal( v, ar | as2::_chain( list ) )
+ );
+ //]
+ }
+ {
+ //[chain_w
+ typedef int T; std::vector<T> v( 4 );
+ v[0] = 1; v[1] = 2; v[2] = 0; v[3] = 5;
+ boost::array<T, 2> ar; std::list<T> list( v.size() - ar.size() );
+ boost::copy( v, boost::begin( ar | as2::_chain( list ) ) );
+ BOOST_ASSIGN_V2_CHECK( ar[0] == v[0] );
+ BOOST_ASSIGN_V2_CHECK( ar[1] == v[1] );
+ BOOST_ASSIGN_V2_CHECK( list.front() == v[2] );
+ BOOST_ASSIGN_V2_CHECK( list.back() == v[3] );
+ //]
+ }
 
+ }// test
+
 }// xxx_chain
 }// xxx_utility
 }// test_assign_v2

Modified: sandbox/assign_v2/libs/assign/v2/test/utility/convert.cpp
==============================================================================
--- sandbox/assign_v2/libs/assign/v2/test/utility/convert.cpp (original)
+++ sandbox/assign_v2/libs/assign/v2/test/utility/convert.cpp 2011-02-19 05:56:09 EST (Sat, 19 Feb 2011)
@@ -8,7 +8,10 @@
 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
 //////////////////////////////////////////////////////////////////////////////
 #include <vector>
-#include <boost/assign/v2/detail/checking/container.hpp>
+#include <stack>
+#include <boost/array.hpp>
+#include <boost/assign/v2/detail/config/check.hpp>
+#include <boost/assign/v2/utility/convert.hpp>
 #include <boost/assign/v2/utility/convert/check.hpp>
 #include <libs/assign/v2/test/utility/convert.h>
 
@@ -19,24 +22,34 @@
     void test()
     {
             namespace as2 = boost::assign::v2;
- namespace ns = as2::checking::convert;
-
- std::vector<int> v;
- {
- using namespace as2::checking::constants;
- v.push_back( a );
- v.push_back( b );
- v.push_back( c );
- v.push_back( d );
- v.push_back( e );
- v.push_back( f );
- v.push_back( g );
- v.push_back( h );
+ namespace ns = as2::check_aux;
+
+ {
+ // containers developed in this library are tested in conjunction
+ // with converter() in their respective directories
+ }
+ {
+ //[convert_inpl
+ std::vector<int> v( 3 ); v[0] = 1; v[1] = 2; v[2] = 0;
+ typedef boost::array<int, 3> ar_;
+ BOOST_ASSIGN_V2_CHECK(
+ ( as2::converter( v ).type<ar_>() )[1] == v[1]
+ );
+ //]
+ BOOST_ASSIGN_V2_CHECK(
+ ( as2::converter( v ).type<ar_>() )[0] == v[0]
+ );
+ BOOST_ASSIGN_V2_CHECK(
+ ( as2::converter( v ).type<ar_>() )[2] == v[2]
+ );
+ }
+ {
+ //[convert_copy
+ std::vector<int> v( 3 ); v[0] = -1; v[1] = 0; v[2] = 1;
+ std::stack<int> lifo = as2::converter( v );
+ BOOST_ASSIGN_V2_CHECK( lifo.top() == 1 );
+ //]
         }
-
- // Any range will do, so need to check, say, csv_deque
- ns::do_check( v );
-
     }
         
 }// xxx_convert


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