From f4648689daa66cd4c00a32a138654e0c4da85776 Mon Sep 17 00:00:00 2001 From: Philip Nelson Date: Mon, 11 Dec 2017 20:07:50 +1100 Subject: [PATCH] ensure we get a class declaration --- src/DefinitionResolver.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/DefinitionResolver.php b/src/DefinitionResolver.php index 5ffa904..2fe65a7 100644 --- a/src/DefinitionResolver.php +++ b/src/DefinitionResolver.php @@ -1065,8 +1065,10 @@ class DefinitionResolver return $this->typeResolver->resolve($node->returnType->getText($node->getFileContents())); } elseif ($node->returnType->getResolvedName() === 'self') { $classNode = $node->getFirstAncestor(Node\Statement\ClassDeclaration::class); - $classFqn = (string)$classNode->getNamespacedName(); - return new Types\Object_(new Fqsen('\\' . $classFqn)); + if ($classNode) { + $classFqn = (string)$classNode->getNamespacedName(); + return new Types\Object_(new Fqsen('\\' . $classFqn)); + } } return new Types\Object_(new Fqsen('\\' . (string)$node->returnType->getResolvedName())); }