Skip to content

Latest commit

 

History

History
26 lines (21 loc) · 780 Bytes

tuple-transform.md

File metadata and controls

26 lines (21 loc) · 780 Bytes

tuple-transform

  • ranges[meta header]
  • function template[meta id-type]
  • cpp23[meta cpp]
namespace std::ranges {
  template<class F, class Tuple>
  constexpr auto tuple-transform(F&& f, Tuple&& t) {
    return apply([&]<class... Ts>(Ts&&... elements) {
      return tuple<invoke_result_t<F&, Ts>...>(invoke(f, std::forward<Ts>(elements))...);
    }, std::forward<Tuple>(t));
  }
}

概要

tuple-transform は、tupleの各要素に対して関数を適用し、それらの結果を要素とするtupleを生成する説明専用の関数テンプレートである。

バージョン

言語

  • C++23

参照