Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. PhpDocParser.php

function PhpDocParser::parseDoctrineArguments

*

Return value

list<Doctrine\DoctrineArgument>

2 calls to PhpDocParser::parseDoctrineArguments()
PhpDocParser::parseDoctrineArgumentValue in vendor/phpstan/phpdoc-parser/src/Parser/PhpDocParser.php
*
PhpDocParser::parseDoctrineTagValue in vendor/phpstan/phpdoc-parser/src/Parser/PhpDocParser.php

File

vendor/phpstan/phpdoc-parser/src/Parser/PhpDocParser.php, line 592

Class

PhpDocParser
@phpstan-import-type ValueType from Doctrine\DoctrineArgument as DoctrineValueType

Namespace

PHPStan\PhpDocParser\Parser

Code

private function parseDoctrineArguments(TokenIterator $tokens, bool $deep) : array {
    if (!$tokens->isCurrentTokenType(Lexer::TOKEN_OPEN_PARENTHESES)) {
        return [];
    }
    if (!$deep) {
        $tokens->addEndOfLineToSkippedTokens();
    }
    $arguments = [];
    try {
        $tokens->consumeTokenType(Lexer::TOKEN_OPEN_PARENTHESES);
        do {
            if ($tokens->isCurrentTokenType(Lexer::TOKEN_CLOSE_PARENTHESES)) {
                break;
            }
            $arguments[] = $this->parseDoctrineArgument($tokens);
        } while ($tokens->tryConsumeTokenType(Lexer::TOKEN_COMMA));
    } finally {
        if (!$deep) {
            $tokens->removeEndOfLineFromSkippedTokens();
        }
    }
    $tokens->consumeTokenType(Lexer::TOKEN_CLOSE_PARENTHESES);
    return $arguments;
}
RSS feed
Powered by Drupal