template<class R>
concept simple-view = // 説明専用コンセプト
view<R> && range<const R> &&
same_as<iterator_t<R>, iterator_t<const R>> &&
same_as<sentinel_t<R>, sentinel_t<const R>>;
概要
simple-view
は型R
が単純(R
はconst
であっても Range である(const-iterable
である)上で、R
が使用するイテレータ/センチネルと読み取り専用のイテレータ/センチネルが同じ型である)となるビューな Range を表す説明専用コンセプトである。
const-iterable
が要件にあることは、const-iterable
ではない Range は内部でキャッシュ等の複雑度が高い仕様となることで、const-iterable
では無くならざるを得なくなることが背景であると考えられる。const-iterable
でないビューとしては、ranges::filter_view
などが挙げられる。
バージョン
言語
- C++20
処理系
- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: ??