Updated Rector to commit b2c0a05d56

b2c0a05d56 [DeadCode] Skip RemoveAssignOfVoidReturnFunctionRector on used in next statement (#434)
This commit is contained in:
Tomas Votruba 2021-07-15 23:10:57 +00:00
parent cae21ff247
commit 81db79d69e
13 changed files with 145 additions and 76 deletions

View File

@ -7,12 +7,11 @@ use PhpParser\Node;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\Array_;
use PhpParser\Node\Expr\ArrayItem;
use PhpParser\Node\Expr\FuncCall;
use PhpParser\Node\Expr\Variable;
use PhpParser\Node\Stmt\Foreach_;
use PHPStan\Type\ObjectType;
use Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer;
use Rector\Core\Rector\AbstractRector;
use Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer;
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
/**
@ -21,12 +20,12 @@ use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
final class UnusedForeachValueToArrayKeysRector extends \Rector\Core\Rector\AbstractRector
{
/**
* @var \Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer
* @var \Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer
*/
private $compactFuncCallAnalyzer;
public function __construct(\Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer $compactFuncCallAnalyzer)
private $exprUsedInNodeAnalyzer;
public function __construct(\Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer $exprUsedInNodeAnalyzer)
{
$this->compactFuncCallAnalyzer = $compactFuncCallAnalyzer;
$this->exprUsedInNodeAnalyzer = $exprUsedInNodeAnalyzer;
}
public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
{
@ -110,14 +109,7 @@ CODE_SAMPLE
private function isVariableUsedInForeach(\PhpParser\Node\Expr\Variable $variable, \PhpParser\Node\Stmt\Foreach_ $foreach) : bool
{
return (bool) $this->betterNodeFinder->findFirst($foreach->stmts, function (\PhpParser\Node $node) use($variable) : bool {
$isVariableUsed = $this->nodeComparator->areNodesEqual($node, $variable);
if ($isVariableUsed) {
return \true;
}
if (!$node instanceof \PhpParser\Node\Expr\FuncCall) {
return \false;
}
return $this->compactFuncCallAnalyzer->isInCompact($node, $variable);
return $this->exprUsedInNodeAnalyzer->isUsed($node, $variable);
});
}
private function removeForeachValueAndUseArrayKeys(\PhpParser\Node\Stmt\Foreach_ $foreach) : void

View File

@ -0,0 +1,30 @@
<?php
declare (strict_types=1);
namespace Rector\DeadCode\NodeAnalyzer;
use PhpParser\Node;
use PhpParser\Node\Expr;
use Rector\Core\PhpParser\Node\BetterNodeFinder;
final class ExprUsedInNextNodeAnalyzer
{
/**
* @var \Rector\Core\PhpParser\Node\BetterNodeFinder
*/
private $betterNodeFinder;
/**
* @var \Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer
*/
private $exprUsedInNodeAnalyzer;
public function __construct(\Rector\Core\PhpParser\Node\BetterNodeFinder $betterNodeFinder, \Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer $exprUsedInNodeAnalyzer)
{
$this->betterNodeFinder = $betterNodeFinder;
$this->exprUsedInNodeAnalyzer = $exprUsedInNodeAnalyzer;
}
public function isUsed(\PhpParser\Node\Expr $expr) : bool
{
return (bool) $this->betterNodeFinder->findFirstNext($expr, function (\PhpParser\Node $node) use($expr) : bool {
return $this->exprUsedInNodeAnalyzer->isUsed($node, $expr);
});
}
}

View File

@ -0,0 +1,47 @@
<?php
declare (strict_types=1);
namespace Rector\DeadCode\NodeAnalyzer;
use PhpParser\Node;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\FuncCall;
use PhpParser\Node\Expr\Include_;
use PhpParser\Node\Expr\Variable;
use Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer;
use Rector\Core\PhpParser\Comparing\NodeComparator;
use Rector\Core\PhpParser\Node\BetterNodeFinder;
final class ExprUsedInNodeAnalyzer
{
/**
* @var \Rector\Core\PhpParser\Comparing\NodeComparator
*/
private $nodeComparator;
/**
* @var \Rector\DeadCode\NodeAnalyzer\UsedVariableNameAnalyzer
*/
private $usedVariableNameAnalyzer;
/**
* @var \Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer
*/
private $compactFuncCallAnalyzer;
public function __construct(\Rector\Core\PhpParser\Comparing\NodeComparator $nodeComparator, \Rector\DeadCode\NodeAnalyzer\UsedVariableNameAnalyzer $usedVariableNameAnalyzer, \Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer $compactFuncCallAnalyzer)
{
$this->nodeComparator = $nodeComparator;
$this->usedVariableNameAnalyzer = $usedVariableNameAnalyzer;
$this->compactFuncCallAnalyzer = $compactFuncCallAnalyzer;
}
public function isUsed(\PhpParser\Node $node, \PhpParser\Node\Expr $expr) : bool
{
if ($node instanceof \PhpParser\Node\Expr\Include_) {
return \true;
}
if ($node instanceof \PhpParser\Node\Expr\FuncCall) {
return $this->compactFuncCallAnalyzer->isInCompact($node, $expr);
}
if ($expr instanceof \PhpParser\Node\Expr\Variable) {
return $this->usedVariableNameAnalyzer->isVariableNamed($node, $expr);
}
return $this->nodeComparator->areNodesEqual($node, $expr);
}
}

View File

@ -10,6 +10,7 @@ use PhpParser\Node\Expr\MethodCall;
use PhpParser\Node\Expr\StaticCall;
use PHPStan\Type\VoidType;
use Rector\Core\Rector\AbstractRector;
use Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer;
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
/**
@ -17,6 +18,14 @@ use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
*/
final class RemoveAssignOfVoidReturnFunctionRector extends \Rector\Core\Rector\AbstractRector
{
/**
* @var \Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer
*/
private $exprUsedInNextNodeAnalyzer;
public function __construct(\Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer $exprUsedInNextNodeAnalyzer)
{
$this->exprUsedInNextNodeAnalyzer = $exprUsedInNextNodeAnalyzer;
}
public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
{
return new \Symplify\RuleDocGenerator\ValueObject\RuleDefinition('Remove assign of void function/method to variable', [new \Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample(<<<'CODE_SAMPLE'
@ -66,6 +75,9 @@ CODE_SAMPLE
if (!$exprType instanceof \PHPStan\Type\VoidType) {
return null;
}
if ($this->exprUsedInNextNodeAnalyzer->isUsed($node->var)) {
return null;
}
return $node->expr;
}
}

View File

@ -5,13 +5,12 @@ namespace Rector\DeadCode\Rector\Assign;
use PhpParser\Node;
use PhpParser\Node\Expr\Assign;
use PhpParser\Node\Expr\FuncCall;
use PhpParser\Node\Expr\Variable;
use PhpParser\Node\Stmt\Else_;
use PhpParser\Node\Stmt\If_;
use PHPStan\Analyser\Scope;
use Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer;
use Rector\Core\Rector\AbstractRector;
use Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer;
use Rector\DeadCode\NodeFinder\NextVariableUsageNodeFinder;
use Rector\DeadCode\NodeFinder\PreviousVariableAssignNodeFinder;
use Rector\DeadCode\SideEffect\SideEffectNodeDetector;
@ -24,10 +23,6 @@ use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
*/
final class RemoveUnusedAssignVariableRector extends \Rector\Core\Rector\AbstractRector
{
/**
* @var \Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer
*/
private $compactFuncCallAnalyzer;
/**
* @var \Rector\DeadCode\NodeFinder\NextVariableUsageNodeFinder
*/
@ -44,13 +39,17 @@ final class RemoveUnusedAssignVariableRector extends \Rector\Core\Rector\Abstrac
* @var \Rector\DeadCode\SideEffect\SideEffectNodeDetector
*/
private $sideEffectNodeDetector;
public function __construct(\Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer $compactFuncCallAnalyzer, \Rector\DeadCode\NodeFinder\NextVariableUsageNodeFinder $nextVariableUsageNodeFinder, \Rector\DeadCode\NodeFinder\PreviousVariableAssignNodeFinder $previousVariableAssignNodeFinder, \Rector\NodeNestingScope\ScopeNestingComparator $scopeNestingComparator, \Rector\DeadCode\SideEffect\SideEffectNodeDetector $sideEffectNodeDetector)
/**
* @var \Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer
*/
private $exprUsedInNextNodeAnalyzer;
public function __construct(\Rector\DeadCode\NodeFinder\NextVariableUsageNodeFinder $nextVariableUsageNodeFinder, \Rector\DeadCode\NodeFinder\PreviousVariableAssignNodeFinder $previousVariableAssignNodeFinder, \Rector\NodeNestingScope\ScopeNestingComparator $scopeNestingComparator, \Rector\DeadCode\SideEffect\SideEffectNodeDetector $sideEffectNodeDetector, \Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer $exprUsedInNextNodeAnalyzer)
{
$this->compactFuncCallAnalyzer = $compactFuncCallAnalyzer;
$this->nextVariableUsageNodeFinder = $nextVariableUsageNodeFinder;
$this->previousVariableAssignNodeFinder = $previousVariableAssignNodeFinder;
$this->scopeNestingComparator = $scopeNestingComparator;
$this->sideEffectNodeDetector = $sideEffectNodeDetector;
$this->exprUsedInNextNodeAnalyzer = $exprUsedInNextNodeAnalyzer;
}
/**
* @return array<class-string<Node>>
@ -101,10 +100,7 @@ CODE_SAMPLE
if ($this->shouldSkipAssign($node)) {
return null;
}
if ($this->isVariableTypeInScope($node) && !$this->isPreviousVariablePartOfOverridingAssign($node)) {
return null;
}
if ($this->isInCompact($node)) {
if (!$this->isPreviousVariablePartOfOverridingAssign($node) && ($this->isVariableTypeInScope($node) || $this->exprUsedInNextNodeAnalyzer->isUsed($node->var))) {
return null;
}
// is scalar assign? remove whole
@ -166,15 +162,4 @@ CODE_SAMPLE
$parent = $assign->getAttribute(\Rector\NodeTypeResolver\Node\AttributeKey::PARENT_NODE);
return $parent instanceof \PhpParser\Node\Expr\Assign;
}
private function isInCompact(\PhpParser\Node\Expr\Assign $assign) : bool
{
/** @var Variable $variable */
$variable = $assign->var;
return (bool) $this->betterNodeFinder->findFirstNext($variable, function (\PhpParser\Node $node) use($variable) : bool {
if ($node instanceof \PhpParser\Node\Expr\FuncCall) {
return $this->compactFuncCallAnalyzer->isInCompact($node, $variable);
}
return \false;
});
}
}

View File

@ -7,7 +7,6 @@ use PhpParser\Node;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\Assign;
use PhpParser\Node\Expr\FuncCall;
use PhpParser\Node\Expr\Include_;
use PhpParser\Node\Expr\MethodCall;
use PhpParser\Node\Expr\New_;
use PhpParser\Node\Expr\NullsafeMethodCall;
@ -20,6 +19,7 @@ use Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer;
use Rector\Core\Php\ReservedKeywordAnalyzer;
use Rector\Core\PhpParser\Comparing\ConditionSearcher;
use Rector\Core\Rector\AbstractRector;
use Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer;
use Rector\DeadCode\NodeAnalyzer\UsedVariableNameAnalyzer;
use Rector\DeadCode\SideEffect\PureFunctionDetector;
use Rector\NodeTypeResolver\Node\AttributeKey;
@ -50,13 +50,18 @@ final class RemoveUnusedVariableAssignRector extends \Rector\Core\Rector\Abstrac
* @var \Rector\DeadCode\SideEffect\PureFunctionDetector
*/
private $pureFunctionDetector;
public function __construct(\Rector\Core\Php\ReservedKeywordAnalyzer $reservedKeywordAnalyzer, \Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer $compactFuncCallAnalyzer, \Rector\Core\PhpParser\Comparing\ConditionSearcher $conditionSearcher, \Rector\DeadCode\NodeAnalyzer\UsedVariableNameAnalyzer $usedVariableNameAnalyzer, \Rector\DeadCode\SideEffect\PureFunctionDetector $pureFunctionDetector)
/**
* @var \Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer
*/
private $exprUsedInNextNodeAnalyzer;
public function __construct(\Rector\Core\Php\ReservedKeywordAnalyzer $reservedKeywordAnalyzer, \Rector\Core\NodeAnalyzer\CompactFuncCallAnalyzer $compactFuncCallAnalyzer, \Rector\Core\PhpParser\Comparing\ConditionSearcher $conditionSearcher, \Rector\DeadCode\NodeAnalyzer\UsedVariableNameAnalyzer $usedVariableNameAnalyzer, \Rector\DeadCode\SideEffect\PureFunctionDetector $pureFunctionDetector, \Rector\DeadCode\NodeAnalyzer\ExprUsedInNextNodeAnalyzer $exprUsedInNextNodeAnalyzer)
{
$this->reservedKeywordAnalyzer = $reservedKeywordAnalyzer;
$this->compactFuncCallAnalyzer = $compactFuncCallAnalyzer;
$this->conditionSearcher = $conditionSearcher;
$this->usedVariableNameAnalyzer = $usedVariableNameAnalyzer;
$this->pureFunctionDetector = $pureFunctionDetector;
$this->exprUsedInNextNodeAnalyzer = $exprUsedInNextNodeAnalyzer;
}
public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
{
@ -146,7 +151,7 @@ CODE_SAMPLE
if ($isUsedPrev) {
return \true;
}
if ($this->isUsedNext($variable)) {
if ($this->exprUsedInNextNodeAnalyzer->isUsed($variable)) {
return \true;
}
/** @var FuncCall|MethodCall|New_|NullsafeMethodCall|StaticCall $expr */
@ -156,18 +161,6 @@ CODE_SAMPLE
}
return $this->isUsedInAssignExpr($expr, $assign);
}
private function isUsedNext(\PhpParser\Node\Expr\Variable $variable) : bool
{
return (bool) $this->betterNodeFinder->findFirstNext($variable, function (\PhpParser\Node $node) use($variable) : bool {
if ($this->usedVariableNameAnalyzer->isVariableNamed($node, $variable)) {
return \true;
}
if ($node instanceof \PhpParser\Node\Expr\FuncCall) {
return $this->compactFuncCallAnalyzer->isInCompact($node, $variable);
}
return $node instanceof \PhpParser\Node\Expr\Include_;
});
}
/**
* @param \PhpParser\Node\Expr\FuncCall|\PhpParser\Node\Expr\MethodCall|\PhpParser\Node\Expr\New_|\PhpParser\Node\Expr\NullsafeMethodCall|\PhpParser\Node\Expr\StaticCall $expr
*/

View File

@ -7,6 +7,7 @@ use PhpParser\Node;
use PhpParser\Node\Expr\Variable;
use PhpParser\Node\Stmt\Catch_;
use Rector\Core\Rector\AbstractRector;
use Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer;
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
/**
@ -16,6 +17,14 @@ use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
*/
final class RemoveUnusedVariableInCatchRector extends \Rector\Core\Rector\AbstractRector
{
/**
* @var \Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer
*/
private $exprUsedInNodeAnalyzer;
public function __construct(\Rector\DeadCode\NodeAnalyzer\ExprUsedInNodeAnalyzer $exprUsedInNodeAnalyzer)
{
$this->exprUsedInNodeAnalyzer = $exprUsedInNodeAnalyzer;
}
public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
{
return new \Symplify\RuleDocGenerator\ValueObject\RuleDefinition('Remove unused variable in catch()', [new \Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample(<<<'CODE_SAMPLE'
@ -73,16 +82,13 @@ CODE_SAMPLE
private function isVariableUsedInStmts(array $nodes, \PhpParser\Node\Expr\Variable $variable) : bool
{
return (bool) $this->betterNodeFinder->findFirst($nodes, function (\PhpParser\Node $node) use($variable) : bool {
if (!$node instanceof \PhpParser\Node\Expr\Variable) {
return \false;
}
return $this->nodeComparator->areNodesEqual($node, $variable);
return $this->exprUsedInNodeAnalyzer->isUsed($node, $variable);
});
}
private function isVariableUsedNext(\PhpParser\Node\Stmt\Catch_ $catch, \PhpParser\Node\Expr\Variable $variable) : bool
{
return (bool) $this->betterNodeFinder->findFirstNext($catch, function (\PhpParser\Node $node) use($variable) : bool {
return $this->nodeComparator->areNodesEqual($node, $variable);
return $this->exprUsedInNodeAnalyzer->isUsed($node, $variable);
});
}
}

View File

@ -16,11 +16,11 @@ final class VersionResolver
/**
* @var string
*/
public const PACKAGE_VERSION = 'acabcfc4565c3691eb1f2076db85524edc583a9b';
public const PACKAGE_VERSION = 'b2c0a05d56fafa8c2690261e28aa515163f5c7eb';
/**
* @var string
*/
public const RELEASE_DATE = '2021-07-15 09:32:46';
public const RELEASE_DATE = '2021-07-15 10:33:19';
public static function resolvePackageVersion() : string
{
$process = new \RectorPrefix20210715\Symfony\Component\Process\Process(['git', 'log', '--pretty="%H"', '-n1', 'HEAD'], __DIR__);

2
vendor/autoload.php vendored
View File

@ -4,4 +4,4 @@
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787::getLoader();
return ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0::getLoader();

View File

@ -1932,6 +1932,8 @@ return array(
'Rector\\DeadCode\\ConditionResolver' => $baseDir . '/rules/DeadCode/ConditionResolver.php',
'Rector\\DeadCode\\Contract\\ConditionInterface' => $baseDir . '/rules/DeadCode/Contract/ConditionInterface.php',
'Rector\\DeadCode\\FeatureSupport\\FunctionSupportResolver' => $baseDir . '/rules/DeadCode/FeatureSupport/FunctionSupportResolver.php',
'Rector\\DeadCode\\NodeAnalyzer\\ExprUsedInNextNodeAnalyzer' => $baseDir . '/rules/DeadCode/NodeAnalyzer/ExprUsedInNextNodeAnalyzer.php',
'Rector\\DeadCode\\NodeAnalyzer\\ExprUsedInNodeAnalyzer' => $baseDir . '/rules/DeadCode/NodeAnalyzer/ExprUsedInNodeAnalyzer.php',
'Rector\\DeadCode\\NodeAnalyzer\\InstanceOfUniqueKeyResolver' => $baseDir . '/rules/DeadCode/NodeAnalyzer/InstanceOfUniqueKeyResolver.php',
'Rector\\DeadCode\\NodeAnalyzer\\UsedVariableNameAnalyzer' => $baseDir . '/rules/DeadCode/NodeAnalyzer/UsedVariableNameAnalyzer.php',
'Rector\\DeadCode\\NodeCollector\\ModifiedVariableNamesCollector' => $baseDir . '/rules/DeadCode/NodeCollector/ModifiedVariableNamesCollector.php',

View File

@ -2,7 +2,7 @@
// autoload_real.php @generated by Composer
class ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787
class ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0
{
private static $loader;
@ -22,15 +22,15 @@ class ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787', 'loadClassLoader'), true, true);
spl_autoload_register(array('ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
spl_autoload_unregister(array('ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787', 'loadClassLoader'));
spl_autoload_unregister(array('ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0', 'loadClassLoader'));
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
if ($useStaticLoader) {
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787::getInitializer($loader));
call_user_func(\Composer\Autoload\ComposerStaticInit923b43634c4cd63d999ecb78b541a1d0::getInitializer($loader));
} else {
$classMap = require __DIR__ . '/autoload_classmap.php';
if ($classMap) {
@ -42,19 +42,19 @@ class ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787
$loader->register(true);
if ($useStaticLoader) {
$includeFiles = Composer\Autoload\ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787::$files;
$includeFiles = Composer\Autoload\ComposerStaticInit923b43634c4cd63d999ecb78b541a1d0::$files;
} else {
$includeFiles = require __DIR__ . '/autoload_files.php';
}
foreach ($includeFiles as $fileIdentifier => $file) {
composerRequirec3f7a47dcc1e46bd4612e40ad4cb6787($fileIdentifier, $file);
composerRequire923b43634c4cd63d999ecb78b541a1d0($fileIdentifier, $file);
}
return $loader;
}
}
function composerRequirec3f7a47dcc1e46bd4612e40ad4cb6787($fileIdentifier, $file)
function composerRequire923b43634c4cd63d999ecb78b541a1d0($fileIdentifier, $file)
{
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
require $file;

View File

@ -4,7 +4,7 @@
namespace Composer\Autoload;
class ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787
class ComposerStaticInit923b43634c4cd63d999ecb78b541a1d0
{
public static $files = array (
'a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php',
@ -2287,6 +2287,8 @@ class ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787
'Rector\\DeadCode\\ConditionResolver' => __DIR__ . '/../..' . '/rules/DeadCode/ConditionResolver.php',
'Rector\\DeadCode\\Contract\\ConditionInterface' => __DIR__ . '/../..' . '/rules/DeadCode/Contract/ConditionInterface.php',
'Rector\\DeadCode\\FeatureSupport\\FunctionSupportResolver' => __DIR__ . '/../..' . '/rules/DeadCode/FeatureSupport/FunctionSupportResolver.php',
'Rector\\DeadCode\\NodeAnalyzer\\ExprUsedInNextNodeAnalyzer' => __DIR__ . '/../..' . '/rules/DeadCode/NodeAnalyzer/ExprUsedInNextNodeAnalyzer.php',
'Rector\\DeadCode\\NodeAnalyzer\\ExprUsedInNodeAnalyzer' => __DIR__ . '/../..' . '/rules/DeadCode/NodeAnalyzer/ExprUsedInNodeAnalyzer.php',
'Rector\\DeadCode\\NodeAnalyzer\\InstanceOfUniqueKeyResolver' => __DIR__ . '/../..' . '/rules/DeadCode/NodeAnalyzer/InstanceOfUniqueKeyResolver.php',
'Rector\\DeadCode\\NodeAnalyzer\\UsedVariableNameAnalyzer' => __DIR__ . '/../..' . '/rules/DeadCode/NodeAnalyzer/UsedVariableNameAnalyzer.php',
'Rector\\DeadCode\\NodeCollector\\ModifiedVariableNamesCollector' => __DIR__ . '/../..' . '/rules/DeadCode/NodeCollector/ModifiedVariableNamesCollector.php',
@ -3845,9 +3847,9 @@ class ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInitc3f7a47dcc1e46bd4612e40ad4cb6787::$classMap;
$loader->prefixLengthsPsr4 = ComposerStaticInit923b43634c4cd63d999ecb78b541a1d0::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit923b43634c4cd63d999ecb78b541a1d0::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit923b43634c4cd63d999ecb78b541a1d0::$classMap;
}, null, ClassLoader::class);
}

View File

@ -9,8 +9,8 @@ $loader = require_once __DIR__.'/autoload.php';
if (!class_exists('AutoloadIncluder', false) && !interface_exists('AutoloadIncluder', false) && !trait_exists('AutoloadIncluder', false)) {
spl_autoload_call('RectorPrefix20210715\AutoloadIncluder');
}
if (!class_exists('ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787', false) && !interface_exists('ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787', false) && !trait_exists('ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787', false)) {
spl_autoload_call('RectorPrefix20210715\ComposerAutoloaderInitc3f7a47dcc1e46bd4612e40ad4cb6787');
if (!class_exists('ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0', false) && !interface_exists('ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0', false) && !trait_exists('ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0', false)) {
spl_autoload_call('RectorPrefix20210715\ComposerAutoloaderInit923b43634c4cd63d999ecb78b541a1d0');
}
if (!class_exists('Doctrine\Inflector\Inflector', false) && !interface_exists('Doctrine\Inflector\Inflector', false) && !trait_exists('Doctrine\Inflector\Inflector', false)) {
spl_autoload_call('RectorPrefix20210715\Doctrine\Inflector\Inflector');
@ -3308,9 +3308,9 @@ if (!function_exists('print_node')) {
return \RectorPrefix20210715\print_node(...func_get_args());
}
}
if (!function_exists('composerRequirec3f7a47dcc1e46bd4612e40ad4cb6787')) {
function composerRequirec3f7a47dcc1e46bd4612e40ad4cb6787() {
return \RectorPrefix20210715\composerRequirec3f7a47dcc1e46bd4612e40ad4cb6787(...func_get_args());
if (!function_exists('composerRequire923b43634c4cd63d999ecb78b541a1d0')) {
function composerRequire923b43634c4cd63d999ecb78b541a1d0() {
return \RectorPrefix20210715\composerRequire923b43634c4cd63d999ecb78b541a1d0(...func_get_args());
}
}
if (!function_exists('parseArgs')) {