EnumCollection   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 2
Bugs 1 Features 0
Metric Value
eloc 7
c 2
b 1
f 0
dl 0
loc 20
ccs 11
cts 11
cp 1
rs 10
wmc 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A hasIdentifier() 0 4 1
A byIdentifier() 0 4 1
A identifiers() 0 4 1
1
<?php
2
3
namespace JosKolenberg\Enum;
4
5
use Illuminate\Support\Collection;
6
7
class EnumCollection extends Collection
8
{
9 4
    public function identifiers()
10
    {
11 2
        return $this->map(function (Enum $enum) {
12 4
            return $enum->identifier();
13 2
        });
14
    }
15
16 34
    public function byIdentifier($identifier)
17
    {
18 17
        return $this->first(function (Enum $enum) use ($identifier) {
19 34
            return $enum->identifier() == $identifier;
20 17
        });
21
    }
22
23 19
    public function hasIdentifier($identifier)
24
    {
25 38
        return $this->contains(function (Enum $enum) use ($identifier) {
26 38
            return $enum->identifier() == $identifier;
27 19
        });
28
    }
29
}
30