PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` */ class Name { /** * @var string[] Name components */ private $parts; /** * Set name at construct * * @param string $name */ public function __construct($name) { $this->parts = explode('\\', $name); } /** * Get as string * * @return string */ public function __tostring() { return implode('\\', $this->parts); } /** * Get PhpParser node for this name * * @return PhpParserName */ public function createNode() { return new PhpParserName($this->parts); } /** * Checks if a class, interface, trait or function has been defined * * @param boolean $autoload Whether to call __autoload or not by default * @return boolean */ public function isDefined($autoload = true) { return class_exists((string)$this, $autoload) || interface_exists((string)$this, $autoload) || trait_exists((string)$this, $autoload) || function_exists((string)$this); } /** * Remove leading backslashes * * @return string */ public function normalize() { return preg_replace('/^\\\*/', '', (string)$this); } /** * Remove leading backslashes and convert case * * @return string */ public function keyize() { return strtolower($this->normalize()); } /** * Get trailing name component * * @return Name */ public function getBasename() { return new Name((string)end($this->parts)); } /** * Get parent namespace name component * * @return Name */ public function getNamespace() { $parts = $this->parts; array_pop($parts); return new Name(implode('\\', $parts)); } /** * Check if name is in namespace * * @param Name $namespace * @return bool */ public function inNamespace(Name $namespace) { return !!preg_match( '/^'.preg_quote($namespace->keyize()).'/', $this->getNamespace()->keyize() ); } }