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