| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | <?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 Symfony\Component\Routing\Loader;use Symfony\Component\Config\Loader\Loader;use Symfony\Component\Routing\RouteCollection;/** * ClosureLoader loads routes from a PHP closure. * * The Closure must return a RouteCollection instance. * * @author Fabien Potencier <fabien@symfony.com> */class ClosureLoader extends Loader{    /**     * Loads a Closure.     *     * @param \Closure    $closure A Closure     * @param string|null $type    The resource type     *     * @return RouteCollection     */    public function load($closure, ?string $type = null)    {        return $closure($this->env);    }    /**     * {@inheritdoc}     */    public function supports($resource, ?string $type = null)    {        return $resource instanceof \Closure && (!$type || 'closure' === $type);    }}
 |