7#ifndef DUNE_FUFEM_TYPETREEFALLBACK_HH
8#define DUNE_FUFEM_TYPETREEFALLBACK_HH
25#if DUNE_VERSION_GTE(DUNE_FUNCTIONS, 2, 11)
35namespace Dune::Fufem::Impl {
39#if DUNE_VERSION_GTE(DUNE_FUNCTIONS, 2, 11)
59 concept HasConstExprDegree =
requires(Node node)
70 concept TreeNode =
requires(Node node)
77 concept StaticDegreeInnerTreeNode = TreeNode<Node> &&
requires(Node node)
81 requires HasConstExprDegree<Node> and HasPositiveDegree<Node>;
82 node.child(index_constant<0>());
88 concept UniformInnerTreeNode = TreeNode<Node> &&
requires(Node node,
std::size_t index)
95 concept InnerTreeNode = StaticDegreeInnerTreeNode<Node> || UniformInnerTreeNode<Node>;
99 concept LeafTreeNode = TreeNode<Node> && not InnerTreeNode<Node>;
105#if DUNE_VERSION_GTE(DUNE_FUNCTIONS, 2, 11)
107 template<
typename... T>
112 template<
typename... T>
std::integral_constant< std::size_t, i > index_constant
std::ptrdiff_t index() const
Dune::HybridMultiIndex< T... > TreePath