std::ranges::lazy_split_view::end(3)

NAME
std::ranges::lazy_split_view::end - std::ranges::lazy_split_view::end

Synopsis
   constexpr auto end() requires ranges::forward_range<V> && (1) (since C++20)
   ranges::common_range<V>;
   constexpr auto end() const; (2) (since C++20)
   1) Returns an iterator representing the end of the view.
   Equivalent to:
   return /*outer_iterator*/</*simple_view*/<V>>{*this, ranges::end(base_)};.
   2) Returns an outer_iterator or a std::default_sentinel representing the end of the
   view.
   Equivalent to:
 if constexpr (ranges::forward_range<V> && ranges::forward_range<const V> &&
               ranges::common_range<const V>)
     return /*outer_iterator*/<true>{*this, ranges::end(base_)};
 else
     return std::default_sentinel;

Parameters
   (none)

Return value
   An outer_iterator or a std::default_sentinel representing the end of the view.

Example
// Run this code
 #include <iostream>
 #include <ranges>
 #include <string_view>
 int main()
 {
     constexpr std::string_view keywords{ "false float for friend" };
     std::ranges::lazy_split_view kw{ keywords, ' ' };
     const auto count = std::ranges::distance(kw.begin(), kw.end());
     std::cout << "Words count: " << count << '\n';
 }

Output:
 Words count: 4

See also
   begin returns an iterator to the beginning
   (C++20) (public member function)
   end returns an iterator or a sentinel to the end
   (C++20) (public member function of std::ranges::split_view<V,Pattern>)
   ranges::begin returns an iterator to the beginning of a range
   (C++20) (customization point object)
   ranges::end returns a sentinel indicating the end of a range
   (C++20) (customization point object)