1: | <?php declare(strict_types = 1); |
2: | |
3: | namespace PHPStan\PhpDoc\Tag; |
4: | |
5: | use PHPStan\Type\Type; |
6: | |
7: | /** |
8: | * @api |
9: | */ |
10: | final class SelfOutTypeTag implements TypedTag |
11: | { |
12: | |
13: | public function __construct(private Type $type) |
14: | { |
15: | } |
16: | |
17: | public function getType(): Type |
18: | { |
19: | return $this->type; |
20: | } |
21: | |
22: | public function withType(Type $type): self |
23: | { |
24: | return new self($type); |
25: | } |
26: | |
27: | } |
28: |