0 follower

Final Class Yiisoft\ErrorHandler\RendererProvider\ClosureRendererProvider

InheritanceYiisoft\ErrorHandler\RendererProvider\ClosureRendererProvider
ImplementsYiisoft\ErrorHandler\RendererProvider\RendererProviderInterface

Provides a renderer based on a closure that returns a ThrowableRendererInterface or its class name.

Psalm Types

Name Value
TClosure callable

Method Details

Hide inherited methods

__construct() public method

public mixed __construct ( Closure $closure, \Psr\Container\ContainerInterface $container )
$closure Closure
$container \Psr\Container\ContainerInterface

                public function __construct(
    private readonly Closure $closure,
    private readonly ContainerInterface $container,
) {
}

            
get() public method

public Yiisoft\ErrorHandler\ThrowableRendererInterface|null get ( \Psr\Http\Message\ServerRequestInterface $request )
$request \Psr\Http\Message\ServerRequestInterface

                public function get(ServerRequestInterface $request): ?ThrowableRendererInterface
{
    $result = ($this->closure)($request);
    if (is_string($result)) {
        /** @var ThrowableRendererInterface */
        return $this->container->get($result);
    }
    return $result;
}