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

Public Member Functions

template<typename Rng , typename C = less, typename P = identity>
constexpr auto operator() (Rng &&rng, C pred=C{}, P proj=P{}) const -> minmax_result< range_value_t< Rng >> requires input_range< Rng > &&indirect_strict_weak_order< C, projected< iterator_t< Rng >, P >> &&indirectly_copyable_storable< iterator_t< Rng >, range_value_t< Rng > * >
 
template<typename T , typename C = less, typename P = identity>
constexpr auto operator() (std::initializer_list< T > const &&rng, C pred=C{}, P proj=P{}) const -> minmax_result< T > requires copyable< T > &&indirect_strict_weak_order< C, projected< T const *, P >>
 
template<typename T , typename C = less, typename P = identity>
constexpr auto operator() (T const &a, T const &b, C pred=C{}, P proj=P{}) const -> minmax_result< T const & > requires indirect_strict_weak_order< C, projected< T const *, P >>