rector/vendor/rector/rector-nette-to-symfony/src/NodeFactory/BuildFormClassMethodFactory.php
Tomas Votruba 907c0dcefa Updated Rector to commit 2d9fc68b65
2d9fc68b65 Bump Rector deps (#38)
2021-05-15 08:37:15 +00:00

30 lines
1.1 KiB
PHP

<?php
declare (strict_types=1);
namespace Rector\NetteToSymfony\NodeFactory;
use PhpParser\Node\Expr\Variable;
use PhpParser\Node\Identifier;
use PhpParser\Node\Name\FullyQualified;
use PhpParser\Node\Param;
use PhpParser\Node\Stmt\ClassMethod;
use Rector\Core\PhpParser\Node\NodeFactory;
final class BuildFormClassMethodFactory
{
/**
* @var \Rector\Core\PhpParser\Node\NodeFactory
*/
private $nodeFactory;
public function __construct(\Rector\Core\PhpParser\Node\NodeFactory $nodeFactory)
{
$this->nodeFactory = $nodeFactory;
}
public function create(\PhpParser\Node\Expr\Variable $formBuilderVariable) : \PhpParser\Node\Stmt\ClassMethod
{
$buildFormClassMethod = $this->nodeFactory->createPublicMethod('buildForm');
$buildFormClassMethod->params[] = new \PhpParser\Node\Param($formBuilderVariable, null, new \PhpParser\Node\Name\FullyQualified('Symfony\\Component\\Form\\FormBuilderInterface'));
$buildFormClassMethod->params[] = new \PhpParser\Node\Param(new \PhpParser\Node\Expr\Variable('options'), null, new \PhpParser\Node\Identifier('array'));
return $buildFormClassMethod;
}
}