Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
CollectionFactory
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 makeCollection
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3
4declare(strict_types=1);
5
6namespace pvc\struct\collection;
7
8use pvc\interfaces\struct\collection\CollectionFactoryInterface;
9use pvc\interfaces\struct\collection\CollectionInterface;
10
11/**
12 * @template ElementType
13 * @implements CollectionFactoryInterface<ElementType, Collection>
14 */
15class CollectionFactory implements CollectionFactoryInterface
16{
17    /**
18     * @param  array<non-negative-int, ElementType>  $elements
19     *
20     * @return Collection<ElementType>
21     */
22    public function makeCollection(array $elements = []): CollectionInterface
23    {
24        return new Collection($elements);
25    }
26}