1: <?php declare(strict_types = 1);
2:
3: namespace PHPStan\Node\Expr;
4:
5: use Override;
6: use PhpParser\Node\Expr;
7: use PHPStan\Node\VirtualNode;
8: use PHPStan\Type\Type;
9:
10: /**
11: * @api
12: */
13: final class TypeExpr extends Expr implements VirtualNode
14: {
15:
16: /** @api */
17: public function __construct(private Type $exprType)
18: {
19: parent::__construct();
20: }
21:
22: public function getExprType(): Type
23: {
24: return $this->exprType;
25: }
26:
27: #[Override]
28: public function getType(): string
29: {
30: return 'PHPStan_Node_TypeExpr';
31: }
32:
33: /**
34: * @return string[]
35: */
36: #[Override]
37: public function getSubNodeNames(): array
38: {
39: return [];
40: }
41:
42: }
43: