This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of WP status.

### 3010. [networking.ts] `uses_executor` says "if a type `T::executor_type` exists"

Section: 13.11.1 [networking.ts::async.uses.executor.trait] Status: WP Submitter: Jonathan Wakely Opened: 2017-08-17 Last modified: 2021-02-27

Priority: 0

View all issues with WP status.

Discussion:

Addresses: networking.ts

[async.uses.executor.trait] p1 says "if a type `T::executor_type` exists" but we don't want it to be required to detect private or ambiguous types.

[ 2017-11-01 Moved to Tentatively Ready after 7 positive votes for P0 on c++std-lib. ]

[2018-3-17 Adopted in Jacksonville]

Proposed resolution:

This resolution is relative to N4656.

1. Edit 13.11.1 [networking.ts::async.uses.executor.trait] as indicated:

   > -1- Remark: Detects whether `T` has a nested `executor_type` that is convertible from `Executor`. Meets the `BinaryTypeTrait` requirements (C++Std [meta.rqmts]). The implementation provides a definition that is derived from `true_type` if a type the qualified-id `T::executor_type` exists is valid and denotes a type and `is_convertible<Executor, T::executor_type>::value != false`, otherwise it is derived from `false_type`. A program may specialize this template […].