forked from boostorg/range
*** empty log message ***
[SVN r24877]
This commit is contained in:
@ -284,7 +284,7 @@ namespace boost {
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
namespace range_detail
|
||||
{
|
||||
template< class Range >
|
||||
@ -323,7 +323,7 @@ namespace boost {
|
||||
return make_iterator_range( new_begin, new_end );
|
||||
}
|
||||
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
#ifdef BOOST_NO_FUNCTION_TEMPLATE_ORDERING
|
||||
@ -337,7 +337,7 @@ namespace boost {
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
template< class Range >
|
||||
inline iterator_range< BOOST_DEDUCED_TYPENAME range_result_iterator<Range>::type >
|
||||
make_sub_range( Range& r,
|
||||
@ -356,7 +356,7 @@ namespace boost {
|
||||
BOOST_DEDUCED_TYPENAME range_difference<Range>::type advance_end = 0 )
|
||||
{
|
||||
return range_detail::make_super_range_impl( r, advance_begin, advance_end );
|
||||
}
|
||||
}*/
|
||||
|
||||
#else
|
||||
//! iterator_range construct helper
|
||||
@ -381,7 +381,7 @@ namespace boost {
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
template< class Range >
|
||||
inline iterator_range< BOOST_DEDUCED_TYPENAME range_iterator<Range>::type >
|
||||
make_sub_range( Range& r,
|
||||
@ -419,7 +419,7 @@ namespace boost {
|
||||
BOOST_DEDUCED_TYPENAME range_difference<Range>::type advance_end = 0 )
|
||||
{
|
||||
return range_detail::make_super_range_impl( r, advance_begin, advance_end );
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
#endif // BOOST_NO_FUNCTION_TEMPLATE_ORDERING
|
||||
|
@ -48,8 +48,26 @@ rbegin( const C& c )
|
||||
return BOOST_DEDUCED_TYPENAME range_const_reverse_iterator<C>::type( end( c ) );
|
||||
}
|
||||
|
||||
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
|
||||
// BCB is not able to overload pointer when class overloads are also available
|
||||
template<>
|
||||
inline range_const_reverse_iterator<const char*>::type rbegin<const char*>( const char*& c )
|
||||
{
|
||||
return range_const_reverse_iterator<const char*>::type( end<const char*>( c ) );
|
||||
}
|
||||
|
||||
template<>
|
||||
inline range_const_reverse_iterator<const wchar_t*>::type rbegin<const wchar_t*>( const wchar_t*& c )
|
||||
{
|
||||
return range_const_reverse_iterator<const wchar_t*>::type( end<const wchar_t*>( c ) );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#endif // BOOST_NO_FUNCTION_TEMPLATE_ORDERING
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -91,6 +91,22 @@ inline BOOST_DEDUCED_TYPENAME range_size<T>::type size( const T& r )
|
||||
return range_detail::size( r );
|
||||
}
|
||||
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
|
||||
// BCB is not able to overload pointer when class overloads are also available
|
||||
template<>
|
||||
inline range_size<const char*>::type size<const char*>( const char* r )
|
||||
{
|
||||
return range_detail::str_size( r );
|
||||
}
|
||||
|
||||
template<>
|
||||
inline range_size<const wchar_t*>::type size<const wchar_t*>( const wchar_t* r )
|
||||
{
|
||||
return range_detail::str_size( r );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
} // namespace 'boost'
|
||||
|
||||
#endif // BOOST_NO_FUNCTION_TEMPLATE_ORDERING
|
||||
|
Reference in New Issue
Block a user