...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Forward declares monomorphic datasets interfaces.
BOOST_TEST_ENABLE_IF
namespace boost { namespace unit_test { namespace data { monomorphic::array< typename boost::remove_const< T >::type > make; template<typename DataSet> BOOST_TEST_ENABLE_IF< monomorphic::is_dataset< DataSet >::value, DataSet >::type make(DataSet &&); template<typename T> BOOST_TEST_ENABLE_IF<!is_forward_iterable< T >::value &&!monomorphic::is_dataset< T >::value &&!boost::is_array< typename boost::remove_reference< T >::type >::value, monomorphic::singleton< T > >::type make(T &&); template<typename C> BOOST_TEST_ENABLE_IF< is_forward_iterable< C >::value, monomorphic::collection< C > >::type make(C &&); template<typename T, std::size_t size> monomorphic::array< typename boost::remove_const< T >::type > make(T(&)); template<typename T, std::size_t size> monomorphic::array< typename boost::remove_const< T >::type > make(T a); monomorphic::singleton< char * > make(char * str); monomorphic::singleton< char const * > make(char const * str); namespace monomorphic { template<typename DataSet> struct is_dataset; template<typename DataSet> struct is_dataset<DataSet &>; template<typename DataSet> struct is_dataset<DataSet const>; } namespace result_of { template<typename DataSet> struct make; } } } }