Updated Rector to commit b7da222d01

b7da222d01 [Php74] Skip protected property on final class with parent not loaded on TypedPropertyRector (#1560)
This commit is contained in:
Tomas Votruba 2021-12-24 20:47:54 +00:00
parent 5d9de915ae
commit 143f4b8549
22 changed files with 165 additions and 147 deletions

View File

@ -0,0 +1,29 @@
<?php
declare (strict_types=1);
namespace Rector\NodeCollector;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\BinaryOp;
final class BinaryOpConditionsCollector
{
/**
* @param class-string<BinaryOp> $binaryOpClass
* @return Expr[]
*/
public function findConditions(\PhpParser\Node\Expr\BinaryOp $binaryOp, string $binaryOpClass) : array
{
$conditions = [];
/** @var BinaryOp|Expr $binaryOp */
while ($binaryOp instanceof \PhpParser\Node\Expr\BinaryOp) {
$conditions[] = $binaryOp->right;
$binaryOp = $binaryOp->left;
if (\get_class($binaryOp) !== $binaryOpClass) {
$conditions[] = $binaryOp;
break;
}
}
\krsort($conditions);
return $conditions;
}
}

View File

@ -1,29 +0,0 @@
<?php
declare (strict_types=1);
namespace Rector\NodeCollector\NodeAnalyzer;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\BinaryOp;
use PhpParser\Node\Expr\BinaryOp\BitwiseOr;
final class BitwiseOrAnalyzer
{
/**
* @return Expr[]
*/
public function findBitwiseOrConditions(\PhpParser\Node\Expr\BinaryOp\BitwiseOr $bitwiseOr) : array
{
$conditions = [];
/** @var BinaryOp|Expr $bitwiseOr */
while ($bitwiseOr instanceof \PhpParser\Node\Expr\BinaryOp) {
$conditions[] = $bitwiseOr->right;
$bitwiseOr = $bitwiseOr->left;
if (!$bitwiseOr instanceof \PhpParser\Node\Expr\BinaryOp\BitwiseOr) {
$conditions[] = $bitwiseOr;
break;
}
}
\krsort($conditions);
return $conditions;
}
}

View File

@ -1,29 +0,0 @@
<?php
declare (strict_types=1);
namespace Rector\NodeCollector\NodeAnalyzer;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\BinaryOp;
use PhpParser\Node\Expr\BinaryOp\BooleanAnd;
final class BooleanAndAnalyzer
{
/**
* @return Expr[]
*/
public function findBooleanAndConditions(\PhpParser\Node\Expr\BinaryOp\BooleanAnd $booleanAnd) : array
{
$conditions = [];
/** @var BinaryOp|Expr $booleanAnd */
while ($booleanAnd instanceof \PhpParser\Node\Expr\BinaryOp) {
$conditions[] = $booleanAnd->right;
$booleanAnd = $booleanAnd->left;
if (!$booleanAnd instanceof \PhpParser\Node\Expr\BinaryOp\BooleanAnd) {
$conditions[] = $booleanAnd;
break;
}
}
\krsort($conditions);
return $conditions;
}
}

View File

@ -22,7 +22,7 @@ use PHPStan\Type\ObjectType;
use Rector\Core\NodeManipulator\IfManipulator; use Rector\Core\NodeManipulator\IfManipulator;
use Rector\Core\Rector\AbstractRector; use Rector\Core\Rector\AbstractRector;
use Rector\Naming\Naming\VariableNaming; use Rector\Naming\Naming\VariableNaming;
use Rector\NodeCollector\NodeAnalyzer\BitwiseOrAnalyzer; use Rector\NodeCollector\BinaryOpConditionsCollector;
use Rector\NodeTypeResolver\Node\AttributeKey; use Rector\NodeTypeResolver\Node\AttributeKey;
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample; use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
use Symplify\RuleDocGenerator\ValueObject\RuleDefinition; use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
@ -47,14 +47,14 @@ final class DowngradeReflectionClassGetConstantsFilterRector extends \Rector\Cor
private $ifManipulator; private $ifManipulator;
/** /**
* @readonly * @readonly
* @var \Rector\NodeCollector\NodeAnalyzer\BitwiseOrAnalyzer * @var \Rector\NodeCollector\BinaryOpConditionsCollector
*/ */
private $bitwiseOrAnalyzer; private $binaryOpConditionsCollector;
public function __construct(\Rector\Naming\Naming\VariableNaming $variableNaming, \Rector\Core\NodeManipulator\IfManipulator $ifManipulator, \Rector\NodeCollector\NodeAnalyzer\BitwiseOrAnalyzer $bitwiseOrAnalyzer) public function __construct(\Rector\Naming\Naming\VariableNaming $variableNaming, \Rector\Core\NodeManipulator\IfManipulator $ifManipulator, \Rector\NodeCollector\BinaryOpConditionsCollector $binaryOpConditionsCollector)
{ {
$this->variableNaming = $variableNaming; $this->variableNaming = $variableNaming;
$this->ifManipulator = $ifManipulator; $this->ifManipulator = $ifManipulator;
$this->bitwiseOrAnalyzer = $bitwiseOrAnalyzer; $this->binaryOpConditionsCollector = $binaryOpConditionsCollector;
} }
/** /**
* @return array<class-string<Node>> * @return array<class-string<Node>>
@ -160,7 +160,7 @@ CODE_SAMPLE
*/ */
private function resolveClassConstFetchNames(\PhpParser\Node\Expr\BinaryOp\BitwiseOr $bitwiseOr) : array private function resolveClassConstFetchNames(\PhpParser\Node\Expr\BinaryOp\BitwiseOr $bitwiseOr) : array
{ {
$values = $this->bitwiseOrAnalyzer->findBitwiseOrConditions($bitwiseOr); $values = $this->binaryOpConditionsCollector->findConditions($bitwiseOr, \PhpParser\Node\Expr\BinaryOp\BitwiseOr::class);
if ($this->shouldSkipBitwiseOrValues($values)) { if ($this->shouldSkipBitwiseOrValues($values)) {
return []; return [];
} }

View File

@ -16,7 +16,7 @@ use PhpParser\Node\Stmt\Return_;
use Rector\Core\NodeManipulator\IfManipulator; use Rector\Core\NodeManipulator\IfManipulator;
use Rector\Core\Rector\AbstractRector; use Rector\Core\Rector\AbstractRector;
use Rector\EarlyReturn\NodeFactory\InvertedIfFactory; use Rector\EarlyReturn\NodeFactory\InvertedIfFactory;
use Rector\NodeCollector\NodeAnalyzer\BooleanAndAnalyzer; use Rector\NodeCollector\BinaryOpConditionsCollector;
use Rector\NodeNestingScope\ContextAnalyzer; use Rector\NodeNestingScope\ContextAnalyzer;
use Rector\NodeTypeResolver\Node\AttributeKey; use Rector\NodeTypeResolver\Node\AttributeKey;
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample; use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
@ -43,15 +43,15 @@ final class ChangeAndIfToEarlyReturnRector extends \Rector\Core\Rector\AbstractR
private $contextAnalyzer; private $contextAnalyzer;
/** /**
* @readonly * @readonly
* @var \Rector\NodeCollector\NodeAnalyzer\BooleanAndAnalyzer * @var \Rector\NodeCollector\BinaryOpConditionsCollector
*/ */
private $booleanAndAnalyzer; private $binaryOpConditionsCollector;
public function __construct(\Rector\Core\NodeManipulator\IfManipulator $ifManipulator, \Rector\EarlyReturn\NodeFactory\InvertedIfFactory $invertedIfFactory, \Rector\NodeNestingScope\ContextAnalyzer $contextAnalyzer, \Rector\NodeCollector\NodeAnalyzer\BooleanAndAnalyzer $booleanAndAnalyzer) public function __construct(\Rector\Core\NodeManipulator\IfManipulator $ifManipulator, \Rector\EarlyReturn\NodeFactory\InvertedIfFactory $invertedIfFactory, \Rector\NodeNestingScope\ContextAnalyzer $contextAnalyzer, \Rector\NodeCollector\BinaryOpConditionsCollector $binaryOpConditionsCollector)
{ {
$this->ifManipulator = $ifManipulator; $this->ifManipulator = $ifManipulator;
$this->invertedIfFactory = $invertedIfFactory; $this->invertedIfFactory = $invertedIfFactory;
$this->contextAnalyzer = $contextAnalyzer; $this->contextAnalyzer = $contextAnalyzer;
$this->booleanAndAnalyzer = $booleanAndAnalyzer; $this->binaryOpConditionsCollector = $binaryOpConditionsCollector;
} }
public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition public function getRuleDefinition() : \Symplify\RuleDocGenerator\ValueObject\RuleDefinition
{ {
@ -112,7 +112,7 @@ CODE_SAMPLE
} }
/** @var BooleanAnd $expr */ /** @var BooleanAnd $expr */
$expr = $node->cond; $expr = $node->cond;
$booleanAndConditions = $this->booleanAndAnalyzer->findBooleanAndConditions($expr); $booleanAndConditions = $this->binaryOpConditionsCollector->findConditions($expr, \PhpParser\Node\Expr\BinaryOp\BooleanAnd::class);
$afters = []; $afters = [];
if (!$ifNextReturn instanceof \PhpParser\Node\Stmt\Return_) { if (!$ifNextReturn instanceof \PhpParser\Node\Stmt\Return_) {
$afters[] = $node->stmts[0]; $afters[] = $node->stmts[0];

View File

@ -6,8 +6,8 @@ namespace Rector\Php74\Rector\Property;
use PhpParser\Node; use PhpParser\Node;
use PhpParser\Node\ComplexType; use PhpParser\Node\ComplexType;
use PhpParser\Node\Name; use PhpParser\Node\Name;
use PhpParser\Node\Name\FullyQualified;
use PhpParser\Node\Stmt\Class_; use PhpParser\Node\Stmt\Class_;
use PhpParser\Node\Stmt\ClassLike;
use PhpParser\Node\Stmt\Property; use PhpParser\Node\Stmt\Property;
use PhpParser\Node\Stmt\Trait_; use PhpParser\Node\Stmt\Trait_;
use PHPStan\Analyser\Scope; use PHPStan\Analyser\Scope;
@ -225,28 +225,27 @@ CODE_SAMPLE
if (!$classReflection instanceof \PHPStan\Reflection\ClassReflection) { if (!$classReflection instanceof \PHPStan\Reflection\ClassReflection) {
return \true; return \true;
} }
// skip trait properties, as they ar unpredictable based on class context they appear in /**
$trait = $this->betterNodeFinder->findParentType($property, \PhpParser\Node\Stmt\Trait_::class); * - skip trait properties, as they are unpredictable based on class context they appear in
if ($trait instanceof \PhpParser\Node\Stmt\Trait_) { * - skip interface properties as well, as interface not allowed to have property
*/
$class = $this->betterNodeFinder->findParentType($property, \PhpParser\Node\Stmt\Class_::class);
if (!$class instanceof \PhpParser\Node\Stmt\Class_) {
return \true; return \true;
} }
$propertyName = $this->getName($property); $propertyName = $this->getName($property);
$classLike = $this->betterNodeFinder->findParentType($property, \PhpParser\Node\Stmt\ClassLike::class); if ($this->isModifiedByTrait($class, $propertyName)) {
if ($classLike instanceof \PhpParser\Node\Stmt\ClassLike && $this->isModifiedByTrait($classLike, $propertyName)) {
return \true; return \true;
} }
if ($property->isPrivate()) { if ($property->isPrivate()) {
return $this->propertyAnalyzer->hasForbiddenType($property); return $this->propertyAnalyzer->hasForbiddenType($property);
} }
// is we're in final class, the type can be changed // is we're in final class, the type can be changed
return !$this->isSafeProtectedProperty($property, $classReflection); return !$this->isSafeProtectedProperty($property, $class);
} }
private function isModifiedByTrait(\PhpParser\Node\Stmt\ClassLike $classLike, string $propertyName) : bool private function isModifiedByTrait(\PhpParser\Node\Stmt\Class_ $class, string $propertyName) : bool
{ {
if (!$classLike instanceof \PhpParser\Node\Stmt\Class_) { foreach ($class->getTraitUses() as $traitUse) {
return \false;
}
foreach ($classLike->getTraitUses() as $traitUse) {
foreach ($traitUse->traits as $traitName) { foreach ($traitUse->traits as $traitName) {
$trait = $this->astResolver->resolveClassFromName($traitName->toString()); $trait = $this->astResolver->resolveClassFromName($traitName->toString());
if (!$trait instanceof \PhpParser\Node\Stmt\Trait_) { if (!$trait instanceof \PhpParser\Node\Stmt\Trait_) {
@ -259,14 +258,14 @@ CODE_SAMPLE
} }
return \false; return \false;
} }
private function isSafeProtectedProperty(\PhpParser\Node\Stmt\Property $property, \PHPStan\Reflection\ClassReflection $classReflection) : bool private function isSafeProtectedProperty(\PhpParser\Node\Stmt\Property $property, \PhpParser\Node\Stmt\Class_ $class) : bool
{ {
if (!$property->isProtected()) { if (!$property->isProtected()) {
return \false; return \false;
} }
if (!$classReflection->isFinal()) { if (!$class->isFinal()) {
return \false; return \false;
} }
return $classReflection->getParents() === []; return !$class->extends instanceof \PhpParser\Node\Name\FullyQualified;
} }
} }

View File

@ -16,11 +16,11 @@ final class VersionResolver
/** /**
* @var string * @var string
*/ */
public const PACKAGE_VERSION = '5157b7e7a1c1360e05e5173f006a34e0c4c2b681'; public const PACKAGE_VERSION = 'b7da222d01ddf6bc0e304bc87bdcdcd46eef01b4';
/** /**
* @var string * @var string
*/ */
public const RELEASE_DATE = '2021-12-24 11:51:20'; public const RELEASE_DATE = '2021-12-24 21:38:06';
public static function resolvePackageVersion() : string public static function resolvePackageVersion() : string
{ {
$process = new \RectorPrefix20211224\Symfony\Component\Process\Process(['git', 'log', '--pretty="%H"', '-n1', 'HEAD'], __DIR__); $process = new \RectorPrefix20211224\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'; require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInit49e7aa8579a11fbb0e73512dbde5438d::getLoader(); return ComposerAutoloaderInit5dece9224a80671b63f680874f2cd11b::getLoader();

View File

@ -2301,9 +2301,8 @@ return array(
'Rector\\Nette\\ValueObject\\LatteVariableType' => $vendorDir . '/rector/rector-nette/src/ValueObject/LatteVariableType.php', 'Rector\\Nette\\ValueObject\\LatteVariableType' => $vendorDir . '/rector/rector-nette/src/ValueObject/LatteVariableType.php',
'Rector\\Nette\\ValueObject\\ParameterAssign' => $vendorDir . '/rector/rector-nette/src/ValueObject/ParameterAssign.php', 'Rector\\Nette\\ValueObject\\ParameterAssign' => $vendorDir . '/rector/rector-nette/src/ValueObject/ParameterAssign.php',
'Rector\\Nette\\ValueObject\\TemplateParametersAssigns' => $vendorDir . '/rector/rector-nette/src/ValueObject/TemplateParametersAssigns.php', 'Rector\\Nette\\ValueObject\\TemplateParametersAssigns' => $vendorDir . '/rector/rector-nette/src/ValueObject/TemplateParametersAssigns.php',
'Rector\\NodeCollector\\BinaryOpConditionsCollector' => $baseDir . '/packages/NodeCollector/BinaryOpConditionsCollector.php',
'Rector\\NodeCollector\\NodeAnalyzer\\ArrayCallableMethodMatcher' => $baseDir . '/packages/NodeCollector/NodeAnalyzer/ArrayCallableMethodMatcher.php', 'Rector\\NodeCollector\\NodeAnalyzer\\ArrayCallableMethodMatcher' => $baseDir . '/packages/NodeCollector/NodeAnalyzer/ArrayCallableMethodMatcher.php',
'Rector\\NodeCollector\\NodeAnalyzer\\BitwiseOrAnalyzer' => $baseDir . '/packages/NodeCollector/NodeAnalyzer/BitwiseOrAnalyzer.php',
'Rector\\NodeCollector\\NodeAnalyzer\\BooleanAndAnalyzer' => $baseDir . '/packages/NodeCollector/NodeAnalyzer/BooleanAndAnalyzer.php',
'Rector\\NodeCollector\\ScopeResolver\\ParentClassScopeResolver' => $baseDir . '/packages/NodeCollector/ScopeResolver/ParentClassScopeResolver.php', 'Rector\\NodeCollector\\ScopeResolver\\ParentClassScopeResolver' => $baseDir . '/packages/NodeCollector/ScopeResolver/ParentClassScopeResolver.php',
'Rector\\NodeCollector\\StaticAnalyzer' => $baseDir . '/packages/NodeCollector/StaticAnalyzer.php', 'Rector\\NodeCollector\\StaticAnalyzer' => $baseDir . '/packages/NodeCollector/StaticAnalyzer.php',
'Rector\\NodeCollector\\ValueObject\\ArrayCallable' => $baseDir . '/packages/NodeCollector/ValueObject/ArrayCallable.php', 'Rector\\NodeCollector\\ValueObject\\ArrayCallable' => $baseDir . '/packages/NodeCollector/ValueObject/ArrayCallable.php',

View File

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

View File

@ -4,7 +4,7 @@
namespace Composer\Autoload; namespace Composer\Autoload;
class ComposerStaticInit49e7aa8579a11fbb0e73512dbde5438d class ComposerStaticInit5dece9224a80671b63f680874f2cd11b
{ {
public static $files = array ( public static $files = array (
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
@ -2696,9 +2696,8 @@ class ComposerStaticInit49e7aa8579a11fbb0e73512dbde5438d
'Rector\\Nette\\ValueObject\\LatteVariableType' => __DIR__ . '/..' . '/rector/rector-nette/src/ValueObject/LatteVariableType.php', 'Rector\\Nette\\ValueObject\\LatteVariableType' => __DIR__ . '/..' . '/rector/rector-nette/src/ValueObject/LatteVariableType.php',
'Rector\\Nette\\ValueObject\\ParameterAssign' => __DIR__ . '/..' . '/rector/rector-nette/src/ValueObject/ParameterAssign.php', 'Rector\\Nette\\ValueObject\\ParameterAssign' => __DIR__ . '/..' . '/rector/rector-nette/src/ValueObject/ParameterAssign.php',
'Rector\\Nette\\ValueObject\\TemplateParametersAssigns' => __DIR__ . '/..' . '/rector/rector-nette/src/ValueObject/TemplateParametersAssigns.php', 'Rector\\Nette\\ValueObject\\TemplateParametersAssigns' => __DIR__ . '/..' . '/rector/rector-nette/src/ValueObject/TemplateParametersAssigns.php',
'Rector\\NodeCollector\\BinaryOpConditionsCollector' => __DIR__ . '/../..' . '/packages/NodeCollector/BinaryOpConditionsCollector.php',
'Rector\\NodeCollector\\NodeAnalyzer\\ArrayCallableMethodMatcher' => __DIR__ . '/../..' . '/packages/NodeCollector/NodeAnalyzer/ArrayCallableMethodMatcher.php', 'Rector\\NodeCollector\\NodeAnalyzer\\ArrayCallableMethodMatcher' => __DIR__ . '/../..' . '/packages/NodeCollector/NodeAnalyzer/ArrayCallableMethodMatcher.php',
'Rector\\NodeCollector\\NodeAnalyzer\\BitwiseOrAnalyzer' => __DIR__ . '/../..' . '/packages/NodeCollector/NodeAnalyzer/BitwiseOrAnalyzer.php',
'Rector\\NodeCollector\\NodeAnalyzer\\BooleanAndAnalyzer' => __DIR__ . '/../..' . '/packages/NodeCollector/NodeAnalyzer/BooleanAndAnalyzer.php',
'Rector\\NodeCollector\\ScopeResolver\\ParentClassScopeResolver' => __DIR__ . '/../..' . '/packages/NodeCollector/ScopeResolver/ParentClassScopeResolver.php', 'Rector\\NodeCollector\\ScopeResolver\\ParentClassScopeResolver' => __DIR__ . '/../..' . '/packages/NodeCollector/ScopeResolver/ParentClassScopeResolver.php',
'Rector\\NodeCollector\\StaticAnalyzer' => __DIR__ . '/../..' . '/packages/NodeCollector/StaticAnalyzer.php', 'Rector\\NodeCollector\\StaticAnalyzer' => __DIR__ . '/../..' . '/packages/NodeCollector/StaticAnalyzer.php',
'Rector\\NodeCollector\\ValueObject\\ArrayCallable' => __DIR__ . '/../..' . '/packages/NodeCollector/ValueObject/ArrayCallable.php', 'Rector\\NodeCollector\\ValueObject\\ArrayCallable' => __DIR__ . '/../..' . '/packages/NodeCollector/ValueObject/ArrayCallable.php',
@ -3838,9 +3837,9 @@ class ComposerStaticInit49e7aa8579a11fbb0e73512dbde5438d
public static function getInitializer(ClassLoader $loader) public static function getInitializer(ClassLoader $loader)
{ {
return \Closure::bind(function () use ($loader) { return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInit49e7aa8579a11fbb0e73512dbde5438d::$prefixLengthsPsr4; $loader->prefixLengthsPsr4 = ComposerStaticInit5dece9224a80671b63f680874f2cd11b::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit49e7aa8579a11fbb0e73512dbde5438d::$prefixDirsPsr4; $loader->prefixDirsPsr4 = ComposerStaticInit5dece9224a80671b63f680874f2cd11b::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit49e7aa8579a11fbb0e73512dbde5438d::$classMap; $loader->classMap = ComposerStaticInit5dece9224a80671b63f680874f2cd11b::$classMap;
}, null, ClassLoader::class); }, null, ClassLoader::class);
} }

View File

@ -2102,12 +2102,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https:\/\/github.com\/rectorphp\/rector-cakephp.git", "url": "https:\/\/github.com\/rectorphp\/rector-cakephp.git",
"reference": "584d84bb1a8357423858ab2347249e50b1ff4803" "reference": "f601f07c22bbe5d37cce17b81f62cfa99cbdf59b"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-cakephp\/zipball\/584d84bb1a8357423858ab2347249e50b1ff4803", "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-cakephp\/zipball\/f601f07c22bbe5d37cce17b81f62cfa99cbdf59b",
"reference": "584d84bb1a8357423858ab2347249e50b1ff4803", "reference": "f601f07c22bbe5d37cce17b81f62cfa99cbdf59b",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2133,7 +2133,7 @@
"symplify\/rule-doc-generator": "^10.0", "symplify\/rule-doc-generator": "^10.0",
"symplify\/vendor-patches": "^10.0" "symplify\/vendor-patches": "^10.0"
}, },
"time": "2021-12-08T07:38:23+00:00", "time": "2021-12-24T20:36:59+00:00",
"default-branch": true, "default-branch": true,
"type": "rector-extension", "type": "rector-extension",
"extra": { "extra": {
@ -2160,7 +2160,7 @@
"description": "Rector upgrades rules for CakePHP", "description": "Rector upgrades rules for CakePHP",
"support": { "support": {
"issues": "https:\/\/github.com\/rectorphp\/rector-cakephp\/issues", "issues": "https:\/\/github.com\/rectorphp\/rector-cakephp\/issues",
"source": "https:\/\/github.com\/rectorphp\/rector-cakephp\/tree\/0.11.9" "source": "https:\/\/github.com\/rectorphp\/rector-cakephp\/tree\/main"
}, },
"install-path": "..\/rector\/rector-cakephp" "install-path": "..\/rector\/rector-cakephp"
}, },
@ -2171,12 +2171,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https:\/\/github.com\/rectorphp\/rector-doctrine.git", "url": "https:\/\/github.com\/rectorphp\/rector-doctrine.git",
"reference": "eaef4d6bbd794296dd0ec57048048df7080b6668" "reference": "d65a9b076fd28e3ce85f06ea4b3a983bd9a02ca6"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-doctrine\/zipball\/eaef4d6bbd794296dd0ec57048048df7080b6668", "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-doctrine\/zipball\/d65a9b076fd28e3ce85f06ea4b3a983bd9a02ca6",
"reference": "eaef4d6bbd794296dd0ec57048048df7080b6668", "reference": "d65a9b076fd28e3ce85f06ea4b3a983bd9a02ca6",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2201,7 +2201,7 @@
"symplify\/rule-doc-generator": "^10.0", "symplify\/rule-doc-generator": "^10.0",
"symplify\/vendor-patches": "^10.0" "symplify\/vendor-patches": "^10.0"
}, },
"time": "2021-12-19T12:07:19+00:00", "time": "2021-12-24T20:36:51+00:00",
"default-branch": true, "default-branch": true,
"type": "rector-extension", "type": "rector-extension",
"extra": { "extra": {
@ -2316,12 +2316,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https:\/\/github.com\/rectorphp\/rector-laravel.git", "url": "https:\/\/github.com\/rectorphp\/rector-laravel.git",
"reference": "7626a831cbefd342599afd912691dcef3d73fb5b" "reference": "7bcfd90d9dbcfcf1cb33ebbe06adee91a94b08bb"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-laravel\/zipball\/7626a831cbefd342599afd912691dcef3d73fb5b", "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-laravel\/zipball\/7bcfd90d9dbcfcf1cb33ebbe06adee91a94b08bb",
"reference": "7626a831cbefd342599afd912691dcef3d73fb5b", "reference": "7bcfd90d9dbcfcf1cb33ebbe06adee91a94b08bb",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2345,7 +2345,7 @@
"symplify\/rule-doc-generator": "^10.0", "symplify\/rule-doc-generator": "^10.0",
"symplify\/vendor-patches": "^10.0" "symplify\/vendor-patches": "^10.0"
}, },
"time": "2021-12-23T20:12:41+00:00", "time": "2021-12-24T20:37:06+00:00",
"default-branch": true, "default-branch": true,
"type": "rector-extension", "type": "rector-extension",
"extra": { "extra": {
@ -2383,12 +2383,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https:\/\/github.com\/rectorphp\/rector-nette.git", "url": "https:\/\/github.com\/rectorphp\/rector-nette.git",
"reference": "1e3b3ab4e1248623b020ce9c8e744ad89e942e74" "reference": "78b5e9ead3121c93a547035836609ebc038f56d6"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-nette\/zipball\/1e3b3ab4e1248623b020ce9c8e744ad89e942e74", "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-nette\/zipball\/78b5e9ead3121c93a547035836609ebc038f56d6",
"reference": "1e3b3ab4e1248623b020ce9c8e744ad89e942e74", "reference": "78b5e9ead3121c93a547035836609ebc038f56d6",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2420,7 +2420,7 @@
"symplify\/rule-doc-generator": "^10.0", "symplify\/rule-doc-generator": "^10.0",
"symplify\/vendor-patches": "^10.0" "symplify\/vendor-patches": "^10.0"
}, },
"time": "2021-12-08T07:35:30+00:00", "time": "2021-12-24T20:36:43+00:00",
"default-branch": true, "default-branch": true,
"type": "rector-extension", "type": "rector-extension",
"extra": { "extra": {
@ -2450,7 +2450,7 @@
"description": "Rector upgrades rules for Nette Framework", "description": "Rector upgrades rules for Nette Framework",
"support": { "support": {
"issues": "https:\/\/github.com\/rectorphp\/rector-nette\/issues", "issues": "https:\/\/github.com\/rectorphp\/rector-nette\/issues",
"source": "https:\/\/github.com\/rectorphp\/rector-nette\/tree\/0.11.57" "source": "https:\/\/github.com\/rectorphp\/rector-nette\/tree\/main"
}, },
"install-path": "..\/rector\/rector-nette" "install-path": "..\/rector\/rector-nette"
}, },
@ -2461,12 +2461,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https:\/\/github.com\/rectorphp\/rector-phpoffice.git", "url": "https:\/\/github.com\/rectorphp\/rector-phpoffice.git",
"reference": "47298f76618ff247256608b253ec345b42621637" "reference": "3f56f3b7d7b0fd5595de4a33906caca92e76e18e"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-phpoffice\/zipball\/47298f76618ff247256608b253ec345b42621637", "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-phpoffice\/zipball\/3f56f3b7d7b0fd5595de4a33906caca92e76e18e",
"reference": "47298f76618ff247256608b253ec345b42621637", "reference": "3f56f3b7d7b0fd5595de4a33906caca92e76e18e",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2491,7 +2491,7 @@
"symplify\/rule-doc-generator": "^10.0", "symplify\/rule-doc-generator": "^10.0",
"symplify\/vendor-patches": "^10.0" "symplify\/vendor-patches": "^10.0"
}, },
"time": "2021-12-11T08:34:32+00:00", "time": "2021-12-24T20:36:35+00:00",
"default-branch": true, "default-branch": true,
"type": "rector-extension", "type": "rector-extension",
"extra": { "extra": {
@ -2529,12 +2529,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https:\/\/github.com\/rectorphp\/rector-phpunit.git", "url": "https:\/\/github.com\/rectorphp\/rector-phpunit.git",
"reference": "37bbabc0ceef5375e16a3c7dcbff18533887a78c" "reference": "0c41894b7b56ebe2d1e74403367c4a518c194a30"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-phpunit\/zipball\/37bbabc0ceef5375e16a3c7dcbff18533887a78c", "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-phpunit\/zipball\/0c41894b7b56ebe2d1e74403367c4a518c194a30",
"reference": "37bbabc0ceef5375e16a3c7dcbff18533887a78c", "reference": "0c41894b7b56ebe2d1e74403367c4a518c194a30",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2558,7 +2558,7 @@
"symplify\/rule-doc-generator": "^10.0", "symplify\/rule-doc-generator": "^10.0",
"symplify\/vendor-patches": "^10.0" "symplify\/vendor-patches": "^10.0"
}, },
"time": "2021-12-16T23:51:27+00:00", "time": "2021-12-24T20:36:27+00:00",
"default-branch": true, "default-branch": true,
"type": "rector-extension", "type": "rector-extension",
"extra": { "extra": {
@ -2596,12 +2596,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https:\/\/github.com\/rectorphp\/rector-symfony.git", "url": "https:\/\/github.com\/rectorphp\/rector-symfony.git",
"reference": "1fbde810b25e70ec485fa6bd639a1eec6c1ead5d" "reference": "5f3889d7579c147c0efdf63c93c26b3e81a24e85"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-symfony\/zipball\/1fbde810b25e70ec485fa6bd639a1eec6c1ead5d", "url": "https:\/\/api.github.com\/repos\/rectorphp\/rector-symfony\/zipball\/5f3889d7579c147c0efdf63c93c26b3e81a24e85",
"reference": "1fbde810b25e70ec485fa6bd639a1eec6c1ead5d", "reference": "5f3889d7579c147c0efdf63c93c26b3e81a24e85",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2629,7 +2629,7 @@
"symplify\/rule-doc-generator": "^10.0", "symplify\/rule-doc-generator": "^10.0",
"symplify\/vendor-patches": "^10.0" "symplify\/vendor-patches": "^10.0"
}, },
"time": "2021-12-21T08:50:36+00:00", "time": "2021-12-24T20:36:08+00:00",
"default-branch": true, "default-branch": true,
"type": "rector-extension", "type": "rector-extension",
"extra": { "extra": {

File diff suppressed because one or more lines are too long

View File

@ -9,7 +9,7 @@ namespace Rector\RectorInstaller;
*/ */
final class GeneratedConfig final class GeneratedConfig
{ {
public const EXTENSIONS = array('rector/rector-cakephp' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-cakephp', 'relative_install_path' => '../../rector-cakephp', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 584d84b'), 'rector/rector-doctrine' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-doctrine', 'relative_install_path' => '../../rector-doctrine', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main eaef4d6'), 'rector/rector-generator' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-generator', 'relative_install_path' => '../../rector-generator', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 36d651e'), 'rector/rector-laravel' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-laravel', 'relative_install_path' => '../../rector-laravel', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 7626a83'), 'rector/rector-nette' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-nette', 'relative_install_path' => '../../rector-nette', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 1e3b3ab'), 'rector/rector-phpoffice' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-phpoffice', 'relative_install_path' => '../../rector-phpoffice', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 47298f7'), 'rector/rector-phpunit' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-phpunit', 'relative_install_path' => '../../rector-phpunit', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 37bbabc'), 'rector/rector-symfony' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-symfony', 'relative_install_path' => '../../rector-symfony', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 1fbde81'), 'ssch/typo3-rector' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/ssch/typo3-rector', 'relative_install_path' => '../../../ssch/typo3-rector', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 141c568')); public const EXTENSIONS = array('rector/rector-cakephp' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-cakephp', 'relative_install_path' => '../../rector-cakephp', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main f601f07'), 'rector/rector-doctrine' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-doctrine', 'relative_install_path' => '../../rector-doctrine', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main d65a9b0'), 'rector/rector-generator' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-generator', 'relative_install_path' => '../../rector-generator', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 36d651e'), 'rector/rector-laravel' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-laravel', 'relative_install_path' => '../../rector-laravel', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 7bcfd90'), 'rector/rector-nette' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-nette', 'relative_install_path' => '../../rector-nette', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 78b5e9e'), 'rector/rector-phpoffice' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-phpoffice', 'relative_install_path' => '../../rector-phpoffice', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 3f56f3b'), 'rector/rector-phpunit' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-phpunit', 'relative_install_path' => '../../rector-phpunit', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 0c41894'), 'rector/rector-symfony' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/rector/rector-symfony', 'relative_install_path' => '../../rector-symfony', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 5f3889d'), 'ssch/typo3-rector' => array('install_path' => '/home/runner/work/rector-src/rector-src/vendor/ssch/typo3-rector', 'relative_install_path' => '../../../ssch/typo3-rector', 'extra' => array('includes' => array(0 => 'config/config.php')), 'version' => 'dev-main 141c568'));
private function __construct() private function __construct()
{ {
} }

