.TH "std::ranges::subrange< _It, _Sent, _Kind >" 3cxx "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::ranges::subrange< _It, _Sent, _Kind > \- The ranges::subrange class template\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBstd::ranges::view_interface< _Derived >\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "constexpr \fBsubrange\fP (__detail::__convertible_to_non_slicing< _It > \fBauto\fP __i, _Sent \fB__s\fP) noexcept(is_nothrow_constructible_v< _It, \fBdecltype\fP(__i)> &&is_nothrow_constructible_v< _Sent, _Sent & >)" .br .ti -1c .RI "constexpr \fBsubrange\fP (__detail::__convertible_to_non_slicing< _It > \fBauto\fP __i, _Sent \fB__s\fP, __size_type __n) noexcept(is_nothrow_constructible_v< _It, \fBdecltype\fP(__i)> &&is_nothrow_constructible_v< _Sent, _Sent & >)" .br .ti -1c .RI "template<__detail::__different_from< \fBsubrange\fP > _Rng> .br requires borrowed_range<\fB_Rng\fP> && __detail::__convertible_to_non_slicing, _It> && convertible_to, _Sent>constexpr \fBsubrange\fP (\fB_Rng\fP &&__r) noexcept(noexcept(\fBsubrange\fP(__r, ranges::size(__r)))) _S_store_size &&sized_range< \fB_Rng\fP >" .br .ti -1c .RI "template<__detail::__different_from< \fBsubrange\fP > _Rng> .br requires borrowed_range<\fB_Rng\fP> && __detail::__convertible_to_non_slicing, _It> && convertible_to, _Sent> (!_S_store_size)constexpr \fBsubrange\fP (\fB_Rng\fP &&__r) noexcept(noexcept(\fBsubrange\fP(ranges::begin(__r), ranges::end(__r))))" .br .ti -1c .RI "template .br requires __detail::__convertible_to_non_slicing, _It> && convertible_to, _Sent> (\fB_Kind\fP == subrange_kind::sized)constexpr \fBsubrange\fP (\fB_Rng\fP &&__r, __size_type __n) noexcept(noexcept(\fBsubrange\fP(ranges::begin(__r), ranges::end(__r), __n)))" .br .ti -1c .RI "constexpr \fBsubrange\fP & \fBadvance\fP (iter_difference_t< _It > __n)" .br .ti -1c .RI "constexpr \fBdecltype\fP(\fBauto\fP) \fBback\fP ()" .br .ti -1c .RI "constexpr \fBdecltype\fP(\fBauto\fP) \fBback\fP () const" .br .ti -1c .RI "constexpr _It \fBbegin\fP ()" .br .ti -1c .RI "constexpr _It \fBbegin\fP () const" .br .ti -1c .RI "constexpr \fBauto\fP \fBdata\fP () const noexcept(noexcept(ranges::begin(_M_derived())))" .br .ti -1c .RI "constexpr \fBauto\fP \fBdata\fP () noexcept(noexcept(ranges::begin(_M_derived())))" .br .ti -1c .RI "constexpr bool \fBempty\fP () const" .br .ti -1c .RI "constexpr bool \fBempty\fP () noexcept(noexcept(_S_empty(_M_derived())))" .br .ti -1c .RI "constexpr _Sent \fBend\fP () const" .br .ti -1c .RI "constexpr \fBdecltype\fP(\fBauto\fP) \fBfront\fP ()" .br .ti -1c .RI "constexpr \fBdecltype\fP(\fBauto\fP) \fBfront\fP () const" .br .ti -1c .RI "constexpr \fBsubrange\fP \fBnext\fP (iter_difference_t< _It > __n=1) &&" .br .ti -1c .RI "constexpr \fBsubrange\fP \fBnext\fP (iter_difference_t< _It > __n=1) const &" .br .ti -1c .RI "template<__detail::__different_from< \fBsubrange\fP > _PairLike> .br requires __detail::__pair_like_convertible_from<\fB_PairLike\fP, const _It&, const _Sent&>constexpr \fBoperator _PairLike\fP () const" .br .ti -1c .RI "constexpr \fBoperator bool\fP () const noexcept(noexcept(ranges::empty(_M_derived())))" .br .ti -1c .RI "constexpr \fBoperator bool\fP () noexcept(noexcept(ranges::empty(_M_derived())))" .br .ti -1c .RI "template constexpr \fBdecltype\fP(\fBauto\fP) \fBoperator[]\fP (\fBrange_difference_t\fP< _Range > __n)" .br .ti -1c .RI "template constexpr \fBdecltype\fP(\fBauto\fP) \fBoperator[]\fP (\fBrange_difference_t\fP< _Range > __n) const" .br .ti -1c .RI "constexpr \fBsubrange\fP \fBprev\fP (iter_difference_t< _It > __n=1) const" .br .ti -1c .RI "constexpr __size_type \fBsize\fP () const" .br .ti -1c .RI "constexpr \fBauto\fP \fBsize\fP () noexcept(noexcept(_S_size(_M_derived())))" .br .in -1c .SS "Friends" .in +1c .ti -1c .RI "\fBstruct\fP \fBviews::_Drop\fP" .br .in -1c .SH "Detailed Description" .PP .SS "template _Sent = _It, subrange_kind _Kind = sized_sentinel_for<_Sent, _It> ? subrange_kind::sized : subrange_kind::unsized> .br requires (\fB_Kind\fP == subrange_kind::sized || !sized_sentinel_for<_Sent, _It>) .br class std::ranges::subrange< _It, _Sent, _Kind >"The ranges::subrange class template\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.