ArrayType   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

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

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A hash() 0 7 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace drupol\valuewrapper\Type;
6
7
use Exception;
8
9
/**
10
 * Class ArrayType.
11
 */
12
class ArrayType extends TypeValue
13
{
14
    /**
15
     * ArrayType constructor.
16
     *
17
     * @param array<mixed> $value
18
     */
19 9
    public function __construct(array $value)
20
    {
21 9
        parent::__construct($value);
22 9
    }
23
24
    /**
25
     * {@inheritdoc}
26
     */
27 2
    public function hash(): string
28
    {
29 2
        if (false === $string = json_encode($this->value())) {
30 1
            throw new Exception('Unable to encode the value.');
31
        }
32
33 1
        return $this->doHash($string);
34
    }
35
}
36