template<size_t k, class Extents, class ... SliceSpecifiers>
constexpr auto last_(const Extents& src, SliceSpecifiers... slices);
概要
last_はsubmdspan動作説明用の関数テンプレートである。
index_typeをExtents::index_type型、S_kをSliceSpecifiersのk番目の型、s_kをslicesのk番目の値としたとき、説明用のL_kの値を次のように定義する。
- 型
S_kがconvertible_to<index_type>のモデルのときde-ice(s_k) + 1、そうでなければ - 型
S_kがindex-pair-like<index_type>のモデルのときget<1>(s_k)、そうでなければ - 型
S_kがstrided_sliceの特殊化のときde-ice(s_k.offset) + de-ice(s_k.extent)、そうでなければ src.extent(k)
適格要件
Extentsがextentsの特殊化であること。
事前条件
L_kがindex_type型で表現可能な値であること。
戻り値
extents<IndexType>::index-cast(L_k)
バージョン
言語
- C++26