Fix reference to asio::query customisation point.
This commit is contained in:
parent
ab336ac55b
commit
51842da799
@ -41,9 +41,9 @@ namespace execution {
|
||||
* @li <tt>S.bulk_execute(F, N)</tt>, if that expression is valid. If the
|
||||
* function selected does not execute <tt>N</tt> invocations of the function
|
||||
* object <tt>F</tt> on the executor <tt>S</tt> in bulk with forward progress
|
||||
* guarantee <tt>std::query(S, execution::bulk_guarantee)</tt>, and the result
|
||||
* of that function does not model <tt>sender<void></tt>, the program is
|
||||
* ill-formed with no diagnostic required.
|
||||
* guarantee <tt>asio::query(S, execution::bulk_guarantee)</tt>, and
|
||||
* the result of that function does not model <tt>sender<void></tt>, the
|
||||
* program is ill-formed with no diagnostic required.
|
||||
*
|
||||
* @li Otherwise, <tt>bulk_execute(S, F, N)</tt>, if that expression is valid,
|
||||
* with overload resolution performed in a context that includes the
|
||||
@ -51,13 +51,14 @@ namespace execution {
|
||||
* declaration of <tt>execution::bulk_execute</tt>. If the function selected
|
||||
* by overload resolution does not execute <tt>N</tt> invocations of the
|
||||
* function object <tt>F</tt> on the executor <tt>S</tt> in bulk with forward
|
||||
* progress guarantee <tt>std::query(E, execution::bulk_guarantee)</tt>, and
|
||||
* the result of that function does not model <tt>sender<void></tt>, the
|
||||
* program is ill-formed with no diagnostic required.
|
||||
* progress guarantee <tt>asio::query(E,
|
||||
* execution::bulk_guarantee)</tt>, and the result of that function does not
|
||||
* model <tt>sender<void></tt>, the program is ill-formed with no diagnostic
|
||||
* required.
|
||||
*
|
||||
* @li Otherwise, if the types <tt>F</tt> and
|
||||
* <tt>executor_index_t<remove_cvref_t<S>></tt> model <tt>invocable</tt> and
|
||||
* if <tt>std::query(S, execution::bulk_guarantee)</tt> equals
|
||||
* if <tt>asio::query(S, execution::bulk_guarantee)</tt> equals
|
||||
* <tt>execution::bulk_guarantee.unsequenced</tt>, then
|
||||
*
|
||||
* - Evaluates <tt>DECAY_COPY(std::forward<decltype(F)>(F))</tt> on the
|
||||
|
@ -67139,13 +67139,13 @@ A customisation point that creates a bulk sender.
|
||||
The name `execution::bulk_execute` denotes a customisation point object. If `is_convertible_v<N, size_t>` is true, then the expression `execution::bulk_execute(S, F, N)` for some subexpressions `S`, `F`, and `N` is expression-equivalent to:
|
||||
|
||||
|
||||
* `S.bulk_execute(F, N)`, if that expression is valid. If the function selected does not execute `N` invocations of the function object `F` on the executor `S` in bulk with forward progress guarantee `std::query(S, execution::bulk_guarantee)`, and the result of that function does not model `sender<void>`, the program is ill-formed with no diagnostic required.
|
||||
* `S.bulk_execute(F, N)`, if that expression is valid. If the function selected does not execute `N` invocations of the function object `F` on the executor `S` in bulk with forward progress guarantee `asio::query(S, execution::bulk_guarantee)`, and the result of that function does not model `sender<void>`, the program is ill-formed with no diagnostic required.
|
||||
|
||||
|
||||
* Otherwise, `bulk_execute(S, F, N)`, if that expression is valid, with overload resolution performed in a context that includes the declaration `void bulk_execute();` and that does not include a declaration of `execution::bulk_execute`. If the function selected by overload resolution does not execute `N` invocations of the function object `F` on the executor `S` in bulk with forward progress guarantee `std::query(E, execution::bulk_guarantee)`, and the result of that function does not model `sender<void>`, the program is ill-formed with no diagnostic required.
|
||||
* Otherwise, `bulk_execute(S, F, N)`, if that expression is valid, with overload resolution performed in a context that includes the declaration `void bulk_execute();` and that does not include a declaration of `execution::bulk_execute`. If the function selected by overload resolution does not execute `N` invocations of the function object `F` on the executor `S` in bulk with forward progress guarantee `asio::query(E, execution::bulk_guarantee)`, and the result of that function does not model `sender<void>`, the program is ill-formed with no diagnostic required.
|
||||
|
||||
|
||||
* Otherwise, if the types `F` and `executor_index_t<remove_cvref_t<S>>` model `invocable` and if `std::query(S, execution::bulk_guarantee)` equals `execution::bulk_guarantee.unsequenced`, then
|
||||
* Otherwise, if the types `F` and `executor_index_t<remove_cvref_t<S>>` model `invocable` and if `asio::query(S, execution::bulk_guarantee)` equals `execution::bulk_guarantee.unsequenced`, then
|
||||
|
||||
|
||||
* Evaluates `DECAY_COPY(std::forward<decltype(F)>(F))` on the calling thread to create a function object `cf`. [Note: Additional copies of `cf` may subsequently be created. --end note.]
|
||||
|
Loading…
Reference in New Issue
Block a user