/** * Constructs an alias (use) node. * * @param Node\Name $name Namespace/Class to alias * @param null|string $alias Alias * @param array $attributes Additional attributes */ public function __construct(Node\Name $name, $alias = null, array $attributes = array()) { if (null === $alias) { $alias = $name->getLast(); } if ('self' == $alias || 'parent' == $alias) { throw new Error(sprintf('Cannot use %s as %s because \'%2$s\' is a special class name', $name, $alias)); } parent::__construct(array('name' => $name, 'alias' => $alias), $attributes); }
/** * 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 */ public function __construct(Node\Name $name, $alias = null, $type = Use_::TYPE_UNKNOWN, array $attributes = array()) { if (null === $alias) { $alias = $name->getLast(); } parent::__construct($attributes); $this->type = $type; $this->name = $name; $this->alias = $alias; }
/** * Constructs an alias (use) node. * * @param Node\Name $name Namespace/Class to alias * @param null|string $alias Alias * @param array $attributes Additional attributes */ public function __construct(Node\Name $name, $alias = null, array $attributes = array()) { if (null === $alias) { $alias = $name->getLast(); } if ('self' == strtolower($alias) || 'parent' == strtolower($alias)) { throw new Error(sprintf('Cannot use %s as %s because \'%2$s\' is a special class name', $name, $alias)); } parent::__construct(null, $attributes); $this->name = $name; $this->alias = $alias; }