template<class Tag, class Data = see below, class... Child>
constexpr auto make-sender(Tag tag, Data&& data, Child&&... child);
概要
make-senderは、Senderアルゴリズム動作仕様定義で用いられる説明専用の関数テンプレートである。
senderのモデルである説明専用クラステンプレートbasic-senderのインスタンスを生成する。
Tag: Senderアルゴリズムタグ(例:just,then)Data: Senderアルゴリズムに指定された追加の引数。複数個の引数はproduct-type型を用いて単一値として保持する。Child: 子Senderのリスト。Senderファクトリでは0個、Senderアダプタでは通常1個の子Senderを保持する。
適格要件
下記の式が全てtrueであること。
semiregular<Tag>movable-value<Data>(sender<Child> && ...)- 型
Sndrをbasic-sender<Tag, Data, Child...>としたとき、dependent_sender<Sndr> || sender_in<Sndr>
戻り値
転送された各引数により直接非リスト初期化された型basic-sender<Tag, decay_t<Data>, decay_t<Child>...>のprvalueを返す。
備考
テンプレートパラメータDataのデフォルト引数は、semiregularのモデルである空のトリビアルにコピー可能な未規定なクラス型。
sender_in<Sndr>の評価結果がget_completion_signatures<Sndr>()から送出された例外の場合、処理系(標準ライブラリ実装者)はエラーメッセージにその例外に関する情報を含めることが推奨される。
バージョン
言語
- C++26