Skip to content

Commit 9b104a0

Browse files
committed
Simplified
1 parent 72165bd commit 9b104a0

File tree

1 file changed

+2
-10
lines changed

1 file changed

+2
-10
lines changed

provides/include/lax_v1/logical.hpp

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,20 +15,12 @@ struct lax_v1::if_m<lax_v1::false_t, ThenExpr, ElseExprs...>
1515
: if_m<ElseExprs...> {};
1616

1717
template <> struct lax_v1::and_m<> : true_t {};
18-
template <class... Exprs>
19-
struct lax_v1::and_m<lax_v1::false_t, Exprs...> : false_t {};
20-
template <class... Exprs>
21-
struct lax_v1::and_m<lax_v1::true_t, Exprs...> : and_m<Exprs...> {};
2218
template <class Expr, class... Exprs>
23-
struct lax_v1::and_m<Expr, Exprs...> : and_m<force_t<Expr>, Exprs...> {};
19+
struct lax_v1::and_m<Expr, Exprs...> : if_m<Expr, and_m<Exprs...>, false_t> {};
2420

2521
template <class Expr>
2622
struct lax_v1::not_m : value_t<bool, !value_of_v<Expr>> {};
2723

2824
template <> struct lax_v1::or_m<> : false_t {};
29-
template <class... Exprs>
30-
struct lax_v1::or_m<lax_v1::true_t, Exprs...> : true_t {};
31-
template <class... Exprs>
32-
struct lax_v1::or_m<lax_v1::false_t, Exprs...> : or_m<Exprs...> {};
3325
template <class Expr, class... Exprs>
34-
struct lax_v1::or_m<Expr, Exprs...> : or_m<force_t<Expr>, Exprs...> {};
26+
struct lax_v1::or_m<Expr, Exprs...> : if_m<Expr, true_t, or_m<Exprs...>> {};

0 commit comments

Comments
 (0)