- mdspan[meta header]
- function template[meta id-type]
- cpp26[meta cpp]
template<size_t k, class Extents, class ... SliceSpecifiers>
constexpr auto last_(const Extents& src, SliceSpecifiers... slices);- Extents[link extents.md]
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