/
githubmirror
/
symfony
Обзор
Документация
Войти
/
githubmirror
/
symfony
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
8.2
src/Symfony/Component/Config/Definition/Configuration.php
48 строк
1 KB
Alexander Schranz
[Config] Define `TreeBuilder` default generic type
05 дек 2025, 10:47
05 дек 2025, 10:47
d21ad61
Код
Авторство
О чём код?
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Config\Definition; use Symfony\Component\Config\Definition\Builder\TreeBuilder; use Symfony\Component\Config\Definition\Configurator\DefinitionConfigurator; use Symfony\Component\Config\Definition\Loader\DefinitionFileLoader; use Symfony\Component\Config\FileLocator; use Symfony\Component\DependencyInjection\ContainerBuilder; /** * @author Yonel Ceruto <yonelceruto@gmail.com> * * @final */ class Configuration implements ConfigurationInterface { public function __construct( private ConfigurableInterface $subject, private ?ContainerBuilder $container, private string $alias, ) { } /** * @return TreeBuilder<'array'> */ public function getConfigTreeBuilder(): TreeBuilder { $treeBuilder = new TreeBuilder($this->alias, 'array'); $file = (new \ReflectionObject($this->subject))->getFileName(); $loader = new DefinitionFileLoader($treeBuilder, new FileLocator(\dirname($file)), $this->container); $configurator = new DefinitionConfigurator($treeBuilder, $loader, $file, $file); $this->subject->configure($configurator); return $treeBuilder; } }