function DocBlock::parseDocBlock
@psalm-return array<string, array<int, string>>
1 call to DocBlock::parseDocBlock()
- DocBlock::extractAnnotationsFromReflector in vendor/
phpunit/ phpunit/ src/ Metadata/ Parser/ Annotation/ DocBlock.php
File
-
vendor/
phpunit/ phpunit/ src/ Metadata/ Parser/ Annotation/ DocBlock.php, line 231
Class
- DocBlock
- This is an abstraction around a PHPUnit-specific docBlock, allowing us to ask meaningful questions about a specific reflection symbol.
Namespace
PHPUnit\Metadata\Annotation\ParserCode
private static function parseDocBlock(string $docBlock) : array {
// Strip away the docblock header and footer to ease parsing of one line annotations
$docBlock = substr($docBlock, 3, -2);
$annotations = [];
if (preg_match_all('/@(?P<name>[A-Za-z_-]+)(?:[ \\t]+(?P<value>.*?))?[ \\t]*\\r?$/m', $docBlock, $matches)) {
$numMatches = count($matches[0]);
for ($i = 0; $i < $numMatches; $i++) {
$annotations[$matches['name'][$i]][] = $matches['value'][$i];
}
}
return $annotations;
}