|
| template<typename Func, typename Tuple> |
| constexpr auto | apply (Func &&f, Tuple &&t) noexcept(_INNER __apply_unpack_tuple< _MSTL is_nothrow_invocable, Func, Tuple >::value) -> decltype(auto) |
| | 将元组元素解包作为参数调用函数
|
| template<size_t Index, typename... Types> |
| MSTL_NODISCARD constexpr tuple_element_t< Index, Types... > & | get (tuple< Types... > &t) |
| | 获取元组中指定位置的元素引用
|
| template<size_t Index, typename... Types> |
| MSTL_NODISCARD constexpr const tuple_element_t< Index, Types... > & | get (const tuple< Types... > &t) |
| | 获取元组中指定位置的元素常量引用
|
| template<size_t Index, typename... Types> |
| MSTL_NODISCARD constexpr tuple_element_t< Index, Types... > && | get (tuple< Types... > &&t) |
| | 获取元组中指定位置的元素右值引用
|
| template<size_t Index, typename... Types> |
| MSTL_NODISCARD constexpr const tuple_element_t< Index, Types... > && | get (const tuple< Types... > &&t) |
| | 获取元组中指定位置的元素常量右值引用
|
| template<typename... Types> |
| MSTL_NODISCARD constexpr tuple< unwrap_ref_decay_t< Types >... > | make_tuple (Types &&... args) |
| | 从参数创建元组
|
| template<typename... Types> |
| MSTL_NODISCARD constexpr tuple< Types &... > | tie (Types &... args) noexcept |
| | 创建引用元组
|
| template<typename... Types> |
| MSTL_NODISCARD constexpr tuple< Types &&... > | forward_as_tuple (Types &&... args) noexcept |
| | 创建转发引用元组
|
| template<typename T, typename Tuple, enable_if_t< _INNER constructible_from_tuple< T, Tuple >::value, int > = 0> |
| MSTL_NODISCARD constexpr T | make_from_tuple (Tuple &&tup) noexcept(noexcept(_INNER __broaden_make_from_tuple< T >(_MSTL forward< Tuple >(tup), make_index_sequence< tuple_size< remove_reference_t< Tuple > >::value >{}))) |
| | 从元组构造对象
|
| template<typename... Tuples> |
| MSTL_NODISCARD constexpr _INNER tuple_cat_bind_t< Tuples... >::Ret | tuple_cat (Tuples &&... tuples) |
| | 连接多个元组
|