29 lines
662 B
PHP
29 lines
662 B
PHP
<?php
|
|
|
|
namespace Symfony\Component\DependencyInjection\Compiler;
|
|
|
|
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
|
|
|
/**
|
|
* A pass to automatically process extensions if they implement
|
|
* CompilerPassInterface.
|
|
*
|
|
* @author Wouter J <wouter@wouterj.nl>
|
|
*/
|
|
class ExtensionCompilerPass implements CompilerPassInterface
|
|
{
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function process(ContainerBuilder $container)
|
|
{
|
|
foreach ($container->getExtensions() as $extension) {
|
|
if (!$extension instanceof CompilerPassInterface) {
|
|
continue;
|
|
}
|
|
|
|
$extension->process($container);
|
|
}
|
|
}
|
|
}
|