Mercurial > hg > isophonics-drupal-site
diff vendor/psy/psysh/src/Util/Mirror.php @ 16:c2387f117808
Routine composer update
author | Chris Cannam |
---|---|
date | Tue, 10 Jul 2018 15:07:59 +0100 |
parents | 5fb285c0d0e3 |
children | 129ea1e6d783 |
line wrap: on
line diff
--- a/vendor/psy/psysh/src/Util/Mirror.php Thu Apr 26 11:26:54 2018 +0100 +++ b/vendor/psy/psysh/src/Util/Mirror.php Tue Jul 10 15:07:59 2018 +0100 @@ -12,7 +12,8 @@ namespace Psy\Util; use Psy\Exception\RuntimeException; -use Psy\Reflection\ReflectionConstant; +use Psy\Reflection\ReflectionClassConstant; +use Psy\Reflection\ReflectionConstant_; /** * A utility class for getting Reflectors. @@ -43,8 +44,12 @@ */ public static function get($value, $member = null, $filter = 15) { - if ($member === null && is_string($value) && function_exists($value)) { - return new \ReflectionFunction($value); + if ($member === null && is_string($value)) { + if (function_exists($value)) { + return new \ReflectionFunction($value); + } elseif (defined($value) || ReflectionConstant_::isMagicConstant($value)) { + return new ReflectionConstant_($value); + } } $class = self::getClass($value); @@ -52,7 +57,7 @@ if ($member === null) { return $class; } elseif ($filter & self::CONSTANT && $class->hasConstant($member)) { - return new ReflectionConstant($class, $member); + return ReflectionClassConstant::create($value, $member); } elseif ($filter & self::METHOD && $class->hasMethod($member)) { return $class->getMethod($member); } elseif ($filter & self::PROPERTY && $class->hasProperty($member)) { @@ -85,7 +90,7 @@ if (!is_string($value)) { throw new \InvalidArgumentException('Mirror expects an object or class'); - } elseif (!class_exists($value) && !interface_exists($value) && !(function_exists('trait_exists') && trait_exists($value))) { + } elseif (!class_exists($value) && !interface_exists($value) && !trait_exists($value)) { throw new \InvalidArgumentException('Unknown class or function: ' . $value); }