View File

@ -58,5 +58,12 @@
"rector\/rector": "<0.11" "rector\/rector": "<0.11"
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true "prefer-stable": true,
"config": {
"allow-plugins": {
"cweagans\/composer-patches": true,
"rector\/extension-installer": true,
"phpstan\/extension-installer": true
}
}
} }

View File

@ -60,5 +60,13 @@
"rector\/rector": "<0.11" "rector\/rector": "<0.11"
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true "prefer-stable": true,
"config": {
"allow-plugins": {
"composer\/package-versions-deprecated": true,
"cweagans\/composer-patches": true,
"rector\/extension-installer": true,
"phpstan\/extension-installer": true
}
}
} }

View File

@ -59,5 +59,12 @@
"rector\/rector": "<0.11" "rector\/rector": "<0.11"
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true "prefer-stable": true,
"config": {
"allow-plugins": {
"cweagans\/composer-patches": true,
"rector\/extension-installer": true,
"phpstan\/extension-installer": true
}
}
} }

View File

@ -70,5 +70,12 @@
"rector\/rector": "<0.11" "rector\/rector": "<0.11"
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true "prefer-stable": true,
"config": {
"allow-plugins": {
"cweagans\/composer-patches": true,
"rector\/extension-installer": true,
"phpstan\/extension-installer": true
}
}
} }

