Skip to content

Commit c246419

Browse files
authored
Reduce ContainerFactory::postInitializeContainer() calls
1 parent 88f974a commit c246419

File tree

71 files changed

+247
-176
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+247
-176
lines changed

src/Testing/TypeInferenceTestCase.php

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -56,33 +56,34 @@ abstract class TypeInferenceTestCase extends PHPStanTestCase
5656
protected static function createNodeScopeResolver(): NodeScopeResolver|GeneratorNodeScopeResolver
5757
{
5858
$reflectionProvider = self::createReflectionProvider();
59-
$typeSpecifier = self::getContainer()->getService('typeSpecifier');
59+
$container = self::getContainer();
60+
$typeSpecifier = $container->getService('typeSpecifier');
6061

6162
return new NodeScopeResolver(
6263
$reflectionProvider,
63-
self::getContainer()->getByType(InitializerExprTypeResolver::class),
64+
$container->getByType(InitializerExprTypeResolver::class),
6465
self::getReflector(),
65-
self::getContainer()->getByType(ClassReflectionFactory::class),
66-
self::getContainer()->getByType(ParameterOutTypeExtensionProvider::class),
66+
$container->getByType(ClassReflectionFactory::class),
67+
$container->getByType(ParameterOutTypeExtensionProvider::class),
6768
self::getParser(),
68-
self::getContainer()->getByType(FileTypeMapper::class),
69-
self::getContainer()->getByType(PhpVersion::class),
70-
self::getContainer()->getByType(PhpDocInheritanceResolver::class),
71-
self::getContainer()->getByType(FileHelper::class),
69+
$container->getByType(FileTypeMapper::class),
70+
$container->getByType(PhpVersion::class),
71+
$container->getByType(PhpDocInheritanceResolver::class),
72+
$container->getByType(FileHelper::class),
7273
$typeSpecifier,
73-
self::getContainer()->getByType(DynamicThrowTypeExtensionProvider::class),
74-
self::getContainer()->getByType(ReadWritePropertiesExtensionProvider::class),
75-
self::getContainer()->getByType(ParameterClosureThisExtensionProvider::class),
76-
self::getContainer()->getByType(ParameterClosureTypeExtensionProvider::class),
74+
$container->getByType(DynamicThrowTypeExtensionProvider::class),
75+
$container->getByType(ReadWritePropertiesExtensionProvider::class),
76+
$container->getByType(ParameterClosureThisExtensionProvider::class),
77+
$container->getByType(ParameterClosureTypeExtensionProvider::class),
7778
self::createScopeFactory($reflectionProvider, $typeSpecifier),
78-
self::getContainer()->getParameter('polluteScopeWithLoopInitialAssignments'),
79-
self::getContainer()->getParameter('polluteScopeWithAlwaysIterableForeach'),
80-
self::getContainer()->getParameter('polluteScopeWithBlock'),
79+
$container->getParameter('polluteScopeWithLoopInitialAssignments'),
80+
$container->getParameter('polluteScopeWithAlwaysIterableForeach'),
81+
$container->getParameter('polluteScopeWithBlock'),
8182
static::getEarlyTerminatingMethodCalls(),
8283
static::getEarlyTerminatingFunctionCalls(),
83-
self::getContainer()->getParameter('exceptions')['implicitThrows'],
84-
self::getContainer()->getParameter('treatPhpDocTypesAsCertain'),
85-
self::getContainer()->getParameter('narrowMethodScopeFromConstructor'),
84+
$container->getParameter('exceptions')['implicitThrows'],
85+
$container->getParameter('treatPhpDocTypesAsCertain'),
86+
$container->getParameter('narrowMethodScopeFromConstructor'),
8687
);
8788
}
8889

tests/PHPStan/Analyser/Generator/GeneratorNodeScopeResolverRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,9 +180,10 @@ public function testRule(callable $ruleCallback, array $expectedErrors): void
180180

181181
protected function createNodeScopeResolver(): GeneratorNodeScopeResolver
182182
{
183+
$container = self::getContainer();
183184
return new GeneratorNodeScopeResolver(
184-
self::getContainer()->getByType(ExprPrinter::class),
185-
self::getContainer(),
185+
$container->getByType(ExprPrinter::class),
186+
$container,
186187
);
187188
}
188189

