[all-commits] [llvm/llvm-project] 43bc1e: [libc++][ranges] Implement Ranges changes to `istr...

Konstantin Varlamov via All-commits all-commits at lists.llvm.org
Tue Feb 15 17:00:00 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 43bc1e5600344d54ad87eae9b1515e2fa5a9597e
      https://github.com/llvm/llvm-project/commit/43bc1e5600344d54ad87eae9b1515e2fa5a9597e
  Author: Konstantin Varlamov <varconst at apple.com>
  Date:   2022-02-15 (Tue, 15 Feb 2022)

  Changed paths:
    M libcxx/docs/Status/RangesPaper.csv
    M libcxx/include/__iterator/default_sentinel.h
    M libcxx/include/__iterator/istream_iterator.h
    M libcxx/include/__iterator/istreambuf_iterator.h
    M libcxx/include/iterator
    M libcxx/test/std/iterators/stream.iterators/istream.iterator/istream.iterator.cons/default.pass.cpp
    A libcxx/test/std/iterators/stream.iterators/istream.iterator/istream.iterator.cons/default_sentinel_t.pass.cpp
    M libcxx/test/std/iterators/stream.iterators/istream.iterator/istream.iterator.ops/equal.pass.cpp
    M libcxx/test/std/iterators/stream.iterators/istreambuf.iterator/istreambuf.iterator.cons/default.pass.cpp
    A libcxx/test/std/iterators/stream.iterators/istreambuf.iterator/istreambuf.iterator.cons/default_sentinel_t.pass.cpp
    M libcxx/test/std/iterators/stream.iterators/istreambuf.iterator/istreambuf.iterator_op!=/not_equal.pass.cpp
    M libcxx/test/std/iterators/stream.iterators/istreambuf.iterator/istreambuf.iterator_op==/equal.pass.cpp

  Log Message:
  -----------
  [libc++][ranges] Implement Ranges changes to `istream{,buf}_iterator`.

The changes from the One Ranges Proposal amount to adding:
- a constructor that takes a `default_sentinel_t` and is equivalent to
  the default constructor;
- an `operator==` that compares the iterator to `default_sentinel_t`.

The original proposal defined two overloads for `operator==` (different
argument order) as well as `operator!=`. This has been removed by
[P1614](https://wg21.link/p1614).

Differential Revision: https://reviews.llvm.org/D119620




More information about the All-commits mailing list