|
5521 | 5521 |
|
5522 | 5522 | \rSec3[range.split.outer]{Class template \tcode{split_view::\exposid{outer-iterator}}}
|
5523 | 5523 |
|
5524 |
| -\indexlibraryglobal{split_view::outer-iterator}% |
| 5524 | +\indexlibraryglobal{split_view::\exposid{outer-iterator}}% |
5525 | 5525 | \begin{codeblock}
|
5526 | 5526 | namespace std::ranges {
|
5527 | 5527 | template<@\libconcept{input_range}@ V, @\libconcept{forward_range}@ Pattern>
|
|
5581 | 5581 | \placeholder{current} is equivalent to \exposid{current_} if \tcode{V}
|
5582 | 5582 | models \libconcept{forward_range}, and \tcode{\exposid{parent_}->\exposid{current_}} otherwise.
|
5583 | 5583 |
|
5584 |
| -\indexlibraryctor{split_view::outer-iterator}% |
| 5584 | +\indexlibraryctor{split_view::\exposid{outer-iterator}}% |
5585 | 5585 | \begin{itemdecl}
|
5586 | 5586 | constexpr explicit @\exposid{outer-iterator}@(@\exposid{Parent}@& parent)
|
5587 | 5587 | requires (!@\libconcept{forward_range}@<@\exposid{Base}@>);
|
|
5593 | 5593 | Initializes \exposid{parent_} with \tcode{addressof(parent)}.
|
5594 | 5594 | \end{itemdescr}
|
5595 | 5595 |
|
5596 |
| -\indexlibraryctor{split_view::outer-iterator}% |
| 5596 | +\indexlibraryctor{split_view::\exposid{outer-iterator}}% |
5597 | 5597 | \begin{itemdecl}
|
5598 | 5598 | constexpr @\exposid{outer-iterator}@(@\exposid{Parent}@& parent, iterator_t<@\exposid{Base}@> current)
|
5599 | 5599 | requires @\libconcept{forward_range}@<@\exposid{Base}@>;
|
|
5606 | 5606 | and \exposid{current_} with \tcode{std::move(current)}.
|
5607 | 5607 | \end{itemdescr}
|
5608 | 5608 |
|
5609 |
| -\indexlibraryctor{split_view::outer-iterator}% |
| 5609 | +\indexlibraryctor{split_view::\exposid{outer-iterator}}% |
5610 | 5610 | \begin{itemdecl}
|
5611 | 5611 | constexpr @\exposid{outer-iterator}@(@\exposid{outer-iterator}@<!Const> i)
|
5612 | 5612 | requires Const && @\libconcept{convertible_to}@<iterator_t<V>, iterator_t<@\exposid{Base}@>>;
|
|
5619 | 5619 | \exposid{current_} with \tcode{std::move(i.\exposid{current_})}.
|
5620 | 5620 | \end{itemdescr}
|
5621 | 5621 |
|
5622 |
| -\indexlibrarymember{operator*}{split_view::outer-iterator}% |
| 5622 | +\indexlibrarymember{operator*}{split_view::\exposid{outer-iterator}}% |
5623 | 5623 | \begin{itemdecl}
|
5624 | 5624 | constexpr value_type operator*() const;
|
5625 | 5625 | \end{itemdecl}
|
|
5630 | 5630 | Equivalent to: \tcode{return value_type\{*this\};}
|
5631 | 5631 | \end{itemdescr}
|
5632 | 5632 |
|
5633 |
| -\indexlibrarymember{operator++}{split_view::outer-iterator}% |
| 5633 | +\indexlibrarymember{operator++}{split_view::\exposid{outer-iterator}}% |
5634 | 5634 | \begin{itemdecl}
|
5635 | 5635 | constexpr @\exposid{outer-iterator}@& operator++();
|
5636 | 5636 | \end{itemdecl}
|
|
5657 | 5657 | \end{codeblock}
|
5658 | 5658 | \end{itemdescr}
|
5659 | 5659 |
|
5660 |
| -\indexlibrarymember{operator==}{split_view::outer-iterator}% |
| 5660 | +\indexlibrarymember{operator==}{split_view::\exposid{outer-iterator}}% |
5661 | 5661 | \begin{itemdecl}
|
5662 | 5662 | friend constexpr bool operator==(const @\exposid{outer-iterator}@& x, const @\exposid{outer-iterator}@& y)
|
5663 | 5663 | requires @\libconcept{forward_range}@<@\exposid{Base}@>;
|
|
5669 | 5669 | Equivalent to: \tcode{return x.\exposid{current_} == y.\exposid{current_};}
|
5670 | 5670 | \end{itemdescr}
|
5671 | 5671 |
|
5672 |
| -\indexlibrarymember{operator==}{split_view::outer-iterator}% |
| 5672 | +\indexlibrarymember{operator==}{split_view::\exposid{outer-iterator}}% |
5673 | 5673 | \begin{itemdecl}
|
5674 | 5674 | friend constexpr bool operator==(const @\exposid{outer-iterator}@& x, default_sentinel_t);
|
5675 | 5675 | \end{itemdecl}
|
|
5682 | 5682 |
|
5683 | 5683 | \rSec3[range.split.outer.value]{Class \tcode{split_view::\exposid{outer-iterator}::value_type}}
|
5684 | 5684 |
|
5685 |
| -\indexlibraryglobal{split_view::outer-iterator::value_type}% |
| 5685 | +\indexlibraryglobal{split_view::\exposid{outer-iterator}::value_type}% |
5686 | 5686 | \begin{codeblock}
|
5687 | 5687 | namespace std::ranges {
|
5688 | 5688 | template<@\libconcept{input_range}@ V, @\libconcept{forward_range}@ Pattern>
|
|
5705 | 5705 | }
|
5706 | 5706 | \end{codeblock}
|
5707 | 5707 |
|
5708 |
| -\indexlibraryctor{split_view::outer-iterator::value_type}% |
| 5708 | +\indexlibraryctor{split_view::\exposid{outer-iterator}::value_type}% |
5709 | 5709 | \begin{itemdecl}
|
5710 | 5710 | constexpr explicit value_type(@\exposid{outer-iterator}@ i);
|
5711 | 5711 | \end{itemdecl}
|
|
5716 | 5716 | Initializes \exposid{i_} with \tcode{std::move(i)}.
|
5717 | 5717 | \end{itemdescr}
|
5718 | 5718 |
|
5719 |
| -\indexlibrarymember{begin}{split_view::outer-iterator::value_type}% |
| 5719 | +\indexlibrarymember{begin}{split_view::\exposid{outer-iterator}::value_type}% |
5720 | 5720 | \begin{itemdecl}
|
5721 | 5721 | constexpr @\exposid{inner-iterator}@<Const> begin() const requires copyable<@\exposid{outer-iterator}@>;
|
5722 | 5722 | \end{itemdecl}
|
|
5727 | 5727 | Equivalent to: \tcode{return \exposid{inner-iterator}<Const>\{\exposid{i_}\};}
|
5728 | 5728 | \end{itemdescr}
|
5729 | 5729 |
|
5730 |
| -\indexlibrarymember{begin}{split_view::outer-iterator::value_type}% |
| 5730 | +\indexlibrarymember{begin}{split_view::\exposid{outer-iterator}::value_type}% |
5731 | 5731 | \begin{itemdecl}
|
5732 | 5732 | constexpr @\exposid{inner-iterator}@<Const> begin() requires (!copyable<@\exposid{outer-iterator}@>);
|
5733 | 5733 | \end{itemdecl}
|
|
5737 | 5737 | \effects
|
5738 | 5738 | Equivalent to: \tcode{return \exposid{inner-iterator}<Const>\{std::move(\exposid{i_})\};}
|
5739 | 5739 | \end{itemdescr}
|
5740 |
| -\indexlibrarymember{end}{split_view::outer-iterator::value_type}% |
| 5740 | +\indexlibrarymember{end}{split_view::\exposid{outer-iterator}::value_type}% |
5741 | 5741 | \begin{itemdecl}
|
5742 | 5742 | constexpr default_sentinel_t end() const;
|
5743 | 5743 | \end{itemdecl}
|
|
5750 | 5750 |
|
5751 | 5751 | \rSec3[range.split.inner]{Class template \tcode{split_view::\exposid{inner-iterator}}}
|
5752 | 5752 |
|
5753 |
| -\indexlibraryglobal{split_view::inner-iterator}% |
| 5753 | +\indexlibraryglobal{split_view::\exposid{inner-iterator}}% |
5754 | 5754 | \begin{codeblock}
|
5755 | 5755 | namespace std::ranges {
|
5756 | 5756 | template<@\libconcept{input_range}@ V, @\libconcept{forward_range}@ Pattern>
|
|
5811 | 5811 | \item otherwise, \tcode{iterator_traits<iterator_t<\exposid{Base}>>::iterator_category}.
|
5812 | 5812 | \end{itemize}
|
5813 | 5813 |
|
5814 |
| -\indexlibraryctor{split_view::inner-iterator}% |
| 5814 | +\indexlibraryctor{split_view::\exposid{inner-iterator}}% |
5815 | 5815 | \begin{itemdecl}
|
5816 | 5816 | constexpr explicit @\exposid{inner-iterator}@(@\exposid{outer-iterator}@<Const> i);
|
5817 | 5817 | \end{itemdecl}
|
|
5822 | 5822 | Initializes \exposid{i_} with \tcode{std::move(i)}.
|
5823 | 5823 | \end{itemdescr}
|
5824 | 5824 |
|
5825 |
| -\indexlibrarymember{operator++}{split_view::inner-iterator}% |
| 5825 | +\indexlibrarymember{operator++}{split_view::\exposid{inner-iterator}}% |
5826 | 5826 | \begin{itemdecl}
|
5827 | 5827 | constexpr @\exposid{inner-iterator}@& operator++();
|
5828 | 5828 | \end{itemdecl}
|
|
5843 | 5843 | \end{codeblock}
|
5844 | 5844 | \end{itemdescr}
|
5845 | 5845 |
|
5846 |
| -\indexlibrarymember{operator==}{split_view::inner-iterator}% |
| 5846 | +\indexlibrarymember{operator==}{split_view::\exposid{inner-iterator}}% |
5847 | 5847 | \begin{itemdecl}
|
5848 | 5848 | friend constexpr bool operator==(const @\exposid{inner-iterator}@& x, const @\exposid{inner-iterator}@& y)
|
5849 | 5849 | requires @\libconcept{forward_range}@<@\exposid{Base}@>;
|
|
5855 | 5855 | Equivalent to: \tcode{return x.\exposid{i_}.\placeholder{current} == y.\exposid{i_}.\placeholder{current};}
|
5856 | 5856 | \end{itemdescr}
|
5857 | 5857 |
|
5858 |
| -\indexlibrarymember{operator==}{split_view::inner-iterator}% |
| 5858 | +\indexlibrarymember{operator==}{split_view::\exposid{inner-iterator}}% |
5859 | 5859 | \begin{itemdecl}
|
5860 | 5860 | friend constexpr bool operator==(const @\exposid{inner-iterator}@& x, default_sentinel_t);
|
5861 | 5861 | \end{itemdecl}
|
|
5885 | 5885 | \end{codeblock}
|
5886 | 5886 | \end{itemdescr}
|
5887 | 5887 |
|
5888 |
| -\indexlibrarymember{iter_swap}{split_view::inner-iterator}% |
| 5888 | +\indexlibrarymember{iter_swap}{split_view::\exposid{inner-iterator}}% |
5889 | 5889 | \begin{itemdecl}
|
5890 | 5890 | friend constexpr void iter_swap(const @\exposid{inner-iterator}@& x, const @\exposid{inner-iterator}@& y)
|
5891 | 5891 | noexcept(noexcept(ranges::iter_swap(x.@\exposid{i_}@.@\placeholdernc{current}@, y.@\exposid{i_}@.@\placeholdernc{current}@)))
|
|
0 commit comments