@@ -97,15 +97,15 @@ class join_with_view : public view_interface<join_with_view<_View, _Pattern>> {
97
97
_LIBCPP_HIDE_FROM_ABI constexpr explicit join_with_view (_Range&& __r, range_value_t <_InnerRng> __e)
98
98
: __base_(views::all(std::forward<_Range>(__r))), __pattern_(views::single(std::move(__e))) {}
99
99
100
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr _View base () const &
100
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr _View base () const &
101
101
requires copy_constructible<_View>
102
102
{
103
103
return __base_;
104
104
}
105
105
106
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr _View base () && { return std::move (__base_); }
106
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr _View base () && { return std::move (__base_); }
107
107
108
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto begin () {
108
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto begin () {
109
109
if constexpr (forward_range<_View>) {
110
110
constexpr bool __use_const = __simple_view<_View> && is_reference_v<_InnerRng> && __simple_view<_Pattern>;
111
111
return __iterator<__use_const>{*this , ranges::begin (__base_)};
@@ -115,15 +115,15 @@ class join_with_view : public view_interface<join_with_view<_View, _Pattern>> {
115
115
}
116
116
}
117
117
118
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto begin () const
118
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto begin () const
119
119
requires forward_range<const _View> && forward_range<const _Pattern> &&
120
120
is_reference_v<range_reference_t<const _View>> && input_range<range_reference_t<const _View>> &&
121
121
__concatable<range_reference_t<const _View>, const _Pattern>
122
122
{
123
123
return __iterator<true >{*this , ranges::begin (__base_)};
124
124
}
125
125
126
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto end () {
126
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto end () {
127
127
constexpr bool __use_const = __simple_view<_View> && __simple_view<_Pattern>;
128
128
if constexpr (forward_range<_View> && is_reference_v<_InnerRng> && forward_range<_InnerRng> &&
129
129
common_range<_View> && common_range<_InnerRng>)
@@ -132,7 +132,7 @@ class join_with_view : public view_interface<join_with_view<_View, _Pattern>> {
132
132
return __sentinel<__use_const>{*this };
133
133
}
134
134
135
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto end () const
135
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto end () const
136
136
requires forward_range<const _View> && forward_range<const _Pattern> &&
137
137
is_reference_v<range_reference_t<const _View>> && input_range<range_reference_t<const _View>> &&
138
138
__concatable<range_reference_t<const _View>, const _Pattern>
@@ -231,28 +231,28 @@ struct join_with_view<_View, _Pattern>::__iterator
231
231
}
232
232
}
233
233
234
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr _OuterIter& __get_outer () {
234
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr _OuterIter& __get_outer () {
235
235
if constexpr (forward_range<_Base>)
236
236
return __outer_it_;
237
237
else
238
238
return *__parent_->__outer_it_ ;
239
239
}
240
240
241
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr const _OuterIter& __get_outer () const {
241
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr const _OuterIter& __get_outer () const {
242
242
if constexpr (forward_range<_Base>)
243
243
return __outer_it_;
244
244
else
245
245
return *__parent_->__outer_it_ ;
246
246
}
247
247
248
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto & __update_inner () {
248
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto & __update_inner () {
249
249
if constexpr (__ref_is_glvalue)
250
250
return std::__as_lvalue (*__get_outer ());
251
251
else
252
252
return __parent_->__inner_ .__emplace_from ([this ]() -> decltype (auto ) { return *__get_outer (); });
253
253
}
254
254
255
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto & __get_inner () {
255
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto & __get_inner () {
256
256
if constexpr (__ref_is_glvalue)
257
257
return std::__as_lvalue (*__get_outer ());
258
258
else
@@ -282,7 +282,7 @@ struct join_with_view<_View, _Pattern>::__iterator
282
282
}
283
283
}
284
284
285
- [[__nodiscard__ ]] static consteval auto __get_iterator_concept () noexcept {
285
+ [[nodiscard ]] static consteval auto __get_iterator_concept () noexcept {
286
286
if constexpr (__ref_is_glvalue && bidirectional_range<_Base> && __bidirectional_common<_InnerBase> &&
287
287
__bidirectional_common<_PatternBase>)
288
288
return bidirectional_iterator_tag{};
@@ -311,7 +311,7 @@ struct join_with_view<_View, _Pattern>::__iterator
311
311
}
312
312
}
313
313
314
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr decltype (auto ) operator*() const {
314
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr decltype (auto ) operator*() const {
315
315
using __reference = common_reference_t <iter_reference_t <_InnerIter>, iter_reference_t <_PatternIter>>;
316
316
return std::visit ([](auto & __it) -> __reference { return *__it; }, __inner_it_);
317
317
}
@@ -372,13 +372,13 @@ struct join_with_view<_View, _Pattern>::__iterator
372
372
return __tmp;
373
373
}
374
374
375
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator ==(const __iterator& __x, const __iterator& __y)
375
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator ==(const __iterator& __x, const __iterator& __y)
376
376
requires __ref_is_glvalue && forward_range<_Base> && equality_comparable<_InnerIter>
377
377
{
378
378
return __x.__outer_it_ == __y.__outer_it_ && __x.__inner_it_ == __y.__inner_it_ ;
379
379
}
380
380
381
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI friend constexpr decltype (auto ) iter_move(const __iterator& __x) {
381
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI friend constexpr decltype (auto ) iter_move(const __iterator& __x) {
382
382
using __rvalue_reference =
383
383
common_reference_t <iter_rvalue_reference_t <_InnerIter>, iter_rvalue_reference_t <_PatternIter>>;
384
384
return std::visit<__rvalue_reference>(ranges::iter_move, __x.__inner_it_ );
@@ -408,7 +408,7 @@ struct join_with_view<_View, _Pattern>::__sentinel {
408
408
409
409
template <bool _OtherConst>
410
410
requires sentinel_for<sentinel_t <_Base>, iterator_t <__maybe_const<_OtherConst, _View>>>
411
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr bool __equal_to (const __iterator<_OtherConst>& __x) const {
411
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr bool __equal_to (const __iterator<_OtherConst>& __x) const {
412
412
return __x.__get_outer () == __end_;
413
413
}
414
414
@@ -421,7 +421,7 @@ struct join_with_view<_View, _Pattern>::__sentinel {
421
421
422
422
template <bool _OtherConst>
423
423
requires sentinel_for<sentinel_t <_Base>, iterator_t <__maybe_const<_OtherConst, _View>>>
424
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI friend constexpr bool
424
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI friend constexpr bool
425
425
operator ==(const __iterator<_OtherConst>& __x, const __sentinel& __y) {
426
426
return __y.__equal_to (__x);
427
427
}
@@ -431,15 +431,15 @@ namespace views {
431
431
namespace __join_with_view {
432
432
struct __fn {
433
433
template <class _Range , class _Pattern >
434
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator ()(_Range&& __range, _Pattern&& __pattern) const
434
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator ()(_Range&& __range, _Pattern&& __pattern) const
435
435
noexcept (noexcept (/* */ join_with_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern))))
436
436
-> decltype(/* --*/ join_with_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern))) {
437
437
return /* -------------*/ join_with_view (std::forward<_Range>(__range), std::forward<_Pattern>(__pattern));
438
438
}
439
439
440
440
template <class _Pattern >
441
441
requires constructible_from<decay_t <_Pattern>, _Pattern>
442
- [[__nodiscard__ ]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator ()(_Pattern&& __pattern) const
442
+ [[nodiscard ]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator ()(_Pattern&& __pattern) const
443
443
noexcept (is_nothrow_constructible_v<decay_t <_Pattern>, _Pattern>) {
444
444
return __pipeable (std::__bind_back (*this , std::forward<_Pattern>(__pattern)));
445
445
}
0 commit comments