From d9b890db85c568ad226808e6e8a6ffdd5bea40c8 Mon Sep 17 00:00:00 2001 From: TomasVotruba Date: Wed, 18 Dec 2019 14:06:21 +0100 Subject: [PATCH] add intersection type support to StaticTypeMapper --- packages/NodeTypeResolver/src/StaticTypeMapper.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/NodeTypeResolver/src/StaticTypeMapper.php b/packages/NodeTypeResolver/src/StaticTypeMapper.php index d9eb2f25c29a..8915477f4111 100644 --- a/packages/NodeTypeResolver/src/StaticTypeMapper.php +++ b/packages/NodeTypeResolver/src/StaticTypeMapper.php @@ -21,6 +21,7 @@ use PHPStan\PhpDocParser\Ast\Type\ArrayTypeNode; use PHPStan\PhpDocParser\Ast\Type\GenericTypeNode; use PHPStan\PhpDocParser\Ast\Type\IdentifierTypeNode; +use PHPStan\PhpDocParser\Ast\Type\IntersectionTypeNode; use PHPStan\PhpDocParser\Ast\Type\ThisTypeNode; use PHPStan\PhpDocParser\Ast\Type\TypeNode; use PHPStan\PhpDocParser\Ast\Type\UnionTypeNode; @@ -600,7 +601,7 @@ public function mapPHPStanPhpDocTypeNodeToPHPStanType(TypeNode $typeNode, Node $ return new ArrayType(new MixedType(), $nestedType); } - if ($typeNode instanceof UnionTypeNode) { + if ($typeNode instanceof UnionTypeNode || $typeNode instanceof IntersectionTypeNode) { $unionedTypes = []; foreach ($typeNode->types as $unionedTypeNode) { $unionedTypes[] = $this->mapPHPStanPhpDocTypeNodeToPHPStanType($unionedTypeNode, $node);