Skip to content

Commit 4653f07

Browse files
committed
[concepts] P1084R2 library wording changes
1 parent 0af79b8 commit 4653f07

File tree

1 file changed

+30
-31
lines changed

1 file changed

+30
-31
lines changed

source/concepts.tex

Lines changed: 30 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -479,8 +479,7 @@
479479
is_lvalue_reference_v<LHS> &&
480480
CommonReference<const remove_reference_t<LHS>&, const remove_reference_t<RHS>&> &&
481481
requires(LHS lhs, RHS&& rhs) {
482-
lhs = std::forward<RHS>(rhs);
483-
requires Same<decltype(lhs = std::forward<RHS>(rhs)), LHS>;
482+
{ lhs = std::forward<RHS>(rhs) } -> Same<LHS>;
484483
};
485484
\end{itemdecl}
486485

@@ -757,19 +756,19 @@
757756
requires(const remove_reference_t<B>& b1,
758757
const remove_reference_t<B>& b2, const bool a) {
759758
requires ConvertibleTo<const remove_reference_t<B>&, bool>;
760-
!b1; requires ConvertibleTo<decltype(!b1), bool>;
761-
b1 && a; requires Same<decltype(b1 && a), bool>;
762-
b1 || a; requires Same<decltype(b1 || a), bool>;
763-
b1 && b2; requires Same<decltype(b1 && b2), bool>;
764-
a && b2; requires Same<decltype( a && b2), bool>;
765-
b1 || b2; requires Same<decltype(b1 || b2), bool>;
766-
a || b2; requires Same<decltype( a || b2), bool>;
767-
b1 == b2; requires ConvertibleTo<decltype(b1 == b2), bool>;
768-
b1 == a; requires ConvertibleTo<decltype(b1 == a), bool>;
769-
a == b2; requires ConvertibleTo<decltype( a == b2), bool>;
770-
b1 != b2; requires ConvertibleTo<decltype(b1 != b2), bool>;
771-
b1 != a; requires ConvertibleTo<decltype(b1 != a), bool>;
772-
a != b2; requires ConvertibleTo<decltype( a != b2), bool>;
759+
{ !b1 } -> ConvertibleTo<bool>;
760+
{ b1 && a } -> Same<bool>;
761+
{ b1 || a } -> Same<bool>;
762+
{ b1 && b2 } -> Same<bool>;
763+
{ a && b2 } -> Same<bool>;
764+
{ b1 || b2 } -> Same<bool>;
765+
{ a || b2 } -> Same<bool>;
766+
{ b1 == b2 } -> ConvertibleTo<bool>;
767+
{ b1 == a } -> ConvertibleTo<bool>;
768+
{ a == b2 } -> ConvertibleTo<bool>;
769+
{ b1 != b2 } -> ConvertibleTo<bool>;
770+
{ b1 != a } -> ConvertibleTo<bool>;
771+
{ a != b2 } -> ConvertibleTo<bool>;
773772
};
774773
\end{itemdecl}
775774

@@ -811,10 +810,10 @@
811810
concept @\placeholder{weakly-equality-comparable-with}@ = // \expos
812811
requires(const remove_reference_t<T>& t,
813812
const remove_reference_t<U>& u) {
814-
t == u; requires Boolean<decltype(t == u)>;
815-
t != u; requires Boolean<decltype(t != u)>;
816-
u == t; requires Boolean<decltype(u == t)>;
817-
u != t; requires Boolean<decltype(u != t)>;
813+
{ t == u } -> Boolean;
814+
{ t != u } -> Boolean;
815+
{ u == t } -> Boolean;
816+
{ u != t } -> Boolean;
818817
};
819818
\end{itemdecl}
820819

@@ -888,10 +887,10 @@
888887
EqualityComparable<T> &&
889888
requires(const remove_reference_t<T>& a,
890889
const remove_reference_t<T>& b) {
891-
a < b; requires Boolean<decltype(a < b)>;
892-
a > b; requires Boolean<decltype(a > b)>;
893-
a <= b; requires Boolean<decltype(a <= b)>;
894-
a >= b; requires Boolean<decltype(a >= b)>;
890+
{ a < b } -> Boolean;
891+
{ a > b } -> Boolean;
892+
{ a <= b } -> Boolean;
893+
{ a >= b } -> Boolean;
895894
};
896895
\end{itemdecl}
897896

@@ -925,14 +924,14 @@
925924
EqualityComparableWith<T, U> &&
926925
requires(const remove_reference_t<T>& t,
927926
const remove_reference_t<U>& u) {
928-
t < u; requires Boolean<decltype(t < u)>;
929-
t > u; requires Boolean<decltype(t > u)>;
930-
t <= u; requires Boolean<decltype(t <= u)>;
931-
t >= u; requires Boolean<decltype(t >= u)>;
932-
u < t; requires Boolean<decltype(u < t)>;
933-
u > t; requires Boolean<decltype(u > t)>;
934-
u <= t; requires Boolean<decltype(u <= t)>;
935-
u >= t; requires Boolean<decltype(u >= t)>;
927+
{ t < u } -> Boolean;
928+
{ t > u } -> Boolean;
929+
{ t <= u } -> Boolean;
930+
{ t >= u } -> Boolean;
931+
{ u < t } -> Boolean;
932+
{ u > t } -> Boolean;
933+
{ u <= t } -> Boolean;
934+
{ u >= t } -> Boolean;
936935
};
937936
\end{itemdecl}
938937

0 commit comments

Comments
 (0)