|  | 
| 41 | 41 | use PHPStan\PhpDocParser\Ast\Type\ArrayTypeNode; | 
| 42 | 42 | use PHPStan\PhpDocParser\Ast\Type\CallableTypeNode; | 
| 43 | 43 | use PHPStan\PhpDocParser\Ast\Type\CallableTypeParameterNode; | 
| 44 |  | -use PHPStan\PhpDocParser\Ast\Type\CallableTypeTemplateNode; | 
| 45 | 44 | use PHPStan\PhpDocParser\Ast\Type\ConditionalTypeForParameterNode; | 
| 46 | 45 | use PHPStan\PhpDocParser\Ast\Type\ConditionalTypeNode; | 
| 47 | 46 | use PHPStan\PhpDocParser\Ast\Type\ConstTypeNode; | 
| @@ -98,7 +97,7 @@ final class Printer | 
| 98 | 97 | 		ArrayShapeNode::class . '->items' => ', ', | 
| 99 | 98 | 		ObjectShapeNode::class . '->items' => ', ', | 
| 100 | 99 | 		CallableTypeNode::class . '->parameters' => ', ', | 
| 101 |  | -		CallableTypeNode::class . '->templates' => ', ', | 
|  | 100 | +		CallableTypeNode::class . '->templateTypes' => ', ', | 
| 102 | 101 | 		GenericTypeNode::class . '->genericTypes' => ', ', | 
| 103 | 102 | 		ConstExprArrayNode::class . '->items' => ', ', | 
| 104 | 103 | 		MethodTagValueNode::class . '->parameters' => ', ', | 
| @@ -226,11 +225,6 @@ function (PhpDocChildNode $child): string { | 
| 226 | 225 | 			$isOptional = $node->isOptional ? '=' : ''; | 
| 227 | 226 | 			return trim("{$type}{$isReference}{$isVariadic}{$node->parameterName}") . $isOptional; | 
| 228 | 227 | 		} | 
| 229 |  | -		if ($node instanceof CallableTypeTemplateNode) { | 
| 230 |  | -			$identifier = $this->printType($node->identifier); | 
| 231 |  | -			$bound = $node->bound !== null ? ' of ' . $this->printType($node->bound) : ''; | 
| 232 |  | -			return "{$identifier}{$bound}"; | 
| 233 |  | -		} | 
| 234 | 228 | 		if ($node instanceof DoctrineAnnotation) { | 
| 235 | 229 | 			return (string) $node; | 
| 236 | 230 | 		} | 
| @@ -377,10 +371,10 @@ private function printType(TypeNode $node): string | 
| 377 | 371 | 			} else { | 
| 378 | 372 | 				$returnType = $this->printType($node->returnType); | 
| 379 | 373 | 			} | 
| 380 |  | -			$template = $node->templates !== [] | 
| 381 |  | -				? '<' . implode(', ', array_map(function (CallableTypeTemplateNode $templateNode): string { | 
|  | 374 | +			$template = $node->templateTypes !== [] | 
|  | 375 | +				? '<' . implode(', ', array_map(function (TemplateTagValueNode $templateNode): string { | 
| 382 | 376 | 					return $this->print($templateNode); | 
| 383 |  | -				}, $node->templates)) . '>' | 
|  | 377 | +				}, $node->templateTypes)) . '>' | 
| 384 | 378 | 				: ''; | 
| 385 | 379 | 			$parameters = implode(', ', array_map(function (CallableTypeParameterNode $parameterNode): string { | 
| 386 | 380 | 				return $this->print($parameterNode); | 
|  | 
0 commit comments