Boost C++ Libraries

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

PrevUpHomeNext

Header <boost/test/data/monomorphic/zip.hpp>

Defines monomorphic dataset based on zipping of 2 other monomorphic datasets.

namespace boost {
  namespace unit_test {
    namespace data {
      namespace monomorphic {
        template<typename DataSet1, typename DataSet2> class zip;

        template<typename DataSet1, typename DataSet2> 
          struct is_dataset<zip< DataSet1, DataSet2 >>;
        // <purpose>Overload operator for zip support. </purpose>
        template<typename DataSet1, typename DataSet2> 
          boost::lazy_enable_if_c< is_dataset< DataSet1 >::value &&is_dataset< DataSet2 >::value, result_of::zip< 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::zip< 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::zip< data::result_of::make< DataSet1 >, mpl::identity< DataSet2 > >>::type 
          operator^(DataSet1 && ds1, DataSet2 && ds2);
        namespace result_of {
          template<typename DS1Gen, typename DS2Gen> struct zip;
        }
      }
    }
  }
}

PrevUpHomeNext