mirror of
https://github.com/barryvdh/laravel-ide-helper.git
synced 2026-08-18 10:07:12 +00:00
Fix Relative class names are not converted to fully-qualified class names (FQCNs) (#1005)
* Fix https://github.com/barryvdh/laravel-ide-helper/issues/627 * Fix codestyle * Init * composer fix-style * Actualize * Fix * normalize composer.json * Fix * composer fix-style * Replace NamespaceUses with UsesResolver * Add UsesResolver tests * Add MethodTest::testClassAliases * Fix code style * Get rid of laravel support helpers * Make class UsesResolver stateless, update tests for it * composer fix-style Co-authored-by: Andrii Savluk <[email protected]> Co-authored-by: laravel-ide-helper <[email protected]> Co-authored-by: SavKS <[email protected]> Co-authored-by: Taras Fomin <[email protected]>
This commit is contained in:
co-authored by
Andrii Savluk
laravel-ide-helper
SavKS
Taras Fomin
parent
6c4dcd9049
commit
c5e18beff1
+6
-3
@@ -38,6 +38,7 @@ class Method
|
||||
protected $real_name;
|
||||
protected $return = null;
|
||||
protected $root;
|
||||
protected $classAliases;
|
||||
|
||||
/**
|
||||
* @param \ReflectionMethod|\ReflectionFunctionAbstract $method
|
||||
@@ -45,11 +46,13 @@ class Method
|
||||
* @param \ReflectionClass $class
|
||||
* @param string|null $methodName
|
||||
* @param array $interfaces
|
||||
* @param array $classAliases
|
||||
*/
|
||||
public function __construct($method, $alias, $class, $methodName = null, $interfaces = [])
|
||||
public function __construct($method, $alias, $class, $methodName = null, $interfaces = [], array $classAliases = [])
|
||||
{
|
||||
$this->method = $method;
|
||||
$this->interfaces = $interfaces;
|
||||
$this->classAliases = $classAliases;
|
||||
$this->name = $methodName ?: $method->name;
|
||||
$this->real_name = $method->isClosure() ? $this->name : $method->name;
|
||||
$this->initClassDefinedProperties($method, $class);
|
||||
@@ -80,7 +83,7 @@ class Method
|
||||
*/
|
||||
protected function initPhpDoc($method)
|
||||
{
|
||||
$this->phpdoc = new DocBlock($method, new Context($this->namespace));
|
||||
$this->phpdoc = new DocBlock($method, new Context($this->namespace, $this->classAliases));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -363,7 +366,7 @@ class Method
|
||||
}
|
||||
if ($method) {
|
||||
$namespace = $method->getDeclaringClass()->getNamespaceName();
|
||||
$phpdoc = new DocBlock($method, new Context($namespace));
|
||||
$phpdoc = new DocBlock($method, new Context($namespace, $this->classAliases));
|
||||
|
||||
if (strpos($phpdoc->getText(), '{@inheritdoc}') !== false) {
|
||||
//Not at the end yet, try another parent/interface..
|
||||
|
||||
Reference in New Issue
Block a user