14 constexpr auto operator()(T
const& a, T
const& b, Comp comp = {}, Proj
proj = {})
const
22 template<concepts::Copyable
T,
typename Proj = function::Identity,
23 concepts::IndirectStrictWeakOrder<meta::Projected<T const*, Proj>> Comp = function::Compare>
24 constexpr auto operator()(std::initializer_list<T> list, Comp comp = {}, Proj
proj = {})
const
27 return { *result.min, *result.max };
30 template<concepts::InputContainer Con,
typename Proj = function::Identity,
31 concepts::IndirectStrictWeakOrder<meta::Projected<meta::ContainerIterator<Con>, Proj>> Comp =
34 constexpr auto operator()(Con&&
container, Comp comp = {}, Proj
proj = {})
const
37 return { util::move(*result.min), util::move(*result.max) };
Definition indirect_strict_weak_order.h:12
constexpr auto minmax
Definition minmax.h:42
constexpr auto minmax_element
Definition minmax_element.h:76
constexpr auto invoke
Definition invoke.h:100
constexpr auto ref
Definition reference_wrapper.h:98
Definition zstring_parser.h:9
constexpr auto proj
Definition proj.h:59
Definition min_max_result.h:8
constexpr auto operator()(T const &a, T const &b, Comp comp={}, Proj proj={}) const -> MinMaxResult< T const & >
Definition minmax.h:14
constexpr auto operator()(std::initializer_list< T > list, Comp comp={}, Proj proj={}) const -> MinMaxResult< T >
Definition minmax.h:24