public BaseType find(Predicate<? super BaseType> p) {
        if (p.test((BaseType) this)) {
            return (BaseType) this;
        }
        for (BaseType c : children()) {
            if (c.find(p) != null) {
                return c;
            }
        }
        return null;
    }
Find the first [[TreeNode]] that satisfies the condition specified by `f`.
The condition is recursively applied to this node and all of its children (pre-order).
indexr-query-opt/src/main/java/io/indexr/query/TreeNode.java