Namespaces
Variants
Views
Actions

std::ranges::lazy_split_view<V, Pattern>::outer_iterator<Const>::value_type

From cppreference.com
 
 
Ranges library
Range access
Range conversions
(C++23)
Range primitives



Dangling iterator handling
Range concepts
Views

Factories




Adaptors
Range adaptor objects
Range adaptor closure objects
Helper items
 
 
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>.

Contents

[edit] 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.

[edit] 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>) [edit]
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>) [edit]
(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>) [edit]

[edit] 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.

[edit] 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