Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.

Class template join

boost::unit_test::data::monomorphic::join — Defines a new dataset from the concatenation of two datasets.


// In header: <boost/test/data/monomorphic/join.hpp>

template<typename DataSet1, typename DataSet2> 
class join {
  // types
  typedef dataset1_decay::sample sample;

  // member classes/structs/unions

  struct iterator {
    // construct/copy/destruct
    explicit iterator(dataset1_iter, dataset2_iter, data::size_t);

    // public member functions
    sample const & operator*() const;
    void operator++();

  enum @9 { arity = = dataset1_decay::arity };

  // construct/copy/destruct
  join(DataSet1 &&, DataSet2 &&);
  join(join &&);

  // public member functions
  data::size_t size() const;
  iterator begin() const;


The size of the resulting dataset is the sum of the two underlying datasets. The arity of the datasets should match.

join public construct/copy/destruct

  1. join(DataSet1 && ds1, DataSet2 && ds2);
  2. join(join && j);
    Move constructor.

join public member functions

  1. data::size_t size() const;
    dataset interface
  2. iterator begin() const;