Dune Core Modules (2.8.0)
Mixin for visitors that should apply the same action on all nodes. More...
#include <dune/functions/common/treedata.hh>
Public Member Functions | |
template<typename T , typename TreePath > | |
void | pre (T &&t, TreePath treePath) const |
Method for prefix tree traversal. More... | |
template<typename T , typename TreePath > | |
void | in (T &&t, TreePath treePath) const |
Method for infix tree traversal. More... | |
template<typename T , typename TreePath > | |
void | post (T &&t, TreePath treePath) const |
Method for postfix tree traversal. More... | |
template<typename T , typename TreePath > | |
void | leaf (T &&t, TreePath treePath) const |
Method for leaf traversal. More... | |
template<typename T , typename Child , typename TreePath , typename ChildIndex > | |
void | beforeChild (T &&t, Child &&child, TreePath treePath, ChildIndex childIndex) const |
Method for parent-child traversal. More... | |
template<typename T , typename Child , typename TreePath , typename ChildIndex > | |
void | afterChild (T &&t, Child &&child, TreePath treePath, ChildIndex childIndex) const |
Method for child-parent traversal. More... | |
Static Public Attributes | |
static const TreePathType::Type | treePathType = TreePathType::dynamic |
Use the dynamic tree traversal algorithm. | |
Detailed Description
struct Dune::Functions::UniformNodeVisitor< SimpleNodeVisitorImp, leafOnly >
Mixin for visitors that should apply the same action on all nodes.
By deriving from this you only have to implement apply(node,treepath) in the derived class. This will be used for pre(...) and leaf(...).
- Template Parameters
-
Derived Type of derived class implementing apply(node,treepath) leafOnly Flag to enable leaf only traversal
Member Function Documentation
◆ afterChild()
|
inlineinherited |
Method for child-parent traversal.
This method gets called after visiting a child node.
- Note
- This method gets called even if the child node was not visited because the visitor chose not to do so.
- Parameters
-
t The parent node. child The child node that was visited last (if the visitor did not reject it). treePath The position of the parent node within the TypeTree. childIndex The index of the child node in relation to the parent node.
◆ beforeChild()
|
inlineinherited |
Method for parent-child traversal.
This method gets called before visiting a child node.
- Note
- This method gets called even if the visitor decides not to visit the child in question.
- Parameters
-
t The parent node. child The child node that will (potentially) be visited next. treePath The position of the parent node within the TypeTree. childIndex The index of the child node in relation to the parent node.
◆ in()
|
inlineinherited |
Method for infix tree traversal.
This method gets called BETWEEN visits of children of a non-leaf node. That definition implies that this method will only be called for nodes with at least two children.
- Parameters
-
t The node to visit. treePath The position of the node within the TypeTree.
◆ leaf()
|
inlineinherited |
Method for leaf traversal.
This method gets called when encountering a leaf node within the TypeTree.
- Parameters
-
t The node to visit. treePath The position of the node within the TypeTree.
◆ post()
|
inlineinherited |
Method for postfix tree traversal.
This method gets called after all children of a non-leaf node have been visited.
- Parameters
-
t The node to visit. treePath The position of the node within the TypeTree.
◆ pre()
|
inlineinherited |
Method for prefix tree traversal.
This method gets called when first encountering a non-leaf node and before visiting any of its children.
- Parameters
-
t The node to visit. treePath The position of the node within the TypeTree.
The documentation for this struct was generated from the following file:
- dune/functions/common/treedata.hh