Вход Регистрация
Файл: vendor/symfony/http-kernel/Controller/TraceableArgumentResolver.php
Строк: 61
<?php

/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace SymfonyComponentHttpKernelController;

use 
SymfonyComponentHttpFoundationRequest;
use 
SymfonyComponentStopwatchStopwatch;

/**
 * @author Fabien Potencier <fabien@symfony.com>
 */
class TraceableArgumentResolver implements ArgumentResolverInterface
{
    private 
ArgumentResolverInterface $resolver;
    private 
Stopwatch $stopwatch;

    public function 
__construct(ArgumentResolverInterface $resolverStopwatch $stopwatch)
    {
        
$this->resolver $resolver;
        
$this->stopwatch $stopwatch;
    }

    
/**
     * @param ReflectionFunctionAbstract|null $reflector
     */
    
public function getArguments(Request $request, callable $controller/* , ReflectionFunctionAbstract $reflector = null */): array
    {
        
$reflector func_num_args() ? func_get_arg(2) : null;
        
$e $this->stopwatch->start('controller.get_arguments');

        try {
            return 
$this->resolver->getArguments($request$controller$reflector);
        } finally {
            
$e->stop();
        }
    }
}
Онлайн: 1
Реклама