private function PhpDumper::addFrozenConstructor

Adds the constructor for a frozen container.

Return value

string

1 call to PhpDumper::addFrozenConstructor()
PhpDumper::dump in drupal/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
Dumps the service container as a PHP class.

File

drupal/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php, line 779

Class

PhpDumper
PhpDumper dumps a service container as a PHP class.

Namespace

Symfony\Component\DependencyInjection\Dumper

Code

private function addFrozenConstructor() {
  $code = <<<EOF

    /**
     * Constructor.
     */
    public function __construct()
    {
EOF;
  if ($this->container
    ->getParameterBag()
    ->all()) {
    $code .= "\n        \$this->parameters = \$this->getDefaultParameters();\n";
  }
  $code .= <<<EOF

        \$this->services =
        \$this->scopedServices =
        \$this->scopeStacks = array();

        \$this->set('service_container', \$this);

EOF;
  $code .= "\n";
  if (count($scopes = $this->container
    ->getScopes()) > 0) {
    $code .= "        \$this->scopes = " . $this
      ->dumpValue($scopes) . ";\n";
    $code .= "        \$this->scopeChildren = " . $this
      ->dumpValue($this->container
      ->getScopeChildren()) . ";\n";
  }
  else {
    $code .= "        \$this->scopes = array();\n";
    $code .= "        \$this->scopeChildren = array();\n";
  }
  $code .= $this
    ->addMethodMap();
  $code .= $this
    ->addAliases();
  $code .= <<<EOF
    }

EOF;
  return $code;
}