Total Complexity | 5 |
Total Lines | 38 |
Duplicated Lines | 0 % |
Coverage | 100% |
Changes | 1 | ||
Bugs | 0 | Features | 0 |
1 | <?php |
||
12 | class MapFactory |
||
13 | { |
||
14 | /** |
||
15 | * Creates Map from assoc array |
||
16 | * @param array $assocArray |
||
17 | * @return Map |
||
18 | */ |
||
19 | 1 | public static function assoc(array $assocArray): Map |
|
20 | { |
||
21 | 1 | return self::fromIterable($assocArray); |
|
22 | } |
||
23 | |||
24 | 2 | public static function fromIterable(iterable $iterable): Map |
|
25 | { |
||
26 | 2 | $map = self::newObject(); |
|
27 | 2 | foreach ($iterable as $key => $value) { |
|
28 | 2 | $map->put($key, $value); |
|
29 | } |
||
30 | |||
31 | 2 | return $map; |
|
32 | } |
||
33 | |||
34 | /** |
||
35 | * Creates empty map object |
||
36 | * @return Map |
||
37 | */ |
||
38 | 1 | public static function emptyObject(): Map |
|
41 | } |
||
42 | |||
43 | /** |
||
44 | * Creates empty Map object |
||
45 | * @return Map |
||
46 | */ |
||
47 | 3 | private static function newObject(): Map |
|
50 | } |
||
51 | } |
||
52 |