Cake\Database\Query::traverseExpressions PHP Метод

traverseExpressions() публичный Метод

Callback will receive as first parameter the currently visited expression.
public traverseExpressions ( callable $callback )
$callback callable the function to be executed for each ExpressionInterface found inside this query.
    public function traverseExpressions(callable $callback)
    {
        $visitor = function ($expression) use(&$visitor, $callback) {
            if (is_array($expression)) {
                foreach ($expression as $e) {
                    $visitor($e);
                }
                return null;
            }
            if ($expression instanceof ExpressionInterface) {
                $expression->traverse($visitor);
                if (!$expression instanceof self) {
                    $callback($expression);
                }
            }
        };
        return $this->traverse($visitor);
    }