public function visitDocumentationTag(DocumentationTag $documentationTag)
    {
        $this->typeCheck->visitDocumentationTag(func_get_args());
        $content = $documentationTag->content() ?: '';

        $position = 0;
        $type = $this->parseType(
            $content,
            $position
        );
        $byReference = $this->parseByReference(
            $content,
            $position
        );
        $name = $this->parseName(
            $content,
            $position
        );
        $description = $this->parseDescription(
            $content,
            $position
        );
        $optional = $this->parseOptional(
            $content
        );

        return new Parameter(
            $name,
            $type,
            $description,
            $optional,
            $byReference
        );
    }
public function visitDocumentationTag(DocumentationTag $documentationTag)
    {
        $this->typeCheck->visitDocumentationTag(func_get_args());
        $content = $documentationTag->content() ?: '';

        $position = 0;
        $type = $this->parseType(
            $content,
            $position
        );
        $byReference = $this->parseByReference(
            $content,
            $position
        );
        $name = $this->parseName(
            $content,
            $position
        );
        $description = $this->parseDescription(
            $content,
            $position
        );
        $optional = $this->parseOptional(
            $content
        );

        return new Parameter(
            $name,
            $type,
            $description,
            $optional,
            $byReference
        );
    }
@param DocumentationTag $documentationTag

@return Parameter