Methods |
public
|
__construct(callable $filterCallback)
|
#
|
public
|
getFoundNode(): null|Node
Get found node satisfying the filter callback. Returns null if no node satisfies the filter callback.
Get found node satisfying the filter callback. Returns null if no node satisfies the filter callback.
Returns
Found node (or null if not found)
|
#
|
public
|
beforeTraverse(array $nodes): ?array
Called once before traversal. Return value semantics:
- null: $nodes stays as-is
- otherwise: $nodes is set to the return value
Called once before traversal. Return value semantics:
- null: $nodes stays as-is
- otherwise: $nodes is set to the return value
Parameters
Returns
Overrides
|
#
|
public
|
enterNode(Node $node)
Called when entering a node. Return value semantics:
- null
=> $node stays as-is
- array (of Nodes)
=> The return value is merged into the parent array (at the position of the $node)
- NodeVisitor::REMOVE_NODE
=> $node is removed from the parent array
- NodeVisitor::REPLACE_WITH_NULL
=> $node is replaced with null
- NodeVisitor::DONT_TRAVERSE_CHILDREN
=> Children of $node are not traversed. $node stays as-is
- NodeVisitor::DONT_TRAVERSE_CURRENT_AND_CHILDREN
=> Further visitors for the current node are skipped, and its children are not
traversed. $node stays as-is.
- NodeVisitor::STOP_TRAVERSAL
=> Traversal is aborted. $node stays as-is
- otherwise
=> $node is set to the return value
Called when entering a node. Return value semantics:
- null
=> $node stays as-is
- array (of Nodes)
=> The return value is merged into the parent array (at the position of the $node)
- NodeVisitor::REMOVE_NODE
=> $node is removed from the parent array
- NodeVisitor::REPLACE_WITH_NULL
=> $node is replaced with null
- NodeVisitor::DONT_TRAVERSE_CHILDREN
=> Children of $node are not traversed. $node stays as-is
- NodeVisitor::DONT_TRAVERSE_CURRENT_AND_CHILDREN
=> Further visitors for the current node are skipped, and its children are not
traversed. $node stays as-is.
- NodeVisitor::STOP_TRAVERSAL
=> Traversal is aborted. $node stays as-is
- otherwise
=> $node is set to the return value
Parameters
Returns
Replacement node (or special return value)
Overrides
|
#
|