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

履歴 編集

function template
<execution>

std::execution::parallel_scheduler_replacement::receiver_proxy::try_query(C++26)

template<class P, class-type Query>
optional<P> try_query(Query q) const noexcept;

概要

parallel_schedulerバックエンド実装側からReceiver環境にアクセスするための補助関数。

適格要件

Pはcv修飾された非配列オブジェクト型。

戻り値

説明用のenv*thisが表現するReceiverの環境とする。 下記を満たす場合はnulloptを返す。

  • Query実装定義でサポートされるクエリ集合のメンバではない、または
  • P実装定義でサポートされるQueryの結果型集合のメンバではない、または
  • q(env)適格でない。

そうではなく、q(env)CV修飾されたP型を持つときはq(env)を返す。そうでなければ、optional<P>型の実装定義の値を返す。

例外

投げない

備考

get_stop_token_t実装定義でサポートするクエリ集合に含まれ、inplace_stop_tokenget_stop_token_t実装定義でサポートされる結果型集合のメンバである。

推奨実装:Pinplace_stop_tokenであり型Tstoppable_tokenをモデル化するinplace_stop_token以外の型である場合、try_queryは、*thisに対してset_valueset_errorset_stoppedのいずれかが呼び出されるまで全てのtry_query呼び出しがinplace_stop_tokenオブジェクトと等価なオブジェクトを返す、inplace_stop_token型のオブジェクトを返すべき。

バージョン

言語

  • C++26

処理系

関連項目

参照