for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace Doctrine\ODM\MongoDB\Proxy;
use ProxyManager\Configuration;
use ProxyManager\Inflector\ClassNameInflectorInterface;
use function get_class;
final class ClassNameResolver
{
/** @var ClassNameInflectorInterface|null */
private static $classNameInflector;
private function __construct()
}
/**
* Gets the real class name of a class name that could be a proxy.
*/
public static function getRealClass(string $class) : string
return self::getClassNameInflector()->getUserClassName($class);
* Gets the real class name of an object (even if its a proxy).
public static function getClass(object $object) : string
return self::getRealClass(get_class($object));
private static function getClassNameInflector() : ClassNameInflectorInterface
return self::$classNameInflector
?? self::$classNameInflector = (new Configuration())->getClassNameInflector();