|
dune-common 2.11
|
#include <cstddef>#include <cassert>#include <type_traits>#include <dune/common/documentation.hh>#include <dune/common/typetraits.hh>#include <dune/common/indices.hh>#include <dune/common/hybridmultiindex.hh>Go to the source code of this file.
Namespaces | |
| namespace | Dune |
| Dune namespace | |
| namespace | Dune::TypeTree |
| namespace | Dune::TypeTree::Literals |
Typedefs | |
| template<typename... T> | |
| using | Dune::TypeTree::TreePath = Dune::HybridMultiIndex<T...> |
| A type for representing tree paths that supports both compile time and run time indices. | |
Functions | |
| template<typename... T> requires (((std::is_integral_v<T> or Dune::IsIntegralConstant<T>::value) && ...)) | |
| constexpr auto | Dune::TypeTree::treePath (const T &... t) |
| Constructs a new TreePath from the given indices. | |
| template<char... digits> | |
| constexpr auto | Dune::TypeTree::Literals::operator""_tp () |
| Literal to create treepath. | |
| template<typename... T> | |
| constexpr auto | Dune::TypeTree::back (const HybridMultiIndex< T... > &tp) -> decltype(tp.back()) |
| Returns a copy of the last element of the HybridMultiIndex. | |
| template<typename... T> | |
| constexpr auto | Dune::TypeTree::front (const HybridMultiIndex< T... > &tp) -> decltype(tp.front()) |
| Returns a copy of the first element of the HybridMultiIndex. | |
| template<typename... T> | |
| constexpr HybridMultiIndex< T..., std::size_t > | Dune::TypeTree::push_back (const HybridMultiIndex< T... > &tp, std::size_t i) |
| Appends a run time index to a HybridMultiIndex. | |
| template<typename... T> | |
| constexpr HybridMultiIndex< std::size_t, T... > | Dune::TypeTree::push_front (const HybridMultiIndex< T... > &tp, std::size_t i) |
| Prepends a run time index to a HybridMultiIndex. | |
| template<typename I, typename... T> requires (sizeof...(T) > 0) | |
| constexpr auto | Dune::TypeTree::accumulate_back (const HybridMultiIndex< T... > &tp, I i) |
| Hybrid utility that accumulates to the back of a multi-index. | |
| template<typename I, typename... T> requires (sizeof...(T) > 0) | |
| constexpr auto | Dune::TypeTree::accumulate_front (const HybridMultiIndex< T... > &tp, I i) |
| Hybrid utility that accumulates to the front of a multi-index. | |
| template<class... Head, class... Other> | |
| constexpr auto | Dune::TypeTree::join (const HybridMultiIndex< Head... > &head, const Other &... tail) |
| Join two hybrid multi-indices into one. | |
| template<class... T> | |
| constexpr auto | Dune::TypeTree::reverse (const HybridMultiIndex< T... > &tp) |
| Reverses the order of the elements in the multi-index. | |
| template<class... T> requires (sizeof...(T) > 0) | |
| constexpr auto | Dune::TypeTree::pop_front (const HybridMultiIndex< T... > &tp) |
| Removes first index on a HybridMultiIndex. | |
| template<class... T> requires (sizeof...(T) > 0) | |
| constexpr auto | Dune::TypeTree::pop_back (const HybridMultiIndex< T... > &tp) |
| Removes last index on a HybridMultiIndex. | |