mirror of
https://github.com/rectorphp/rector.git
synced 2025-02-25 20:23:49 +01:00
386c97b914
[Naming][Php56] Do not add default value init for renamed variable from param on RenameParamToMatchTypeRector+AddDefaultValueForUndefinedVariableRector (#1716)
44 lines
1.6 KiB
PHP
44 lines
1.6 KiB
PHP
<?php
|
|
|
|
declare (strict_types=1);
|
|
namespace Rector\Caching\FileSystem;
|
|
|
|
use PhpParser\Node;
|
|
use PHPStan\Analyser\MutatingScope;
|
|
use PHPStan\Analyser\NodeScopeResolver;
|
|
use PHPStan\Dependency\DependencyResolver as PHPStanDependencyResolver;
|
|
use RectorPrefix20220124\Symplify\PackageBuilder\Reflection\PrivatesAccessor;
|
|
final class DependencyResolver
|
|
{
|
|
/**
|
|
* @readonly
|
|
* @var \PHPStan\Analyser\NodeScopeResolver
|
|
*/
|
|
private $nodeScopeResolver;
|
|
/**
|
|
* @readonly
|
|
* @var PHPStanDependencyResolver
|
|
*/
|
|
private $phpStanDependencyResolver;
|
|
/**
|
|
* @readonly
|
|
* @var \Symplify\PackageBuilder\Reflection\PrivatesAccessor
|
|
*/
|
|
private $privatesAccessor;
|
|
public function __construct(\PHPStan\Analyser\NodeScopeResolver $nodeScopeResolver, \PHPStan\Dependency\DependencyResolver $phpStanDependencyResolver, \RectorPrefix20220124\Symplify\PackageBuilder\Reflection\PrivatesAccessor $privatesAccessor)
|
|
{
|
|
$this->nodeScopeResolver = $nodeScopeResolver;
|
|
$this->phpStanDependencyResolver = $phpStanDependencyResolver;
|
|
$this->privatesAccessor = $privatesAccessor;
|
|
}
|
|
/**
|
|
* @return string[]
|
|
*/
|
|
public function resolveDependencies(\PhpParser\Node $node, \PHPStan\Analyser\MutatingScope $mutatingScope) : array
|
|
{
|
|
$analysedFileAbsolutesPaths = $this->privatesAccessor->getPrivateProperty($this->nodeScopeResolver, 'analysedFiles');
|
|
$nodeDependencies = $this->phpStanDependencyResolver->resolveDependencies($node, $mutatingScope);
|
|
return $nodeDependencies->getFileDependencies($mutatingScope->getFile(), $analysedFileAbsolutesPaths);
|
|
}
|
|
}
|