diff --git a/rules/Renaming/Rector/Namespace_/RenameNamespaceRector.php b/rules/Renaming/Rector/Namespace_/RenameNamespaceRector.php index f591d54033b..3cab656477e 100644 --- a/rules/Renaming/Rector/Namespace_/RenameNamespaceRector.php +++ b/rules/Renaming/Rector/Namespace_/RenameNamespaceRector.php @@ -3,7 +3,6 @@ declare (strict_types=1); namespace Rector\Renaming\Rector\Namespace_; -use RectorPrefix20220202\Nette\Utils\Strings; use PhpParser\Node; use PhpParser\Node\Expr\New_; use PhpParser\Node\Name; @@ -110,13 +109,16 @@ final class RenameNamespaceRector extends \Rector\Core\Rector\AbstractRector imp } private function processFullyQualified(\PhpParser\Node\Name $name, \Rector\Renaming\ValueObject\RenamedNamespace $renamedNamespace) : ?\PhpParser\Node\Name\FullyQualified { - $newName = $this->isPartialNamespace($name) ? $this->resolvePartialNewName($name, $renamedNamespace) : $renamedNamespace->getNameInNewNamespace(); - $values = \array_values($this->oldToNewNamespaces); - if (!isset($this->isChangedInNamespaces[$newName])) { - return new \PhpParser\Node\Name\FullyQualified($newName); + if (\strncmp($name->toString(), $renamedNamespace->getNewNamespace() . '\\', \strlen($renamedNamespace->getNewNamespace() . '\\')) === 0) { + return null; } - if (!\in_array($newName, $values, \true)) { - return new \PhpParser\Node\Name\FullyQualified($newName); + $nameInNewNamespace = $renamedNamespace->getNameInNewNamespace(); + $values = \array_values($this->oldToNewNamespaces); + if (!isset($this->isChangedInNamespaces[$nameInNewNamespace])) { + return new \PhpParser\Node\Name\FullyQualified($nameInNewNamespace); + } + if (!\in_array($nameInNewNamespace, $values, \true)) { + return new \PhpParser\Node\Name\FullyQualified($nameInNewNamespace); } return null; } @@ -138,22 +140,4 @@ final class RenameNamespaceRector extends \Rector\Core\Rector\AbstractRector imp $newClassName = $fullyQualifiedNode->toString(); return \array_key_exists($newClassName, $this->oldToNewNamespaces); } - private function isPartialNamespace(\PhpParser\Node\Name $name) : bool - { - $resolvedName = $name->getAttribute(\Rector\NodeTypeResolver\Node\AttributeKey::RESOLVED_NAME); - if (!$resolvedName instanceof \PhpParser\Node\Name) { - return \false; - } - if ($resolvedName instanceof \PhpParser\Node\Name\FullyQualified) { - return !$this->isName($name, $resolvedName->toString()); - } - return \false; - } - private function resolvePartialNewName(\PhpParser\Node\Name $name, \Rector\Renaming\ValueObject\RenamedNamespace $renamedNamespace) : string - { - $nameInNewNamespace = $renamedNamespace->getNameInNewNamespace(); - // first dummy implementation - improve - $cutOffFromTheLeft = \RectorPrefix20220202\Nette\Utils\Strings::length($nameInNewNamespace) - \RectorPrefix20220202\Nette\Utils\Strings::length($name->toString()); - return \RectorPrefix20220202\Nette\Utils\Strings::substring($nameInNewNamespace, $cutOffFromTheLeft); - } } diff --git a/rules/Renaming/ValueObject/RenamedNamespace.php b/rules/Renaming/ValueObject/RenamedNamespace.php index ee98e5d753d..b31c6b6f662 100644 --- a/rules/Renaming/ValueObject/RenamedNamespace.php +++ b/rules/Renaming/ValueObject/RenamedNamespace.php @@ -28,6 +28,13 @@ final class RenamedNamespace } public function getNameInNewNamespace() : string { + if ($this->newNamespace === $this->currentName) { + return $this->currentName; + } return \str_replace($this->oldNamespace, $this->newNamespace, $this->currentName); } + public function getNewNamespace() : string + { + return $this->newNamespace; + } } diff --git a/src/Application/VersionResolver.php b/src/Application/VersionResolver.php index b4049122f45..70ebe7b167c 100644 --- a/src/Application/VersionResolver.php +++ b/src/Application/VersionResolver.php @@ -16,11 +16,11 @@ final class VersionResolver /** * @var string */ - public const PACKAGE_VERSION = '2468277687fd94c110f824ce27c7850b4b351b33'; + public const PACKAGE_VERSION = '8320d290031d91d232e3dd5b1b8779fbcb6e5a07'; /** * @var string */ - public const RELEASE_DATE = '2022-02-02 10:03:15'; + public const RELEASE_DATE = '2022-02-02 10:05:09'; public static function resolvePackageVersion() : string { $process = new \RectorPrefix20220202\Symfony\Component\Process\Process(['git', 'log', '--pretty="%H"', '-n1', 'HEAD'], __DIR__); diff --git a/vendor/autoload.php b/vendor/autoload.php index 926082527f4..29f37d53f59 100644 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315::getLoader(); +return ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe::getLoader(); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index 5c004b7efe5..e28ac29d7fd 100644 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315 +class ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe { private static $loader; @@ -22,15 +22,15 @@ class ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315 return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__))); - spl_autoload_unregister(array('ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe', '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\ComposerStaticInit4607760fedce846d9d0308df79aa6315::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInita9432eadaa336def2b08e78cb934fdfe::getInitializer($loader)); } else { $classMap = require __DIR__ . '/autoload_classmap.php'; if ($classMap) { @@ -42,12 +42,12 @@ class ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315 $loader->register(true); if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInit4607760fedce846d9d0308df79aa6315::$files; + $includeFiles = Composer\Autoload\ComposerStaticInita9432eadaa336def2b08e78cb934fdfe::$files; } else { $includeFiles = require __DIR__ . '/autoload_files.php'; } foreach ($includeFiles as $fileIdentifier => $file) { - composerRequire4607760fedce846d9d0308df79aa6315($fileIdentifier, $file); + composerRequirea9432eadaa336def2b08e78cb934fdfe($fileIdentifier, $file); } return $loader; @@ -59,7 +59,7 @@ class ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315 * @param string $file * @return void */ -function composerRequire4607760fedce846d9d0308df79aa6315($fileIdentifier, $file) +function composerRequirea9432eadaa336def2b08e78cb934fdfe($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 1f69e8d06a3..33149fb22ec 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInit4607760fedce846d9d0308df79aa6315 +class ComposerStaticInita9432eadaa336def2b08e78cb934fdfe { public static $files = array ( '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php', @@ -3869,9 +3869,9 @@ class ComposerStaticInit4607760fedce846d9d0308df79aa6315 public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit4607760fedce846d9d0308df79aa6315::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit4607760fedce846d9d0308df79aa6315::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInit4607760fedce846d9d0308df79aa6315::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInita9432eadaa336def2b08e78cb934fdfe::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInita9432eadaa336def2b08e78cb934fdfe::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInita9432eadaa336def2b08e78cb934fdfe::$classMap; }, null, ClassLoader::class); } diff --git a/vendor/scoper-autoload.php b/vendor/scoper-autoload.php index a8c5b83ab3e..c1643b2fb2b 100644 --- a/vendor/scoper-autoload.php +++ b/vendor/scoper-autoload.php @@ -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('RectorPrefix20220202\AutoloadIncluder'); } -if (!class_exists('ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315', false) && !interface_exists('ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315', false) && !trait_exists('ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315', false)) { - spl_autoload_call('RectorPrefix20220202\ComposerAutoloaderInit4607760fedce846d9d0308df79aa6315'); +if (!class_exists('ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe', false) && !interface_exists('ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe', false) && !trait_exists('ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe', false)) { + spl_autoload_call('RectorPrefix20220202\ComposerAutoloaderInita9432eadaa336def2b08e78cb934fdfe'); } 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('RectorPrefix20220202\Helmich\TypoScriptParser\Parser\AST\Statement'); @@ -71,9 +71,9 @@ if (!function_exists('print_node')) { return \RectorPrefix20220202\print_node(...func_get_args()); } } -if (!function_exists('composerRequire4607760fedce846d9d0308df79aa6315')) { - function composerRequire4607760fedce846d9d0308df79aa6315() { - return \RectorPrefix20220202\composerRequire4607760fedce846d9d0308df79aa6315(...func_get_args()); +if (!function_exists('composerRequirea9432eadaa336def2b08e78cb934fdfe')) { + function composerRequirea9432eadaa336def2b08e78cb934fdfe() { + return \RectorPrefix20220202\composerRequirea9432eadaa336def2b08e78cb934fdfe(...func_get_args()); } } if (!function_exists('scanPath')) {