-
Notifications
You must be signed in to change notification settings - Fork 13.6k
[libc++] Implement views::join_with
#65536
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
3259db4
to
0481670
Compare
0481670
to
f113229
Compare
@JMazurkiewicz Please ping us when this is ready to review and make it a non-draft. |
f113229
to
1835f68
Compare
✅ With the latest revision this PR passed the C/C++ code formatter. |
I guess with constexpr variant this cool feature can be finalized now :) |
a84985a
to
fcdf64a
Compare
54a741c
to
a9a1031
Compare
a9a1031
to
9406093
Compare
Instead of `// UNSUPPORTED: c++03, c++11, c++14, c++17, c++20`
Ping @huixie90 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with some nits. Thanks very much for the patch!
struct __join_with_view_iterator_category {}; | ||
|
||
template <class _Base, class _PatternBase, class _InnerBase> | ||
requires is_reference_v<range_reference_t<_Base>> && forward_range<_Base> && forward_range<_InnerBase> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is_reference_v<range_reference_t<_Base>>
is still correct but the spec is using is_reference_v<InnerBase>
, which is simpler
Sorry for the churn about the |
…of `__iterator` Comment: llvm#65536 (comment)
Thank you @huixie90 for your review. I've pushed commits addressing your latest comments (95ea7bc, 8ab29fb, 7198928), and changing three more things:
|
views::join_with
" (https://wg21.link/P2441R2), closes P2441R2:views::join_with
#105185compatible-joinable-ranges
is underconstrained #105346views
explicit
#105252iterators
for proper flattening #105250