| Total Complexity | 3 |
| Total Lines | 32 |
| Duplicated Lines | 0 % |
| Coverage | 100% |
| Changes | 1 | ||
| Bugs | 0 | Features | 1 |
| 1 | <?php |
||
| 9 | class ClassCollection extends AbstractTypedCollection |
||
| 10 | { |
||
| 11 | protected $serializable = ['items', 'type', 'validClass']; |
||
| 12 | |||
| 13 | public const TYPE = 'class'; |
||
| 14 | |||
| 15 | protected $type = self::TYPE; |
||
| 16 | protected $validClass = null; |
||
| 17 | |||
| 18 | /** |
||
| 19 | * ClassCollection constructor. |
||
| 20 | 4 | * @param array $items |
|
| 21 | */ |
||
| 22 | public function __construct($items = []) |
||
| 23 | 4 | { |
|
| 24 | $this->typeChecker = function ($element) { |
||
| 25 | 4 | return ($element instanceof $this->validClass); |
|
| 26 | 4 | }; |
|
| 27 | parent::__construct($items); |
||
| 28 | } |
||
| 29 | |||
| 30 | protected function unserializeAllowedClasses() |
||
| 31 | { |
||
| 32 | 4 | return [$this->validClass]; |
|
| 33 | } |
||
| 34 | 4 | ||
| 35 | 4 | /** |
|
| 36 | * @param null $validClass |
||
|
|
|||
| 37 | */ |
||
| 38 | public function validClass($validClass): void |
||
| 41 | } |
||
| 42 | } |
||
| 43 |