mirror of
https://github.com/rectorphp/rector.git
synced 2024-06-28 13:43:31 +00:00
Updated Rector to commit 14b5cb1d6747f44e827dcce2160105dc17496927
14b5cb1d67
[TypeDeclaration] Skip property exists in parent on TypedPropertyFromStrictConstructorRector (#2659)
This commit is contained in:
parent
9d2c3a2853
commit
24b5f6d999
|
@ -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);
|
||||
|
|
|
@ -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
2
vendor/autoload.php
vendored
|
@ -9,4 +9,4 @@ if (PHP_VERSION_ID < 50600) {
|
|||
|
||||
require_once __DIR__ . '/composer/autoload_real.php';
|
||||
|
||||
return ComposerAutoloaderInit500eec63c392802592d1e38986bb5fdb::getLoader();
|
||||
return ComposerAutoloaderInit7d2d9c3272fe4bf3d27e4e45e04d1e25::getLoader();
|
||||
|
|
14
vendor/composer/autoload_real.php
vendored
14
vendor/composer/autoload_real.php
vendored
|
@ -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;
|
||||
|
|
8
vendor/composer/autoload_static.php
vendored
8
vendor/composer/autoload_static.php
vendored
|
@ -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);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user