-
Notifications
You must be signed in to change notification settings - Fork 767
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[reverse.iterators] Dissolve single-item subclauses. #1832
Conversation
@zygoloid : This merge went the wrong way: You merged "master" into my branch, it seems, rather than the other way round. |
Rebased. |
@jensmaurer This is github's "rebase someone else's PR" feature. Sadly it appears to be broken right now (it fails to actually re-check whether the PR is mergeable afterwards or something). |
source/iterators.tex
Outdated
|
||
\indexlibrarymember{operator+}{reverse_iterator}% | ||
\begin{itemdecl} | ||
constexpr reverse_iterator operator+(difference_type n) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I find it a bit strange to call this an "observer", since it does not of itself provide any mechanism to actually observe the state of the iterator. (It seems a little odd to call operator*
, operator->
, and operator[]
observers, rather than something like "element access", too).
I might be tempted to instead lump operator++
, operator--
, operator+
, operator+=
, operator-
, operator-=
under something like "reverse_iterator
navigation", put these three under "reverse_iterator
element access", and keep base
as a single-item subclause (which I think makes sense, as it's the one and only part of the reverse_iterator
interface that is not part of some Iterator concept).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds reasonable. Done.
This is worth calling out to @mclow as it will affect a small number of issues in the LWG issues list. I think the proposed change looks cleaner though. |
Thanks for the callout; I can fix the issues. |
Postponed to post-meeting mailing due to changes to stable names. |
Rebased. |
To be merged after Jacksonville motions. |
@@ -1315,8 +1313,6 @@ | |||
\tcode{u.current}. | |||
\end{itemdescr} | |||
|
|||
\rSec4[reverse.iter.op=]{\tcode{reverse_iterator::operator=}} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're missing an xrefdelta entry for this.
\movedxref{reverse.iter.op+=}{reverse.iter.nav} | ||
\movedxref{reverse.iter.op\dcr}{reverse.iter.nav} | ||
\movedxref{reverse.iter.op-=}{reverse.iter.nav} | ||
\movedxref{reverse.iter.op++}{reverse.iter.nav} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We already did this one.
\movedxref{reverse.iter.op>=}{reverse.iter.cmp} | ||
\movedxref{reverse.iter.op<=}{reverse.iter.cmp} | ||
|
||
\movedxref{reverse.iter.star}{reverse.iter.elem} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was called reverse.iter.op.star, not reverse.iter.star, for some reason.
Partially addresses #1429.