...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Defines dataset join operation.
namespace boost { namespace unit_test { namespace data { namespace monomorphic { template<typename DataSet1, typename DataSet2> class join; template<typename DataSet1, typename DataSet2> struct is_dataset<join< DataSet1, DataSet2 >>; template<typename DataSet1, typename DataSet2> boost::lazy_enable_if_c< is_dataset< DataSet1 >::value &&is_dataset< DataSet2 >::value, result_of::join< mpl::identity< DataSet1 >, mpl::identity< DataSet2 > >>::type operator+(DataSet1 && ds1, DataSet2 && ds2); template<typename DataSet1, typename DataSet2> boost::lazy_enable_if_c< is_dataset< DataSet1 >::value &&!is_dataset< DataSet2 >::value, result_of::join< mpl::identity< DataSet1 >, data::result_of::make< DataSet2 > >>::type operator+(DataSet1 && ds1, DataSet2 && ds2); template<typename DataSet1, typename DataSet2> boost::lazy_enable_if_c<!is_dataset< DataSet1 >::value &&is_dataset< DataSet2 >::value, result_of::join< data::result_of::make< DataSet1 >, mpl::identity< DataSet2 > >>::type operator+(DataSet1 && ds1, DataSet2 && ds2); namespace result_of { template<typename DataSet1Gen, typename DataSet2Gen> struct join; } } } } }