, dynamic: array}> $routes #* @param array $namedRoutes */ public function __construct( private array $routes, private array $namedRoutes = [] ) { } public function getStatic(Method $method): array { return $this->routes[$method->value]['static'] ?? []; } public function getDynamic(Method $method): array { return $this->routes[$method->value]['dynamic'] ?? []; } public function has(Method $method): bool { return isset($this->routes[$method->value]); } public function getByMethod(Method $method): array { return ($this->routes[$method->value]['dynamic'] + $this->routes[$method->value]['static']) ?? []; } public function getByName(string $name): ?Route { return $this->namedRoutes[$name] ?? null; } /** * Gibt alle Named Routes zurück * * @return Generator */ public function getAllNamedRoutes(): Generator { foreach ($this->namedRoutes as $name => $route) { yield $name => $route; } } public function hasName(string $name): bool { return isset($this->namedRoutes[$name]); } public function count(): int { return count($this->routes); } }