File tree Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Original file line number Diff line number Diff line change 1946
1946
@\exposconcept {is-sender}@<Sndr> ||
1947
1947
@\exposconcept {is-awaitable}@<Sndr, @\exposid {env-promise}@<env<>>>; // \ref {exec.awaitable }
1948
1948
1949
+ template<class Sndr>
1950
+ inline constexpr bool enable_sender = @\exposconcept {enable-sender}@<Sndr>;
1951
+
1949
1952
template<class Sndr>
1950
1953
concept @\deflibconcept {sender}@ =
1951
- bool(@ \exposconcept {enable-sender}@ <remove_cvref_t<Sndr>>) &&
1954
+ enable_sender <remove_cvref_t<Sndr>> &&
1952
1955
requires (const remove_cvref_t<Sndr>& sndr) {
1953
1956
{ get_env(sndr) } -> @\exposconcept {queryable}@;
1954
1957
} &&
1989
1992
starting the resulting operation state
1990
1993
are permissible completions for \tcode {Sndr} and \tcode {Env}.
1991
1994
1995
+ \pnum
1996
+ \remarks
1997
+ Pursuant to \ref {namespace.std },
1998
+ users may specialize \tcode {enable_sender} to
1999
+ \tcode {true} for cv-unqualified program-defined types that
2000
+ model \libconcept {sender}, and
2001
+ \tcode {false} for types that do not.
2002
+ Such specializations shall
2003
+ be usable in constant expressions\iref {expr.const } and
2004
+ have type \tcode {const bool}.
2005
+
1992
2006
\pnum
1993
2007
A type models
1994
2008
the exposition-only concept \defexposconcept {valid-completion-signatures}
You can’t perform that action at this time.
0 commit comments