1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- <?php declare(strict_types = 1);
- /*
- * This file is part of PharIo\Manifest.
- *
- * Copyright (c) Arne Blankerts <arne@blankerts.de>, Sebastian Heuer <sebastian@phpeople.de>, Sebastian Bergmann <sebastian@phpunit.de> and contributors
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- *
- */
- namespace PharIo\Manifest;
- use Iterator;
- use function count;
- /** @template-implements Iterator<int,BundledComponent> */
- class BundledComponentCollectionIterator implements Iterator {
- /** @var BundledComponent[] */
- private $bundledComponents;
- /** @var int */
- private $position = 0;
- public function __construct(BundledComponentCollection $bundledComponents) {
- $this->bundledComponents = $bundledComponents->getBundledComponents();
- }
- public function rewind(): void {
- $this->position = 0;
- }
- public function valid(): bool {
- return $this->position < count($this->bundledComponents);
- }
- public function key(): int {
- return $this->position;
- }
- public function current(): BundledComponent {
- return $this->bundledComponents[$this->position];
- }
- public function next(): void {
- $this->position++;
- }
- }
|