| 59 | */ |
| 60 | template<typename OutputIteratorT, typename RangeT, typename PredicateT> |
| 61 | inline OutputIteratorT trim_left_copy_if( |
| 62 | OutputIteratorT Output, |
| 63 | const RangeT& Input, |
| 64 | PredicateT IsSpace) |
| 65 | { |
| 66 | iterator_range<BOOST_STRING_TYPENAME range_const_iterator<RangeT>::type> lit_range(::boost::as_literal(Input)); |
| 67 | |
| 68 | std::copy( |
| 69 | ::boost::algorithm::detail::trim_begin( |
| 70 | ::boost::begin(lit_range), |
| 71 | ::boost::end(lit_range), |
| 72 | IsSpace ), |
| 73 | ::boost::end(lit_range), |
| 74 | Output); |
| 75 | |
| 76 | return Output; |
| 77 | } |
| 78 | |
| 79 | //! Left trim - parametric |
| 80 | /*! |
no test coverage detected