|
4013 | 4013 | \rSec3[range.take.while.view]{Class template \tcode{take_while_view}}
|
4014 | 4014 |
|
4015 | 4015 | \indexlibraryglobal{take_while_view}%
|
| 4016 | +\indexlibrarymember{base}{take_while_view}% |
| 4017 | +\indexlibrarymember{begin}{take_while_view}% |
| 4018 | +\indexlibrarymember{end}{take_while_view}% |
4016 | 4019 | \begin{codeblock}
|
4017 | 4020 | namespace std::ranges {
|
4018 | 4021 | template<view R, class Pred>
|
|
4028 | 4031 | take_while_view() = default;
|
4029 | 4032 | constexpr take_while_view(R base, Pred pred);
|
4030 | 4033 |
|
4031 |
| - constexpr R base() const; |
| 4034 | + constexpr R base() const& requires copy_constructible<R> { return base_; } |
| 4035 | + constexpr R base() && { return std::move(base_); } |
| 4036 | + |
4032 | 4037 | constexpr const Pred& pred() const;
|
4033 | 4038 |
|
4034 | 4039 | constexpr auto begin() requires (!@\placeholder{simple-view}@<R>)
|
|
4061 | 4066 | \tcode{pred_} with \tcode{std::move(pred)}.
|
4062 | 4067 | \end{itemdescr}
|
4063 | 4068 |
|
4064 |
| -\indexlibrarymember{base}{take_while_view}% |
4065 |
| -\begin{itemdecl} |
4066 |
| -constexpr R base() const; |
4067 |
| -\end{itemdecl} |
4068 |
| - |
4069 |
| -\begin{itemdescr} |
4070 |
| -\pnum |
4071 |
| -\effects |
4072 |
| -Equivalent to: \tcode{return base_;} |
4073 |
| -\end{itemdescr} |
4074 |
| - |
4075 | 4069 | \indexlibrarymember{pred}{take_while_view}%
|
4076 | 4070 | \begin{itemdecl}
|
4077 | 4071 | constexpr const Pred& pred() const;
|
|
4177 | 4171 | \rSec3[range.drop.view]{Class template \tcode{drop_view}}
|
4178 | 4172 |
|
4179 | 4173 | \indexlibraryglobal{drop_view}%
|
| 4174 | +\indexlibrarymember{base}{drop_view}% |
| 4175 | +\indexlibrarymember{end}{drop_view}% |
| 4176 | +\indexlibrarymember{size}{drop_view}% |
4180 | 4177 | \begin{codeblock}
|
4181 | 4178 | namespace std::ranges {
|
4182 | 4179 | template<view R>
|
|
4185 | 4182 | drop_view() = default;
|
4186 | 4183 | constexpr drop_view(R base, range_difference_t<R> count);
|
4187 | 4184 |
|
4188 |
| - constexpr R base() const; |
| 4185 | + constexpr R base() const& requires copy_constructible<R> { return base_; } |
| 4186 | + constexpr R base() && { return std::move(base_); } |
4189 | 4187 |
|
4190 | 4188 | constexpr auto begin()
|
4191 | 4189 | requires (!(@\placeholder{simple-view}@<R> && random_access_range<R>));
|
|
4241 | 4239 | \tcode{count_} with \tcode{count}.
|
4242 | 4240 | \end{itemdescr}
|
4243 | 4241 |
|
4244 |
| -\indexlibrarymember{base}{drop_view}% |
4245 |
| -\begin{itemdecl} |
4246 |
| -constexpr R base() const; |
4247 |
| -\end{itemdecl} |
4248 |
| - |
4249 |
| -\begin{itemdescr} |
4250 |
| -\pnum |
4251 |
| -\effects |
4252 |
| -Equivalent to: \tcode{return base_;} |
4253 |
| -\end{itemdescr} |
4254 |
| - |
4255 | 4242 | \indexlibrarymember{begin}{drop_view}%
|
4256 | 4243 | \begin{itemdecl}
|
4257 | 4244 | constexpr auto begin()
|
|
4311 | 4298 | \rSec3[range.drop.while.view]{Class template \tcode{drop_while_view}}
|
4312 | 4299 |
|
4313 | 4300 | \indexlibraryglobal{drop_while_view}%
|
| 4301 | +\indexlibrarymember{base}{drop_while_view}% |
| 4302 | +\indexlibrarymember{end}{drop_while_view}% |
4314 | 4303 | \begin{codeblock}
|
4315 | 4304 | namespace std::ranges {
|
4316 | 4305 | template<view R, class Pred>
|
|
4321 | 4310 | drop_while_view() = default;
|
4322 | 4311 | constexpr drop_while_view(R base, Pred pred);
|
4323 | 4312 |
|
4324 |
| - constexpr R base() const; |
| 4313 | + constexpr R base() const& requires copy_constructible<R> { return base_; } |
| 4314 | + constexpr R base() && { return std::move(base_); } |
| 4315 | + |
4325 | 4316 | constexpr const Pred& pred() const;
|
4326 | 4317 |
|
4327 | 4318 | constexpr auto begin();
|
|
4351 | 4342 | \tcode{pred_} with \tcode{std::move(pred)}.
|
4352 | 4343 | \end{itemdescr}
|
4353 | 4344 |
|
4354 |
| -\indexlibrarymember{base}{drop_while_view}% |
4355 |
| -\begin{itemdecl} |
4356 |
| -constexpr R base() const; |
4357 |
| -\end{itemdecl} |
4358 |
| - |
4359 |
| -\begin{itemdescr} |
4360 |
| -\pnum |
4361 |
| -\effects |
4362 |
| -Equivalent to: \tcode{return base_;} |
4363 |
| -\end{itemdescr} |
4364 |
| - |
4365 | 4345 | \indexlibrarymember{pred}{drop_while_view}%
|
4366 | 4346 | \begin{itemdecl}
|
4367 | 4347 | constexpr const Pred& pred() const;
|
|
5992 | 5972 | \rSec3[range.elements.view]{Class template \tcode{elements_view}}
|
5993 | 5973 |
|
5994 | 5974 | \indexlibraryglobal{elements_view}%
|
| 5975 | +\indexlibrarymember{base}{elements_view}% |
| 5976 | +\indexlibrarymember{begin}{elements_view}% |
| 5977 | +\indexlibrarymember{end}{elements_view}% |
| 5978 | +\indexlibrarymember{size}{elements_view}% |
5995 | 5979 | \begin{codeblock}
|
5996 | 5980 | namespace std::ranges {
|
5997 | 5981 | template<class T, size_t N>
|
|
6012 | 5996 | elements_view() = default;
|
6013 | 5997 | constexpr explicit elements_view(R base);
|
6014 | 5998 |
|
6015 |
| - constexpr R base() const; |
| 5999 | + constexpr R base() const& requires copy_constructible<R> { return base_; } |
| 6000 | + constexpr R base() && { return std::move(base_); } |
6016 | 6001 |
|
6017 | 6002 | constexpr auto begin() requires (!@\placeholder{simple-view}@<R>)
|
6018 | 6003 | { return iterator<false>(ranges::begin(base_)); }
|
|
6050 | 6035 | Initializes \tcode{base_} with \tcode{std::move(base)}.
|
6051 | 6036 | \end{itemdescr}
|
6052 | 6037 |
|
6053 |
| -\indexlibrarymember{base}{elements_view}% |
6054 |
| -\begin{itemdecl} |
6055 |
| -constexpr R base() const; |
6056 |
| -\end{itemdecl} |
6057 |
| - |
6058 |
| -\begin{itemdescr} |
6059 |
| -\pnum |
6060 |
| -\effects |
6061 |
| -Equivalent to: \tcode{return base_;} |
6062 |
| -\end{itemdescr} |
6063 |
| - |
6064 | 6038 | \rSec3[range.elements.iterator]{Class template \tcode{elements_view::iterator}}
|
6065 | 6039 |
|
6066 | 6040 | \indexlibraryglobal{elements_view::iterator}%
|
|
0 commit comments