function BackwardsCompatibilityClassLoaderPass::process
Same name and namespace in other branches
- 11.x core/lib/Drupal/Core/DependencyInjection/Compiler/BackwardsCompatibilityClassLoaderPass.php \Drupal\Core\DependencyInjection\Compiler\BackwardsCompatibilityClassLoaderPass::process()
File
-
core/
lib/ Drupal/ Core/ DependencyInjection/ Compiler/ BackwardsCompatibilityClassLoaderPass.php, line 18
Class
- BackwardsCompatibilityClassLoaderPass
- Compiler pass to merge moved classes into a single container parameter.
Namespace
Drupal\Core\DependencyInjection\CompilerCode
public function process(ContainerBuilder $container) : void {
$moved_classes = $container->hasParameter('core.moved_classes') ? $container->getParameter('core.moved_classes') : [];
$modules = array_keys($container->getParameter('container.modules'));
foreach ($modules as $module) {
$parameter_name = $module . '.moved_classes';
if ($container->hasParameter($parameter_name)) {
$module_moved = $container->getParameter($parameter_name);
\assert(is_array($module_moved));
\assert(count($module_moved) === count(array_column($module_moved, 'class')), 'Missing class key for moved classes in ' . $module);
$moved_classes = $moved_classes + $module_moved;
}
}
if (!empty($moved_classes)) {
$container->setParameter('moved_classes', $moved_classes);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.