Add range-based overload of find_not().

This commit is contained in:
Zach Laine committed 2018-05-12 16:04:01 -05:00
1 parent 8c9d5e858c
commit 6c68cf8624
3 files changed
+40 -1

No files matched your search

+12 -1
View File
@@ -8,13 +8,17 @@
#define BOOST_ALGORITHM_FIND_NOT_HPP
#include <boost/config.hpp>
#include <boost/range/begin.hpp>
#include <boost/range/end.hpp>
#include <utility>
namespace boost { namespace algorithm {
template<typename InputIter, typename Sentinel, typename T>
BOOST_CXX14_CONSTEXPR InputIter find_not(InputIter first, Sentinel last, T const & x)
BOOST_CXX14_CONSTEXPR
InputIter find_not(InputIter first, Sentinel last, T const & x)
{
for (; first != last; ++first) {
if (*first != x)
@@ -23,6 +27,13 @@ BOOST_CXX14_CONSTEXPR InputIter find_not(InputIter first, Sentinel last, T const
return first;
}
template<typename Range, typename T>
BOOST_CXX14_CONSTEXPR
typename boost::range_iterator<Range>::type find_not(Range & r, T const & x)
{
return ::boost::algorithm::find_not(boost::begin(r), boost::end(r), x);
}
}} // namespace boost and algorithm
#endif // BOOST_ALGORITHM_FIND_NOT_HPP