Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::v3::upper_bound_fn Struct Reference

Public Member Functions

template<typename I , typename S , typename V2 , typename C = ordered_less, typename P = ident, requires = (Sentinel<S, I>() && BinarySearchable<I, V2, C, P>())>
operator() (I begin, S end, V2 const &val, C pred=C{}, P proj=P{}) const
 
template<typename Rng , typename V2 , typename C = ordered_less, typename P = ident, typename I = iterator_t<Rng>, requires = (Range<Rng>() && BinarySearchable<I, V2, C, P>())>
safe_iterator_t< Rng > operator() (Rng &&rng, V2 const &val, C pred=C{}, P proj=P{}) const
 

Member Function Documentation

◆ operator()()

template<typename Rng , typename V2 , typename C = ordered_less, typename P = ident, typename I = iterator_t<Rng>, requires = (Range<Rng>() && BinarySearchable<I, V2, C, P>())>
safe_iterator_t<Rng> ranges::v3::upper_bound_fn::operator() ( Rng &&  rng,
V2 const &  val,
pred = C{},
proj = P{} 
) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

References ranges::v3::move, and ranges::v3::partition_point.