...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
namespace boost { namespace sort { namespace spreadsort { template<typename RandomAccessIter> boost::enable_if_c< std::numeric_limits< typename std::iterator_traits< RandomAccessIter >::value_type >::is_integer, void >::type spreadsort(RandomAccessIter, RandomAccessIter); template<typename RandomAccessIter> boost::enable_if_c< !std::numeric_limits< typename std::iterator_traits< RandomAccessIter >::value_type >::is_integer &&std::numeric_limits< typename std::iterator_traits< RandomAccessIter >::value_type >::is_iec559, void >::type spreadsort(RandomAccessIter, RandomAccessIter); template<typename RandomAccessIter> boost::enable_if_c< is_same< typename std::iterator_traits< RandomAccessIter >::value_type, typename std::string >::value, void >::type spreadsort(RandomAccessIter, RandomAccessIter); template<typename RandomAccessIter> boost::enable_if_c< is_same< typename std::iterator_traits< RandomAccessIter >::value_type, typename std::wstring >::value &&sizeof(wchar_t)==2, void >::type spreadsort(RandomAccessIter, RandomAccessIter); template<typename Range> void spreadsort(Range &); } } }