���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /usr/share/php/Symfony4/Component/DependencyInjection/Compiler/ |
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <[email protected]> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DependencyInjection\Compiler; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Reference; /** * Removes unused service definitions from the container. * * @author Johannes M. Schmitt <[email protected]> * @author Nicolas Grekas <[email protected]> */ class RemoveUnusedDefinitionsPass extends AbstractRecursivePass implements RepeatablePassInterface { private $connectedIds = []; /** * {@inheritdoc} */ public function setRepeatedPass(RepeatedPass $repeatedPass) { @trigger_error(sprintf('The "%s()" method is deprecated since Symfony 4.2.', __METHOD__), \E_USER_DEPRECATED); } /** * Processes the ContainerBuilder to remove unused definitions. */ public function process(ContainerBuilder $container) { try { $this->enableExpressionProcessing(); $this->container = $container; $connectedIds = []; $aliases = $container->getAliases(); foreach ($aliases as $id => $alias) { if ($alias->isPublic()) { $this->connectedIds[] = (string) $aliases[$id]; } } foreach ($container->getDefinitions() as $id => $definition) { if ($definition->isPublic()) { $connectedIds[$id] = true; $this->processValue($definition); } } while ($this->connectedIds) { $ids = $this->connectedIds; $this->connectedIds = []; foreach ($ids as $id) { if (!isset($connectedIds[$id]) && $container->hasDefinition($id)) { $connectedIds[$id] = true; $this->processValue($container->getDefinition($id)); } } } foreach ($container->getDefinitions() as $id => $definition) { if (!isset($connectedIds[$id])) { $container->removeDefinition($id); $container->resolveEnvPlaceholders(!$definition->hasErrors() ? serialize($definition) : $definition); $container->log($this, sprintf('Removed service "%s"; reason: unused.', $id)); } } } finally { $this->container = null; $this->connectedIds = []; } } /** * {@inheritdoc} */ protected function processValue($value, $isRoot = false) { if (!$value instanceof Reference) { return parent::processValue($value, $isRoot); } if (ContainerBuilder::IGNORE_ON_UNINITIALIZED_REFERENCE !== $value->getInvalidBehavior()) { $this->connectedIds[] = (string) $value; } return $value; } }