function Compiler::compile
Same name in this branch
- 11.1.x vendor/twig/twig/src/Compiler.php \Twig\Compiler::compile()
- 11.1.x vendor/composer/composer/src/Composer/Compiler.php \Composer\Compiler::compile()
Run the Compiler and process all Passes.
File
-
vendor/
symfony/ dependency-injection/ Compiler/ Compiler.php, line 69
Class
- Compiler
- This class is used to remove circular dependencies between individual passes.
Namespace
Symfony\Component\DependencyInjection\CompilerCode
public function compile(ContainerBuilder $container) : void {
try {
foreach ($this->passConfig
->getPasses() as $pass) {
$pass->process($container);
}
} catch (\Exception $e) {
$usedEnvs = [];
$prev = $e;
do {
$msg = $prev->getMessage();
if ($msg !== ($resolvedMsg = $container->resolveEnvPlaceholders($msg, null, $usedEnvs))) {
$r = new \ReflectionProperty($prev, 'message');
$r->setValue($prev, $resolvedMsg);
}
} while ($prev = $prev->getPrevious());
if ($usedEnvs) {
$e = new EnvParameterException($usedEnvs, $e);
}
throw $e;
} finally {
$this->getServiceReferenceGraph()
->clear();
}
}