1: <?php declare(strict_types = 1);
2:
3: namespace PHPStan\Node;
4:
5: use PhpParser\Node;
6: use PhpParser\NodeAbstract;
7: use PHPStan\Analyser\StatementResult;
8:
9: /**
10: * @api
11: */
12: final class ExecutionEndNode extends NodeAbstract implements VirtualNode
13: {
14:
15: public function __construct(
16: private Node\Stmt $node,
17: private StatementResult $statementResult,
18: private bool $hasNativeReturnTypehint,
19: )
20: {
21: parent::__construct($node->getAttributes());
22: }
23:
24: public function getNode(): Node\Stmt
25: {
26: return $this->node;
27: }
28:
29: public function getStatementResult(): StatementResult
30: {
31: return $this->statementResult;
32: }
33:
34: public function hasNativeReturnTypehint(): bool
35: {
36: return $this->hasNativeReturnTypehint;
37: }
38:
39: public function getType(): string
40: {
41: return 'PHPStan_Node_ExecutionEndNode';
42: }
43:
44: /**
45: * @return string[]
46: */
47: public function getSubNodeNames(): array
48: {
49: return [];
50: }
51:
52: }
53: