Skip to content

Commit

Permalink
[ci-review] Rector Rectify
Browse files Browse the repository at this point in the history
  • Loading branch information
actions-user committed Aug 6, 2023
1 parent 9bd421a commit f8b4e08
Showing 1 changed file with 29 additions and 19 deletions.
48 changes: 29 additions & 19 deletions src/DependencyInjection/LazyContainerFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,17 @@

namespace Rector\Core\DependencyInjection;

use Rector\NodeNameResolver\NodeNameResolver\ClassConstFetchNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\ClassConstNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\ClassNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\EmptyNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\FuncCallNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\FunctionNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\NameNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\ParamNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\PropertyNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\UseNameResolver;
use Rector\NodeNameResolver\NodeNameResolver\VariableNameResolver;
use Doctrine\Inflector\Inflector;
use Doctrine\Inflector\Rules\English\InflectorFactory;
use Illuminate\Container\Container;
Expand Down Expand Up @@ -39,17 +50,17 @@ final class LazyContainerFactory
* @var array<class-string<NodeNameResolverInterface>>
*/
private const NODE_NAME_RESOLVER_CLASSES = [
NodeNameResolver\ClassConstFetchNameResolver::class,
NodeNameResolver\ClassConstNameResolver::class,
NodeNameResolver\ClassNameResolver::class,
NodeNameResolver\EmptyNameResolver::class,
NodeNameResolver\FuncCallNameResolver::class,
NodeNameResolver\FunctionNameResolver::class,
NodeNameResolver\NameNameResolver::class,
NodeNameResolver\ParamNameResolver::class,
NodeNameResolver\PropertyNameResolver::class,
NodeNameResolver\UseNameResolver::class,
NodeNameResolver\VariableNameResolver::class,
ClassConstFetchNameResolver::class,
ClassConstNameResolver::class,
ClassNameResolver::class,
EmptyNameResolver::class,
FuncCallNameResolver::class,
FunctionNameResolver::class,
NameNameResolver::class,
ParamNameResolver::class,
PropertyNameResolver::class,
UseNameResolver::class,
VariableNameResolver::class,
];

/**
Expand All @@ -69,10 +80,9 @@ public function create(): Container
// @todo inject commands

$privatesAccessor = new PrivatesAccessor();
$privatesAccessor->propertyClosure($application, 'commands', function (array $commands): array {
$privatesAccessor->propertyClosure($application, 'commands', static function (array $commands) : array {
unset($commands['completion']);
unset($commands['help']);

return $commands;
});

Expand Down Expand Up @@ -122,31 +132,31 @@ public function create(): Container
$container->tag($nodeNameResolverClass, NodeNameResolverInterface::class);
}

$container->singleton(Parser::class, function (Container $container) {
$container->singleton(Parser::class, static function (Container $container) {
$phpstanServiceFactory = $container->make(PHPStanServicesFactory::class);
return $phpstanServiceFactory->createPHPStanParser();
});

// phpstan factory
$container->singleton(
\PHPStan\Reflection\ReflectionProvider::class,
function (Container $container): ReflectionProvider {
ReflectionProvider::class,
static function (Container $container) : ReflectionProvider {
$phpstanServiceFactory = $container->make(PHPStanServicesFactory::class);
return $phpstanServiceFactory->createReflectionProvider();
}
);

$container->singleton(Parser::class, function (Container $container) {
$container->singleton(Parser::class, static function (Container $container) {
$phpstanServiceFactory = $container->make(PHPStanServicesFactory::class);
return $phpstanServiceFactory->createPHPStanParser();
});

$container->singleton(Lexer::class, function (Container $container) {
$container->singleton(Lexer::class, static function (Container $container) {
$phpstanServiceFactory = $container->make(PHPStanServicesFactory::class);
return $phpstanServiceFactory->createEmulativeLexer();
});

$container->singleton(TypeNodeResolver::class, function (Container $container) {
$container->singleton(TypeNodeResolver::class, static function (Container $container) {
$phpstanServiceFactory = $container->make(PHPStanServicesFactory::class);
return $phpstanServiceFactory->createTypeNodeResolver();
});
Expand Down

0 comments on commit f8b4e08

Please sign in to comment.