A simple std::tuple-like class that can be used in device code with similar semantics to std::tuple (e.g., get<N>(), get<T>(), tuple_cat, etc.). Constructing a tuple from a set of values moves each one that supports moving and copies the rest; the tuple itself is copyable, movable, and default constructible if all of its elements are (respectively).
#include <tuple.hpp>
|
| constexpr | tuple ()=default |
| | Default constructor. Only valid if all elements are default constructible.
|
| constexpr | tuple (Elements... vals) |
| | Constructor that takes a set of values; each is moved into its element if movable, else copied.
|
| constexpr | tuple (const tuple &)=default |
| | Default copy/move/assign constructors.
|
| constexpr | tuple (tuple &&)=default |
| constexpr tuple & | operator= (const tuple &)=default |
| constexpr tuple & | operator= (tuple &&)=default |
|
| static constexpr size_t | size () |
| | Get the size of the tuple.
|
◆ element_t
template<class... Elements>
template<size_t N>
◆ tuple() [1/4]
template<class... Elements>
◆ tuple() [2/4]
template<class... Elements>
◆ tuple() [3/4]
template<class... Elements>
| mundy::tuple< Elements >::tuple |
( |
const tuple< Elements > & | | ) |
|
|
constexprdefault |
◆ tuple() [4/4]
template<class... Elements>
◆ operator=() [1/2]
template<class... Elements>
◆ operator=() [2/2]
template<class... Elements>
◆ size()
template<class... Elements>