Skip to content

Commit a110160

Browse files
authored
refactor: Leverage the tagged iterator parameter (#1328)
1 parent 0b21882 commit a110160

File tree

18 files changed

+85
-111
lines changed

18 files changed

+85
-111
lines changed

src/Bridge/Symfony/NelmioAliceBundle.php

Lines changed: 0 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515

1616
use Nelmio\Alice\Bridge\Symfony\DependencyInjection\Compiler\CheckBundleDependenciesPass;
1717
use Nelmio\Alice\Bridge\Symfony\DependencyInjection\Compiler\RegisterFakerProvidersPass;
18-
use Nelmio\Alice\Bridge\Symfony\DependencyInjection\Compiler\RegisterTagServicesPass;
1918
use Symfony\Component\DependencyInjection\ContainerBuilder;
2019
use Symfony\Component\HttpKernel\Bundle\Bundle;
2120

@@ -27,59 +26,5 @@ public function build(ContainerBuilder $container): void
2726

2827
$container->addCompilerPass(new CheckBundleDependenciesPass());
2928
$container->addCompilerPass(new RegisterFakerProvidersPass());
30-
$container->addCompilerPass(
31-
new RegisterTagServicesPass(
32-
'nelmio_alice.file_parser.registry',
33-
'nelmio_alice.file_parser',
34-
),
35-
);
36-
$container->addCompilerPass(
37-
new RegisterTagServicesPass(
38-
'nelmio_alice.fixture_builder.denormalizer.flag_parser.registry',
39-
'nelmio_alice.fixture_builder.denormalizer.chainable_flag_parser',
40-
),
41-
);
42-
$container->addCompilerPass(
43-
new RegisterTagServicesPass(
44-
'nelmio_alice.fixture_builder.denormalizer.fixture.registry_denormalizer',
45-
'nelmio_alice.fixture_builder.denormalizer.chainable_fixture_denormalizer',
46-
),
47-
);
48-
$container->addCompilerPass(
49-
new RegisterTagServicesPass(
50-
'nelmio_alice.fixture_builder.denormalizer.fixture.specs.calls.simple_denormalizer',
51-
'nelmio_alice.fixture_builder.denormalizer.chainable_method_flag_handler',
52-
),
53-
);
54-
$container->addCompilerPass(
55-
new RegisterTagServicesPass(
56-
'nelmio_alice.fixture_builder.expression_language.parser.token_parser.registry',
57-
'nelmio_alice.fixture_builder.expression_language.chainable_token_parser',
58-
),
59-
);
60-
$container->addCompilerPass(
61-
new RegisterTagServicesPass(
62-
'nelmio_alice.generator.instantiator.registry',
63-
'nelmio_alice.generator.instantiator.chainable_instantiator',
64-
),
65-
);
66-
$container->addCompilerPass(
67-
new RegisterTagServicesPass(
68-
'nelmio_alice.generator.caller.registry',
69-
'nelmio_alice.generator.caller.chainable_call_processor',
70-
),
71-
);
72-
$container->addCompilerPass(
73-
new RegisterTagServicesPass(
74-
'nelmio_alice.generator.resolver.parameter.registry',
75-
'nelmio_alice.generator.resolver.parameter.chainable_resolver',
76-
),
77-
);
78-
$container->addCompilerPass(
79-
new RegisterTagServicesPass(
80-
'nelmio_alice.generator.resolver.value.registry',
81-
'nelmio_alice.generator.resolver.value.chainable_resolver',
82-
),
83-
);
8429
}
8530
}

src/Bridge/Symfony/Resources/config/fixture_builder/denormalizer/fixture.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,24 +65,24 @@
6565
)
6666
->args([
6767
service('nelmio_alice.fixture_builder.denormalizer.fixture.registry_denormalizer'),
68-
// Injected via a compiler pass
6968
]);
7069

71-
// Chainables
7270
$services
7371
->set(
7472
'nelmio_alice.fixture_builder.denormalizer.fixture.registry_denormalizer',
7573
FixtureDenormalizerRegistry::class,
7674
)
7775
->args([
7876
service('nelmio_alice.fixture_builder.denormalizer.flag_parser'),
77+
tagged_iterator('nelmio_alice.fixture_builder.denormalizer.chainable_fixture_denormalizer'),
7978
]);
8079

8180
$services->set(
8281
'nelmio_alice.fixture_builder.denormalizer.fixture.chainable.null_list',
8382
NullListNameDenormalizer::class,
8483
);
8584

85+
// Chainables
8686
$services
8787
->set(
8888
'nelmio_alice.fixture_builder.denormalizer.fixture.chainable.temporary_list',
@@ -261,6 +261,7 @@
261261
)
262262
->args([
263263
service('nelmio_alice.fixture_builder.denormalizer.fixture.specs.calls.function_denormalizer'),
264+
tagged_iterator('nelmio_alice.fixture_builder.denormalizer.chainable_method_flag_handler'),
264265
]);
265266

266267
$services

src/Bridge/Symfony/Resources/config/fixture_builder/denormalizer/flag_parser.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,14 @@
3838
service('nelmio_alice.fixture_builder.denormalizer.flag_parser.registry'),
3939
]);
4040

