Loading...
Searching...
No Matches
treepath.hh File Reference
`#include <cstddef>`
`#include <cassert>`
`#include <iostream>`
`#include <type_traits>`
`#include <dune/common/documentation.hh>`
`#include <dune/common/typetraits.hh>`
`#include <dune/common/indices.hh>`
`#include <dune/common/typetree/treepath.hh>`

Go to the source code of this file.

## Classes

struct | Dune::TypeTree::TreePathSize< HybridTreePath< index_constant< i >... > >
struct | Dune::TypeTree::TreePathPushBack< HybridTreePath< index_constant< i >... >, k >
struct | Dune::TypeTree::TreePathPushFront< HybridTreePath< index_constant< i >... >, k >
struct | Dune::TypeTree::TreePathBack< HybridTreePath< index_constant< k > > >
struct | Dune::TypeTree::TreePathBack< HybridTreePath< index_constant< j >, index_constant< k >, index_constant< l >... > >
struct | Dune::TypeTree::TreePathFront< HybridTreePath< index_constant< k >, index_constant< i >... > >
struct | Dune::TypeTree::TreePathPopBack< HybridTreePath< index_constant< k > >, i... >
struct | Dune::TypeTree::TreePathPopBack< HybridTreePath< index_constant< j >, index_constant< k >, index_constant< l >... >, i... >
struct | Dune::TypeTree::TreePathPopFront< HybridTreePath< index_constant< k >, index_constant< i >... > >
struct | Dune::TypeTree::TreePathConcat< HybridTreePath< index_constant< i >... >, HybridTreePath< index_constant< k >... > >

## Namespaces

namespace | Dune
namespace | Dune::TypeTree
namespace | Dune::TypeTree::TreePathType

## Typedefs

template<typename... T>
using | Dune::TypeTree::HybridTreePath = Dune::HybridMultiIndex<T...>
| A type for representing tree paths that supports both compile time and run time indices.
template<std::size_t... i>
using | Dune::TypeTree::StaticTreePath = HybridTreePath<Dune::index_constant<i>...>

## Enumerations

enum | Dune::TypeTree::TreePathType::Type { Dune::TypeTree::TreePathType::fullyStatic , Dune::TypeTree::TreePathType::dynamic }

## Functions

template<typename... T> requires (((std::is_integral_v<T> or Dune::IsIntegralConstant<T>::value) && ...))
constexpr auto | Dune::TypeTree::hybridTreePath (const T &... t)
| Constructs a new HybridTreePath from the given indices.
template<std::size_t... i>
void | Dune::TypeTree::print_tree_path (std::ostream &os)
template<std::size_t k, std::size_t... i>
void | Dune::TypeTree::print_tree_path (std::ostream &os)
template<typename... T> requires (((std::is_integral_v<T> or Dune::IsIntegralConstant<T>::value) && ...))
constexpr auto | Dune::TypeTree::makeTreePath (const T... t)
| helper function to construct a new HybridTreePath from the given indices.
template<typename... T>
constexpr std::size_t | Dune::TypeTree::treePathSize (const HybridTreePath< T... > &)
| Returns the size (number of components) of the given HybridTreePath.
template<std::size_t i, typename... T>
constexpr auto | Dune::TypeTree::treePathEntry (const HybridTreePath< T... > &tp, index_constant< i >={})
| Returns a copy of the i-th element of the HybridTreePath.
template<std::size_t i, typename... T>
constexpr std::size_t | Dune::TypeTree::treePathIndex (const HybridTreePath< T... > &tp, index_constant< i >={})
| Returns the index value of the i-th element of the HybridTreePath.