Updated Rector to commit 039181ac6c

039181ac6c [DeadCode] Remove RemoveCodeAfterReturnRector, already handled at RemoveUnreachableStatementRector (#2199)
This commit is contained in:
Tomas Votruba 2022-05-01 05:55:37 +00:00
parent 0263197624
commit 4b7ca796b9
9 changed files with 21 additions and 122 deletions

View File

@ -30,7 +30,6 @@ use Rector\DeadCode\Rector\For_\RemoveDeadContinueRector;
use Rector\DeadCode\Rector\For_\RemoveDeadIfForeachForRector;
use Rector\DeadCode\Rector\For_\RemoveDeadLoopRector;
use Rector\DeadCode\Rector\Foreach_\RemoveUnusedForeachKeyRector;
use Rector\DeadCode\Rector\FunctionLike\RemoveCodeAfterReturnRector;
use Rector\DeadCode\Rector\FunctionLike\RemoveDeadReturnRector;
use Rector\DeadCode\Rector\FunctionLike\RemoveDuplicatedIfReturnRector;
use Rector\DeadCode\Rector\FunctionLike\RemoveOverriddenValuesRector;
@ -65,7 +64,6 @@ return static function (\Rector\Config\RectorConfig $rectorConfig) : void {
$rectorConfig->rule(\Rector\DeadCode\Rector\Property\RemoveUnusedPrivatePropertyRector::class);
$rectorConfig->rule(\Rector\DeadCode\Rector\ClassConst\RemoveUnusedPrivateClassConstantRector::class);
$rectorConfig->rule(\Rector\DeadCode\Rector\ClassMethod\RemoveUnusedPrivateMethodRector::class);
$rectorConfig->rule(\Rector\DeadCode\Rector\FunctionLike\RemoveCodeAfterReturnRector::class);
$rectorConfig->rule(\Rector\DeadCode\Rector\ClassMethod\RemoveDeadConstructorRector::class);
$rectorConfig->rule(\Rector\DeadCode\Rector\FunctionLike\RemoveDeadReturnRector::class);
$rectorConfig->rule(\Rector\DeadCode\Rector\For_\RemoveDeadContinueRector::class);

View File

@ -1,4 +1,4 @@
# 513 Rules Overview
# 512 Rules Overview
<br>
@ -14,7 +14,7 @@
- [Composer](#composer) (6)
- [DeadCode](#deadcode) (49)
- [DeadCode](#deadcode) (48)
- [DependencyInjection](#dependencyinjection) (2)
@ -2787,25 +2787,6 @@ return static function (RectorConfig $rectorConfig): void {
<br>
### RemoveCodeAfterReturnRector
Remove dead code after return statement
- class: [`Rector\DeadCode\Rector\FunctionLike\RemoveCodeAfterReturnRector`](../rules/DeadCode/Rector/FunctionLike/RemoveCodeAfterReturnRector.php)
```diff
class SomeClass
{
public function run(int $a)
{
return $a;
- $a++;
}
}
```
<br>
### RemoveConcatAutocastRector
Remove (string) casting when it comes to concat, that does this by default

View File

@ -1,78 +0,0 @@
<?php
declare (strict_types=1);
namespace Rector\DeadCode\Rector\FunctionLike;
use PhpParser\Node;
use PhpParser\Node\Expr\Closure;
use PhpParser\Node\Stmt\ClassMethod;
use PhpParser\Node\Stmt\Function_;
use PhpParser\Node\Stmt\Nop;
use PhpParser\Node\Stmt\Return_;
use Rector\Core\Exception\ShouldNotHappenException;
use Rector\Core\Rector\AbstractRector;
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
/**
* @see \Rector\Tests\DeadCode\Rector\FunctionLike\RemoveCodeAfterReturnRector\RemoveCodeAfterReturnRectorTest
*/
final class RemoveCodeAfterReturnRector extends \Rector\Core\Rector\AbstractRector
{
public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
{
return new \Symplify\RuleDocGenerator\ValueObject\RuleDefinition('Remove dead code after return statement', [new \Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample(<<<'CODE_SAMPLE'
class SomeClass
{
public function run(int $a)
{
return $a;
$a++;
}
}
CODE_SAMPLE
, <<<'CODE_SAMPLE'
class SomeClass
{
public function run(int $a)
{
return $a;
}
}
CODE_SAMPLE
)]);
}
/**
* @return array<class-string<Node>>
*/
public function getNodeTypes() : array
{
return [\PhpParser\Node\Expr\Closure::class, \PhpParser\Node\Stmt\ClassMethod::class, \PhpParser\Node\Stmt\Function_::class];
}
/**
* @param Closure|ClassMethod|Function_ $node
*/
public function refactor(\PhpParser\Node $node) : ?\PhpParser\Node
{
if ($node->stmts === null) {
return null;
}
$isDeadAfterReturn = \false;
foreach ($node->stmts as $key => $stmt) {
if ($isDeadAfterReturn) {
if (!isset($node->stmts[$key])) {
throw new \Rector\Core\Exception\ShouldNotHappenException();
}
// keep comment
/** @var int $key */
if ($node->stmts[$key] instanceof \PhpParser\Node\Stmt\Nop) {
continue;
}
$this->nodeRemover->removeStmt($node, $key);
}
if ($stmt instanceof \PhpParser\Node\Stmt\Return_) {
$isDeadAfterReturn = \true;
}
}
return null;
}
}

View File

@ -16,11 +16,11 @@ final class VersionResolver
/**
* @var string
*/
public const PACKAGE_VERSION = '3f1f632c0407d2560116e919f515909a70978cff';
public const PACKAGE_VERSION = '039181ac6c68cd6e4acf5db945b0954893a196a6';
/**
* @var string
*/
public const RELEASE_DATE = '2022-05-01 00:42:42';
public const RELEASE_DATE = '2022-05-01 12:46:52';
/**
* @var string
*/

2
vendor/autoload.php vendored
View File

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

View File

@ -1857,7 +1857,6 @@ return array(
'Rector\\DeadCode\\Rector\\For_\\RemoveDeadIfForeachForRector' => $baseDir . '/rules/DeadCode/Rector/For_/RemoveDeadIfForeachForRector.php',
'Rector\\DeadCode\\Rector\\For_\\RemoveDeadLoopRector' => $baseDir . '/rules/DeadCode/Rector/For_/RemoveDeadLoopRector.php',
'Rector\\DeadCode\\Rector\\Foreach_\\RemoveUnusedForeachKeyRector' => $baseDir . '/rules/DeadCode/Rector/Foreach_/RemoveUnusedForeachKeyRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveCodeAfterReturnRector' => $baseDir . '/rules/DeadCode/Rector/FunctionLike/RemoveCodeAfterReturnRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveDeadReturnRector' => $baseDir . '/rules/DeadCode/Rector/FunctionLike/RemoveDeadReturnRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveDuplicatedIfReturnRector' => $baseDir . '/rules/DeadCode/Rector/FunctionLike/RemoveDuplicatedIfReturnRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveOverriddenValuesRector' => $baseDir . '/rules/DeadCode/Rector/FunctionLike/RemoveOverriddenValuesRector.php',

View File

@ -2,7 +2,7 @@
// autoload_real.php @generated by Composer
class ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d
class ComposerAutoloaderInit3a09451c4d454e1686b1a056e742dd10
{
private static $loader;
@ -22,19 +22,19 @@ class ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d', 'loadClassLoader'), true, true);
spl_autoload_register(array('ComposerAutoloaderInit3a09451c4d454e1686b1a056e742dd10', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
spl_autoload_unregister(array('ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d', 'loadClassLoader'));
spl_autoload_unregister(array('ComposerAutoloaderInit3a09451c4d454e1686b1a056e742dd10', 'loadClassLoader'));
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInite29f14d3375b21659f7e16fd7c87803d::getInitializer($loader));
call_user_func(\Composer\Autoload\ComposerStaticInit3a09451c4d454e1686b1a056e742dd10::getInitializer($loader));
$loader->setClassMapAuthoritative(true);
$loader->register(true);
$includeFiles = \Composer\Autoload\ComposerStaticInite29f14d3375b21659f7e16fd7c87803d::$files;
$includeFiles = \Composer\Autoload\ComposerStaticInit3a09451c4d454e1686b1a056e742dd10::$files;
foreach ($includeFiles as $fileIdentifier => $file) {
composerRequiree29f14d3375b21659f7e16fd7c87803d($fileIdentifier, $file);
composerRequire3a09451c4d454e1686b1a056e742dd10($fileIdentifier, $file);
}
return $loader;
@ -46,7 +46,7 @@ class ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d
* @param string $file
* @return void
*/
function composerRequiree29f14d3375b21659f7e16fd7c87803d($fileIdentifier, $file)
function composerRequire3a09451c4d454e1686b1a056e742dd10($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 ComposerStaticInite29f14d3375b21659f7e16fd7c87803d
class ComposerStaticInit3a09451c4d454e1686b1a056e742dd10
{
public static $files = array (
'320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php',
@ -2226,7 +2226,6 @@ class ComposerStaticInite29f14d3375b21659f7e16fd7c87803d
'Rector\\DeadCode\\Rector\\For_\\RemoveDeadIfForeachForRector' => __DIR__ . '/../..' . '/rules/DeadCode/Rector/For_/RemoveDeadIfForeachForRector.php',
'Rector\\DeadCode\\Rector\\For_\\RemoveDeadLoopRector' => __DIR__ . '/../..' . '/rules/DeadCode/Rector/For_/RemoveDeadLoopRector.php',
'Rector\\DeadCode\\Rector\\Foreach_\\RemoveUnusedForeachKeyRector' => __DIR__ . '/../..' . '/rules/DeadCode/Rector/Foreach_/RemoveUnusedForeachKeyRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveCodeAfterReturnRector' => __DIR__ . '/../..' . '/rules/DeadCode/Rector/FunctionLike/RemoveCodeAfterReturnRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveDeadReturnRector' => __DIR__ . '/../..' . '/rules/DeadCode/Rector/FunctionLike/RemoveDeadReturnRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveDuplicatedIfReturnRector' => __DIR__ . '/../..' . '/rules/DeadCode/Rector/FunctionLike/RemoveDuplicatedIfReturnRector.php',
'Rector\\DeadCode\\Rector\\FunctionLike\\RemoveOverriddenValuesRector' => __DIR__ . '/../..' . '/rules/DeadCode/Rector/FunctionLike/RemoveOverriddenValuesRector.php',
@ -3881,9 +3880,9 @@ class ComposerStaticInite29f14d3375b21659f7e16fd7c87803d
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInite29f14d3375b21659f7e16fd7c87803d::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInite29f14d3375b21659f7e16fd7c87803d::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInite29f14d3375b21659f7e16fd7c87803d::$classMap;
$loader->prefixLengthsPsr4 = ComposerStaticInit3a09451c4d454e1686b1a056e742dd10::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit3a09451c4d454e1686b1a056e742dd10::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit3a09451c4d454e1686b1a056e742dd10::$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('RectorPrefix20220501\AutoloadIncluder');
}
if (!class_exists('ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d', false) && !interface_exists('ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d', false) && !trait_exists('ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d', false)) {
spl_autoload_call('RectorPrefix20220501\ComposerAutoloaderInite29f14d3375b21659f7e16fd7c87803d');
if (!class_exists('ComposerAutoloaderInit3a09451c4d454e1686b1a056e742dd10', false) && !interface_exists('ComposerAutoloaderInit3a09451c4d454e1686b1a056e742dd10', false) && !trait_exists('ComposerAutoloaderInit3a09451c4d454e1686b1a056e742dd10', false)) {
spl_autoload_call('RectorPrefix20220501\ComposerAutoloaderInit3a09451c4d454e1686b1a056e742dd10');
}
if (!class_exists('Helmich\TypoScriptParser\Parser\AST\Statement', false) && !interface_exists('Helmich\TypoScriptParser\Parser\AST\Statement', false) && !trait_exists('Helmich\TypoScriptParser\Parser\AST\Statement', false)) {
spl_autoload_call('RectorPrefix20220501\Helmich\TypoScriptParser\Parser\AST\Statement');
@ -59,9 +59,9 @@ if (!function_exists('print_node')) {
return \RectorPrefix20220501\print_node(...func_get_args());
}
}
if (!function_exists('composerRequiree29f14d3375b21659f7e16fd7c87803d')) {
function composerRequiree29f14d3375b21659f7e16fd7c87803d() {
return \RectorPrefix20220501\composerRequiree29f14d3375b21659f7e16fd7c87803d(...func_get_args());
if (!function_exists('composerRequire3a09451c4d454e1686b1a056e742dd10')) {
function composerRequire3a09451c4d454e1686b1a056e742dd10() {
return \RectorPrefix20220501\composerRequire3a09451c4d454e1686b1a056e742dd10(...func_get_args());
}
}
if (!function_exists('scanPath')) {