|
| template<class T, std::enable_if_t< std::is_trivially_copyable_v< T >, int > = 0> |
| constexpr T | nuri::min (T a, T b) |
| template<class L, class R, std::enable_if_t< std::is_same_v< internal::remove_cvref_t< L >, internal::remove_cvref_t< R > > &&!std::is_trivially_copyable_v< internal::remove_cvref_t< L > > &&std::is_lvalue_reference_v< L > &&std::is_lvalue_reference_v< R >, int > = 0> |
| constexpr const std::remove_reference_t< L > & | nuri::min (L &&a, R &&b) |
| template<class T, std::enable_if_t< std::is_trivially_copyable_v< T >, int > = 0> |
| constexpr T | nuri::max (T a, T b) |
| template<class L, class R, std::enable_if_t< std::is_same_v< internal::remove_cvref_t< L >, internal::remove_cvref_t< R > > &&!std::is_trivially_copyable_v< internal::remove_cvref_t< L > > &&std::is_lvalue_reference_v< L > &&std::is_lvalue_reference_v< R >, int > = 0> |
| constexpr const std::remove_reference_t< L > & | nuri::max (L &&a, R &&b) |
| template<class T, class Comp = std::less<>, std::enable_if_t< std::is_trivially_copyable_v< T >, int > = 0> |
| constexpr std::pair< T, T > | nuri::minmax (T a, T b, Comp &&comp={}) |
| template<class L, class R, class Comp = std::less<>, std::enable_if_t< std::is_same_v< internal::remove_cvref_t< L >, internal::remove_cvref_t< R > > &&!std::is_trivially_copyable_v< internal::remove_cvref_t< L > > &&std::is_lvalue_reference_v< L > &&std::is_lvalue_reference_v< R >, int > = 0> |
| constexpr std::pair< const std::remove_reference_t< L > &, const std::remove_reference_t< L > & > | nuri::minmax (L &&a, R &&b, Comp &&comp={}) |
| template<class T, std::enable_if_t< std::is_trivially_copyable_v< T >, int > = 0> |
| constexpr T | nuri::clamp (T v, T l, T h) |
| template<class T, class L, class H, std::enable_if_t< std::is_same_v< internal::remove_cvref_t< T >, internal::remove_cvref_t< L > > &&std::is_same_v< internal::remove_cvref_t< L >, internal::remove_cvref_t< H > > &&!std::is_trivially_copyable_v< internal::remove_cvref_t< T > > &&std::is_lvalue_reference_v< T > &&std::is_lvalue_reference_v< L > &&std::is_lvalue_reference_v< H >, int > = 0> |
| constexpr const std::remove_reference_t< T > & | nuri::clamp (T &&v, L &&l, H &&h) |