4 #ifndef DUNE_TYPETREE_VISITOR_HH
5 #define DUNE_TYPETREE_VISITOR_HH
56 template<
typename T,
typename TreePath>
68 template<
typename T,
typename TreePath>
79 template<
typename T,
typename TreePath>
89 template<
typename T,
typename TreePath>
103 template<
typename T,
typename Child,
typename TreePath,
typename ChildIndex>
118 template<
typename T,
typename Child,
typename TreePath,
typename ChildIndex>
172 template<
typename T1,
typename T2,
typename TreePath>
185 template<
typename T1,
typename T2,
typename TreePath>
197 template<
typename T1,
typename T2,
typename TreePath>
212 template<
typename T1,
typename T2,
typename TreePath>
228 template<
typename T1,
typename Child1,
typename T2,
typename Child2,
typename TreePath,
typename ChildIndex>
229 void beforeChild(T1&& t1, Child1&& child1, T2&& t2, Child2&& child2,
TreePath treePath, ChildIndex childIndex)
const {}
244 template<
typename T1,
typename Child1,
typename T2,
typename Child2,
typename TreePath,
typename ChildIndex>
245 void afterChild(T1&& t1, Child1&& child1, T2&& t2, Child2&& child2,
TreePath treePath, ChildIndex childIndex)
const {}
262 template<
typename Node1,
265 typename Child2 = void,
288 template<
typename Node1,
291 typename Child2 = void,
358 #endif // DUNE_TYPETREE_VISITOR_HH
Mixin base class for visitors that only need a dynamic TreePath during traversal. ...
Definition: visitor.hh:323
static const bool value
Do not visit any child.
Definition: visitor.hh:270
Convenience base class for visiting the direct children of a node.
Definition: visitor.hh:336
void afterChild(T &&t, Child &&child, TreePath treePath, ChildIndex childIndex) const
Method for child-parent traversal.
Definition: visitor.hh:119
Mixin base class for visitors that only want to visit the direct children of a node.
Definition: visitor.hh:255
Definition: treepath.hh:25
Convenience base class for visiting an entire tree pair.
Definition: visitor.hh:342
static const bool value
Visit any child.
Definition: visitor.hh:296
void in(T &&t, TreePath treePath) const
Method for infix tree traversal.
Definition: visitor.hh:69
Definition: accumulate_static.hh:12
Convenience base class for visiting the direct children of a node pair.
Definition: visitor.hh:348
Convenience base class for visiting the entire tree.
Definition: visitor.hh:330
Mixin base class for visitors that require a static TreePath during traversal.
Definition: visitor.hh:309
static const TreePathType::Type treePathType
Use the static tree traversal algorithm.
Definition: visitor.hh:312
Template struct for determining whether or not to visit a given child.
Definition: visitor.hh:267
void afterChild(T1 &&t1, Child1 &&child1, T2 &&t2, Child2 &&child2, TreePath treePath, ChildIndex childIndex) const
Method for child-parent traversal.
Definition: visitor.hh:245
Visitor interface and base class for TypeTree visitors.
Definition: visitor.hh:45
void beforeChild(T &&t, Child &&child, TreePath treePath, ChildIndex childIndex) const
Method for parent-child traversal.
Definition: visitor.hh:104
void beforeChild(T1 &&t1, Child1 &&child1, T2 &&t2, Child2 &&child2, TreePath treePath, ChildIndex childIndex) const
Method for parent-child traversal.
Definition: visitor.hh:229
void leaf(T1 &&t1, T2 &&t2, TreePath treePath) const
Method for leaf traversal.
Definition: visitor.hh:213
Template struct for determining whether or not to visit a given child.
Definition: visitor.hh:293
Type
Definition: treepath.hh:25
Definition: treepath.hh:25
void post(T1 &&t1, T2 &&t2, TreePath treePath) const
Method for postfix traversal.
Definition: visitor.hh:198
void pre(T &&t, TreePath treePath) const
Method for prefix tree traversal.
Definition: visitor.hh:57
Mixin base class for visitors that want to visit the complete tree.
Definition: visitor.hh:281
static const TreePathType::Type treePathType
Use the dynamic tree traversal algorithm.
Definition: visitor.hh:326
Definition: treepath.hh:29
void pre(T1 &&t1, T2 &&t2, TreePath treePath) const
Method for prefix tree traversal.
Definition: visitor.hh:173
Visitor interface and base class for visitors of pairs of TypeTrees.
Definition: visitor.hh:160
void leaf(T &&t, TreePath treePath) const
Method for leaf traversal.
Definition: visitor.hh:90
void post(T &&t, TreePath treePath) const
Method for postfix tree traversal.
Definition: visitor.hh:80
void in(T1 &&t1, T2 &&t2, TreePath treePath) const
Method for infix tree traversal.
Definition: visitor.hh:186