Corrected namespace of the pipe operator for the copied adaptor.

[SVN r60901]
This commit is contained in:
Neil Groves
2010-03-28 18:37:28 +00:00
parent b0d1db7c2e
commit bed353556f

View File

@@ -21,35 +21,35 @@ namespace boost
namespace range_detail namespace range_detail
{ {
template< class T > template< class T >
struct copy_holder struct copy_holder
: holder2<std::size_t> : holder2<std::size_t>
{ {
copy_holder( std::size_t t, std::size_t u ) copy_holder( std::size_t t, std::size_t u )
: holder2<std::size_t>(t,u) : holder2<std::size_t>(t,u)
{ } { }
}; };
template< class CopyableRandomAccessRng, class Int >
inline CopyableRandomAccessRng
operator|( const CopyableRandomAccessRng& r, const copy_holder<Int>& f )
{
iterator_range<
BOOST_DEDUCED_TYPENAME range_iterator<const
CopyableRandomAccessRng>::type >
temp( sliced_impl( r, f ) );
return CopyableRandomAccessRng( temp.begin(), temp.end() );
}
} // 'range_detail' } // 'range_detail'
namespace adaptors namespace adaptors
{ {
template< class CopyableRandomAccessRng, class Int >
inline CopyableRandomAccessRng
operator|( const CopyableRandomAccessRng& r, const range_detail::copy_holder<Int>& f )
{
iterator_range<
BOOST_DEDUCED_TYPENAME range_iterator<const
CopyableRandomAccessRng>::type >
temp( range_detail::sliced_impl( r, f ) );
return CopyableRandomAccessRng( temp.begin(), temp.end() );
}
namespace namespace
{ {
const range_detail::forwarder2<range_detail::copy_holder> const range_detail::forwarder2<range_detail::copy_holder>
copied = range_detail::forwarder2<range_detail::copy_holder>(); copied = range_detail::forwarder2<range_detail::copy_holder>();
} }
template<class CopyableRandomAccessRange> template<class CopyableRandomAccessRange>
inline CopyableRandomAccessRange inline CopyableRandomAccessRange
copy(const CopyableRandomAccessRange& rng, std::size_t t, std::size_t u) copy(const CopyableRandomAccessRange& rng, std::size_t t, std::size_t u)
@@ -58,11 +58,11 @@ namespace boost
BOOST_DEDUCED_TYPENAME range_iterator<const BOOST_DEDUCED_TYPENAME range_iterator<const
CopyableRandomAccessRange>::type> temp( CopyableRandomAccessRange>::type> temp(
adaptors::slice(rng, t, u)); adaptors::slice(rng, t, u));
return CopyableRandomAccessRange( temp.begin(), temp.end() ); return CopyableRandomAccessRange( temp.begin(), temp.end() );
} }
} // 'adaptors' } // 'adaptors'
} }
#endif #endif