41-
$services->set(
42-
'nelmio_alice.fixture_builder.denormalizer.flag_parser.registry',
43-
FlagParserRegistry::class,
44-
// Arguments injected via a compiler pass
45-
);
41+
$services
42+
->set(
43+
'nelmio_alice.fixture_builder.denormalizer.flag_parser.registry',
44+
FlagParserRegistry::class,
45+
)
46+
->args([
47+
tagged_iterator('nelmio_alice.fixture_builder.denormalizer.chainable_flag_parser'),
48+
]);
4649

4750
// Chainables
4851
$services

src/Bridge/Symfony/Resources/config/fixture_builder/expression_language/token_parser.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,14 @@
4242
'nelmio_alice.fixture_builder.expression_language.parser.token_parser.registry',
4343
);
4444

45-
$services->set(
46-
'nelmio_alice.fixture_builder.expression_language.parser.token_parser.registry',
47-
TokenParserRegistry::class,
48-
// Arguments injected via compiler pass
49-
);
45+
$services
46+
->set(
47+
'nelmio_alice.fixture_builder.expression_language.parser.token_parser.registry',
48+
TokenParserRegistry::class,
49+
)
50+
->args([
51+
tagged_iterator('nelmio_alice.fixture_builder.expression_language.chainable_token_parser'),
52+
]);
5053

5154
$services->set(
5255
'nelmio_alice.fixture_builder.expression_language.parser.token_parser.chainable.argument_escaper',

src/Bridge/Symfony/Resources/config/generator/caller.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,14 @@
3939
service('nelmio_alice.generator.named_arguments_resolver'),
4040
]);
4141

42-
$services->set(
43-
'nelmio_alice.generator.caller.registry',
44-
CallProcessorRegistry::class,
45-
// Injected via a compiler pass
46-
);
42+
$services
43+
->set(
44+
'nelmio_alice.generator.caller.registry',
45+
CallProcessorRegistry::class,
46+
)
47+
->args([
48+
tagged_iterator('nelmio_alice.generator.caller.chainable_call_processor'),
49+
]);
4750

4851
// Chainables
4952
$services

src/Bridge/Symfony/Resources/config/generator/instantiator.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,14 @@
4747
service('nelmio_alice.generator.instantiator.registry'),
4848
]);
4949

50-
$services->set(
51-
'nelmio_alice.generator.instantiator.registry',
52-
InstantiatorRegistry::class,
53-
// Injected via a compiler pass
54-
);
50+
$services
51+
->set(
52+
'nelmio_alice.generator.instantiator.registry',
53+
InstantiatorRegistry::class,
54+
)
55+
->args([
56+
tagged_iterator('nelmio_alice.generator.instantiator.chainable_instantiator'),
57+
]);
5558

5659
// Chainables
5760
$services

src/Bridge/Symfony/Resources/config/generator/resolver/parameter.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,14 @@
4747
service('nelmio_alice.generator.resolver.parameter.registry'),
4848
]);
4949

50-
$services->set(
51-
'nelmio_alice.generator.resolver.parameter.registry',
52-
ParameterResolverRegistry::class,
53-
// Arguments injected via a compiler pass
54-
);
50+
$services
51+
->set(
52+
'nelmio_alice.generator.resolver.parameter.registry',
53+
ParameterResolverRegistry::class,
54+
)
55+
->args([
56+
tagged_iterator('nelmio_alice.generator.resolver.parameter.chainable_resolver'),
57+
]);
5558

5659
// Chainables
5760
$services

src/Bridge/Symfony/Resources/config/generator/resolver/value.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,14 @@
4242
'nelmio_alice.generator.resolver.value.registry',
4343
);
4444

45-
$services->set(
46-
'nelmio_alice.generator.resolver.value.registry',
47-
ValueResolverRegistry::class,
48-
// Injected via a compiler pass
49-
);
45+
$services
46+
->set(
47+
'nelmio_alice.generator.resolver.value.registry',
48+
ValueResolverRegistry::class,
49+
)
50+
->args([
51+
tagged_iterator('nelmio_alice.generator.resolver.value.chainable_resolver'),
52+
]);
5053

5154
$services->set(
5255
'nelmio_alice.generator.resolver.value.unique_values_pool',

src/Bridge/Symfony/Resources/config/parser.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,14 @@
5656
service('nelmio_alice.file_locator'),
5757
]);
5858

59-
$services->set(
60-
'nelmio_alice.file_parser.registry',
61-
ParserRegistry::class,
62-
// Injected via compiler pass
63-
);
59+
$services
60+
->set(
61+
'nelmio_alice.file_parser.registry',
62+
ParserRegistry::class,
63+
)
64+
->args([
65+
tagged_iterator('nelmio_alice.file_parser'),
66+
]);
6467

6568
// Chainables
6669
$services

src/FixtureBuilder/Denormalizer/Fixture/FixtureDenormalizerRegistry.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ final class FixtureDenormalizerRegistry implements FixtureDenormalizerInterface
3131
private $denormalizers = [];
3232

3333
/**
34-
* @param ChainableFixtureDenormalizerInterface[] $denormalizers
34+
* @param iterable<ChainableFixtureDenormalizerInterface> $denormalizers
3535
*/
36-
public function __construct(FlagParserInterface $flagParser, array $denormalizers)
36+
public function __construct(FlagParserInterface $flagParser, iterable $denormalizers)
3737
{
3838
foreach ($denormalizers as $index => $denormalizer) {
3939
if (false === $denormalizer instanceof ChainableFixtureDenormalizerInterface) {

0 commit comments

Comments
 (0)