Updated Rector to commit 14b5cb1d6747f44e827dcce2160105dc17496927

14b5cb1d67 [TypeDeclaration] Skip property exists in parent on TypedPropertyFromStrictConstructorRector (#2659)
This commit is contained in:
Tomas Votruba 2022-07-14 00:42:36 +00:00
parent 9d2c3a2853
commit 24b5f6d999
5 changed files with 25 additions and 15 deletions

View File

@ -16,6 +16,7 @@ use Rector\Core\ValueObject\PhpVersionFeature;
use Rector\DeadCode\PhpDoc\TagRemover\VarTagRemover;
use Rector\PHPStanStaticTypeMapper\Enum\TypeKind;
use Rector\TypeDeclaration\AlreadyAssignDetector\ConstructorAssignDetector;
use Rector\TypeDeclaration\Guard\PropertyTypeOverrideGuard;
use Rector\TypeDeclaration\TypeInferer\PropertyTypeInferer\TrustedClassMethodPropertyTypeInferer;
use Rector\VersionBonding\Contract\MinPhpVersionInterface;
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
@ -50,13 +51,19 @@ final class TypedPropertyFromStrictConstructorRector extends AbstractRector impl
* @var \Rector\Core\Php\PhpVersionProvider
*/
private $phpVersionProvider;
public function __construct(TrustedClassMethodPropertyTypeInferer $trustedClassMethodPropertyTypeInferer, VarTagRemover $varTagRemover, PhpDocTypeChanger $phpDocTypeChanger, ConstructorAssignDetector $constructorAssignDetector, PhpVersionProvider $phpVersionProvider)
/**
* @readonly
* @var \Rector\TypeDeclaration\Guard\PropertyTypeOverrideGuard
*/
private $propertyTypeOverrideGuard;
public function __construct(TrustedClassMethodPropertyTypeInferer $trustedClassMethodPropertyTypeInferer, VarTagRemover $varTagRemover, PhpDocTypeChanger $phpDocTypeChanger, ConstructorAssignDetector $constructorAssignDetector, PhpVersionProvider $phpVersionProvider, PropertyTypeOverrideGuard $propertyTypeOverrideGuard)
{
$this->trustedClassMethodPropertyTypeInferer = $trustedClassMethodPropertyTypeInferer;
$this->varTagRemover = $varTagRemover;
$this->phpDocTypeChanger = $phpDocTypeChanger;
$this->constructorAssignDetector = $constructorAssignDetector;
$this->phpVersionProvider = $phpVersionProvider;
$this->propertyTypeOverrideGuard = $propertyTypeOverrideGuard;
}
public function getRuleDefinition() : RuleDefinition
{
@ -110,6 +117,9 @@ CODE_SAMPLE
if (!$classLike instanceof Class_) {
return null;
}
if (!$this->propertyTypeOverrideGuard->isLegal($node)) {
return null;
}
$phpDocInfo = $this->phpDocInfoFactory->createFromNodeOrEmpty($node);
if (!$this->phpVersionProvider->isAtLeastPhpVersion(PhpVersionFeature::TYPED_PROPERTIES)) {
$this->phpDocTypeChanger->changeVarType($phpDocInfo, $propertyType);

View File

@ -17,12 +17,12 @@ final class VersionResolver
* @api
* @var string
*/
public const PACKAGE_VERSION = 'ae7648ed92396d39b4d364328312250b2c66f40e';
public const PACKAGE_VERSION = '14b5cb1d6747f44e827dcce2160105dc17496927';
/**
* @api
* @var string
*/
public const RELEASE_DATE = '2022-07-14 03:30:00';
public const RELEASE_DATE = '2022-07-14 02:35:45';
/**
* @var int
*/

2
vendor/autoload.php vendored
View File

@ -9,4 +9,4 @@ if (PHP_VERSION_ID < 50600) {
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInit500eec63c392802592d1e38986bb5fdb::getLoader();
return ComposerAutoloaderInit7d2d9c3272fe4bf3d27e4e45e04d1e25::getLoader();

View File

@ -2,7 +2,7 @@
// autoload_real.php @generated by Composer
class ComposerAutoloaderInit500eec63c392802592d1e38986bb5fdb
class ComposerAutoloaderInit7d2d9c3272fe4bf3d27e4e45e04d1e25
{
private static $loader;
@ -22,19 +22,19 @@ class ComposerAutoloaderInit500eec63c392802592d1e38986bb5fdb
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInit500eec63c392802592d1e38986bb5fdb', 'loadClassLoader'), true, true);
spl_autoload_register(array('ComposerAutoloaderInit7d2d9c3272fe4bf3d27e4e45e04d1e25', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
spl_autoload_unregister(array('ComposerAutoloaderInit500eec63c392802592d1e38986bb5fdb', 'loadClassLoader'));
spl_autoload_unregister(array('ComposerAutoloaderInit7d2d9c3272fe4bf3d27e4e45e04d1e25', 'loadClassLoader'));
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInit500eec63c392802592d1e38986bb5fdb::getInitializer($loader));
call_user_func(\Composer\Autoload\ComposerStaticInit7d2d9c3272fe4bf3d27e4e45e04d1e25::getInitializer($loader));
$loader->setClassMapAuthoritative(true);
$loader->register(true);
$includeFiles = \Composer\Autoload\ComposerStaticInit500eec63c392802592d1e38986bb5fdb::$files;
$includeFiles = \Composer\Autoload\ComposerStaticInit7d2d9c3272fe4bf3d27e4e45e04d1e25::$files;
foreach ($includeFiles as $fileIdentifier => $file) {
composerRequire500eec63c392802592d1e38986bb5fdb($fileIdentifier, $file);
composerRequire7d2d9c3272fe4bf3d27e4e45e04d1e25($fileIdentifier, $file);
}
return $loader;
@ -46,7 +46,7 @@ class ComposerAutoloaderInit500eec63c392802592d1e38986bb5fdb
* @param string $file
* @return void
*/
function composerRequire500eec63c392802592d1e38986bb5fdb($fileIdentifier, $file)
function composerRequire7d2d9c3272fe4bf3d27e4e45e04d1e25($fileIdentifier, $file)
{
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;

View File

@ -4,7 +4,7 @@
namespace Composer\Autoload;
class ComposerStaticInit500eec63c392802592d1e38986bb5fdb
class ComposerStaticInit7d2d9c3272fe4bf3d27e4e45e04d1e25
{
public static $files = array (
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
@ -3416,9 +3416,9 @@ class ComposerStaticInit500eec63c392802592d1e38986bb5fdb
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInit500eec63c392802592d1e38986bb5fdb::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit500eec63c392802592d1e38986bb5fdb::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit500eec63c392802592d1e38986bb5fdb::$classMap;
$loader->prefixLengthsPsr4 = ComposerStaticInit7d2d9c3272fe4bf3d27e4e45e04d1e25::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit7d2d9c3272fe4bf3d27e4e45e04d1e25::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit7d2d9c3272fe4bf3d27e4e45e04d1e25::$classMap;
}, null, ClassLoader::class);
}