Skip to content

Commit ce554b4

Browse files
committed
[libc++] Move __concatable into __ranges/join_with_view.h
1 parent 90f733c commit ce554b4

File tree

1 file changed

+0
-41
lines changed

1 file changed

+0
-41
lines changed

libcxx/include/__ranges/concepts.h

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -10,25 +10,20 @@
1010
#ifndef _LIBCPP___RANGES_CONCEPTS_H
1111
#define _LIBCPP___RANGES_CONCEPTS_H
1212

13-
#include <__concepts/common_reference_with.h>
1413
#include <__concepts/constructible.h>
15-
#include <__concepts/convertible_to.h>
1614
#include <__concepts/movable.h>
1715
#include <__concepts/same_as.h>
1816
#include <__config>
1917
#include <__iterator/concepts.h>
2018
#include <__iterator/incrementable_traits.h>
2119
#include <__iterator/iter_move.h>
2220
#include <__iterator/iterator_traits.h>
23-
#include <__iterator/readable_traits.h>
2421
#include <__ranges/access.h>
2522
#include <__ranges/data.h>
2623
#include <__ranges/enable_borrowed_range.h>
2724
#include <__ranges/enable_view.h>
2825
#include <__ranges/size.h>
2926
#include <__type_traits/add_pointer.h>
30-
#include <__type_traits/common_reference.h>
31-
#include <__type_traits/common_type.h>
3227
#include <__type_traits/is_reference.h>
3328
#include <__type_traits/remove_cvref.h>
3429
#include <__type_traits/remove_reference.h>
@@ -137,42 +132,6 @@ concept viewable_range =
137132
(is_lvalue_reference_v<_Tp> ||
138133
(movable<remove_reference_t<_Tp>> && !__is_std_initializer_list<remove_cvref_t<_Tp>>))));
139134

140-
# if _LIBCPP_STD_VER >= 23
141-
142-
template <class... _Rs>
143-
using __concat_reference_t _LIBCPP_NODEBUG = common_reference_t<range_reference_t<_Rs>...>;
144-
145-
template <class... _Rs>
146-
using __concat_value_t _LIBCPP_NODEBUG = common_type_t<range_value_t<_Rs>...>;
147-
148-
template <class... _Rs>
149-
using __concat_rvalue_reference_t _LIBCPP_NODEBUG = common_reference_t<range_rvalue_reference_t<_Rs>...>;
150-
151-
template <class _Ref, class _RRef, class _It>
152-
concept __concat_indirectly_readable_impl = requires(const _It __it) {
153-
{ *__it } -> convertible_to<_Ref>;
154-
{ ranges::iter_move(__it) } -> convertible_to<_RRef>;
155-
};
156-
157-
template <class... _Rs>
158-
concept __concat_indirectly_readable =
159-
common_reference_with<__concat_reference_t<_Rs...>&&, __concat_value_t<_Rs...>&> &&
160-
common_reference_with<__concat_reference_t<_Rs...>&&, __concat_rvalue_reference_t<_Rs...>&&> &&
161-
common_reference_with<__concat_rvalue_reference_t<_Rs...>&&, const __concat_value_t<_Rs...>&> &&
162-
(__concat_indirectly_readable_impl<__concat_reference_t<_Rs...>,
163-
__concat_rvalue_reference_t<_Rs...>,
164-
iterator_t<_Rs>> &&
165-
...);
166-
167-
template <class... _Rs>
168-
concept __concatable = requires {
169-
typename __concat_reference_t<_Rs...>;
170-
typename __concat_value_t<_Rs...>;
171-
typename __concat_rvalue_reference_t<_Rs...>;
172-
} && __concat_indirectly_readable<_Rs...>;
173-
174-
# endif // _LIBCPP_STD_VER >= 23
175-
176135
} // namespace ranges
177136

178137
#endif // _LIBCPP_STD_VER >= 20

0 commit comments

Comments
 (0)