Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php declare(strict_types=1);namespace PhpParser\Node;use PhpParser\NodeAbstract;/*** Represents a non-namespaced name. Namespaced names are represented using Name nodes.*/class Identifier extends NodeAbstract{/** @var string Identifier as string */public $name;private static $specialClassNames = ['self' => true,'parent' => true,'static' => true,];/*** Constructs an identifier node.** @param string $name Identifier as string* @param array $attributes Additional attributes*/public function __construct(string $name, array $attributes = []) {$this->attributes = $attributes;$this->name = $name;}public function getSubNodeNames() : array {return ['name'];}/*** Get identifier as string.** @return string Identifier as string.*/public function toString() : string {return $this->name;}/*** Get lowercased identifier as string.** @return string Lowercased identifier as string*/public function toLowerString() : string {return strtolower($this->name);}/*** Checks whether the identifier is a special class name (self, parent or static).** @return bool Whether identifier is a special class name*/public function isSpecialClassName() : bool {return isset(self::$specialClassNames[strtolower($this->name)]);}/*** Get identifier as string.** @return string Identifier as string*/public function __toString() : string {return $this->name;}public function getType() : string {return 'Identifier';}}