Iros
 
Loading...
Searching...
No Matches
di::container::detail::MinFunction Struct Reference

#include <di/container/algorithm/min.h>

Public Member Functions

template<typename T, typename Proj = function::Identity, concepts::IndirectStrictWeakOrder< meta::Projected< T const *, Proj > > Comp = function::Compare>
constexpr auto operator() (T const &a, T const &b, Comp comp={}, Proj proj={}) const -> T const &
 
template<concepts::Copyable T, typename Proj = function::Identity, concepts::IndirectStrictWeakOrder< meta::Projected< T const *, Proj > > Comp = function::Compare>
constexpr auto operator() (std::initializer_list< T > list, Comp comp={}, Proj proj={}) const -> T
 
template<concepts::InputContainer Con, typename Proj = function::Identity, concepts::IndirectStrictWeakOrder< meta::Projected< meta::ContainerIterator< Con >, Proj > > Comp = function::Compare>
requires (concepts::IndirectlyCopyableStorable<meta::ContainerIterator<Con>, meta::ContainerValue<Con>*>)
constexpr auto operator() (Con &&container, Comp comp={}, Proj proj={}) const -> meta::ContainerValue< Con >
 

Member Function Documentation

◆ operator()() [1/3]

template<concepts::InputContainer Con, typename Proj = function::Identity, concepts::IndirectStrictWeakOrder< meta::Projected< meta::ContainerIterator< Con >, Proj > > Comp = function::Compare>
requires (concepts::IndirectlyCopyableStorable<meta::ContainerIterator<Con>, meta::ContainerValue<Con>*>)
auto di::container::detail::MinFunction::operator() ( Con && container,
Comp comp = {},
Proj proj = {} ) const -> meta::ContainerValue<Con>
inlineconstexpr

◆ operator()() [2/3]

template<concepts::Copyable T, typename Proj = function::Identity, concepts::IndirectStrictWeakOrder< meta::Projected< T const *, Proj > > Comp = function::Compare>
auto di::container::detail::MinFunction::operator() ( std::initializer_list< T > list,
Comp comp = {},
Proj proj = {} ) const -> T
inlineconstexpr

◆ operator()() [3/3]

template<typename T, typename Proj = function::Identity, concepts::IndirectStrictWeakOrder< meta::Projected< T const *, Proj > > Comp = function::Compare>
auto di::container::detail::MinFunction::operator() ( T const & a,
T const & b,
Comp comp = {},
Proj proj = {} ) const -> T const&
inlineconstexpr

The documentation for this struct was generated from the following file: