Completed
Push — v4.0-dev ( cf9811...d63e52 )
by
unknown
65:08 queued 50:10
created

FileSystemRenderTemplate::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace League\Plates\RenderTemplate;
4
5
use League\Plates;
6
7
final class FileSystemRenderTemplate implements Plates\RenderTemplate
8
{
9
    private $render_sets;
10
11
    public function __construct(array $render_sets) {
12
        $this->render_sets = $render_sets;
13
    }
14
15
    public function renderTemplate(Plates\Template $template, Plates\RenderTemplate $rt = null) {
16
        foreach ($this->render_sets as list($match, $render)) {
17
            if ($match($template)) {
18
                return $render->renderTemplate($template, $rt ?: $this);
19
            }
20
        }
21
22
        throw new Plates\Exception\RenderTemplateException('No renderer was available for the template: ' . $template->name);
23
    }
24
}
25