Iros
 
Loading...
Searching...
No Matches
between_inclusive.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace di::function {
8struct BetweenInclusive : CurryBack<BetweenInclusive> {
9 template<typename T, typename U = T, typename V = T>
10 constexpr static auto operator()(T const& value, U const& lower, V const& upper) -> bool
11 requires(requires {
14 })
15 {
16 return di::equal_or_greater(value, lower) && di::equal_or_less(value, upper);
17 }
18
19 using CurryBack<BetweenInclusive>::operator();
20 constexpr static auto max_arity = 3ZU;
21};
22
23constexpr inline auto between_inclusive = BetweenInclusive {};
24}
25
26namespace di {
28using function::BetweenInclusive;
29}
Definition as_bool.h:8
constexpr auto between_inclusive
Definition between_inclusive.h:23
constexpr auto value
Definition value.h:34
Definition zstring_parser.h:9
constexpr auto equal_or_less
Definition equal_or_less.h:23
constexpr auto equal_or_greater
Definition equal_or_greater.h:23
Definition between_inclusive.h:8
static constexpr auto max_arity
Definition between_inclusive.h:20
static constexpr auto operator()(T const &value, U const &lower, V const &upper) -> bool requires(
Definition between_inclusive.h:10
Definition curry_back.h:88