A fixed-size heterogeneous collection of values, analogous to Rust's tuple.
More...
|
|
constexpr | tuple (Ts const &... ts) noexcept((mtp::noex_init< Ts, Ts > &&...)) |
| | Constructs the tuple.
|
| |
template<typename... Us>
requires (sizeof...(Us) == sizeof...(Ts)) && (sizeof...(Us) > 0) |
| constexpr | tuple (Us &&... us) noexcept((mtp::noex_init< Ts, Us > &&...)) |
| | Constructs the tuple from individual element values.
|
| |
|
template<usize I> |
| constexpr auto & | get () &noexcept |
| | Access the I-th element (lvalue overload).
|
| |
|
template<usize I> |
| constexpr auto const & | get () const &noexcept |
| | Access the I-th element (const lvalue overload).
|
| |
|
template<usize I> |
| constexpr auto && | get () &&noexcept |
| | Access the I-th element (rvalue overload).
|
| |
|
template<typename T > |
| constexpr T & | get () &noexcept |
| | Access the element of type T (lvalue overload).
|
| |
|
template<typename T > |
| constexpr T const & | get () const &noexcept |
| | Access the element of type T (const lvalue overload).
|
| |
|
template<typename T > |
| constexpr T && | get () &&noexcept |
| | Access the element of type T (rvalue overload).
|
| |
|
|
static constexpr usize | size = sizeof...(Ts) |
| | The number of elements.
|
| |
template<typename... Ts>
class rstd::tuple< Ts >
A fixed-size heterogeneous collection of values, analogous to Rust's tuple.
Supports construction, copy/move, element access via get<I>() or the free function get<I>(t), and C++ structured bindings.
The documentation for this class was generated from the following file:
- /home/runner/work/rstd/rstd/src/basic/tuple.cppm