private function typeByReturnType($class_name, $name)
{
try {
if ($class_name) {
$reflection = new \ReflectionClass($class_name);
$reflection = $reflection->getMethod($name);
} else {
$reflection = new \ReflectionFunction($name);
}
$type = (string) $reflection->getReturnType();
if (strtolower($type) == 'self') {
$type = $class_name;
}
return $type;
} catch (\ReflectionException $e) {
$this->logger->debug((string) $e);
}
}