template<>
Tuple<> class
Specialization of Tuple for an empty parameter pack.
Public types
Public static variables
- static size_t Size constexpr
- The number of elements in the tuple (always 0).
Constructors, destructors, conversion operators
Public functions
- auto product(const Tuple<> other) -> Tuple constexpr
- Computes the Cartesian product of two empty tuples.
-
template<typename ... Gs>auto concatenate(const Tuple<Gs...>& other) const -> Tuple<Gs...> constexpr
- Concatenates this empty tuple with another tuple.
-
template<template<class> class Predicate>auto filter() const -> Tuple constexpr
- Filters the empty tuple based on a predicate.
-
template<typename Function>void apply(Function&& func) constexpr
- Applies a function to each element of the tuple.
- auto size() const -> size_t constexpr
- Returns the size of the tuple.
Typedef documentation
template<>
template<std::size_t Index>
using Rodin:: Tuple<>:: Type = void
Dummy type alias for the empty tuple.
Template parameters | |
---|---|
Index | Unused index parameter. |
Function documentation
template<>
template<typename ... Gs>
Tuple<Gs...> Rodin:: Tuple<>:: concatenate(const Tuple<Gs...>& other) const constexpr
Concatenates this empty tuple with another tuple.
Template parameters | |
---|---|
Gs | Types of elements in the other tuple. |
Parameters | |
other | The tuple to concatenate. |
Returns | A new tuple containing the elements of the other tuple. |
template<>
template<typename Function>
void Rodin:: Tuple<>:: apply(Function&& func) constexpr
Applies a function to each element of the tuple.
Template parameters | |
---|---|
Function | The type of the function to apply. |
Parameters | |
func | The function to apply. |
template<>
size_t Rodin:: Tuple<>:: size() const constexpr
Returns the size of the tuple.
Returns | Always returns 0. |
---|