Passed
Push — master ( e57f8a...8ee230 )
by Jesús
07:19 queued 04:30
created

ClassNameNotFoundEvent   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Test Coverage

Coverage 42.86%

Importance

Changes 0
Metric Value
eloc 8
dl 0
loc 31
ccs 3
cts 7
cp 0.4286
rs 10
c 0
b 0
f 0
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A toString() 0 7 1
A classInfo() 0 3 1
A resolvableTypes() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Gacela\Framework\Event\ClassResolver\ClassNameFinder;
6
7
use Gacela\Framework\ClassResolver\ClassInfo;
8
use Gacela\Framework\Event\GacelaEventInterface;
9
10
final class ClassNameNotFoundEvent implements GacelaEventInterface
11
{
12
    /**
13
     * @param list<string> $resolvableTypes
14
     */
15
    public function __construct(
16
        private ClassInfo $classInfo,
17
        private array $resolvableTypes,
18
    ) {
19
    }
20 10
21
    public function classInfo(): ClassInfo
22 10
    {
23 10
        return $this->classInfo;
24
    }
25
26
    /**
27
     * @return list<string>
28
     */
29
    public function resolvableTypes(): array
30
    {
31
        return $this->resolvableTypes;
32
    }
33
34
    public function toString(): string
35
    {
36
        return sprintf(
37
            '%s {classInfo:"%s", resolvableTypes:"%s"}',
38
            self::class,
39
            $this->classInfo->toString(),
40
            implode(',', $this->resolvableTypes),
41
        );
42
    }
43
}
44