rector/config/set/nette-utils-code-quality.php
Tomas Votruba de4748f935
README + recipe improvements (#4017)
* rector-recipe and README improvements

* ci: add generate command test
2020-08-24 21:25:26 +00:00

43 lines
2.3 KiB
PHP

<?php
declare(strict_types=1);
use Rector\Generic\Rector\FuncCall\FuncCallToStaticCallRector;
use Rector\Generic\ValueObject\FuncNameToStaticCallName;
use Rector\Nette\Rector\FuncCall\FilePutContentsToFileSystemWriteRector;
use Rector\Nette\Rector\FuncCall\JsonDecodeEncodeToNetteUtilsJsonDecodeEncodeRector;
use Rector\Nette\Rector\FuncCall\PregFunctionToNetteUtilsStringsRector;
use Rector\Nette\Rector\FuncCall\PregMatchFunctionToNetteUtilsStringsRector;
use Rector\Nette\Rector\FuncCall\SubstrStrlenFunctionToNetteUtilsStringsRector;
use Rector\Nette\Rector\Identical\EndsWithFunctionToNetteUtilsStringsRector;
use Rector\Nette\Rector\Identical\StartsWithFunctionToNetteUtilsStringsRector;
use Rector\Nette\Rector\NotIdentical\StrposToStringsContainsRector;
use Rector\NetteUtilsCodeQuality\Rector\LNumber\ReplaceTimeNumberWithDateTimeConstantRector;
use function Rector\SymfonyPhpConfig\inline_value_objects;
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
# @see https://www.tomasvotruba.cz/blog/2018/07/30/hidden-gems-of-php-packages-nette-utils
return static function (ContainerConfigurator $containerConfigurator): void {
$services = $containerConfigurator->services();
$configuration = [
new FuncNameToStaticCallName('file_get_contents', 'Nette\Utils\FileSystem', 'read'),
new FuncNameToStaticCallName('unlink', 'Nette\Utils\FileSystem', 'delete'),
new FuncNameToStaticCallName('rmdir', 'Nette\Utils\FileSystem', 'delete'),
];
$services->set(FuncCallToStaticCallRector::class)
->call('configure', [[
FuncCallToStaticCallRector::FUNC_CALLS_TO_STATIC_CALLS => inline_value_objects($configuration),
]]);
$services->set(StrposToStringsContainsRector::class);
$services->set(SubstrStrlenFunctionToNetteUtilsStringsRector::class);
$services->set(StartsWithFunctionToNetteUtilsStringsRector::class);
$services->set(PregMatchFunctionToNetteUtilsStringsRector::class);
$services->set(PregFunctionToNetteUtilsStringsRector::class);
$services->set(EndsWithFunctionToNetteUtilsStringsRector::class);
$services->set(JsonDecodeEncodeToNetteUtilsJsonDecodeEncodeRector::class);
$services->set(FilePutContentsToFileSystemWriteRector::class);
$services->set(ReplaceTimeNumberWithDateTimeConstantRector::class);
};