$this->outputDir =
$outputDir;
} /**
* @return \Closure that will return the root config class
*/
public function build(ConfigurationInterface
$configuration): \Closure
{ $this->classes =
[];
$rootNode =
$configuration->
getConfigTreeBuilder()->
buildTree();
$rootClass =
new ClassBuilder('Symfony\\Config',
$rootNode->
getName());
$path =
$this->
getFullPath($rootClass);
if (!
is_file($path)) { // Generate the class if the file not exists
$this->classes
[] =
$rootClass;
$this->
buildNode($rootNode,
$rootClass,
$this->
getSubNamespace($rootClass));
$rootClass->
addImplements(ConfigBuilderInterface::
class);
$rootClass->
addMethod('getExtensionAlias', '
public function NAME(): string
{
return \'ALIAS\';
}',