1: <?php declare(strict_types=1);
2:
3: namespace PhpParser\Node\Stmt;
4:
5: use PhpParser\Node;
6:
7: class TryCatch extends Node\Stmt
8: {
9: /** @var Node\Stmt[] Statements */
10: public $stmts;
11: /** @var Catch_[] Catches */
12: public $catches;
13: /** @var null|Finally_ Optional finally node */
14: public $finally;
15:
16: /**
17: * Constructs a try catch node.
18: *
19: * @param Node\Stmt[] $stmts Statements
20: * @param Catch_[] $catches Catches
21: * @param null|Finally_ $finally Optional finally node
22: * @param array $attributes Additional attributes
23: */
24: public function __construct(array $stmts, array $catches, ?Finally_ $finally = null, array $attributes = []) {
25: $this->attributes = $attributes;
26: $this->stmts = $stmts;
27: $this->catches = $catches;
28: $this->finally = $finally;
29: }
30:
31: public function getSubNodeNames() : array {
32: return ['stmts', 'catches', 'finally'];
33: }
34:
35: public function getType() : string {
36: return 'Stmt_TryCatch';
37: }
38: }
39: