Completed
Push — master ( 8aeefb...cee8b2 )
by Charis
02:18
created

AbstractRenderer::offsetUnset()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
nc 1
cc 1
eloc 2
nop 1
1
<?php
2
3
namespace Resilient;
4
5
use \Resilient\Design\RendererInterface;
6
use \Psr\Http\Message\ResponseInterface;
7
use \Resilient\Traits\ArrayAccessAble;
8
9
/**
10
 * Abstract AbstractRenderer class.
11
 *
12
 * @abstract
13
 */
14
abstract class AbstractRenderer implements RendererInterface
15
{
16
    use ArrayAccessAble;
17
18
    /**
19
     * template function.
20
     *
21
     * @access protected
22
     * @abstract
23
     * @param mixed $template
24
     */
25
    abstract protected function template($template);
26
27
    /**
28
     * {@inheritdoc}
29
     */
30
    abstract public function renderBlock($template, $blockName, $data = []);
31
32
    /**
33
     * {@inheritdoc}
34
     */
35
    abstract public function render(ResponseInterface $response, $template, $data = []);
36
37
    /**
38
     * mergeData function.
39
     *
40
     * @access protected
41
     * @param mixed $data
42
     * @return array
43
     */
44
    protected function mergeData($data)
45
    {
46
        return array_merge($this->offset, $data);
47
    }
48
49
    /**
50
     * {@inheritdoc}
51
     */
52
    public function loadConfig(array $offset)
53
    {
54
        $this->offset = $this->mergeData($offset);
55
56
        return $this;
57
    }
58
}
59