- memory[meta header]
- std[meta namespace]
- concept[meta id-type]
- cpp20[meta cpp]
namespace std {
template <class R>
concept no-throw-input-range =
range<R> &&
no-throw-input-iterator<iterator_t<R>> &&
no-throw-sentinel<sentinel_t<R>, iterator_t<R>>;
}
- range[link /reference/ranges/range.md]
- no-throw-input-iterator[link no-throw-input-iterator.md]
- no-throw-sentinel[link no-throw-sentinel.md]
- iterator_t[link /reference/ranges/iterator_t.md]
- sentinel_t[link /reference/ranges/sentinel_t.md]
no-throw-input-range
は、R
型のオブジェクトに対する以下の操作で例外を投げない入力Rangeの説明用コンセプトである:
- このコンセプトは、
std::vector
<bool>
のような、プロキシオブジェクトを指すイテレータをもつ範囲を除外する