|
template<typename... _Args1, typename... _Args2> |
| std::pair< _T1, _T2 >::pair (piecewise_construct_t, tuple< _Args1... >, tuple< _Args2... >) |
|
template<typename _Tp > |
constexpr _Tp * | std::__addressof (_Tp &__r) noexcept |
|
template<typename _Tp , typename _Up = _Tp> |
_Tp | std::__exchange (_Tp &__obj, _Up &&__new_val) |
|
template<std::size_t __i, typename _Head , typename... _Tail> |
constexpr _Head & | std::__get_helper (_Tuple_impl< __i, _Head, _Tail... > &__t) noexcept |
|
template<std::size_t __i, typename _Head , typename... _Tail> |
constexpr const _Head & | std::__get_helper (const _Tuple_impl< __i, _Head, _Tail... > &__t) noexcept |
|
template<typename _Head , size_t __i, typename... _Tail> |
constexpr _Head & | std::__get_helper2 (_Tuple_impl< __i, _Head, _Tail... > &__t) noexcept |
|
template<typename _Head , size_t __i, typename... _Tail> |
constexpr const _Head & | std::__get_helper2 (const _Tuple_impl< __i, _Head, _Tail... > &__t) noexcept |
|
template<typename _Tp , typename _Up = typename __inv_unwrap<_Tp>::type> |
constexpr _Up && | std::__invfwd (typename remove_reference< _Tp >::type &__t) noexcept |
|
template<typename _Callable , typename... _Args> |
constexpr __invoke_result< _Callable, _Args... >::type | std::__invoke (_Callable &&__fn, _Args &&...__args) noexcept(__is_nothrow_invocable< _Callable, _Args... >::value) |
|
template<typename _Res , typename _Fn , typename... _Args> |
constexpr _Res | std::__invoke_impl (__invoke_other, _Fn &&__f, _Args &&...__args) |
|
template<typename _Res , typename _MemFun , typename _Tp , typename... _Args> |
constexpr _Res | std::__invoke_impl (__invoke_memfun_ref, _MemFun &&__f, _Tp &&__t, _Args &&...__args) |
|
template<typename _Res , typename _MemFun , typename _Tp , typename... _Args> |
constexpr _Res | std::__invoke_impl (__invoke_memfun_deref, _MemFun &&__f, _Tp &&__t, _Args &&...__args) |
|
template<typename _Res , typename _MemPtr , typename _Tp > |
constexpr _Res | std::__invoke_impl (__invoke_memobj_ref, _MemPtr &&__f, _Tp &&__t) |
|
template<typename _Res , typename _MemPtr , typename _Tp > |
constexpr _Res | std::__invoke_impl (__invoke_memobj_deref, _MemPtr &&__f, _Tp &&__t) |
|
template<typename _Tp > |
_GLIBCXX17_CONSTEXPR _Tp * | std::addressof (_Tp &__r) noexcept |
|
template<typename _Tp > |
const _Tp * | std::addressof (const _Tp &&)=delete |
|
template<typename _Tp > |
constexpr _Tp && | std::forward (typename std::remove_reference< _Tp >::type &__t) noexcept |
|
template<typename _Tp > |
constexpr _Tp && | std::forward (typename std::remove_reference< _Tp >::type &&__t) noexcept |
|
template<typename... _Elements> |
constexpr tuple< _Elements &&... > | std::forward_as_tuple (_Elements &&...__args) noexcept |
|
template<std::size_t __i, typename... _Elements> |
constexpr __tuple_element_t< __i, tuple< _Elements... > > & | std::get (tuple< _Elements... > &__t) noexcept |
|
template<std::size_t __i, typename... _Elements> |
constexpr const __tuple_element_t< __i, tuple< _Elements... > > & | std::get (const tuple< _Elements... > &__t) noexcept |
|
template<std::size_t __i, typename... _Elements> |
constexpr __tuple_element_t< __i, tuple< _Elements... > > && | std::get (tuple< _Elements... > &&__t) noexcept |
|
template<typename _Tp , typename... _Types> |
constexpr _Tp & | std::get (tuple< _Types... > &__t) noexcept |
|
template<typename _Tp , typename... _Types> |
constexpr _Tp && | std::get (tuple< _Types... > &&__t) noexcept |
|
template<typename _Tp , typename... _Types> |
constexpr const _Tp & | std::get (const tuple< _Types... > &__t) noexcept |
|
template<typename _T1 , typename _T2 > |
constexpr pair< typename __decay_and_strip< _T1 >::__type, typename __decay_and_strip< _T2 >::__type > | std::make_pair (_T1 &&__x, _T2 &&__y) |
|
template<typename... _Elements> |
constexpr tuple< typename __decay_and_strip< _Elements >::__type... > | std::make_tuple (_Elements &&...__args) |
|
template<typename _Tp > |
constexpr std::remove_reference< _Tp >::type && | std::move (_Tp &&__t) noexcept |
|
template<typename _Tp > |
constexpr conditional< __move_if_noexcept_cond< _Tp >::value, const _Tp &, _Tp && >::type | std::move_if_noexcept (_Tp &__x) noexcept |
|
template<typename _T1 , typename _T2 > |
constexpr bool | std::operator!= (const pair< _T1, _T2 > &__x, const pair< _T1, _T2 > &__y) |
|
template<typename... _TElements, typename... _UElements> |
constexpr bool | std::operator!= (const tuple< _TElements... > &__t, const tuple< _UElements... > &__u) |
|
template<typename _T1 , typename _T2 > |
constexpr bool | std::operator< (const pair< _T1, _T2 > &__x, const pair< _T1, _T2 > &__y) |
|
template<typename... _TElements, typename... _UElements> |
constexpr bool | std::operator< (const tuple< _TElements... > &__t, const tuple< _UElements... > &__u) |
|
template<typename _T1 , typename _T2 > |
constexpr bool | std::operator<= (const pair< _T1, _T2 > &__x, const pair< _T1, _T2 > &__y) |
|
template<typename... _TElements, typename... _UElements> |
constexpr bool | std::operator<= (const tuple< _TElements... > &__t, const tuple< _UElements... > &__u) |
|
template<typename _T1 , typename _T2 > |
constexpr bool | std::operator== (const pair< _T1, _T2 > &__x, const pair< _T1, _T2 > &__y) |
|
template<typename... _TElements, typename... _UElements> |
constexpr bool | std::operator== (const tuple< _TElements... > &__t, const tuple< _UElements... > &__u) |
|
template<typename _T1 , typename _T2 > |
constexpr bool | std::operator> (const pair< _T1, _T2 > &__x, const pair< _T1, _T2 > &__y) |
|
template<typename... _TElements, typename... _UElements> |
constexpr bool | std::operator> (const tuple< _TElements... > &__t, const tuple< _UElements... > &__u) |
|
template<typename _T1 , typename _T2 > |
constexpr bool | std::operator>= (const pair< _T1, _T2 > &__x, const pair< _T1, _T2 > &__y) |
|
template<typename... _TElements, typename... _UElements> |
constexpr bool | std::operator>= (const tuple< _TElements... > &__t, const tuple< _UElements... > &__u) |
|
template<typename _Tp > |
enable_if< __and_< __not_< __is_tuple_like< _Tp > >, is_move_constructible< _Tp >, is_move_assignable< _Tp > >::value >::type | std::swap (_Tp &__a, _Tp &__b) noexcept(__and_< is_nothrow_move_constructible< _Tp >, is_nothrow_move_assignable< _Tp >>::value) |
|
template<typename _Tp , size_t _Nm> |
enable_if< __is_swappable< _Tp >::value >::type | std::swap (_Tp(&__a)[_Nm], _Tp(&__b)[_Nm]) noexcept(__is_nothrow_swappable< _Tp >::value) |
|
template<typename _T1 , typename _T2 > |
enable_if< __and_< __is_swappable< _T1 >, __is_swappable< _T2 > >::value >::type | std::swap (pair< _T1, _T2 > &__x, pair< _T1, _T2 > &__y) noexcept(noexcept(__x.swap(__y))) |
|
template<typename... _Elements> |
enable_if< __and_< __is_swappable< _Elements >... >::value >::type | std::swap (tuple< _Elements... > &__x, tuple< _Elements... > &__y) noexcept(noexcept(__x.swap(__y))) |
|
template<typename... _Elements> |
constexpr tuple< _Elements &... > | std::tie (_Elements &...__args) noexcept |
|
template<typename... _Tpls, typename = typename enable_if<__and_<__is_tuple_like<_Tpls>...>::value>::type> |
constexpr auto | std::tuple_cat (_Tpls &&...__tpls) -> typename __tuple_cat_result< _Tpls... >::__type |
|
Components deemed generally useful. Includes pair, tuple, forward/move helpers, ratio, function object, metaprogramming and type traits, time, date, and memory functions.