Re: [Boost-bugs] [Boost C++ Libraries] #13094: boost::adaptors::transform fails to preserve bidirectional behavior of range

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #13094: boost::adaptors::transform fails to preserve bidirectional behavior of range
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-06-24 02:50:36


#13094: boost::adaptors::transform fails to preserve bidirectional behavior of
range
-------------------------------------+-------------------------------------
  Reporter: Jake Cobb | Owner: neilgroves
  <jake.cobb@…> |
      Type: Bugs | Status: closed
 Milestone: To Be Determined | Component: range
   Version: Boost 1.64.0 | Severity: Problem
Resolution: invalid | Keywords: range adaptors
                                     | transform
-------------------------------------+-------------------------------------
Changes (by michel):

 * status: new => closed
 * resolution: => invalid

Comment:

 Random Access Traversal Iterator (in the Boost iterator traversal
 concepts)
 is not the same thing as
 Random Access Iterator (in the Standard iterator categories).

 The former just specifies traversal requirements,
 but the latter also specifies value access requirements.
 (For more details, please consult to the documentation of Boost.Iterator.)
 For example, Random Access Iterator requires that iterator's `reference`
 type is
 a real reference. The iterator in the test case fails to satisfy this
 requirement.

 That being said, I think it would be useful to have `boost::advance`,
 which is parameterized by the Boost iterator traversal concepts.
 I'm going to ask about it on the developer ML.

--
Ticket URL: <https://svn.boost.org/trac10/boost/ticket/13094#comment:2>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-06-24 02:53:42 UTC