std::ranges::subrange< _It, _Sent, _Kind >(3) Library Functions Manual NAME std::ranges::subrange< _It, _Sent, _Kind > - The ranges::subrange class template. SYNOPSIS #include Inherits std::ranges::view_interface< _Derived >. Public Member Functions constexpr subrange (__detail::__convertible_to_non_slicing< _It > auto __i, _Sent __s) noexcept(is_nothrow_constructible_v< _It, decltype(__i)> &&is_nothrow_constructible_v< _Sent, _Sent & >) constexpr subrange (__detail::__convertible_to_non_slicing< _It > auto __i, _Sent __s, __size_type __n) noexcept(is_nothrow_constructible_v< _It, decltype(__i)> &&is_nothrow_constructible_v< _Sent, _Sent & >) template<__detail::__different_from< subrange > _Rng> requires borrowed_range<_Rng> && __detail::__convertible_to_non_slicing, _It> && convertible_to, _Sent>constexpr subrange (_Rng &&__r) noexcept(noexcept(subrange(__r, ranges::size(__r)))) _S_store_size &&sized_range< _Rng >" template<__detail::__different_from< subrange > _Rng> requires borrowed_range<_Rng> && __detail::__convertible_to_non_slicing, _It> && convertible_to, _Sent> (!_S_store_size)constexpr subrange (_Rng &&__r) noexcept(noexcept(subrange(ranges::begin(__r), ranges::end(__r))))" template requires __detail::__convertible_to_non_slicing, _It> && convertible_to, _Sent> (_Kind == subrange_kind::sized)constexpr subrange (_Rng &&__r, __size_type __n) noexcept(noexcept(subrange(ranges::begin(__r), ranges::end(__r), __n)))" constexpr subrange & advance (iter_difference_t< _It > __n) constexpr decltype(auto) back () constexpr decltype(auto) back () const constexpr _It begin () constexpr _It begin () const constexpr auto data () const noexcept(noexcept(ranges::begin(_M_derived()))) constexpr auto data () noexcept(noexcept(ranges::begin(_M_derived()))) constexpr bool empty () const constexpr bool empty () noexcept(noexcept(_S_empty(_M_derived()))) constexpr _Sent end () const constexpr decltype(auto) front () constexpr decltype(auto) front () const constexpr subrange next (iter_difference_t< _It > __n=1) && constexpr subrange next (iter_difference_t< _It > __n=1) const & template<__detail::__different_from< subrange > _PairLike> requires __detail::__pair_like_convertible_from<_PairLike, const _It&, const _Sent&>constexpr operator _PairLike () const" constexpr operator bool () const noexcept(noexcept(ranges::empty(_M_derived()))) constexpr operator bool () noexcept(noexcept(ranges::empty(_M_derived()))) template constexpr decltype(auto) operator[] (range_difference_t< _Range > __n) template constexpr decltype(auto) operator[] (range_difference_t< _Range > __n) const constexpr subrange prev (iter_difference_t< _It > __n=1) const constexpr __size_type size () const constexpr auto size () noexcept(noexcept(_S_size(_M_derived()))) Friends struct views::_Drop Detailed Description template _Sent = _It, subrange_kind _Kind = sized_sentinel_for<_Sent, _It> ? subrange_kind::sized : subrange_kind::unsized> requires (_Kind == subrange_kind::sized || !sized_sentinel_for<_Sent, _It>) class std::ranges::subrange< _It, _Sent, _Kind >"The ranges::subrange class template. Author Generated automatically by Doxygen for libstdc++ from the source code. libstdc++ std::ranges::subrange< _It, _Sent, _Kind >(3)