Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. ContainerBuilder.php

function ContainerBuilder::set

Same name in this branch
  1. 11.1.x core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php \Drupal\Core\DependencyInjection\ContainerBuilder::set()

Sets a service.

Throws

BadMethodCallException When this ContainerBuilder is compiled

Overrides Container::set

1 method overrides ContainerBuilder::set()
ContainerBuilder::set in core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php
Overrides Symfony\Component\DependencyInjection\ContainerBuilder::set().

File

vendor/symfony/dependency-injection/ContainerBuilder.php, line 527

Class

ContainerBuilder
ContainerBuilder is a DI container that provides an API to easily describe services.

Namespace

Symfony\Component\DependencyInjection

Code

public function set(string $id, ?object $service) : void {
    if ($this->isCompiled() && (isset($this->definitions[$id]) && !$this->definitions[$id]
        ->isSynthetic())) {
        // setting a synthetic service on a compiled container is alright
        throw new BadMethodCallException(\sprintf('Setting service "%s" for an unknown or non-synthetic service definition on a compiled container is not allowed.', $id));
    }
    unset($this->definitions[$id], $this->aliasDefinitions[$id], $this->removedIds[$id]);
    parent::set($id, $service);
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal