From 2e115bb3f7b46c1b9a37ade40de7d1db134f09f6 Mon Sep 17 00:00:00 2001 From: Daniel Siepmann Date: Tue, 4 Apr 2017 14:39:31 +0200 Subject: [PATCH] FEATURE: Migrate legacy class names in use statements Resolves: #49 --- .../Sniffs/LegacyClassnames/UseSniff.php | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/Standards/Typo3Update/Sniffs/LegacyClassnames/UseSniff.php b/src/Standards/Typo3Update/Sniffs/LegacyClassnames/UseSniff.php index 9d882c5..f1129ba 100644 --- a/src/Standards/Typo3Update/Sniffs/LegacyClassnames/UseSniff.php +++ b/src/Standards/Typo3Update/Sniffs/LegacyClassnames/UseSniff.php @@ -19,10 +19,13 @@ * 02110-1301, USA. */ +use PHP_CodeSniffer_File as PhpCsFile; use Typo3Update\Sniffs\LegacyClassnames\AbstractClassnameChecker; /** - * Migrate old legacy class names in use statements. + * Detect and migrate use statements with legacy classnames.. + * + * According to PSR-2, only one class per use statement is expected. */ class Typo3Update_Sniffs_LegacyClassnames_UseSniff extends AbstractClassnameChecker { @@ -35,4 +38,21 @@ class Typo3Update_Sniffs_LegacyClassnames_UseSniff extends AbstractClassnameChec { return [T_USE]; } + + /** + * Overwrite to remove prefix. + * + * @param PhpCsFile $phpcsFile + * @param int $classnamePosition + * @param string $classname + * @param bool $forceEmptyPrefix Defines whether '\\' prefix should be checked or always be left out. + */ + protected function replaceLegacyClassname( + PhpCsFile $phpcsFile, + $classnamePosition, + $classname, + $forceEmptyPrefix = true + ) { + return parent::replaceLegacyClassname($phpcsFile, $classnamePosition, $classname, $forceEmptyPrefix); + } }