diff --git a/src/Reflection/Doctrine/EntityRepositoryClassReflectionExtension.php b/src/Reflection/Doctrine/EntityRepositoryClassReflectionExtension.php index 52a8dcff..bc8cb249 100644 --- a/src/Reflection/Doctrine/EntityRepositoryClassReflectionExtension.php +++ b/src/Reflection/Doctrine/EntityRepositoryClassReflectionExtension.php @@ -10,7 +10,6 @@ use PHPStan\Type\ArrayType; use PHPStan\Type\Doctrine\ObjectMetadataResolver; use PHPStan\Type\IntegerType; -use PHPStan\Type\NullType; use PHPStan\Type\TypeCombinator; use function lcfirst; use function str_replace; @@ -88,10 +87,7 @@ public function getMethod(ClassReflection $classReflection, string $methodName): { $repositoryAncesor = $classReflection->getAncestorWithClassName(ObjectRepository::class); if ($repositoryAncesor === null) { - $repositoryAncesor = $classReflection->getAncestorWithClassName(ObjectRepository::class); - if ($repositoryAncesor === null) { - throw new ShouldNotHappenException(); - } + throw new ShouldNotHappenException(); } $templateTypeMap = $repositoryAncesor->getActiveTemplateTypeMap(); @@ -107,7 +103,7 @@ public function getMethod(ClassReflection $classReflection, string $methodName): } elseif ( strpos($methodName, 'findOneBy') === 0 ) { - $returnType = TypeCombinator::union($entityClassType, new NullType()); + $returnType = TypeCombinator::addNull($entityClassType); } elseif ( strpos($methodName, 'countBy') === 0 ) {