Title
make_reverse_iterator
Status
c++14
Section
[reverse.iterators]
Submitter
Zhihao Yuan

Created on 2013-08-27.00:00:00 last changed 123 months ago

Messages

Date: 2014-01-12.11:18:37

Proposed resolution:

This wording is relative to N3691.

  1. Change header <iterator> synopsis, [iterator.synopsis] as indicated:

    namespace std {
      […]
      template <class Iterator>
        reverse_iterator<Iterator> operator+(
          typename reverse_iterator<Iterator>::difference_type n,
          const reverse_iterator<Iterator>& x);
    
      template <class Iterator>
        reverse_iterator<Iterator> make_reverse_iterator(Iterator i);
    
    }
    
  2. Change class template reverse_iterator synopsis, [reverse.iterator] as indicated:

    namespace std {
      […]
      template <class Iterator>
        reverse_iterator<Iterator> operator+(
          typename reverse_iterator<Iterator>::difference_type n,
          const reverse_iterator<Iterator>& x);
    
      template <class Iterator>
        reverse_iterator<Iterator> make_reverse_iterator(Iterator i);
    
    }
    
  3. After [reverse.iter.opsum] add the following new sub-clause to [reverse.iter.ops]:

    
    template <class Iterator>
      reverse_iterator<Iterator> make_reverse_iterator(Iterator i);
    
    

    -?- Returns: reverse_iterator<Iterator>(i).

Date: 2014-01-12.11:18:37

[ 2013-09 Chicago ]

Billy: reviewed it last night STL: has suggested prior, but denied for complexity

Billy: Alisdair wanted to review for reverse(reverse());

STL: likes the issue, was like him

Stefanus: likes definitions, places where things should be

STL: for consistency with make_move_iterator

Stefanus: minor editorial issue - subdivision in these 2 sections is different from [move.iter]. See [move.iter.nonmember]

STL: motion to move to Ready

Move to Ready

Date: 2013-08-27.00:00:00

We have make_move_iterator, but not make_reverse_iterator, which is also useful when dealing with some types without an rbegin/rend support (like, C strings).

History
Date User Action Args
2014-02-27 17:03:20adminsetstatus: wp -> c++14
2014-02-20 13:52:38adminsetstatus: voting -> wp
2014-02-12 14:19:44adminsetstatus: ready -> voting
2014-01-12 11:18:37adminsetmessages: + msg6767
2014-01-12 11:18:37adminsetstatus: new -> ready
2013-08-27 22:00:30adminsetmessages: + msg6577
2013-08-27 00:00:00admincreate