php-stubs / wordpress-stubs

Up-to-date WordPress function and class declaration stubs for static analysis by PHPStan
https://packagist.org/packages/php-stubs/wordpress-stubs
MIT License
146 stars 18 forks source link

Allow multiple PHPStan tags with same name #183

Open IanDelMar opened 3 months ago

IanDelMar commented 3 months ago

Currently, there is no way to add two or more PHPStan tags with the same name, such as @phpstan-template. This issue was brought to my attention in #181, where both @phpstan-template and @template were used to keep both tags. This PR provides changes to the visitor to accommodate this need should it arise in the future.

Input format:

[
    'ClassName' => [null, '@phpstan-template' => ['T', 'TKey']],
]

which will produce

/**
 * @phpstan-template T
 * @phpstan-template TKey
 */
class ClassName {}

As there are currently no such cases in the functionMap, there is no need to merge this PR now. I just wanted to leave it here in case we need this change in the future.