|
dune-common
2.11
|
A hybrid multi-index class that supports both compile time and run time indices. More...
#include <dune/common/hybridmultiindex.hh>
Public Types | |
| using | index_sequence = std::index_sequence_for< T... > |
An index_sequence for the entries in this HybridMultiIndex. More... | |
Public Member Functions | |
| constexpr | HybridMultiIndex ()=default |
| constexpr | HybridMultiIndex (const HybridMultiIndex &tp)=default |
| constexpr | HybridMultiIndex (HybridMultiIndex &&tp)=default |
| constexpr HybridMultiIndex & | operator= (const HybridMultiIndex &tp)=default |
| constexpr HybridMultiIndex & | operator= (HybridMultiIndex &&tp)=default |
| constexpr | HybridMultiIndex (std::tuple< T... > t) |
Constructor from a std::tuple More... | |
| template<typename... I> | |
| requires ((sizeof...(T) > 0 &&sizeof...(I)==sizeof...(T)) and((std::is_integral_v< I > or Dune::IsIntegralConstant< I >::value) &&...)) explicit const expr HybridMultiIndex(I... i) | |
| Constructor from arguments. More... | |
| template<std::size_t i> | |
| requires (sizeof...(T) > i) const expr auto get() const | |
| Get the index value at position pos. More... | |
Static Public Member Functions | |
| static constexpr index_sequence | enumerate () |
| Returns an index_sequence for enumerating the components of this HybridMultiIndex. More... | |
| static constexpr std::size_t | size () |
| Get the size (length) of this multi-index. More... | |
| static constexpr std::size_t | max_size () |
| Get the size (length) of this multi-index. More... | |
Public Attributes | |
| template<std::size_t i> | |
| requires(sizeof...(T) > i) const expr auto operator[](Dune std::tuple< T... > | _data |
| Get the index value at position pos. More... | |
A hybrid multi-index class that supports both compile time and run time indices.
A HybridMultiIndex supports storing a combination of run time and compile time indices. This allows to construct multi-indices that provide sufficient information for accessing nested multi-type containers.
| using Dune::HybridMultiIndex< T >::index_sequence = std::index_sequence_for<T...> |
An index_sequence for the entries in this HybridMultiIndex.
|
default |
|
default |
|
default |
|
inlineexplicit |
Constructor from a std::tuple
|
inlinestatic |
Returns an index_sequence for enumerating the components of this HybridMultiIndex.
|
inlinestatic |
Get the size (length) of this multi-index.
|
default |
|
default |
|
inline |
Constructor from arguments.
|
inline |
Get the index value at position pos.
The get member function is required by the std-tuple-protocol which e.g. enables structured bindings.
|
inlinestatic |
Get the size (length) of this multi-index.
| requires (sizeof...(T) > i) const expr auto operator[](Dune std::tuple<T...> Dune::HybridMultiIndex< T >::_data |
Get the index value at position pos.
1.8.14