std::ranges::lazy_split_view<V, Pattern>::outer_iterator<Const>::value_type
From cppreference.com
< cpp | ranges | lazy split view
struct value_type : ranges::view_interface<value_type> |
(since C++20) | |
The value type of the iterator ranges::lazy_split_view<V, Pattern>::/*outer_iterator*/<Const>.
Data members
Typical implementations of value_type
hold only one non-static data member: an iterator of type outer_iterator
(shown here as i_
for exposition only) into underlying view
of the outer class.
Member functions
(constructor) (C++20) |
constructs a value_type object (public member function) |
begin (C++20) |
returns an inner_iterator to the beginning of the inner range (public member function) |
end (C++20) |
returns a std::default_sentinel (public member function) |
Inherited from std::ranges::view_interface | |
(C++20) |
Returns whether the derived view is empty. Provided if it satisfies sized_range or forward_range . (public member function of std::ranges::view_interface<D> ) |
(C++20) |
Returns whether the derived view is not empty. Provided if ranges::empty is applicable to it. (public member function of std::ranges::view_interface<D> ) |
(C++20) |
Returns the first element in the derived view. Provided if it satisfies forward_range . (public member function of std::ranges::view_interface<D> ) |
Member functions
std::ranges::lazy_split_view::outer_iterator::value_type::value_type
value_type() = default; |
(1) | (since C++20) |
constexpr explicit value_type(/*outer_iterator*/ i); |
(2) | (since C++20) |
1) Value initializes the exposition-only non-static data member
i_
via its default member initializer
(= /*outer_iterator*/()).2) Initializes
i_
with std::move(i).
std::ranges::lazy_split_view::outer_iterator::value_type::begin
constexpr /*inner_iterator*/<Const> begin() const; |
(since C++20) | |
Equivalent to return /*inner_iterator*/<Const>{i_};.
std::ranges::lazy_split_view::outer_iterator::value_type::end
constexpr std::default_sentinel_t end() const noexcept; |
(since C++20) | |
Returns std::default_sentinel.
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 3593 | C++20 | end always returns std::default_sentinel but might not be noexcept
|
made noexcept |