Passed
Pull Request — 1.x (#346)
by Akihito
03:15 queued 01:34
created

Results::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 0

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 0
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace BEAR\Resource\DataLoader;
6
7
use function array_key_exists;
8
9
/**
10
 * DataLoader results mapped by URI
11
 */
12
final class Results
13
{
14
    /** @param array<string, mixed> $results URI => result mapping */
15
    public function __construct(
16
        private readonly array $results,
17
    ) {
18
    }
19
20
    /**
21
     * Get result for a specific URI
22
     */
23
    public function get(string $uri): mixed
24
    {
25
        return $this->results[$uri] ?? null;
26
    }
27
28
    /**
29
     * Check if result exists for a URI
30
     */
31
    public function has(string $uri): bool
32
    {
33
        return array_key_exists($uri, $this->results);
34
    }
35
36
    /**
37
     * Get all results as array
38
     *
39
     * @return array<string, mixed>
40
     */
41
    public function toArray(): array
42
    {
43
        return $this->results;
44
    }
45
}
46