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

Breadcrumb

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

function GraphvizDumper::dump

Dumps the service container as a graphviz graph.

Available options:

  • graph: The default options for the whole graph
  • node: The default options for nodes
  • edge: The default options for edges
  • node.instance: The default options for services that are defined directly by object instances
  • node.definition: The default options for services that are defined via service definition instances
  • node.missing: The default options for missing services

Overrides DumperInterface::dump

File

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

Class

GraphvizDumper
GraphvizDumper dumps a service container as a graphviz file.

Namespace

Symfony\Component\DependencyInjection\Dumper

Code

public function dump(array $options = []) : string {
    foreach ([
        'graph',
        'node',
        'edge',
        'node.instance',
        'node.definition',
        'node.missing',
    ] as $key) {
        if (isset($options[$key])) {
            $this->options[$key] = array_merge($this->options[$key], $options[$key]);
        }
    }
    $this->nodes = $this->findNodes();
    $this->edges = [];
    foreach ($this->container
        ->getDefinitions() as $id => $definition) {
        $this->edges[$id] = array_merge($this->findEdges($id, $definition->getArguments(), true, ''), $this->findEdges($id, $definition->getProperties(), false, ''));
        foreach ($definition->getMethodCalls() as $call) {
            $this->edges[$id] = array_merge($this->edges[$id], $this->findEdges($id, $call[1], false, $call[0] . '()'));
        }
    }
    return $this->container
        ->resolveEnvPlaceholders($this->startDot() . $this->addNodes() . $this->addEdges() . $this->endDot(), '__ENV_%s__');
}

API Navigation

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