NormalizedValue::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 5
rs 9.4285
cc 1
eloc 3
nc 1
nop 2
1
<?php
2
3
namespace Ionut\Sylar;
4
5
6
class NormalizedValue
7
{
8
    /**
9
     * The original parameter value and the provenience of all the variants.
10
     *
11
     * @var string
12
     */
13
    protected $original;
14
15
    /**
16
     * Variants produced by each filter.
17
     *
18
     * @var NormalizedValueVariant[]
19
     */
20
    public $variants;
21
22
    /**
23
     * @param string $original
24
     * @param array  $variants
25
     */
26
    public function __construct($original, array $variants = [])
27
    {
28
        $this->original = $original;
29
        $this->variants = $variants;
30
    }
31
32
    public function getVariantsWithOriginal()
33
    {
34
        return array_merge(
35
            [new NormalizedValueVariant($this->original)],
36
            $this->variants
37
        );
38
    }
39
40
    /**
41
     * @return string
42
     */
43
    public function getOriginal()
44
    {
45
        return $this->original;
46
    }
47
}