You are here

private function CheckExceptionOnInvalidReferenceBehaviorPass::processReferences in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/symfony/dependency-injection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php \Symfony\Component\DependencyInjection\Compiler\CheckExceptionOnInvalidReferenceBehaviorPass::processReferences()
1 call to CheckExceptionOnInvalidReferenceBehaviorPass::processReferences()
CheckExceptionOnInvalidReferenceBehaviorPass::processDefinition in vendor/symfony/dependency-injection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php

File

vendor/symfony/dependency-injection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php, line 47

Class

CheckExceptionOnInvalidReferenceBehaviorPass
Checks that all references are pointing to a valid service.

Namespace

Symfony\Component\DependencyInjection\Compiler

Code

private function processReferences(array $arguments) {
  foreach ($arguments as $argument) {
    if (is_array($argument)) {
      $this
        ->processReferences($argument);
    }
    elseif ($argument instanceof Definition) {
      $this
        ->processDefinition($argument);
    }
    elseif ($argument instanceof Reference && ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE === $argument
      ->getInvalidBehavior()) {
      $destId = (string) $argument;
      if (!$this->container
        ->has($destId)) {
        throw new ServiceNotFoundException($destId, $this->sourceId);
      }
    }
  }
}