push
travis-ci
7003 of 7671 relevant lines covered (91.29%)
419.83 hits per line
1 |
<?php
|
|
2 |
|
|
3 |
namespace Pinq\Iterators\Generators; |
|
4 |
|
|
5 |
use Pinq\Iterators\Common; |
|
6 |
use Pinq\Iterators\ISet; |
|
7 |
|
|
8 |
/**
|
|
9 |
* Implementation of the set using generators for iteration. |
|
10 |
* |
|
11 |
* @author Elliot Levin <elliotlevin@hotmail.com> |
|
12 |
*/ |
|
13 |
class Set extends Generator implements ISet |
|
14 |
{ |
|
15 |
use Common\Set; |
|
16 |
|
|
17 |
public function __construct(IGenerator $values = null) |
|
18 |
{ |
× |
19 |
parent::__construct();
|
622 all except 329.3 ✔ |
20 |
|
|
21 |
if ($values !== null) { |
622 all except 329.3 ✔ |
22 |
foreach ($values as &$value) { |
320 all except 329.3 ✔ |
23 |
$this->addRef($value); |
212 all except 329.3 ✔ |
24 |
} |
320 all except 329.3 ✔ |
25 |
} |
320 all except 329.3 ✔ |
26 |
} |
622 all except 329.3 ✔ |
27 |
|
|
28 |
public function &getIterator() |
|
29 |
{ |
× |
30 |
foreach ($this->values as &$value) { |
× |
31 |
yield $value;
|
× |
32 |
} |
× |
33 |
} |
× |
34 |
} |