fix iterator distance implementation and adapt-interface

This commit is contained in:
bolero-MURAKAMI 2012-09-26 18:42:43 +09:00
parent a4c7df65e0
commit aec15c55a8
15 changed files with 194 additions and 154 deletions

View file

@ -387,11 +387,11 @@ namespace sprout {
}
//
// distance
// iterator_distance
//
template<typename UnaryOrBinaryFunction, typename LIterator, typename RIterator>
inline SPROUT_CONSTEXPR typename std::iterator_traits<sprout::transform_iterator<UnaryOrBinaryFunction, LIterator, RIterator> >::difference_type
distance(
iterator_distance(
sprout::transform_iterator<UnaryOrBinaryFunction, LIterator, RIterator> first,
sprout::transform_iterator<UnaryOrBinaryFunction, LIterator, RIterator> last
)