9#if defined(__clang_major__) && __clang_major__ <= 15 && !defined(__clangd__)
10#error "Better ranges support required"
24 struct iter_t : std::remove_cvref_t<It> {
27 iter_t(It
it) : std::remove_cvref_t<It>{std::forward<It>(
it)} {}
36 this->std::remove_cvref_t<It>::operator++();
40 this->std::remove_cvref_t<It>::operator++(i);
50 auto begin() const & -> std::input_or_output_iterator auto {
53 auto begin() && -> std::input_or_output_iterator
auto {
66inline constexpr bool ::std::ranges::enable_borrowed_range<
bool operator!=(sentinel_t) const
iter_t operator++(int i) const
friend bool operator==(sentinel_t s, const iter_t &i)
friend bool operator!=(sentinel_t s, const iter_t &i)
bool operator==(sentinel_t) const
std::ptrdiff_t difference_type
const iter_t & operator*() const
auto begin() &&-> std::input_or_output_iterator auto
iter_range_adapter()=default
auto end() const -> std::sentinel_for< iter_t > auto
iter_range_adapter(It it)
auto begin() const &-> std::input_or_output_iterator auto