Skip to content

Commit

Permalink
fixup: add indexing
Browse files Browse the repository at this point in the history
  • Loading branch information
jensmaurer committed Dec 6, 2024
1 parent b9109da commit a01fc21
Showing 1 changed file with 21 additions and 1 deletion.
22 changes: 21 additions & 1 deletion source/ranges.tex
Original file line number Diff line number Diff line change
Expand Up @@ -16769,7 +16769,7 @@
namespace std::ranges {
template<@\libconcept{input_range}@ V>
requires @\libconcept{view}@<V>
class cache_latest_view : public view_interface<cache_latest_view<V>> {
class @\libglobal{cache_latest_view}@ : public view_interface<cache_latest_view<V>> {
V @\exposid{base_}@ = V(); // \expos
using @\exposid{cache_t}@ = conditional_t<is_reference_v<range_reference_t<V>>, // \expos
add_pointer_t<range_reference_t<V>>,
Expand Down Expand Up @@ -16799,6 +16799,7 @@
}
\end{codeblock}

\indexlibraryctor{cache_latest_view}%
\begin{itemdecl}
constexpr explicit cache_latest_view(V base);
\end{itemdecl}
Expand All @@ -16809,6 +16810,7 @@
Initializes \exposid{base_} with \tcode{std::move(base)}.
\end{itemdescr}

\indexlibrarymember{begin}{cache_latest_view}%
\begin{itemdecl}
constexpr auto begin();
\end{itemdecl}
Expand All @@ -16819,6 +16821,7 @@
Equivalent to: \tcode{return \exposid{iterator}(*this);}
\end{itemdescr}

\indexlibrarymember{end}{cache_latest_view}%
\begin{itemdecl}
constexpr auto end();
\end{itemdecl}
Expand All @@ -16829,6 +16832,7 @@
Equivalent to: \tcode{return \exposid{sentinel}(*this);}
\end{itemdescr}

\indexlibrarymember{size}{cache_latest_view}%
\begin{itemdecl}
constexpr auto size() requires sized_range<V>;
constexpr auto size() const requires sized_range<const V>;
Expand Down Expand Up @@ -16878,6 +16882,7 @@
}
\end{codeblock}

\indexlibraryctor{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
constexpr explicit @\exposid{iterator}@(cache_latest_view& parent);
\end{itemdecl}
Expand All @@ -16890,6 +16895,7 @@
and \exposid{parent_} with \tcode{addressof(par\-ent)}.
\end{itemdescr}

\indexlibrarymember{base}{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
constexpr iterator_t<V> base() &&;
\end{itemdecl}
Expand All @@ -16900,6 +16906,7 @@
\tcode{std::move(\exposid{current_})}.
\end{itemdescr}

\indexlibrarymember{base}{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
constexpr const iterator_t<V>& base() const & noexcept;
\end{itemdecl}
Expand All @@ -16910,6 +16917,7 @@
\exposid{current_}.
\end{itemdescr}

\indexlibrarymember{operator++}{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
constexpr iterator& operator++();
\end{itemdecl}
Expand All @@ -16925,6 +16933,7 @@
\end{codeblock}
\end{itemdescr}

\indexlibrarymember{operator++}{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
constexpr void operator++(int);
\end{itemdecl}
Expand All @@ -16935,6 +16944,7 @@
Equivalent to: \tcode{++*this}.
\end{itemdescr}

\indexlibrarymember{operator*}{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
constexpr range_reference_t<V>& operator*() const;
\end{itemdecl}
Expand Down Expand Up @@ -16962,6 +16972,7 @@
\end{note}
\end{itemdescr}

\indexlibrarymember{iter_move}{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
friend constexpr range_rvalue_reference_t<V> iter_move(const @\exposid{iterator}@& i)
noexcept(noexcept(ranges::iter_move(i.@\exposid{current_}@)));
Expand All @@ -16973,6 +16984,7 @@
Equivalent to: \tcode{return ranges::iter_move(i.\exposid{current_});}
\end{itemdescr}

\indexlibrarymember{iter_swap}{cache_latest_view::\exposid{iterator}}%
\begin{itemdecl}
friend constexpr void iter_swap(const @\exposid{iterator}@& x, const @\exposid{iterator}@& y)
noexcept(noexcept(ranges::iter_swap(x.@\exposid{current_}@, y.@\exposid{current_}@)))
Expand Down Expand Up @@ -17012,6 +17024,7 @@
}
\end{codeblock}

\indexlibraryctor{cache_latest_view::\exposid{sentinel}}%
\begin{itemdecl}
constexpr explicit @\exposid{sentinel}@(cache_latest_view& parent);
\end{itemdecl}
Expand All @@ -17022,6 +17035,7 @@
Initializes \exposid{end_} with \tcode{ranges::end(parent.\exposid{base_})}.
\end{itemdescr}

\indexlibrarymember{base}{cache_latest_view::\exposid{sentinel}}%
\begin{itemdecl}
constexpr sentinel_t<V> base() const;
\end{itemdecl}
Expand All @@ -17032,6 +17046,8 @@
\exposid{end_}.
\end{itemdescr}

\indexlibrarymember{operator==}{cache_latest_view::\exposid{iterator}}%
\indexlibrarymember{operator==}{cache_latest_view::\exposid{sentinel}}%
\begin{itemdecl}
friend constexpr bool operator==(const iterator& x, const sentinel& y);
\end{itemdecl}
Expand All @@ -17042,6 +17058,8 @@
\tcode{x.\exposid{current_} == y.\exposid{end_}}.
\end{itemdescr}

\indexlibrarymember{operator-}{cache_latest_view::\exposid{iterator}}%
\indexlibrarymember{operator-}{cache_latest_view::\exposid{sentinel}}%
\begin{itemdecl}
friend constexpr range_difference_t<V> operator-(const @\exposid{iterator}@& x, const @\exposid{sentinel}@& y)
requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
Expand All @@ -17053,6 +17071,8 @@
\tcode{x.\exposid{current_} - y.\exposid{end_}}.
\end{itemdescr}

\indexlibrarymember{operator-}{cache_latest_view::\exposid{iterator}}%
\indexlibrarymember{operator-}{cache_latest_view::\exposid{sentinel}}%
\begin{itemdecl}
friend constexpr range_difference_t<V> operator-(const @\exposid{sentinel}@& x, const @\exposid{iterator}@& y)
requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
Expand Down

0 comments on commit a01fc21

Please sign in to comment.