PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4.6
Booking for Appointments and Events Calendar – Amelia v2.4.6
2.4.7 2.4.6 2.4.5 2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / vendor / nikic / fast-route / src / functions.php
ameliabooking / vendor / nikic / fast-route / src Last commit date
DataGenerator 7 years ago Dispatcher 7 years ago RouteParser 7 years ago BadRouteException.php 7 years ago DataGenerator.php 7 years ago Dispatcher.php 7 years ago Route.php 7 years ago RouteCollector.php 7 years ago RouteParser.php 7 years ago bootstrap.php 7 years ago functions.php 7 years ago
functions.php
75 lines
1 <?php
2
3 namespace FastRoute;
4
5 if (!function_exists('FastRoute\simpleDispatcher')) {
6 /**
7 * @param callable $routeDefinitionCallback
8 * @param array $options
9 *
10 * @return Dispatcher
11 */
12 function simpleDispatcher(callable $routeDefinitionCallback, array $options = [])
13 {
14 $options += [
15 'routeParser' => 'FastRoute\\RouteParser\\Std',
16 'dataGenerator' => 'FastRoute\\DataGenerator\\GroupCountBased',
17 'dispatcher' => 'FastRoute\\Dispatcher\\GroupCountBased',
18 'routeCollector' => 'FastRoute\\RouteCollector',
19 ];
20
21 /** @var RouteCollector $routeCollector */
22 $routeCollector = new $options['routeCollector'](
23 new $options['routeParser'], new $options['dataGenerator']
24 );
25 $routeDefinitionCallback($routeCollector);
26
27 return new $options['dispatcher']($routeCollector->getData());
28 }
29
30 /**
31 * @param callable $routeDefinitionCallback
32 * @param array $options
33 *
34 * @return Dispatcher
35 */
36 function cachedDispatcher(callable $routeDefinitionCallback, array $options = [])
37 {
38 $options += [
39 'routeParser' => 'FastRoute\\RouteParser\\Std',
40 'dataGenerator' => 'FastRoute\\DataGenerator\\GroupCountBased',
41 'dispatcher' => 'FastRoute\\Dispatcher\\GroupCountBased',
42 'routeCollector' => 'FastRoute\\RouteCollector',
43 'cacheDisabled' => false,
44 ];
45
46 if (!isset($options['cacheFile'])) {
47 throw new \LogicException('Must specify "cacheFile" option');
48 }
49
50 if (!$options['cacheDisabled'] && file_exists($options['cacheFile'])) {
51 $dispatchData = require $options['cacheFile'];
52 if (!is_array($dispatchData)) {
53 throw new \RuntimeException('Invalid cache file "' . $options['cacheFile'] . '"');
54 }
55 return new $options['dispatcher']($dispatchData);
56 }
57
58 $routeCollector = new $options['routeCollector'](
59 new $options['routeParser'], new $options['dataGenerator']
60 );
61 $routeDefinitionCallback($routeCollector);
62
63 /** @var RouteCollector $routeCollector */
64 $dispatchData = $routeCollector->getData();
65 if (!$options['cacheDisabled']) {
66 file_put_contents(
67 $options['cacheFile'],
68 '<?php return ' . var_export($dispatchData, true) . ';'
69 );
70 }
71
72 return new $options['dispatcher']($dispatchData);
73 }
74 }
75