glastree_on_gitea
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
namespace Illuminate\Routing;
|
||||
|
||||
use Illuminate\Container\Container;
|
||||
use Illuminate\Routing\Contracts\CallableDispatcher as CallableDispatcherContract;
|
||||
use ReflectionFunction;
|
||||
|
||||
class CallableDispatcher implements CallableDispatcherContract
|
||||
{
|
||||
use ResolvesRouteDependencies;
|
||||
|
||||
/**
|
||||
* The container instance.
|
||||
*
|
||||
* @var \Illuminate\Container\Container
|
||||
*/
|
||||
protected $container;
|
||||
|
||||
/**
|
||||
* Create a new callable dispatcher instance.
|
||||
*
|
||||
* @param \Illuminate\Container\Container $container
|
||||
*/
|
||||
public function __construct(Container $container)
|
||||
{
|
||||
$this->container = $container;
|
||||
}
|
||||
|
||||
/**
|
||||
* Dispatch a request to a given callable.
|
||||
*
|
||||
* @param \Illuminate\Routing\Route $route
|
||||
* @param callable $callable
|
||||
* @return mixed
|
||||
*/
|
||||
public function dispatch(Route $route, $callable)
|
||||
{
|
||||
return $callable(...array_values($this->resolveParameters($route, $callable)));
|
||||
}
|
||||
|
||||
/**
|
||||
* Resolve the parameters for the callable.
|
||||
*
|
||||
* @param \Illuminate\Routing\Route $route
|
||||
* @param callable $callable
|
||||
* @return array
|
||||
*/
|
||||
protected function resolveParameters(Route $route, $callable)
|
||||
{
|
||||
return $this->resolveMethodDependencies($route->parametersWithoutNulls(), new ReflectionFunction($callable));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user