class RemovePrivateAliasesPass in Service Container 7.2
Same name and namespace in other branches
- 7 modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Compiler/RemovePrivateAliasesPass.php \Symfony\Component\DependencyInjection\Compiler\RemovePrivateAliasesPass
Remove private aliases from the container. They were only used to establish dependencies between services, and these dependencies have been resolved in one of the previous passes.
@author Johannes M. Schmitt <schmittjoh@gmail.com>
Hierarchy
- class \Symfony\Component\DependencyInjection\Compiler\RemovePrivateAliasesPass implements CompilerPassInterface
Expanded class hierarchy of RemovePrivateAliasesPass
File
- modules/
providers/ service_container_symfony/ lib/ Symfony/ Component/ DependencyInjection/ Compiler/ RemovePrivateAliasesPass.php, line 23
Namespace
Symfony\Component\DependencyInjection\CompilerView source
class RemovePrivateAliasesPass implements CompilerPassInterface {
/**
* Removes private aliases from the ContainerBuilder.
*
* @param ContainerBuilder $container
*/
public function process(ContainerBuilder $container) {
$compiler = $container
->getCompiler();
$formatter = $compiler
->getLoggingFormatter();
foreach ($container
->getAliases() as $id => $alias) {
if ($alias
->isPublic()) {
continue;
}
$container
->removeAlias($id);
$compiler
->addLogMessage($formatter
->formatRemoveService($this, $id, 'private alias'));
}
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
RemovePrivateAliasesPass:: |
public | function |
Removes private aliases from the ContainerBuilder. Overrides CompilerPassInterface:: |