public function facet() : Stage\Facet
    {
        $stage = new Stage\Facet($this);
        $this->addStage($stage);

        return $stage;
    }
public function facet() : Stage\Facet
    {
        $stage = new Stage\Facet($this);
        $this->addStage($stage);

        return $stage;
    }
public function facet ( ) : Stage \ Facet { $ stage = new Stage \ Facet ( $ this ) ; $ this -> addStage ( $ stage ) ; return $ stage ; }
Processes multiple aggregation pipelines within a single stage on the
same set of input documents.

Each sub-pipeline has its own field in the output document where its
results are stored as an array of documents.
Processes multiple aggregation pipelines within a single stage on the same set of input documents .