Improvements 🔧
- Nested generic type bounds (phpstan/phpstan-src@e671cc0), #2928, #3922
- You can now use for example
@template T
+@template U of Query<T>
. - Useful example: https://phpstan.org/r/29546058-556e-4e76-bccc-f053079e5711
- You can now use for example
- Narrow down type
T
ofRecursiveIteratorIterator
(phpstan/phpstan-src@d28b61b), #3425 - Performance improvement: memoize expensive calls to PHPDocs (#458), thanks @pyguerder!
- More SPL iterator stubs (phpstan/phpstan-src@0315dfa)
- Unified iterator parameter names across PHP versions (phpstan/phpstan-src@72b02a6)
Bugfixes 🐛
- Fix accepting BenevolentUnionType as part of GenericObjectType (phpstan/phpstan-src@d29d098), #4605
- Fix inline
@var
priority with prefixed PHPDoc tags (phpstan/phpstan-src@3186fff), #4606