ClassNameNotFoundEvent   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 4
eloc 8
c 0
b 0
f 0
dl 0
loc 32
rs 10

4 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A toString() 0 8 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
use Override;
10
11
use function sprintf;
12
13
final class ClassNameNotFoundEvent implements GacelaEventInterface
14
{
15
    /**
16
     * @param list<string> $resolvableTypes
17
     */
18
    public function __construct(
19
        private readonly ClassInfo $classInfo,
20
        private readonly array $resolvableTypes,
21
    ) {
22
    }
23
24
    public function classInfo(): ClassInfo
25
    {
26
        return $this->classInfo;
27
    }
28
29
    /**
30
     * @return list<string>
31
     */
32
    public function resolvableTypes(): array
33
    {
34
        return $this->resolvableTypes;
35
    }
36
37
    #[Override]
38
    public function toString(): string
39
    {
40
        return sprintf(
41
            '%s {classInfo:"%s", resolvableTypes:"%s"}',
42
            self::class,
43
            $this->classInfo->toString(),
44
            implode(',', $this->resolvableTypes),
45
        );
46
    }
47
}
48