|
| template<typename Node , std::size_t... indices> |
| using | Child = typename Impl::ChildTraits< Node, indices... >::type |
| | Template alias for the type of a child node given by a list of child indices. More...
|
| |
| template<typename Node , typename TreePath > |
| using | ChildForTreePath = std::decay_t< decltype(child(std::declval< Node >(), std::declval< TreePath >()))> |
| | Template alias for the type of a child node given by a TreePath type. More...
|
| |
| template<class Value , class Tree > |
| using | UniformTreeContainer = std::decay_t< decltype(makeTreeContainer< Value >(std::declval< const Tree & >()))> |
| | Alias to container type generated by makeTreeContainer for given tree type and uniform value type. More...
|
| |
| template<template< class Node > class LeafToValue, class Tree > |
| using | TreeContainer = std::decay_t< decltype(makeTreeContainer(std::declval< const Tree & >(), std::declval< Impl::LeafToDefaultConstructibleValue< LeafToValue > >()))> |
| | Alias to container type generated by makeTreeContainer for give tree type and when using LeafToValue to create values. More...
|
| |
| template<typename... T> |
| using | TreePath = Dune::HybridMultiIndex< T... > |
| | A type for representing tree paths that supports both compile time and run time indices. More...
|
| |
|
| template<typename Node , typename... Indices> |
| decltype(auto) | child (Node &&node, TreePath< Indices... > treePath) |
| | Extracts the child of a node given by a TreePath object. More...
|
| |
| template<typename Node , typename... Indices> |
| decltype(auto) | child (Node &&node, Indices... indices) |
| | Extracts the child of a node given by a sequence of compile-time and run-time indices. More...
|
| |
| template<Concept::InnerTreeNode Tree, class Callable > |
| constexpr void | forEachChild (Tree &&container, Callable &&at_value) |
| | Traverse each child of a tree and apply a callable function. More...
|
| |
| template<class Tree , class PreNodeFunc , class LeafNodeFunc , class PostNodeFunc > |
| void | forEachNode (Tree &&tree, PreNodeFunc &&preNodeFunc, LeafNodeFunc &&leafNodeFunc, PostNodeFunc &&postNodeFunc) |
| | Traverse tree and visit each node. More...
|
| |
| template<Concept::TreeNode Tree, class NodeFunc > |
| void | forEachNode (Tree &&tree, NodeFunc &&nodeFunc) |
| | Traverse tree and visit each node. More...
|
| |
| template<Concept::TreeNode Tree, class LeafFunc > |
| void | forEachLeafNode (Tree &&tree, LeafFunc &&leafFunc) |
| | Traverse tree and visit each leaf node. More...
|
| |
| template<class Tree , class LeafToValue > |
| auto | makeTreeContainer (const Tree &tree, LeafToValue &&leafToValue) |
| | Create container having the same structure as the given tree. More...
|
| |
| template<class Value , class Tree > |
| auto | makeTreeContainer (const Tree &tree) |
| | Create container having the same structure as the given tree. More...
|
| |
| template<typename... T> |
| | requires (((std::is_integral_v< T > or Dune::IsIntegralConstant< T >::value) &&...)) const expr auto treePath(const T &... t) |
| | Constructs a new TreePath from the given indices. More...
|
| |