forked from boostorg/range
Boost.Range fixes for compilers that were having problems picking between const and mutable range overloads of range algorithms.
[SVN r61028]
This commit is contained in:
@ -7,10 +7,6 @@ template<class SinglePassRange, class Value>
|
||||
typename range_iterator<SinglePassRange>::type
|
||||
find(SinglePassRange& rng, Value val);
|
||||
|
||||
template<class SinglePassRange, class Value>
|
||||
typename range_iterator<const SinglePassRange>::type
|
||||
find(const SinglePassRange& rng, Value val);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange,
|
||||
@ -18,20 +14,12 @@ template<
|
||||
>
|
||||
typename range_return<SinglePassRange, re>::type
|
||||
find(SinglePassRange& rng, Value val);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange,
|
||||
class Value
|
||||
>
|
||||
typename range_return<const SinglePassRange, re>::type
|
||||
find(const SinglePassRange& rng, Value val);
|
||||
``
|
||||
|
||||
[heading Description]
|
||||
|
||||
The versions of `find` that return an iterator, returns the first iterator in the range `rng` such that `*i == value`. `end(rng)` is returned if no such iterator exists.
|
||||
The versions of find that return a `range_return`, defines `found` in the same manner as the returned iterator described above.
|
||||
The versions of find that return a `range_return`, defines `found` in the same manner as the returned iterator described above.
|
||||
|
||||
[heading Definition]
|
||||
|
||||
|
@ -7,10 +7,6 @@ template<class ForwardRange1, class ForwardRange2>
|
||||
typename range_iterator<ForwardRange1>::type
|
||||
find_end(ForwardRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<class ForwardRange1, class ForwardRange2>
|
||||
typename range_iterator<const ForwardRange1>::type
|
||||
find_end(const ForwardRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<
|
||||
class ForwardRange1,
|
||||
class ForwardRange2,
|
||||
@ -19,15 +15,6 @@ template<
|
||||
typename range_iterator<ForwardRange1>::type
|
||||
find_end(ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
|
||||
template<
|
||||
class ForwardRange1,
|
||||
class ForwardRange2,
|
||||
class BinaryPredicate
|
||||
>
|
||||
typename range_iterator<const ForwardRange1>::type
|
||||
find_end(const ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange1,
|
||||
@ -36,14 +23,6 @@ template<
|
||||
typename range_return<ForwardRange1, re>::type
|
||||
find_end(ForwardRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange1,
|
||||
class ForwardRange2
|
||||
>
|
||||
typename range_return<const ForwardRange1, re>::type
|
||||
find_end(const ForwardRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange1,
|
||||
@ -52,22 +31,13 @@ template<
|
||||
>
|
||||
typename range_return<ForwardRange1, re>::type
|
||||
find_end(ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange1,
|
||||
class ForwardRange2,
|
||||
class BinaryPredicate
|
||||
>
|
||||
typename range_return<const ForwardRange1, re>::type
|
||||
find_end(const ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
``
|
||||
|
||||
[heading Description]
|
||||
|
||||
The versions of `find_end` that return an iterator, return an iterator to the beginning of the last sub-sequence equal to `rng2` within `rng1`.
|
||||
Equality is determined by `operator==` for non-predicate versions of `find_end`, and by satisfying `pred` in the predicate versions. The versions of `find_end` that return a `range_return`, defines `found` in the same manner as the returned iterator described above.
|
||||
|
||||
|
||||
[heading Definition]
|
||||
|
||||
Defined in the header file `boost/range/algorithm/find_end.hpp`
|
||||
|
@ -7,10 +7,6 @@ template<class SinglePassRange1, class ForwardRange2>
|
||||
typename range_iterator<SinglePassRange1>::type
|
||||
find_first_of(SinglePassRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<class SinglePassRange1, class ForwardRange2>
|
||||
typename range_iterator<const SinglePassRange1>::type
|
||||
find_first_of(const SinglePassRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<
|
||||
class SinglePassRange1,
|
||||
class ForwardRange2,
|
||||
@ -19,15 +15,6 @@ template<
|
||||
typename range_iterator<SinglePassRange1>::type
|
||||
find_first_of(SinglePassRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
|
||||
template<
|
||||
class SinglePassRange1,
|
||||
class ForwardRange2,
|
||||
class BinaryPredicate
|
||||
>
|
||||
typename range_iterator<const SinglePassRange1>::type
|
||||
find_first_of(const SinglePassRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange1,
|
||||
@ -36,14 +23,6 @@ template<
|
||||
typename range_return<SinglePassRange1, re>::type
|
||||
find_first_of(SinglePassRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange1,
|
||||
class ForwardRange2
|
||||
>
|
||||
typename range_return<const SinglePassRange1, re>::type
|
||||
find_first_of(const SinglePassRange1& rng1, const ForwardRange2& rng2);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange1,
|
||||
@ -52,15 +31,6 @@ template<
|
||||
>
|
||||
typename range_return<SinglePassRange1, re>::type
|
||||
find_first_of(SinglePassRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange1,
|
||||
class ForwardRange2,
|
||||
class BinaryPredicate
|
||||
>
|
||||
typename range_return<const SinglePassRange1, re>::type
|
||||
find_first_of(const SinglePassRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
|
||||
``
|
||||
|
||||
[heading Description]
|
||||
|
@ -7,10 +7,6 @@ template<class SinglePassRange, class UnaryPredicate>
|
||||
typename range_iterator<SinglePassRange>::type
|
||||
find_if(SinglePassRange& rng, UnaryPredicate pred);
|
||||
|
||||
template<class SinglePassRange, class UnaryPredicate>
|
||||
typename range_iterator<const SinglePassRange>::type
|
||||
find_if(const SinglePassRange& rng, UnaryPredicate pred);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange,
|
||||
@ -18,14 +14,6 @@ template<
|
||||
>
|
||||
typename range_return<SinglePassRange, re>::type
|
||||
find_if(SinglePassRange& rng, UnaryPredicate pred);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class SinglePassRange,
|
||||
class UnaryPredicate
|
||||
>
|
||||
typename range_return<const SinglePassRange, re>::type
|
||||
find_if(const SinglePassRange& rng, UnaryPredicate pred);
|
||||
``
|
||||
|
||||
[heading Description]
|
||||
|
@ -7,10 +7,6 @@ template<class ForwardRange, class Value>
|
||||
typename range_iterator<ForwardRange>::type
|
||||
lower_bound(ForwardRange& rng, Value val);
|
||||
|
||||
template<class ForwardRange, class Value>
|
||||
typename range_iterator<const ForwardRange>::type
|
||||
lower_bound(const ForwardRange& rng, Value val);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange,
|
||||
@ -18,14 +14,6 @@ template<
|
||||
>
|
||||
typename range_return<ForwardRange, re>::type
|
||||
lower_bound(ForwardRange& rng, Value val);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange,
|
||||
class Value
|
||||
>
|
||||
typename range_return<const ForwardRange, re>::type
|
||||
lower_bound(const ForwardRange& rng, Value val);
|
||||
``
|
||||
|
||||
[heading Description]
|
||||
|
@ -7,10 +7,6 @@ template<class ForwardRange, class Value>
|
||||
typename range_iterator<ForwardRange>::type
|
||||
upper_bound(ForwardRange& rng, Value val);
|
||||
|
||||
template<class ForwardRange, class Value>
|
||||
typename range_iterator<const ForwardRange>::type
|
||||
upper_bound(const ForwardRange& rng, Value val);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange,
|
||||
@ -18,14 +14,6 @@ template<
|
||||
>
|
||||
typename range_return<ForwardRange, re>::type
|
||||
upper_bound(ForwardRange& rng, Value val);
|
||||
|
||||
template<
|
||||
range_return_value re,
|
||||
class ForwardRange,
|
||||
class Value
|
||||
>
|
||||
typename range_return<const ForwardRange, re>::type
|
||||
upper_bound(const ForwardRange& rng, Value val);
|
||||
``
|
||||
|
||||
[heading Description]
|
||||
@ -36,7 +24,7 @@ with predicate - `pred(val, *i)` is `true`.
|
||||
|
||||
`end(rng)` is returned if no such iterator exists.
|
||||
|
||||
The versions of `upper_bound` that return a `range_return`, defines `found` in the same manner as the returned iterator described above.
|
||||
The versions of `upper_bound` that return a `range_return`, defines `found` in the same manner as the returned iterator described above.
|
||||
|
||||
[heading Definition]
|
||||
|
||||
|
Reference in New Issue
Block a user