File manager - Edit - /var/www/payraty/helpdesk/vendor/rector/rector/vendor/rector/rector-doctrine/src/NodeAnalyzer/AssignPropertyFetchAnalyzer.php
Back
<?php declare (strict_types=1); namespace Rector\Doctrine\NodeAnalyzer; use PhpParser\Node\Expr\Assign; use PhpParser\Node\Expr\PropertyFetch; use PhpParser\Node\Stmt\ClassMethod; use Rector\Core\PhpParser\Node\BetterNodeFinder; use Rector\Doctrine\ValueObject\AssignToPropertyFetch; use Rector\NodeNameResolver\NodeNameResolver; final class AssignPropertyFetchAnalyzer { /** * @readonly * @var \Rector\Core\PhpParser\Node\BetterNodeFinder */ private $betterNodeFinder; /** * @readonly * @var \Rector\NodeNameResolver\NodeNameResolver */ private $nodeNameResolver; public function __construct(BetterNodeFinder $betterNodeFinder, NodeNameResolver $nodeNameResolver) { $this->betterNodeFinder = $betterNodeFinder; $this->nodeNameResolver = $nodeNameResolver; } /** * @return AssignToPropertyFetch[] */ public function resolveAssignToPropertyFetch(ClassMethod $classMethod) : array { /** @var Assign[] $assigns */ $assigns = $this->betterNodeFinder->findInstanceOf((array) $classMethod->stmts, Assign::class); $assignsToPropertyFetch = []; foreach ($assigns as $assign) { if (!$assign->var instanceof PropertyFetch) { continue; } $propertyFetch = $assign->var; /** @var string $propertyName */ $propertyName = $this->nodeNameResolver->getName($propertyFetch); $assignsToPropertyFetch[] = new AssignToPropertyFetch($assign, $propertyFetch, $propertyName); } return $assignsToPropertyFetch; } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.30 | Generation time: 0 |
proxy
|
phpinfo
|
Settings