[libcxx-commits] [PATCH] D101922: [libcxx][iterator] adds `std::ranges::advance`

Christopher Di Bella via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri May 14 10:45:12 PDT 2021


cjdb updated this revision to Diff 345490.
cjdb marked 16 inline comments as done.
cjdb added a comment.

Applies feedback from @ldionne:

- renames `__iterator/primitives.h` to `__iterator/advance.h`
- adds `__advance_forward` and `__advance_backward` to simplify `advance(i, s)` overload
- removes some `[[nodiscard]]`

Applies feedback from @zoecarver:

- removes `[[nodiscard]]` from `advance(i, n, s)` overload
- moves `sentinel_wrapper` into `test_iterators.h`
- adds comment explaining why `cpp20_input_iterator` is missing
- reverses the distance in some cases


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D101922/new/

https://reviews.llvm.org/D101922

Files:
  libcxx/include/CMakeLists.txt
  libcxx/include/__function_like.h
  libcxx/include/__iterator/advance.h
  libcxx/include/iterator
  libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/advance.pass.cpp
  libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/advance.verify.cpp
  libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/distance.pass.cpp
  libcxx/test/support/test_iterators.h
  libcxx/test/support/test_standard_function.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101922.345490.patch
Type: text/x-patch
Size: 35695 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210514/6fc76cab/attachment-0001.bin>


More information about the libcxx-commits mailing list