tests/PHPStan/Rules/Classes/ClassAttributesRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ class ClassAttributesRuleTest extends RuleTestCase
2828
protected function getRule(): Rule
2929
{
3030
$reflectionProvider = self::createReflectionProvider();
31+
$container = self::getContainer();
3132
return new ClassAttributesRule(
3233
new AttributesCheck(
3334
$reflectionProvider,
@@ -43,9 +44,9 @@ protected function getRule(): Rule
4344
),
4445
new ClassNameCheck(
4546
new ClassCaseSensitivityCheck($reflectionProvider, false),
46-
new ClassForbiddenNameCheck(self::getContainer()),
47+
new ClassForbiddenNameCheck($container),
4748
$reflectionProvider,
48-
self::getContainer(),
49+
$container,
4950
),
5051
true,
5152
),

tests/PHPStan/Rules/Classes/ClassConstantAttributesRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ class ClassConstantAttributesRuleTest extends RuleTestCase
2323
protected function getRule(): Rule
2424
{
2525
$reflectionProvider = self::createReflectionProvider();
26+
$container = self::getContainer();
2627
return new ClassConstantAttributesRule(
2728
new AttributesCheck(
2829
$reflectionProvider,
@@ -38,9 +39,9 @@ protected function getRule(): Rule
3839
),
3940
new ClassNameCheck(
4041
new ClassCaseSensitivityCheck($reflectionProvider, false),
41-
new ClassForbiddenNameCheck(self::getContainer()),
42+
new ClassForbiddenNameCheck($container),
4243
$reflectionProvider,
43-
self::getContainer(),
44+
$container,
4445
),
4546
true,
4647
),

tests/PHPStan/Rules/Classes/ClassConstantRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,15 @@ class ClassConstantRuleTest extends RuleTestCase
2424
protected function getRule(): Rule
2525
{
2626
$reflectionProvider = self::createReflectionProvider();
27+
$container = self::getContainer();
2728
return new ClassConstantRule(
2829
$reflectionProvider,
2930
new RuleLevelHelper($reflectionProvider, true, false, true, true, true, false, true),
3031
new ClassNameCheck(
3132
new ClassCaseSensitivityCheck($reflectionProvider, true),
32-
new ClassForbiddenNameCheck(self::getContainer()),
33+
new ClassForbiddenNameCheck($container),
3334
$reflectionProvider,
34-
self::getContainer(),
35+
$container,
3536
),
3637
new PhpVersion($this->phpVersion),
3738
true,

tests/PHPStan/Rules/Classes/ExistingClassInClassExtendsRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,13 @@ class ExistingClassInClassExtendsRuleTest extends RuleTestCase
1818
protected function getRule(): Rule
1919
{
2020
$reflectionProvider = self::createReflectionProvider();
21+
$container = self::getContainer();
2122
return new ExistingClassInClassExtendsRule(
2223
new ClassNameCheck(
2324
new ClassCaseSensitivityCheck($reflectionProvider, true),
24-
new ClassForbiddenNameCheck(self::getContainer()),
25+
new ClassForbiddenNameCheck($container),
2526
$reflectionProvider,
26-
self::getContainer(),
27+
$container,
2728
),
2829
$reflectionProvider,
2930
true,

tests/PHPStan/Rules/Classes/ExistingClassInInstanceOfRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,14 @@ class ExistingClassInInstanceOfRuleTest extends RuleTestCase
1919
protected function getRule(): Rule
2020
{
2121
$reflectionProvider = self::createReflectionProvider();
22+
$container = self::getContainer();
2223
return new ExistingClassInInstanceOfRule(
2324
$reflectionProvider,
2425
new ClassNameCheck(
2526
new ClassCaseSensitivityCheck($reflectionProvider, true),
26-
new ClassForbiddenNameCheck(self::getContainer()),
27+
new ClassForbiddenNameCheck($container),
2728
$reflectionProvider,
28-
self::getContainer(),
29+
$container,
2930
),
3031
true,
3132
true,

tests/PHPStan/Rules/Classes/ExistingClassInTraitUseRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,13 @@ class ExistingClassInTraitUseRuleTest extends RuleTestCase
1818
protected function getRule(): Rule
1919
{
2020
$reflectionProvider = self::createReflectionProvider();
21+
$container = self::getContainer();
2122
return new ExistingClassInTraitUseRule(
2223
new ClassNameCheck(
2324
new ClassCaseSensitivityCheck($reflectionProvider, true),
24-
new ClassForbiddenNameCheck(self::getContainer()),
25+
new ClassForbiddenNameCheck($container),
2526
$reflectionProvider,
26-
self::getContainer(),
27+
$container,
2728
),
2829
$reflectionProvider,
2930
true,

tests/PHPStan/Rules/Classes/ExistingClassesInClassImplementsRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,13 @@ class ExistingClassesInClassImplementsRuleTest extends RuleTestCase
1818
protected function getRule(): Rule
1919
{
2020
$reflectionProvider = self::createReflectionProvider();
21+
$container = self::getContainer();
2122
return new ExistingClassesInClassImplementsRule(
2223
new ClassNameCheck(
2324
new ClassCaseSensitivityCheck($reflectionProvider, true),
24-
new ClassForbiddenNameCheck(self::getContainer()),
25+
new ClassForbiddenNameCheck($container),
2526
$reflectionProvider,
26-
self::getContainer(),
27+
$container,
2728
),
2829
$reflectionProvider,
2930
true,

tests/PHPStan/Rules/Classes/ExistingClassesInEnumImplementsRuleTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,13 @@ protected function getRule(): Rule
1919
{
2020
$reflectionProvider = self::createReflectionProvider();
2121

22+
$container = self::getContainer();
2223
return new ExistingClassesInEnumImplementsRule(
2324
new ClassNameCheck(
2425
new ClassCaseSensitivityCheck($reflectionProvider, true),
25-
new ClassForbiddenNameCheck(self::getContainer()),
26+
new ClassForbiddenNameCheck($container),
2627
$reflectionProvider,
27-
self::getContainer(),
28+
$container,
2829
),
2930
$reflectionProvider,
3031
true,

0 commit comments

Comments
 (0)