Package de.xima.fc.common.tree
Interface TreeVisit.ITreeVisitor<Node>
-
- Type Parameters:
Node
- Type of the tree nodes.
- All Known Implementing Classes:
TreeVisit.ITreeVisitor.Pathless
- Enclosing class:
- TreeVisit
public static interface TreeVisit.ITreeVisitor<Node>
Visitor for a tree data structure.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
TreeVisit.ITreeVisitor.Pathless<Node>
A convenientTreeVisit.ITreeVisitor
with apath
parameter for the methods.
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default TreeVisit.ETreeVisitResult
enter(Node node, List<TreeVisit.TreePathFragment<Node>> path)
Enters a tree node.default boolean
exit(Node node, List<TreeVisit.TreePathFragment<Node>> path)
Exists a tree node.default boolean
visit(Node node, List<TreeVisit.TreePathFragment<Node>> path)
Visits a tree node.
-
-
-
Method Detail
-
enter
default TreeVisit.ETreeVisitResult enter(Node node, List<TreeVisit.TreePathFragment<Node>> path)
Enters a tree node. This is called when the node is first reached, before any visitor methods are called on child nodes. SeeTreeVisit
for an example of the call order.- Parameters:
node
- A tree node.path
- The path of the node, i.e. all parents of the node. This is always an empty list whenincludePath
is set tofalse
- Returns:
- How to proceed with the tree visit.
-
exit
default boolean exit(Node node, List<TreeVisit.TreePathFragment<Node>> path)
Exists a tree node. This is called at the end, after all children were visited. No more visitor methods will be called on any children of the node. SeeTreeVisit
for an example of the call order.- Parameters:
node
- A tree node.path
- The path of the node, i.e. all parents of the node. This is always an empty list whenincludePath
is set tofalse
- Returns:
true
to continue with the tree visit,false
to exit the visit (seeTreeVisit.ETreeVisitResult.QUIT
).
-
visit
default boolean visit(Node node, List<TreeVisit.TreePathFragment<Node>> path)
Visits a tree node. This is called betweenenter
andexit
. SeeTreeVisit
for an example of the call order.- Parameters:
node
- A tree node.path
- The path of the node, i.e. all parents of the node. This is always an empty list whenincludePath
is set tofalse
- Returns:
true
to continue with the tree visit,false
to exit the visit (seeTreeVisit.ETreeVisitResult.QUIT
).
-
-