-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrector.php
35 lines (29 loc) · 1.35 KB
/
rector.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
declare(strict_types=1);
use PhpCsFixer\Fixer\Import\NoUnusedImportsFixer;
use Rector\Core\Configuration\Option;
use Rector\Core\ValueObject\PhpVersion;
use Rector\Php74\Rector\Property\TypedPropertyRector;
use Rector\Php81\Rector\ClassConst\FinalizePublicClassConstantRector;
use Rector\Privatization\Rector\Class_\FinalizeClassesWithoutChildrenRector;
use Rector\Set\ValueObject\SetList;
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
return static function (ContainerConfigurator $containerConfigurator): void {
// get parameters
$parameters = $containerConfigurator->parameters();
$parameters->set(Option::PATHS, [
__DIR__ . '/src'
]);
$parameters->set(Option::PHP_VERSION_FEATURES, PhpVersion::PHP_81);
$parameters->set(Option::AUTO_IMPORT_NAMES, true);
// Define what rule sets will be applied
$containerConfigurator->import(SetList::DEAD_CODE);
$containerConfigurator->import(SetList::TYPE_DECLARATION_STRICT);
// get services (needed for register a single rule)
$services = $containerConfigurator->services();
// register a single rule
// $services->set(TypedPropertyRector::class);
$services->set(FinalizePublicClassConstantRector::class);
$services->set(FinalizeClassesWithoutChildrenRector::class);
$services->set(NoUnusedImportsFixer::class);
};