3 #ifndef DUNE_FUNCTIONS_COMMON_TUPLEVECTOR_HH 4 #define DUNE_FUNCTIONS_COMMON_TUPLEVECTOR_HH 8 #include <dune/common/indices.hh> 9 #include <dune/common/deprecated.hh> 25 using Base = std::tuple<T...>;
32 Base(
std::forward<TT>(tt)...)
40 template<std::
size_t i>
42 ->decltype(std::get<i>(*
this))
44 return std::get<i>(*this);
48 template<std::
size_t i>
50 ->decltype(std::get<i>(*
this))
52 return std::get<i>(*this);
56 static constexpr std::size_t
size()
58 return std::tuple_size<Base>::value;
constexpr TupleVector(TT &&... tt)
Construct from a set of arguments.
Definition: tuplevector.hh:31
auto operator[](const Dune::index_constant< i > &) -> decltype(std::get< i >(*this))
Non-const access to the tuple elements.
Definition: tuplevector.hh:49
A class augmenting std::tuple by element access via operator[].
Definition: tuplevector.hh:22
Definition: polynomial.hh:7
static constexpr std::size_t size()
Number of elements of the tuple.
Definition: tuplevector.hh:56
auto operator[](const Dune::index_constant< i > &) const -> decltype(std::get< i >(*this))
Const access to the tuple elements.
Definition: tuplevector.hh:41
constexpr TupleVector()
Default constructor.
Definition: tuplevector.hh:36