[Downgrade PHP 7.2] Downgrade object type also in Closure (#961)

This commit is contained in:
Leonardo Losoviz 2021-10-06 17:41:12 +08:00 committed by GitHub
parent e9e2877d95
commit 683077ed2a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 33 additions and 1 deletions

View File

@ -0,0 +1,31 @@
<?php
namespace Rector\Tests\DowngradePhp72\Rector\FunctionLike\DowngradeObjectTypeDeclarationRector\Fixture;
class AnonymousFunction
{
public function return()
{
$callable = function (object $someObject) {
// ...
};
}
}
?>
-----
<?php
namespace Rector\Tests\DowngradePhp72\Rector\FunctionLike\DowngradeObjectTypeDeclarationRector\Fixture;
class AnonymousFunction
{
public function return()
{
$callable = function ($someObject) {
// ...
};
}
}
?>

View File

@ -5,6 +5,7 @@ declare(strict_types=1);
namespace Rector\DowngradePhp72\Rector\FunctionLike;
use PhpParser\Node;
use PhpParser\Node\Expr\Closure;
use PhpParser\Node\Stmt\ClassMethod;
use PhpParser\Node\Stmt\Function_;
use PHPStan\Type\ObjectWithoutClassType;
@ -28,7 +29,7 @@ final class DowngradeObjectTypeDeclarationRector extends AbstractRector
*/
public function getNodeTypes(): array
{
return [Function_::class, ClassMethod::class];
return [Function_::class, ClassMethod::class, Closure::class];
}
/**