[range.filter.sentinel] (original) (raw)
25 Ranges library [ranges]
25.7 Range adaptors [range.adaptors]
25.7.8 Filter view [range.filter]
25.7.8.4 Class filter_view::sentinel [range.filter.sentinel]
namespace std::ranges { template<input_range V, indirect_unary_predicate<iterator_t<V>> Pred> requires view<V> && is_object_v<Pred> class filter_view<V, Pred>::sentinel { private: sentinel_t<V> end_ = sentinel_t<V>(); public: sentinel() = default;constexpr explicit sentinel(filter_view& parent);constexpr sentinel_t<V> base() const;friend constexpr bool operator==(const iterator& x, const sentinel& y);};}
constexpr explicit _sentinel_(filter_view& parent);
Effects: Initializes end_ with ranges::end(parent.base_).
constexpr sentinel_t<V> base() const;
Effects: Equivalent to: return end_;
friend constexpr bool operator==(const _iterator_& x, const _sentinel_& y);
Effects: Equivalent to: return x.current_ == y.end_;