...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::unit_test::data::monomorphic::grid — Implements the dataset resulting from a cartesian product/grid operation on datasets.
// In header: <boost/test/data/monomorphic/grid.hpp> template<typename DataSet1, typename DataSet2> class grid { public: // member classes/structs/unions struct iterator { // types typedef decltype(sample_merge(*std::declval< dataset1_iter >(),*std::declval< dataset2_iter >())) iterator_sample; // construct/copy/destruct explicit iterator(dataset1_iter, DataSet2 const &); // public member functions auto operator*() const; void operator++(); }; enum @7 { arity = = boost::decay<DataSet1>::type::arity + boost::decay<DataSet2>::type::arity }; // construct/copy/destruct grid(DataSet1 &&, DataSet2 &&); grid(grid &&); // public member functions data::size_t size() const; iterator begin() const; };
The arity of the resulting dataset is the sum of the arity of its operands.
grid
public
construct/copy/destructgrid(DataSet1 && ds1, DataSet2 && ds2);Constructor.
grid(grid && j);Move constructor.