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