oracular (3) std::tuple.3cxx.gz

Provided by: libstdc++-14-doc_14.2.0-4ubuntu2_all bug

NAME

       std::tuple< _Elements > - Primary class template, tuple.

SYNOPSIS

       #include <tuple>

       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 , _ExplicitDefaultCtor< is_object< _Alloc >::value >  = false> 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.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.

                                                    libstdc++                      std::tuple< _Elements >(3cxx)