1: <?php declare(strict_types = 1);
2:
3: namespace PHPStan\PhpDocParser\Ast\PhpDoc;
4:
5: use PHPStan\PhpDocParser\Ast\NodeAttributes;
6: use PHPStan\PhpDocParser\Ast\Type\TypeNode;
7: use function trim;
8:
9: class ParamClosureThisTagValueNode implements PhpDocTagValueNode
10: {
11:
12: use NodeAttributes;
13:
14: public TypeNode $type;
15:
16: public string $parameterName;
17:
18: /** @var string (may be empty) */
19: public string $description;
20:
21: public function __construct(TypeNode $type, string $parameterName, string $description)
22: {
23: $this->type = $type;
24: $this->parameterName = $parameterName;
25: $this->description = $description;
26: }
27:
28: public function __toString(): string
29: {
30: return trim("{$this->type} {$this->parameterName} {$this->description}");
31: }
32:
33: }
34: