Lines Matching refs:_Up

459               size_t ..._Ul, class ..._Tl, class ..._Up>
464 _Up&&... __u)
465 _NOEXCEPT_((__all<is_nothrow_constructible<_Tf, _Up>::value...>::value &&
467 __tuple_leaf<_Uf, _Tf>(_VSTD::forward<_Up>(__u))...,
472 size_t ..._Ul, class ..._Tl, class ..._Up>
478 _Up&&... __u) :
479 __tuple_leaf<_Uf, _Tf>(__uses_alloc_ctor<_Tf, _Alloc, _Up>(), __a,
480 _VSTD::forward<_Up>(__u))...,
529 template<class _Dest, class _Source, class ..._Up, size_t ..._Np>
531 void __memberwise_forward_assign(_Dest& __dest, _Source&& __source, __tuple_types<_Up...>, __tuple_…
533 _VSTD::get<_Np>(__dest) = _VSTD::forward<_Up>(_VSTD::get<_Np>(__source))
544 template <size_t _Jp, class ..._Up> friend _LIBCPP_CONSTEXPR_AFTER_CXX11
545 typename tuple_element<_Jp, tuple<_Up...> >::type& get(tuple<_Up...>&) _NOEXCEPT;
546 template <size_t _Jp, class ..._Up> friend _LIBCPP_CONSTEXPR_AFTER_CXX11
547 … const typename tuple_element<_Jp, tuple<_Up...> >::type& get(const tuple<_Up...>&) _NOEXCEPT;
548 template <size_t _Jp, class ..._Up> friend _LIBCPP_CONSTEXPR_AFTER_CXX11
549 typename tuple_element<_Jp, tuple<_Up...> >::type&& get(tuple<_Up...>&&) _NOEXCEPT;
550 template <size_t _Jp, class ..._Up> friend _LIBCPP_CONSTEXPR_AFTER_CXX11
551 … const typename tuple_element<_Jp, tuple<_Up...> >::type&& get(const tuple<_Up...>&&) _NOEXCEPT;
675 template <class ..._Up> struct _IsThisTuple : false_type { };
676 template <class _Up> struct _IsThisTuple<_Up> : is_same<__uncvref_t<_Up>, tuple> { };
678 template <class ..._Up>
681 _Not<_IsThisTuple<_Up...> >, // extension to allow mis-behaved user constructors
682 is_constructible<_Tp, _Up>...
685 template <class ..._Up, __enable_if_t<
687 _BoolConstant<sizeof...(_Up) == sizeof...(_Tp)>,
688 _EnableUTypesCtor<_Up...>,
689 is_convertible<_Up, _Tp>... // explicit check
693 tuple(_Up&&... __u)
694 _NOEXCEPT_((_And<is_nothrow_constructible<_Tp, _Up>...>::value))
695 : __base_(typename __make_tuple_indices<sizeof...(_Up)>::type(),
696 typename __make_tuple_types<tuple, sizeof...(_Up)>::type(),
697 typename __make_tuple_indices<sizeof...(_Tp), sizeof...(_Up)>::type(),
698 typename __make_tuple_types<tuple, sizeof...(_Tp), sizeof...(_Up)>::type(),
699 _VSTD::forward<_Up>(__u)...) {}
701 template <class ..._Up, __enable_if_t<
703 _BoolConstant<sizeof...(_Up) == sizeof...(_Tp)>,
704 _EnableUTypesCtor<_Up...>,
705 _Not<_Lazy<_And, is_convertible<_Up, _Tp>...> > // explicit check
709 explicit tuple(_Up&&... __u)
710 _NOEXCEPT_((_And<is_nothrow_constructible<_Tp, _Up>...>::value))
711 : __base_(typename __make_tuple_indices<sizeof...(_Up)>::type(),
712 typename __make_tuple_types<tuple, sizeof...(_Up)>::type(),
713 typename __make_tuple_indices<sizeof...(_Tp), sizeof...(_Up)>::type(),
714 typename __make_tuple_types<tuple, sizeof...(_Tp), sizeof...(_Up)>::type(),
715 _VSTD::forward<_Up>(__u)...) {}
717 template <class _Alloc, class ..._Up, __enable_if_t<
719 _BoolConstant<sizeof...(_Up) == sizeof...(_Tp)>,
720 _EnableUTypesCtor<_Up...>,
721 is_convertible<_Up, _Tp>... // explicit check
725 tuple(allocator_arg_t, const _Alloc& __a, _Up&&... __u)
727 typename __make_tuple_indices<sizeof...(_Up)>::type(),
728 typename __make_tuple_types<tuple, sizeof...(_Up)>::type(),
729 typename __make_tuple_indices<sizeof...(_Tp), sizeof...(_Up)>::type(),
730 typename __make_tuple_types<tuple, sizeof...(_Tp), sizeof...(_Up)>::type(),
731 _VSTD::forward<_Up>(__u)...) {}
733 template <class _Alloc, class ..._Up, __enable_if_t<
735 _BoolConstant<sizeof...(_Up) == sizeof...(_Tp)>,
736 _EnableUTypesCtor<_Up...>,
737 _Not<_Lazy<_And, is_convertible<_Up, _Tp>...> > // explicit check
741 explicit tuple(allocator_arg_t, const _Alloc& __a, _Up&&... __u)
743 typename __make_tuple_indices<sizeof...(_Up)>::type(),
744 typename __make_tuple_types<tuple, sizeof...(_Up)>::type(),
745 typename __make_tuple_indices<sizeof...(_Tp), sizeof...(_Up)>::type(),
746 typename __make_tuple_types<tuple, sizeof...(_Tp), sizeof...(_Up)>::type(),
747 _VSTD::forward<_Up>(__u)...) {}
774 template <class _OtherTuple, class... _Up>
775 struct _EnableCtorFromUTypesTuple<_OtherTuple, tuple<_Up...>,
777 __enable_if_t<sizeof...(_Up) == sizeof...(_Tp)>> : _And<
782 is_constructible<_Tp, __copy_cvref_t<_OtherTuple, _Up> >...,
784 // _Tp and _Up are 1-element packs - the pack expansions look
787 _Not<is_same<_Tp, _Up> >...,
794 template <class ..._Up, __enable_if_t<
796 _EnableCtorFromUTypesTuple<const tuple<_Up...>&>,
797 is_convertible<const _Up&, _Tp>... // explicit check
801 tuple(const tuple<_Up...>& __t)
802 _NOEXCEPT_((_And<is_nothrow_constructible<_Tp, const _Up&>...>::value))
806 template <class ..._Up, __enable_if_t<
808 _EnableCtorFromUTypesTuple<const tuple<_Up...>&>,
809 _Not<_Lazy<_And, is_convertible<const _Up&, _Tp>...> > // explicit check
813 explicit tuple(const tuple<_Up...>& __t)
814 _NOEXCEPT_((_And<is_nothrow_constructible<_Tp, const _Up&>...>::value))
818 template <class ..._Up, class _Alloc, __enable_if_t<
820 _EnableCtorFromUTypesTuple<const tuple<_Up...>&>,
821 is_convertible<const _Up&, _Tp>... // explicit check
825 tuple(allocator_arg_t, const _Alloc& __a, const tuple<_Up...>& __t)
829 template <class ..._Up, class _Alloc, __enable_if_t<
831 _EnableCtorFromUTypesTuple<const tuple<_Up...>&>,
832 _Not<_Lazy<_And, is_convertible<const _Up&, _Tp>...> > // explicit check
836 explicit tuple(allocator_arg_t, const _Alloc& __a, const tuple<_Up...>& __t)
843 template <class... _Up, enable_if_t<
844 _EnableCtorFromUTypesTuple<tuple<_Up...>&>::value>* = nullptr>
846 explicit(!(is_convertible_v<_Up&, _Tp> && ...))
847 tuple(tuple<_Up...>& __t) : __base_(__t) {}
849 template <class _Alloc, class... _Up, enable_if_t<
850 _EnableCtorFromUTypesTuple<tuple<_Up...>&>::value>* = nullptr>
852 explicit(!(is_convertible_v<_Up&, _Tp> && ...))
853 …tuple(allocator_arg_t, const _Alloc& __alloc, tuple<_Up...>& __t) : __base_(allocator_arg_t(), __a…
858 template <class ..._Up, __enable_if_t<
860 _EnableCtorFromUTypesTuple<tuple<_Up...>&&>,
861 is_convertible<_Up, _Tp>... // explicit check
865 tuple(tuple<_Up...>&& __t)
866 _NOEXCEPT_((_And<is_nothrow_constructible<_Tp, _Up>...>::value))
870 template <class ..._Up, __enable_if_t<
872 _EnableCtorFromUTypesTuple<tuple<_Up...>&&>,
873 _Not<_Lazy<_And, is_convertible<_Up, _Tp>...> > // explicit check
877 explicit tuple(tuple<_Up...>&& __t)
878 _NOEXCEPT_((_And<is_nothrow_constructible<_Tp, _Up>...>::value))
882 template <class _Alloc, class ..._Up, __enable_if_t<
884 _EnableCtorFromUTypesTuple<tuple<_Up...>&&>,
885 is_convertible<_Up, _Tp>... // explicit check
889 tuple(allocator_arg_t, const _Alloc& __a, tuple<_Up...>&& __t)
893 template <class _Alloc, class ..._Up, __enable_if_t<
895 _EnableCtorFromUTypesTuple<tuple<_Up...>&&>,
896 _Not<_Lazy<_And, is_convertible<_Up, _Tp>...> > // explicit check
900 explicit tuple(allocator_arg_t, const _Alloc& __a, tuple<_Up...>&& __t)
907 template <class... _Up, enable_if_t<
908 _EnableCtorFromUTypesTuple<const tuple<_Up...>&&>::value>* = nullptr>
910 explicit(!(is_convertible_v<const _Up&&, _Tp> && ...))
911 tuple(const tuple<_Up...>&& __t) : __base_(std::move(__t)) {}
913 template <class _Alloc, class... _Up, enable_if_t<
914 _EnableCtorFromUTypesTuple<const tuple<_Up...>&&>::value>* = nullptr>
916 explicit(!(is_convertible_v<const _Up&&, _Tp> && ...))
917 tuple(allocator_arg_t, const _Alloc& __alloc, const tuple<_Up...>&& __t)
1113 template<class... _Up, __enable_if_t<
1115 _BoolConstant<sizeof...(_Tp) == sizeof...(_Up)>,
1116 is_assignable<_Tp&, _Up const&>...
1120 tuple& operator=(tuple<_Up...> const& __tuple)
1121 _NOEXCEPT_((_And<is_nothrow_assignable<_Tp&, _Up const&>...>::value))
1128 template<class... _Up, __enable_if_t<
1130 _BoolConstant<sizeof...(_Tp) == sizeof...(_Up)>,
1131 is_assignable<_Tp&, _Up>...
1135 tuple& operator=(tuple<_Up...>&& __tuple)
1136 _NOEXCEPT_((_And<is_nothrow_assignable<_Tp&, _Up>...>::value))
1139 __tuple_types<_Up...>(),
1234 template<class _Up, size_t _Np, class = __enable_if_t<
1237 is_assignable<_Tp&, _Up const&>...
1241 tuple& operator=(array<_Up, _Np> const& __array)
1242 _NOEXCEPT_((_And<is_nothrow_assignable<_Tp&, _Up const&>...>::value))
1250 template<class _Up, size_t _Np, class = void, class = __enable_if_t<
1253 is_assignable<_Tp&, _Up>...
1257 tuple& operator=(array<_Up, _Np>&& __array)
1258 _NOEXCEPT_((_And<is_nothrow_assignable<_Tp&, _Up>...>::value))
1261 __tuple_types<_If<true, _Up, _Tp>...>(),
1291 template <class _Up>
1293 tuple(array<_Up, 0>) _NOEXCEPT {}
1294 template <class _Alloc, class _Up>
1296 tuple(allocator_arg_t, const _Alloc&, array<_Up, 0>) _NOEXCEPT {}
1468 template <class _Up>
1499 template <class _Tp, class _Up>
1501 bool operator()(const _Tp& __x, const _Up& __y)
1510 template <class _Tp, class _Up>
1512 bool operator()(const _Tp&, const _Up&)
1518 template <class ..._Tp, class ..._Up>
1521 operator==(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
1523 static_assert (sizeof...(_Tp) == sizeof...(_Up), "Can't compare tuples of different sizes");
1531 template <class ..._Tp, class ..._Up, size_t ..._Is>
1534 __tuple_compare_three_way(const tuple<_Tp...>& __x, const tuple<_Up...>& __y, index_sequence<_Is...…
1535 …common_comparison_category_t<__synth_three_way_result<_Tp, _Up>...> __result = strong_ordering::eq…
1540 template <class ..._Tp, class ..._Up>
1541 requires (sizeof...(_Tp) == sizeof...(_Up))
1543 common_comparison_category_t<__synth_three_way_result<_Tp, _Up>...>
1544 operator<=>(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
1551 template <class ..._Tp, class ..._Up>
1554 operator!=(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
1562 template <class _Tp, class _Up>
1564 bool operator()(const _Tp& __x, const _Up& __y)
1578 template <class _Tp, class _Up>
1580 bool operator()(const _Tp&, const _Up&)
1586 template <class ..._Tp, class ..._Up>
1589 operator<(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
1591 static_assert (sizeof...(_Tp) == sizeof...(_Up), "Can't compare tuples of different sizes");
1595 template <class ..._Tp, class ..._Up>
1598 operator>(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
1603 template <class ..._Tp, class ..._Up>
1606 operator>=(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
1611 template <class ..._Tp, class ..._Up>
1614 operator<=(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
1623 template <class _Tp, class _Up> struct __tuple_cat_type;