[libcxx-commits] [PATCH] D107500: [libc++][ranges] Implement `lazy_split_view`.

Konstantin Varlamov via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Mar 10 22:36:57 PST 2022


var-const updated this revision to Diff 414580.
var-const added a comment.

- Add more tests;
- make some of the test views have runtime behavior;
- use a local simplified version of `std::ranges::find` instead of `std::find` in the implementation of `lazy_split_view`;
- make sure `_Maybe*` member variables in `lazy_split_view` are always initialized.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D107500

Files:
  libcxx/docs/Status/RangesPaper.csv
  libcxx/include/CMakeLists.txt
  libcxx/include/__ranges/lazy_split_view.h
  libcxx/include/module.modulemap
  libcxx/include/ranges
  libcxx/test/libcxx/diagnostics/detail.headers/ranges/lazy_split_view.module.verify.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/adaptor.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/base.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/begin.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/constraints.compile.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctad.compile.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.default.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.range.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.view.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/end.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/general.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer.value/begin.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer.value/ctor.default.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer.value/ctor.iter.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer.value/end.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/ctor.copy.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/ctor.default.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/ctor.parent.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/ctor.parent_base.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/deref.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/equal.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/increment.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/types.compile.pass.cpp
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/types.h
  libcxx/test/std/ranges/range.adaptors/range.lazy.split/view_interface.pass.cpp
  libcxx/test/support/test_iterators.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D107500.414580.patch
Type: text/x-patch
Size: 100918 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20220311/2a86c353/attachment-0001.bin>


More information about the libcxx-commits mailing list