Mercurial > hg > isophonics-drupal-site
annotate vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/Interface_.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 5fb285c0d0e3 |
children |
rev | line source |
---|---|
Chris@13 | 1 <?php declare(strict_types=1); |
Chris@0 | 2 |
Chris@0 | 3 namespace PhpParser\Node\Stmt; |
Chris@0 | 4 |
Chris@0 | 5 use PhpParser\Node; |
Chris@0 | 6 |
Chris@0 | 7 class Interface_ extends ClassLike |
Chris@0 | 8 { |
Chris@0 | 9 /** @var Node\Name[] Extended interfaces */ |
Chris@0 | 10 public $extends; |
Chris@0 | 11 |
Chris@0 | 12 /** |
Chris@0 | 13 * Constructs a class node. |
Chris@0 | 14 * |
Chris@13 | 15 * @param string|Node\Identifier $name Name |
Chris@0 | 16 * @param array $subNodes Array of the following optional subnodes: |
Chris@0 | 17 * 'extends' => array(): Name of extended interfaces |
Chris@0 | 18 * 'stmts' => array(): Statements |
Chris@0 | 19 * @param array $attributes Additional attributes |
Chris@0 | 20 */ |
Chris@13 | 21 public function __construct($name, array $subNodes = [], array $attributes = []) { |
Chris@0 | 22 parent::__construct($attributes); |
Chris@13 | 23 $this->name = \is_string($name) ? new Node\Identifier($name) : $name; |
Chris@13 | 24 $this->extends = $subNodes['extends'] ?? []; |
Chris@13 | 25 $this->stmts = $subNodes['stmts'] ?? []; |
Chris@0 | 26 } |
Chris@0 | 27 |
Chris@13 | 28 public function getSubNodeNames() : array { |
Chris@13 | 29 return ['name', 'extends', 'stmts']; |
Chris@13 | 30 } |
Chris@13 | 31 |
Chris@13 | 32 public function getType() : string { |
Chris@13 | 33 return 'Stmt_Interface'; |
Chris@0 | 34 } |
Chris@0 | 35 } |