public function collectSubQueryTags()
    {
        /* @var Reflector $reflector */
        $reflector = new Reflector($this->builder);

        /* @var Manager $manager */
        $manager = new Manager($reflector);

        // Skip if caching is disabled for current query
        if (!$manager->shouldCache()) {
            return;
        }

        /* @var Tagger $tagger */
        $tagger = new Tagger($reflector);

        // Add tags to collection
        $this->subQueryTags = array_unique(array_merge(
            $this->subQueryTags,
            $tagger->getTags()
        ));
    }