xref: /PHP-Parser/lib/PhpParser/Node/Stmt/Label.php (revision 2d3dd4e2)
1<?php declare(strict_types=1);
2
3namespace PhpParser\Node\Stmt;
4
5use PhpParser\Node\Identifier;
6use PhpParser\Node\Stmt;
7
8class Label extends Stmt {
9    /** @var Identifier Name */
10    public Identifier $name;
11
12    /**
13     * Constructs a label node.
14     *
15     * @param string|Identifier $name Name
16     * @param array<string, mixed> $attributes Additional attributes
17     */
18    public function __construct($name, array $attributes = []) {
19        $this->attributes = $attributes;
20        $this->name = \is_string($name) ? new Identifier($name) : $name;
21    }
22
23    public function getSubNodeNames(): array {
24        return ['name'];
25    }
26
27    public function getType(): string {
28        return 'Stmt_Label';
29    }
30}
31