php-parser/lib/PhpParser/Node/Identifier.php
Nikita Popov d97cc3d96e Add toLowerString() method to Name and Identifier
Avoids patterns like strtolower((string) $name) when using
strict types.
2017-08-15 22:49:16 +02:00

48 lines
1.0 KiB
PHP

<?php
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;
/**
* Constructs an identifier node.
*
* @param string $name Identifier as string
* @param array $attributes Additional attributes
*/
public function __construct(string $name, array $attributes = []) {
parent::__construct($attributes);
$this->name = $name;
}
public function getSubNodeNames() : array {
return ['name'];
}
/**
* Get lowercased identifier as string.
*
* @return string Lowercased identifier as string
*/
public function toLowerString() : string {
return strtolower($this->name);
}
/**
* Get identifier as string.
*
* @return string Identifier as string
*/
public function __toString() : string {
return $this->name;
}
}