| 1 | <?php |
||
| 14 | final class RouteCollection implements \Countable, \IteratorAggregate |
||
| 15 | { |
||
| 16 | /** |
||
| 17 | * 路由集合 |
||
| 18 | * @var Route[] |
||
| 19 | */ |
||
| 20 | protected $routes = []; |
||
| 21 | |||
| 22 | /** |
||
| 23 | * 路由计数 |
||
| 24 | * |
||
| 25 | * @var int |
||
| 26 | */ |
||
| 27 | protected $counter = 0; |
||
| 28 | |||
| 29 | public function __construct($routes = []) |
||
| 35 | |||
| 36 | /** |
||
| 37 | * 添加一条 route |
||
| 38 | * |
||
| 39 | * @param Route $route |
||
| 40 | */ |
||
| 41 | public function add(Route $route) |
||
| 48 | |||
| 49 | /** |
||
| 50 | * 查找 route |
||
| 51 | * |
||
| 52 | * @param string $name |
||
| 53 | * @return Route|null |
||
| 54 | */ |
||
| 55 | public function search($name) |
||
| 59 | |||
| 60 | /** |
||
| 61 | * 合并 route 集合 |
||
| 62 | * |
||
| 63 | * @param RouteCollection $collection |
||
| 64 | */ |
||
| 65 | public function merge(RouteCollection $collection) |
||
| 71 | |||
| 72 | /** |
||
| 73 | * 获取集合内路由总数 |
||
| 74 | * |
||
| 75 | * @return int |
||
| 76 | */ |
||
| 77 | public function count() |
||
| 81 | |||
| 82 | /** |
||
| 83 | * {@inheritdoc} |
||
| 84 | */ |
||
| 85 | public function getIterator() |
||
| 89 | } |