Mercurial > hg > isophonics-drupal-site
annotate vendor/phar-io/manifest/src/values/AuthorCollectionIterator.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 1fec387a4317 |
children |
rev | line source |
---|---|
Chris@14 | 1 <?php |
Chris@14 | 2 /* |
Chris@14 | 3 * This file is part of PharIo\Manifest. |
Chris@14 | 4 * |
Chris@14 | 5 * (c) Arne Blankerts <arne@blankerts.de>, Sebastian Heuer <sebastian@phpeople.de>, Sebastian Bergmann <sebastian@phpunit.de> |
Chris@14 | 6 * |
Chris@14 | 7 * For the full copyright and license information, please view the LICENSE |
Chris@14 | 8 * file that was distributed with this source code. |
Chris@14 | 9 */ |
Chris@14 | 10 |
Chris@14 | 11 namespace PharIo\Manifest; |
Chris@14 | 12 |
Chris@14 | 13 class AuthorCollectionIterator implements \Iterator { |
Chris@14 | 14 /** |
Chris@14 | 15 * @var Author[] |
Chris@14 | 16 */ |
Chris@14 | 17 private $authors = []; |
Chris@14 | 18 |
Chris@14 | 19 /** |
Chris@14 | 20 * @var int |
Chris@14 | 21 */ |
Chris@14 | 22 private $position; |
Chris@14 | 23 |
Chris@14 | 24 public function __construct(AuthorCollection $authors) { |
Chris@14 | 25 $this->authors = $authors->getAuthors(); |
Chris@14 | 26 } |
Chris@14 | 27 |
Chris@14 | 28 public function rewind() { |
Chris@14 | 29 $this->position = 0; |
Chris@14 | 30 } |
Chris@14 | 31 |
Chris@14 | 32 /** |
Chris@14 | 33 * @return bool |
Chris@14 | 34 */ |
Chris@14 | 35 public function valid() { |
Chris@14 | 36 return $this->position < count($this->authors); |
Chris@14 | 37 } |
Chris@14 | 38 |
Chris@14 | 39 /** |
Chris@14 | 40 * @return int |
Chris@14 | 41 */ |
Chris@14 | 42 public function key() { |
Chris@14 | 43 return $this->position; |
Chris@14 | 44 } |
Chris@14 | 45 |
Chris@14 | 46 /** |
Chris@14 | 47 * @return Author |
Chris@14 | 48 */ |
Chris@14 | 49 public function current() { |
Chris@14 | 50 return $this->authors[$this->position]; |
Chris@14 | 51 } |
Chris@14 | 52 |
Chris@14 | 53 public function next() { |
Chris@14 | 54 $this->position++; |
Chris@14 | 55 } |
Chris@14 | 56 } |