You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
649 B
25 lines
649 B
<?php
|
|
|
|
namespace FastRoute\DataGenerator;
|
|
|
|
class MarkBased extends RegexBasedAbstract {
|
|
protected function getApproxChunkSize() {
|
|
return 30;
|
|
}
|
|
|
|
protected function processChunk($regexToRoutesMap) {
|
|
$routeMap = [];
|
|
$regexes = [];
|
|
$markName = 'a';
|
|
foreach ($regexToRoutesMap as $regex => $route) {
|
|
$regexes[] = $regex . '(*MARK:' . $markName . ')';
|
|
$routeMap[$markName] = [$route->handler, $route->variables];
|
|
|
|
++$markName;
|
|
}
|
|
|
|
$regex = '~^(?|' . implode('|', $regexes) . ')$~';
|
|
return ['regex' => $regex, 'routeMap' => $routeMap];
|
|
}
|
|
}
|
|
|