final class Reflection in Drupal 10
Same name and namespace in other branches
- 9 core/lib/Drupal/Component/Utility/Reflection.php \Drupal\Component\Utility\Reflection
Provides helper methods for reflection.
Hierarchy
- class \Drupal\Component\Utility\Reflection
Expanded class hierarchy of Reflection
3 files declare their use of Reflection
- EntityResolverManager.php in core/
lib/ Drupal/ Core/ Entity/ EntityResolverManager.php - ReflectionTest.php in core/
tests/ Drupal/ Tests/ Component/ Utility/ ReflectionTest.php - TaggedHandlersPass.php in core/
lib/ Drupal/ Core/ DependencyInjection/ Compiler/ TaggedHandlersPass.php
File
- core/
lib/ Drupal/ Component/ Utility/ Reflection.php, line 8
Namespace
Drupal\Component\UtilityView source
final class Reflection {
/**
* Gets the parameter's class name.
*
* @param \ReflectionParameter $parameter
* The parameter.
*
* @return string|null
* The parameter's class name or NULL if the parameter is not a class.
*/
public static function getParameterClassName(\ReflectionParameter $parameter) : ?string {
$name = NULL;
if ($parameter
->hasType() && !$parameter
->getType()
->isBuiltin()) {
$name = $parameter
->getType()
->getName();
$lc_name = strtolower($name);
switch ($lc_name) {
case 'self':
return $parameter
->getDeclaringClass()
->getName();
case 'parent':
return ($parent = $parameter
->getDeclaringClass()
->getParentClass()) ? $parent->name : NULL;
}
}
return $name;
}
}