Returns every child matching predicate, in depth-first pre-order.
Child means any node below this one, at any depth.
This node itself is not considered.
A matching node is searched for further matches, so a match may contain another.
Returns this node with the first child matching predicate replaced by replacer's result.
The child replaced is the one findChild() returns. If there is none, the tree is
returned unchanged.
The replacement is left as it is, so it is not searched for further matches.
Returns this node with every child matching predicate replaced by replacer's result.
The children replaced are those findChildren() returns, except that a replacement is left
as it is, so a match nested in another match is left to replacer.
A generic, untyped node in the Pkl syntax tree.