Package org.jsoup.select
Interface NodeFilter
public interface NodeFilter
A controllable Node visitor interface. Execute via
traverse(Node)
.
This interface provides two methods, head
and tail
. The head method is called when a node is first seen, and the tail method when all that node's children have been visited.
For each visited node, the resulting action may be:
- continue (
NodeFilter.FilterResult.CONTINUE
), - skip all children (
NodeFilter.FilterResult.SKIP_CHILDREN
), - skip node entirely (
NodeFilter.FilterResult.SKIP_ENTIRELY
), - remove the subtree (
NodeFilter.FilterResult.REMOVE
), - interrupt the iteration and return (
NodeFilter.FilterResult.STOP
).
NodeFilter.FilterResult.SKIP_CHILDREN
and NodeFilter.FilterResult.SKIP_ENTIRELY
is that the first will invoke tail(Node, int)
on the node, while the latter will not. Within tail(Node, int)
, both are equivalent to NodeFilter.FilterResult.CONTINUE
.
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionCallback for when a node is first visited.default NodeFilter.FilterResult
Callback for when a node is last visited, after all of its descendants have been visited.default void
Run a depth-first controlled traverse of the root and all of its descendants.
-
Method Details
-
head
Callback for when a node is first visited.- Parameters:
-
node
- the node being visited. -
depth
- the depth of the node, relative to the root node. E.g., the root node has depth 0, and a child node of that will have depth 1. - Returns:
- Traversal action
-
tail
Callback for when a node is last visited, after all of its descendants have been visited.This method has a default implementation to return
NodeFilter.FilterResult.CONTINUE
.- Parameters:
-
node
- the node being visited. -
depth
- the depth of the node, relative to the root node. E.g., the root node has depth 0, and a child node of that will have depth 1. - Returns:
- Traversal action
-
traverse
Run a depth-first controlled traverse of the root and all of its descendants.- Parameters:
-
root
- the initial node point to traverse. - Since:
- 1.21.1
-