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

Breadcrumb

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

function ContainerBuilder::addObjectResource

Adds the object class hierarchy as resources.

Parameters

object|string $object An object instance or class name:

Return value

$this

2 calls to ContainerBuilder::addObjectResource()
ContainerBuilder::addCompilerPass in vendor/symfony/dependency-injection/ContainerBuilder.php
Adds a compiler pass.
ContainerBuilder::compile in vendor/symfony/dependency-injection/ContainerBuilder.php
Compiles the container.

File

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

Class

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

Namespace

Symfony\Component\DependencyInjection

Code

public function addObjectResource(object|string $object) : static {
    if ($this->trackResources) {
        if (\is_object($object)) {
            $object = $object::class;
        }
        if (!isset($this->classReflectors[$object])) {
            $this->classReflectors[$object] = new \ReflectionClass($object);
        }
        $class = $this->classReflectors[$object];
        foreach ($class->getInterfaceNames() as $name) {
            if (null === ($interface =& $this->classReflectors[$name])) {
                $interface = new \ReflectionClass($name);
            }
            $file = $interface->getFileName();
            if (false !== $file && file_exists($file)) {
                $this->fileExists($file);
            }
        }
        do {
            $file = $class->getFileName();
            if (false !== $file && file_exists($file)) {
                $this->fileExists($file);
            }
            foreach ($class->getTraitNames() as $name) {
                $this->addObjectResource($name);
            }
        } while ($class = $class->getParentClass());
    }
    return $this;
}

API Navigation

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