mirror of
https://github.com/boostorg/algorithm.git
synced 2025-07-06 01:06:37 +02:00
adapting to new range interface
[SVN r38123]
This commit is contained in:
@ -74,7 +74,7 @@ namespace boost {
|
|||||||
const std::locale& Loc=std::locale())
|
const std::locale& Loc=std::locale())
|
||||||
{
|
{
|
||||||
return ::boost::algorithm::detail::transform_range_copy<SequenceT>(
|
return ::boost::algorithm::detail::transform_range_copy<SequenceT>(
|
||||||
as_literal(Input),
|
Input,
|
||||||
::boost::algorithm::detail::to_lowerF<
|
::boost::algorithm::detail::to_lowerF<
|
||||||
typename range_value<SequenceT>::type >(Loc));
|
typename range_value<SequenceT>::type >(Loc));
|
||||||
}
|
}
|
||||||
@ -139,7 +139,7 @@ namespace boost {
|
|||||||
const std::locale& Loc=std::locale())
|
const std::locale& Loc=std::locale())
|
||||||
{
|
{
|
||||||
return ::boost::algorithm::detail::transform_range_copy<SequenceT>(
|
return ::boost::algorithm::detail::transform_range_copy<SequenceT>(
|
||||||
as_literal(Input),
|
Input,
|
||||||
::boost::algorithm::detail::to_upperF<
|
::boost::algorithm::detail::to_upperF<
|
||||||
typename range_value<SequenceT>::type >(Loc));
|
typename range_value<SequenceT>::type >(Loc));
|
||||||
}
|
}
|
||||||
|
@ -16,6 +16,8 @@
|
|||||||
#include <boost/range/begin.hpp>
|
#include <boost/range/begin.hpp>
|
||||||
#include <boost/range/end.hpp>
|
#include <boost/range/end.hpp>
|
||||||
#include <boost/range/const_iterator.hpp>
|
#include <boost/range/const_iterator.hpp>
|
||||||
|
#include <boost/range/as_literal.hpp>
|
||||||
|
#include <boost/range/iterator_range.hpp>
|
||||||
|
|
||||||
#include <boost/algorithm/string/detail/trim.hpp>
|
#include <boost/algorithm/string/detail/trim.hpp>
|
||||||
#include <boost/algorithm/string/classification.hpp>
|
#include <boost/algorithm/string/classification.hpp>
|
||||||
@ -61,12 +63,14 @@ namespace boost {
|
|||||||
const RangeT& Input,
|
const RangeT& Input,
|
||||||
PredicateT IsSpace)
|
PredicateT IsSpace)
|
||||||
{
|
{
|
||||||
|
iterator_range<BOOST_STRING_TYPENAME range_const_iterator<RangeT>::type> lit_range(as_literal(Input));
|
||||||
|
|
||||||
std::copy(
|
std::copy(
|
||||||
::boost::algorithm::detail::trim_begin(
|
::boost::algorithm::detail::trim_begin(
|
||||||
begin(Input),
|
begin(lit_range),
|
||||||
end(Input),
|
end(lit_range),
|
||||||
IsSpace ),
|
IsSpace ),
|
||||||
end(Input),
|
end(lit_range),
|
||||||
Output);
|
Output);
|
||||||
|
|
||||||
return Output;
|
return Output;
|
||||||
@ -167,11 +171,13 @@ namespace boost {
|
|||||||
const RangeT& Input,
|
const RangeT& Input,
|
||||||
PredicateT IsSpace )
|
PredicateT IsSpace )
|
||||||
{
|
{
|
||||||
std::copy(
|
iterator_range<BOOST_STRING_TYPENAME range_const_iterator<RangeT>::type> lit_range(as_literal(Input));
|
||||||
begin(Input),
|
|
||||||
|
std::copy(
|
||||||
|
begin(lit_range),
|
||||||
::boost::algorithm::detail::trim_end(
|
::boost::algorithm::detail::trim_end(
|
||||||
begin(Input),
|
begin(lit_range),
|
||||||
end(Input),
|
end(lit_range),
|
||||||
IsSpace ),
|
IsSpace ),
|
||||||
Output );
|
Output );
|
||||||
|
|
||||||
@ -277,16 +283,18 @@ namespace boost {
|
|||||||
const RangeT& Input,
|
const RangeT& Input,
|
||||||
PredicateT IsSpace)
|
PredicateT IsSpace)
|
||||||
{
|
{
|
||||||
BOOST_STRING_TYPENAME
|
iterator_range<BOOST_STRING_TYPENAME range_const_iterator<RangeT>::type> lit_range(as_literal(Input));
|
||||||
|
|
||||||
|
BOOST_STRING_TYPENAME
|
||||||
range_const_iterator<RangeT>::type TrimEnd=
|
range_const_iterator<RangeT>::type TrimEnd=
|
||||||
::boost::algorithm::detail::trim_end(
|
::boost::algorithm::detail::trim_end(
|
||||||
begin(Input),
|
begin(lit_range),
|
||||||
end(Input),
|
end(lit_range),
|
||||||
IsSpace);
|
IsSpace);
|
||||||
|
|
||||||
std::copy(
|
std::copy(
|
||||||
detail::trim_begin(
|
detail::trim_begin(
|
||||||
begin(Input), TrimEnd, IsSpace),
|
begin(lit_range), TrimEnd, IsSpace),
|
||||||
TrimEnd,
|
TrimEnd,
|
||||||
Output
|
Output
|
||||||
);
|
);
|
||||||
|
Reference in New Issue
Block a user