std::tuple< _Elements >(3cxx) | std::tuple< _Elements >(3cxx) |
NAME¶
std::tuple< _Elements > - Primary class template, tuple.
SYNOPSIS¶
Inherits std::_Tuple_impl< 0, _Elements... >.
Public Member Functions¶
template<typename... _UElements, bool _Valid =
__valid_args<_UElements...>(), _ImplicitCtor< _Valid, _UElements...
> = true> constexpr tuple (_UElements &&... __elements)
noexcept(__nothrow_constructible< _UElements... >())
template<typename... _UElements, bool _Valid =
__valid_args<_UElements...>(), _ExplicitCtor< _Valid, _UElements...
> = false> constexpr tuple (_UElements &&...
__elements) noexcept(__nothrow_constructible< _UElements... >())
template<typename _Alloc , _ImplicitDefaultCtor< is_object<
_Alloc >::value > = true> constexpr tuple (allocator_arg_t
__tag, const _Alloc &__a)
template<typename _Alloc , typename... _UElements, bool _Valid =
__valid_args<_UElements...>(), _ImplicitCtor< _Valid, _UElements...
> = true> constexpr tuple (allocator_arg_t __tag, const _Alloc
&__a, _UElements &&... __elements)
template<typename _Alloc , typename... _UElements, bool _Valid =
__valid_args<_UElements...>(), _ExplicitCtor< _Valid, _UElements...
> = false> constexpr tuple (allocator_arg_t __tag, const _Alloc
&__a, _UElements &&... __elements)
template<typename _Alloc , bool _NotEmpty = (sizeof...(_Elements) >= 1),
_ImplicitCtor< _NotEmpty, const _Elements &... > = true>
constexpr tuple (allocator_arg_t __tag, const _Alloc &__a, const
_Elements &... __elements)
template<typename _Alloc , bool _NotEmpty = (sizeof...(_Elements) >= 1),
_ExplicitCtor< _NotEmpty, const _Elements &... > = false>
constexpr tuple (allocator_arg_t __tag, const _Alloc &__a, const
_Elements &... __elements)
template<typename _Alloc > constexpr tuple (allocator_arg_t
__tag, const _Alloc &__a, const tuple &__in)
template<typename _Alloc , typename... _UElements, bool _Valid =
(sizeof...(_Elements) == sizeof...(_UElements)) &&
!__use_other_ctor<const tuple<_UElements...>&>(),
_ImplicitCtor< _Valid, const _UElements &... > = true>
constexpr tuple (allocator_arg_t __tag, const _Alloc &__a, const
tuple< _UElements... > &__in)
template<typename _Alloc , typename... _UElements, bool _Valid =
(sizeof...(_Elements) == sizeof...(_UElements)) &&
!__use_other_ctor<const tuple<_UElements...>&>(),
_ExplicitCtor< _Valid, const _UElements &... > = false>
constexpr tuple (allocator_arg_t __tag, const _Alloc &__a, const
tuple< _UElements... > &__in)
template<typename _Alloc > constexpr tuple (allocator_arg_t
__tag, const _Alloc &__a, tuple &&__in)
template<typename _Alloc , typename... _UElements, bool _Valid =
(sizeof...(_Elements) == sizeof...(_UElements)) &&
!__use_other_ctor<tuple<_UElements...>&&>(),
_ImplicitCtor< _Valid, _UElements... > = true> constexpr
tuple (allocator_arg_t __tag, const _Alloc &__a, tuple<
_UElements... > &&__in)
template<typename _Alloc , typename... _UElements, bool _Valid =
(sizeof...(_Elements) == sizeof...(_UElements)) &&
!__use_other_ctor<tuple<_UElements...>&&>(),
_ExplicitCtor< _Valid, _UElements... > = false> constexpr
tuple (allocator_arg_t __tag, const _Alloc &__a, tuple<
_UElements... > &&__in)
template<bool _NotEmpty = (sizeof...(_Elements) >= 1), _ImplicitCtor<
_NotEmpty, const _Elements &... > = true> constexpr tuple
(const _Elements &... __elements) noexcept(__nothrow_constructible<
const _Elements &... >())
template<bool _NotEmpty = (sizeof...(_Elements) >= 1), _ExplicitCtor<
_NotEmpty, const _Elements &... > = false> constexpr tuple
(const _Elements &... __elements) noexcept(__nothrow_constructible<
const _Elements &... >())
constexpr tuple (const tuple &)=default
template<typename... _UElements, bool _Valid = (sizeof...(_Elements) ==
sizeof...(_UElements)) && !__use_other_ctor<const
tuple<_UElements...>&>(), _ImplicitCtor< _Valid, const
_UElements &... > = true> constexpr tuple (const
tuple< _UElements... > &__in)
noexcept(__nothrow_constructible< const _UElements &... >())
template<typename... _UElements, bool _Valid = (sizeof...(_Elements) ==
sizeof...(_UElements)) && !__use_other_ctor<const
tuple<_UElements...>&>(), _ExplicitCtor< _Valid, const
_UElements &... > = false> constexpr tuple (const
tuple< _UElements... > &__in)
noexcept(__nothrow_constructible< const _UElements &... >())
constexpr tuple (tuple &&)=default
template<typename... _UElements, bool _Valid = (sizeof...(_Elements) ==
sizeof...(_UElements)) &&
!__use_other_ctor<tuple<_UElements...>&&>(),
_ImplicitCtor< _Valid, _UElements... > = true> constexpr
tuple (tuple< _UElements... > &&__in)
noexcept(__nothrow_constructible< _UElements... >())
template<typename... _UElements, bool _Valid = (sizeof...(_Elements) ==
sizeof...(_UElements)) &&
!__use_other_ctor<tuple<_UElements...>&&>(),
_ExplicitCtor< _Valid, _UElements... > = false> constexpr
tuple (tuple< _UElements... > &&__in)
noexcept(__nothrow_constructible< _UElements... >())
constexpr tuple & operator= (__conditional_t<
__assignable< _Elements... >(), tuple &&, __nonesuch
&& > __in) noexcept(__nothrow_assignable< _Elements... >())
constexpr tuple & operator= (__conditional_t<
__assignable< const _Elements &... >(), const tuple &,
const __nonesuch & > __in) noexcept(__nothrow_assignable< const
_Elements &... >())
template<typename... _UElements> constexpr __enable_if_t<
__assignable< const _UElements &... >(), tuple & >
operator= (const tuple< _UElements... > &__in)
noexcept(__nothrow_assignable< const _UElements &... >())
template<typename... _UElements> constexpr __enable_if_t<
__assignable< _UElements... >(), tuple & >
operator= (tuple< _UElements... > &&__in)
noexcept(__nothrow_assignable< _UElements... >())
constexpr void swap (tuple &__in) noexcept(__and_<
__is_nothrow_swappable< _Elements >... >::value)
Detailed Description¶
template<typename... _Elements>¶
class std::tuple< _Elements >"Primary class template, tuple.
Definition at line 609 of file tuple.
Constructor & Destructor Documentation¶
template<typename... _Elements> template<typename _Dummy = void, _ImplicitDefaultCtor< is_void< _Dummy >::value > = true> constexpr std::tuple< _Elements >::tuple () [inline], [constexpr], [noexcept]¶
Definition at line 713 of file tuple.
template<typename... _Elements> template<typename _Dummy = void, _ExplicitDefaultCtor< is_void< _Dummy >::value > = false> constexpr std::tuple< _Elements >::tuple () [inline], [explicit], [constexpr], [noexcept]¶
Definition at line 720 of file tuple.
template<typename... _Elements> template<bool _NotEmpty = (sizeof...(_Elements) >= 1), _ImplicitCtor< _NotEmpty, const _Elements &... > = true> constexpr std::tuple< _Elements >::tuple (const _Elements &... __elements) [inline], [constexpr], [noexcept]¶
Definition at line 727 of file tuple.
template<typename... _Elements> template<bool _NotEmpty = (sizeof...(_Elements) >= 1), _ExplicitCtor< _NotEmpty, const _Elements &... > = false> constexpr std::tuple< _Elements >::tuple (const _Elements &... __elements) [inline], [explicit], [constexpr], [noexcept]¶
Definition at line 734 of file tuple.
template<typename... _Elements> template<typename... _UElements, bool _Valid = __valid_args<_UElements...>(), _ImplicitCtor< _Valid, _UElements... > = true> constexpr std::tuple< _Elements >::tuple (_UElements &&... __elements) [inline], [constexpr], [noexcept]¶
Definition at line 742 of file tuple.
template<typename... _Elements> template<typename... _UElements, bool _Valid = __valid_args<_UElements...>(), _ExplicitCtor< _Valid, _UElements... > = false> constexpr std::tuple< _Elements >::tuple (_UElements &&... __elements) [inline], [explicit], [constexpr], [noexcept]¶
Definition at line 750 of file tuple.
template<typename... _Elements> template<typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<const tuple<_UElements...>&>(), _ImplicitCtor< _Valid, const _UElements &... > = true> constexpr std::tuple< _Elements >::tuple (const tuple< _UElements... > & __in) [inline], [constexpr], [noexcept]¶
Definition at line 763 of file tuple.
template<typename... _Elements> template<typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<const tuple<_UElements...>&>(), _ExplicitCtor< _Valid, const _UElements &... > = false> constexpr std::tuple< _Elements >::tuple (const tuple< _UElements... > & __in) [inline], [explicit], [constexpr], [noexcept]¶
Definition at line 773 of file tuple.
template<typename... _Elements> template<typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<tuple<_UElements...>&&>(), _ImplicitCtor< _Valid, _UElements... > = true> constexpr std::tuple< _Elements >::tuple (tuple< _UElements... > && __in) [inline], [constexpr], [noexcept]¶
Definition at line 783 of file tuple.
template<typename... _Elements> template<typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<tuple<_UElements...>&&>(), _ExplicitCtor< _Valid, _UElements... > = false> constexpr std::tuple< _Elements >::tuple (tuple< _UElements... > && __in) [inline], [explicit], [constexpr], [noexcept]¶
Definition at line 792 of file tuple.
template<typename... _Elements> template<typename _Alloc , _ImplicitDefaultCtor< is_object< _Alloc >::value > = true> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a) [inline], [constexpr]¶
Definition at line 801 of file tuple.
template<typename... _Elements> template<typename _Alloc , bool _NotEmpty = (sizeof...(_Elements) >= 1), _ImplicitCtor< _NotEmpty, const _Elements &... > = true> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, const _Elements &... __elements) [inline], [constexpr]¶
Definition at line 807 of file tuple.
template<typename... _Elements> template<typename _Alloc , bool _NotEmpty = (sizeof...(_Elements) >= 1), _ExplicitCtor< _NotEmpty, const _Elements &... > = false> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, const _Elements &... __elements) [inline], [explicit], [constexpr]¶
Definition at line 815 of file tuple.
template<typename... _Elements> template<typename _Alloc , typename... _UElements, bool _Valid = __valid_args<_UElements...>(), _ImplicitCtor< _Valid, _UElements... > = true> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, _UElements &&... __elements) [inline], [constexpr]¶
Definition at line 823 of file tuple.
template<typename... _Elements> template<typename _Alloc , typename... _UElements, bool _Valid = __valid_args<_UElements...>(), _ExplicitCtor< _Valid, _UElements... > = false> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, _UElements &&... __elements) [inline], [explicit], [constexpr]¶
Definition at line 833 of file tuple.
template<typename... _Elements> template<typename _Alloc > constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, const tuple< _Elements > & __in) [inline], [constexpr]¶
Definition at line 840 of file tuple.
template<typename... _Elements> template<typename _Alloc > constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, tuple< _Elements > && __in) [inline], [constexpr]¶
Definition at line 845 of file tuple.
template<typename... _Elements> template<typename _Alloc , typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<const tuple<_UElements...>&>(), _ImplicitCtor< _Valid, const _UElements &... > = true> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, const tuple< _UElements... > & __in) [inline], [constexpr]¶
Definition at line 853 of file tuple.
template<typename... _Elements> template<typename _Alloc , typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<const tuple<_UElements...>&>(), _ExplicitCtor< _Valid, const _UElements &... > = false> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, const tuple< _UElements... > & __in) [inline], [explicit], [constexpr]¶
Definition at line 865 of file tuple.
template<typename... _Elements> template<typename _Alloc , typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<tuple<_UElements...>&&>(), _ImplicitCtor< _Valid, _UElements... > = true> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, tuple< _UElements... > && __in) [inline], [constexpr]¶
Definition at line 876 of file tuple.
template<typename... _Elements> template<typename _Alloc , typename... _UElements, bool _Valid = (sizeof...(_Elements) == sizeof...(_UElements)) && !__use_other_ctor<tuple<_UElements...>&&>(), _ExplicitCtor< _Valid, _UElements... > = false> constexpr std::tuple< _Elements >::tuple (allocator_arg_t __tag, const _Alloc & __a, tuple< _UElements... > && __in) [inline], [explicit], [constexpr]¶
Definition at line 888 of file tuple.
Member Function Documentation¶
template<typename... _Elements> constexpr tuple & std::tuple< _Elements >::operator= (__conditional_t< __assignable< _Elements... >(), tuple< _Elements > &&, __nonesuch && > __in) [inline], [constexpr], [noexcept]¶
Definition at line 909 of file tuple.
template<typename... _Elements> constexpr tuple & std::tuple< _Elements >::operator= (__conditional_t< __assignable< const _Elements &... >(), const tuple< _Elements > &, const __nonesuch & > __in) [inline], [constexpr], [noexcept]¶
Definition at line 898 of file tuple.
template<typename... _Elements> template<typename... _UElements> constexpr __enable_if_t< __assignable< const _UElements &... >(), tuple & > std::tuple< _Elements >::operator= (const tuple< _UElements... > & __in) [inline], [constexpr], [noexcept]¶
Definition at line 921 of file tuple.
template<typename... _Elements> template<typename... _UElements> constexpr __enable_if_t< __assignable< _UElements... >(), tuple & > std::tuple< _Elements >::operator= (tuple< _UElements... > && __in) [inline], [constexpr], [noexcept]¶
Definition at line 931 of file tuple.
template<typename... _Elements> constexpr void std::tuple< _Elements >::swap (tuple< _Elements > & __in) [inline], [constexpr], [noexcept]¶
Definition at line 941 of file tuple.
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
Sun Jan 8 2023 | libstdc++ |