...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::bt_iterator_traits<T, true>
// In header: <boost/test/utils/is_forward_iterable.hpp> template<typename T> struct bt_iterator_traits<T, true> { // types typedef T::const_iterator const_iterator; typedef T::value_type value_type; // public member functions BOOST_STATIC_ASSERT((is_forward_iterable< T >::value)); // public static functions static const_iterator begin(T const &); static const_iterator end(T const &); static std::size_t size(T const &); };