Chris@0: provider = $provider; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getIterator() Chris@0: { Chris@0: return new \ArrayIterator($this->all()); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Gets the number of Routes in this collection. Chris@0: * Chris@0: * @return int The number of routes Chris@0: */ Chris@0: public function count() Chris@0: { Chris@0: return count($this->all()); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns all routes in this collection. Chris@0: * Chris@0: * @return Route[] An array of routes Chris@0: */ Chris@0: public function all() Chris@0: { Chris@0: return $this->provider->getRoutesByNames(null); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Gets a route by name. Chris@0: * Chris@0: * @param string $name The route name Chris@0: * Chris@0: * @return Route|null A Route instance or null when not found Chris@0: */ Chris@0: public function get($name) Chris@0: { Chris@0: try { Chris@0: return $this->provider->getRouteByName($name); Chris@0: } catch (RouteNotFoundException $e) { Chris@0: return; Chris@0: } Chris@0: } Chris@0: }