private Node apply(Node node) {
        if (!satisfiesFilters(node)) {
            return node; // make no change
        }

        Node result = this.action.apply(node);

        if (this.trackStatistics && result != node) {
            this.statistics.incrementAffectedNodes();
        }

        return result;
    }
Applies this query to the given node, and returns the result.

@param node the node to apply changes to
@return the transformed node, or null if the node should be deleted
common/src/main/java/me/lucko/luckperms/common/bulkupdate/BulkUpdate.java