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

Breadcrumb

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

function GraphvizDumper::findNodes

1 call to GraphvizDumper::findNodes()
GraphvizDumper::dump in vendor/symfony/dependency-injection/Dumper/GraphvizDumper.php
Dumps the service container as a graphviz graph.

File

vendor/symfony/dependency-injection/Dumper/GraphvizDumper.php, line 149

Class

GraphvizDumper
GraphvizDumper dumps a service container as a graphviz file.

Namespace

Symfony\Component\DependencyInjection\Dumper

Code

private function findNodes() : array {
    $nodes = [];
    $container = $this->cloneContainer();
    foreach ($container->getDefinitions() as $id => $definition) {
        $class = $definition->getClass();
        if (str_starts_with($class, '\\')) {
            $class = substr($class, 1);
        }
        try {
            $class = $this->container
                ->getParameterBag()
                ->resolveValue($class);
        } catch (ParameterNotFoundException) {
        }
        $nodes[$id] = [
            'class' => str_replace('\\', '\\\\', $class),
            'attributes' => array_merge($this->options['node.definition'], [
                'style' => $definition->isShared() ? 'filled' : 'dotted',
            ]),
        ];
        $container->setDefinition($id, new Definition('stdClass'));
    }
    foreach ($container->getServiceIds() as $id) {
        if (\array_key_exists($id, $container->getAliases())) {
            continue;
        }
        if (!$container->hasDefinition($id)) {
            $nodes[$id] = [
                'class' => str_replace('\\', '\\\\', $container->get($id)::class),
                'attributes' => $this->options['node.instance'],
            ];
        }
    }
    return $nodes;
}

API Navigation

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