View File

@ -57,5 +57,12 @@
"rector\/rector": "<0.11" "rector\/rector": "<0.11"
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true "prefer-stable": true,
"config": {
"allow-plugins": {
"cweagans\/composer-patches": true,
"rector\/extension-installer": true,
"phpstan\/extension-installer": true
}
}
} }

View File

@ -59,5 +59,12 @@
"rector\/rector": "<0.11" "rector\/rector": "<0.11"
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true "prefer-stable": true,
"config": {
"allow-plugins": {
"cweagans\/composer-patches": true,
"rector\/extension-installer": true,
"phpstan\/extension-installer": true
}
}
} }

View File

@ -64,5 +64,12 @@
} }
}, },
"minimum-stability": "dev", "minimum-stability": "dev",
"prefer-stable": true "prefer-stable": true,
"config": {
"allow-plugins": {
"cweagans\/composer-patches": true,
"rector\/extension-installer": true,
"phpstan\/extension-installer": true
}
}
} }

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)) { if (!class_exists('AutoloadIncluder', false) && !interface_exists('AutoloadIncluder', false) && !trait_exists('AutoloadIncluder', false)) {
spl_autoload_call('RectorPrefix20211224\AutoloadIncluder'); spl_autoload_call('RectorPrefix20211224\AutoloadIncluder');
} }
if (!class_exists('ComposerAutoloaderInit49e7aa8579a11fbb0e73512dbde5438d', false) && !interface_exists('ComposerAutoloaderInit49e7aa8579a11fbb0e73512dbde5438d', false) && !trait_exists('ComposerAutoloaderInit49e7aa8579a11fbb0e73512dbde5438d', false)) { if (!class_exists('ComposerAutoloaderInit5dece9224a80671b63f680874f2cd11b', false) && !interface_exists('ComposerAutoloaderInit5dece9224a80671b63f680874f2cd11b', false) && !trait_exists('ComposerAutoloaderInit5dece9224a80671b63f680874f2cd11b', false)) {
spl_autoload_call('RectorPrefix20211224\ComposerAutoloaderInit49e7aa8579a11fbb0e73512dbde5438d'); spl_autoload_call('RectorPrefix20211224\ComposerAutoloaderInit5dece9224a80671b63f680874f2cd11b');
} }
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)) { 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('RectorPrefix20211224\Helmich\TypoScriptParser\Parser\AST\Statement'); spl_autoload_call('RectorPrefix20211224\Helmich\TypoScriptParser\Parser\AST\Statement');
@ -78,9 +78,9 @@ if (!function_exists('print_node')) {
return \RectorPrefix20211224\print_node(...func_get_args()); return \RectorPrefix20211224\print_node(...func_get_args());
} }
} }
if (!function_exists('composerRequire49e7aa8579a11fbb0e73512dbde5438d')) { if (!function_exists('composerRequire5dece9224a80671b63f680874f2cd11b')) {
function composerRequire49e7aa8579a11fbb0e73512dbde5438d() { function composerRequire5dece9224a80671b63f680874f2cd11b() {
return \RectorPrefix20211224\composerRequire49e7aa8579a11fbb0e73512dbde5438d(...func_get_args()); return \RectorPrefix20211224\composerRequire5dece9224a80671b63f680874f2cd11b(...func_get_args());
} }
} }
if (!function_exists('scanPath')) { if (!function_exists('scanPath')) {