protected function compileWheres()
    {
        // Wheres to compile
        $wheres = $this->wheres;

        // If there is nothing to do, then return
        if (!$wheres) {
            return;
        }

        $this->query->filter(function ($document) use ($wheres) {
            $builder = new FilterBuilder($document);

            return $builder->compileWheres($wheres);
        });
    }