function TaggedHandlersPass::resolveDefinitionClass
Same name and namespace in other branches
- main core/lib/Drupal/Core/DependencyInjection/Compiler/TaggedHandlersPass.php \Drupal\Core\DependencyInjection\Compiler\TaggedHandlersPass::resolveDefinitionClass()
Resolves the definition class.
Parameters
\Symfony\Component\DependencyInjection\Definition $definition: The service definition.
\Symfony\Component\DependencyInjection\ContainerBuilder $container: The service container.
Return value
class-string|null The resolved class-string or null if the class cannot be resolved.
1 call to TaggedHandlersPass::resolveDefinitionClass()
- TaggedHandlersPass::processServiceCollectorPass in core/
lib/ Drupal/ Core/ DependencyInjection/ Compiler/ TaggedHandlersPass.php - Processes a service collector service pass.
File
-
core/
lib/ Drupal/ Core/ DependencyInjection/ Compiler/ TaggedHandlersPass.php, line 266
Class
- TaggedHandlersPass
- Collects services to add/inject them into a consumer service.
Namespace
Drupal\Core\DependencyInjection\CompilerCode
protected function resolveDefinitionClass(Definition $definition, ContainerBuilder $container) : ?string {
$class = $definition->getClass();
if ($class) {
return $class;
}
if (!$definition instanceof ChildDefinition) {
return NULL;
}
if (!$container->hasDefinition($definition->getParent())) {
return NULL;
}
$parent = $container->getDefinition($definition->getParent());
return $this->resolveDefinitionClass($parent, $container);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.