最終更新日時(UTC):
が更新

履歴 編集

class template
<execution>

std::execution::completion_signatures(C++26)

namespace std::execution {
  template<completion-signature... Fns>
  struct completion_signatures {};
}

概要

completion_signaturesクラステンプレートは、完了シグネチャの集合をテンプレートパラメータとして表現する。

実行制御ライブラリ仕様定義では、説明専用のコンセプトvalid-completion-signaturesを利用する。

template<class Sigs>
concept valid-completion-signatures = see below;

Sigscompletion_signaturesクラステンプレートの特殊化であるとき、Sigsは説明専用コンセプトvalid-completion-signaturesのモデルである。

テンプレートパラメータ制約

Fnsの各要素Fnが、下記の説明専用コンセプトcompletion-signatureを満たすこと。

template<class Fn>
concept completion-signature = see below;

Fnが下記いずれかを満たす関数型であるとき、Fnはコンセプトcompletion-signatureを満たす。

#include <execution>
namespace ex = std::execution;

int main()
{
  // 下記の完了操作をサポートする完了シグネチャ集合型
  //   値完了     set_value(int), set_value(int, int)
  //   エラー完了 set_error(std::exception_ptr)
  //   停止完了   set_stopped()
  using Sigs = ex::completion_signatures<
    ex::set_value_t(int),
    ex::set_value_t(int, int),
    ex::set_error_t(std::exception_ptr),
    ex::set_stopped_t()
  >;
}

出力

バージョン

言語

  • C++26

処理系

関連項目

参照