BasicVariableCollector   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 50
ccs 13
cts 13
cp 1
rs 10
wmc 6
lcom 1
cbo 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A add() 0 4 1
A replace() 0 4 1
A all() 0 4 1
A get() 0 4 2
1
<?php
2
namespace JayaCode\Framework\Core\View\VariableCollector;
3
4
/**
5
 * Class BasicVariableCollector
6
 * @package JayaCode\Framework\Core\View\VariableCollector
7
 */
8
class BasicVariableCollector implements VariableCollector
9
{
10
    /**
11
     * @var array
12
     */
13
    protected $data = [];
14
15
    /**
16
     * BasicVariableCollector constructor.
17
     * @param array $data
18
     */
19 18
    public function __construct(array $data = array())
20
    {
21 18
        $this->data = $data;
22 18
    }
23
24
    /**
25
     * @param $data
26
     */
27 9
    public function add($data)
28
    {
29 9
        $this->data = (array) $data + $this->data;
30 9
    }
31
32
    /**
33
     * @param $data
34
     */
35 3
    public function replace($data)
36
    {
37 3
        $this->data = $data;
38 3
    }
39
40
    /**
41
     * @return array
42
     */
43 9
    public function all()
44
    {
45 9
        return $this->data;
46
    }
47
48
    /**
49
     * @param $name
50
     * @param null $default
51
     * @return mixed|null
52
     */
53 6
    public function get($name, $default = null)
54
    {
55 6
        return isset($this->data[$name])?$this->data[$name]:$default;
56
    }
57
}
58