Download project

This commit is contained in:
Roman Pyrih
2024-11-20 09:09:44 +01:00
parent 547a138d6a
commit 5ff041757f
40737 changed files with 7766183 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
<?php
namespace Symfony\Bundle\SwiftmailerBundle\DependencyInjection\Compiler;
use Symfony\Component\DependencyInjection\Compiler\AbstractRecursivePass;
use Symfony\Component\DependencyInjection\Definition;
/**
* Ensures that autoloading of Swiftmailer classes is not optimized by the hot path optimization.
*
* Swiftmailer has a special autoloader triggering the initialization of the library lazily.
* Bypassing the autoloader would thus break the library.
* This logic allows to keep applying the autoloading optimization on the container, forcing an
* opt-out only for the Swiftmailer classes, which is better than disabling the optimization
* entirely.
*
* @author Christophe Coevoet <stof@notk.org>
*/
class EnsureNoHotPathPass extends AbstractRecursivePass
{
protected function processValue($value, $isRoot = false)
{
if ($value instanceof Definition && 0 === strpos($value->getClass(), 'Swift_')) {
$value->clearTag('container.hot_path');
}
return parent::processValue($value, $isRoot);
}
}