Mercurial > hg > isophonics-drupal-site
diff vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php @ 13:5fb285c0d0e3
Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've
been lucky to get away with this so far, as we don't support self-registration
which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5
was vulnerable to.
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:33:26 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line diff
--- a/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php Fri Feb 23 15:52:07 2018 +0000 +++ b/vendor/nikic/php-parser/lib/PhpParser/Node/Stmt/UseUse.php Mon Apr 23 09:33:26 2018 +0100 @@ -1,8 +1,9 @@ -<?php +<?php declare(strict_types=1); namespace PhpParser\Node\Stmt; use PhpParser\Node; +use PhpParser\Node\Identifier; class UseUse extends Node\Stmt { @@ -10,29 +11,42 @@ public $type; /** @var Node\Name Namespace, class, function or constant to alias */ public $name; - /** @var string Alias */ + /** @var Identifier|null Alias */ public $alias; /** * Constructs an alias (use) node. * - * @param Node\Name $name Namespace/Class to alias - * @param null|string $alias Alias - * @param int $type Type of the use element (for mixed group use declarations only) - * @param array $attributes Additional attributes + * @param Node\Name $name Namespace/Class to alias + * @param null|string|Identifier $alias Alias + * @param int $type Type of the use element (for mixed group use only) + * @param array $attributes Additional attributes */ - public function __construct(Node\Name $name, $alias = null, $type = Use_::TYPE_UNKNOWN, array $attributes = array()) { - if (null === $alias) { - $alias = $name->getLast(); - } - + public function __construct(Node\Name $name, $alias = null, int $type = Use_::TYPE_UNKNOWN, array $attributes = []) { parent::__construct($attributes); $this->type = $type; $this->name = $name; - $this->alias = $alias; + $this->alias = \is_string($alias) ? new Identifier($alias) : $alias; } - public function getSubNodeNames() { - return array('type', 'name', 'alias'); + public function getSubNodeNames() : array { + return ['type', 'name', 'alias']; + } + + /** + * Get alias. If not explicitly given this is the last component of the used name. + * + * @return Identifier + */ + public function getAlias() : Identifier { + if (null !== $this->alias) { + return $this->alias; + } + + return new Identifier($this->name->getLast()); + } + + public function getType() : string { + return 'Stmt_UseUse'; } }