Namespaces
Variants
Views
Actions

std::experimental::ranges::make_tagged_tuple

From cppreference.com
< cpp‎ | experimental‎ | ranges
 
 
Experimental
Technical Specification
Filesystem library (filesystem TS)
Library fundamentals (library fundamentals TS)
Library fundamentals 2 (library fundamentals TS v2)
Library fundamentals 3 (library fundamentals TS v3)
Extensions for parallelism (parallelism TS)
Extensions for parallelism 2 (parallelism TS v2)
Extensions for concurrency (concurrency TS)
Extensions for concurrency 2 (concurrency TS v2)
Concepts (concepts TS)
Ranges (ranges TS)
Reflection (reflection TS)
Mathematical special functions (special functions TR)
Experimental Non-TS
Pattern Matching
Linear Algebra
std::execution
Contracts
2D Graphics
 
 
General utilities library
Utility components
Function objects
Metaprogramming and type traits
Tagged pairs and tuples
                          
tag specifiers
                                      
                          
make_tagged_tuple

 
Defined in header <experimental/ranges/tuple>
template< TagSpecifier... Tags, class... Types >

    requires sizeof...(Tags) == sizeof...(Types)

constexpr ranges::tagged</*see below*/, Tags...> make_tagged_tuple( Types&&... t );
(ranges TS)

Convenience function for creating a tagged tuple, deducing the element types from the arguments (the tag specifiers must be explicitly specified).

The see below portion of the return type is decltype(std::make_tuple(std::forward<Types>(t)...)).

[edit] Return value

R(std::forward<Types>(t)...), where R is the return type.

[edit] See also

specifies that a type represents a tag specifier and its element type
(concept) [edit]
augument a tuple-like type with named accessors
(class template) [edit]
alias template for a tagged std::pair
(alias template)[edit]
convenience function for creating a tagged_pair
(function template) [edit]
alias template for a tagged std::tuple
(alias template)[edit]
tag specifiers for use with ranges::tagged
(class) [edit]