HEX
Server: LiteSpeed
System: Linux l24.yourwebhosting.net 5.14.0-611.54.3.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:31:24 EDT 2026 x86_64
User: turkishi (1582)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //opt/cpanel/ea-wappspector/vendor/php-di/php-di/src/Proxy/NativeProxyFactory.php
<?php

declare(strict_types=1);

namespace DI\Proxy;

use LogicException;

/**
 * Uses PHP 8.4+'s native support for lazy proxies to generate proxy objects.
 *
 * @since  7.1
 * @author Buster Neece <buster@busterneece.com>
 */
class NativeProxyFactory implements ProxyFactoryInterface
{
    /**
     * Creates a new lazy proxy instance of the given class with
     * the given initializer.
     *
     * {@inheritDoc}
     */
    public function createProxy(string $className, \Closure $createFunction) : object
    {
        if (\PHP_VERSION_ID < 80400) {
            throw new LogicException('Lazy loading proxies require PHP 8.4 or higher.');
        }

        $reflector = new \ReflectionClass($className);

        return $reflector->newLazyProxy($createFunction);
    }

    public function generateProxyClass(string $className) : void
    {
        // Noop for this type.
    }
}