MustacheEngineFactory::create()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
cc 1
eloc 4
nc 1
nop 0
dl 0
loc 7
rs 10
c 3
b 0
f 0
1
<?php
2
3
namespace ntentan\honam\factories;
4
5
use Mustache_Engine;
6
use ntentan\honam\engines\AbstractEngine;
7
use ntentan\honam\engines\mustache\MustacheLoader;
8
use ntentan\honam\engines\mustache\MustachePartialsLoader;
9
use ntentan\honam\engines\MustacheEngine;
10
use ntentan\honam\TemplateFileResolver;
11
12
13
class MustacheEngineFactory implements EngineFactoryInterface
14
{
15
    private $templateFileResolver;
16
17
    public function __construct(TemplateFileResolver $templateFileResolver)
18
    {
19
        $this->templateFileResolver = $templateFileResolver;
20
    }
21
22
    public function create() : AbstractEngine
23
    {
24
        $loaderMustache = new Mustache_Engine([
25
            'loader' => new MustacheLoader(), 'partials_loader' => new MustachePartialsLoader($this->templateFileResolver)]
26
        );
27
        $stringMustache = new Mustache_Engine(['partials_loader' => new MustachePartialsLoader($this->templateFileResolver)]);
28
        return new MustacheEngine($stringMustache, $loaderMustache);
29
    }
30
}
31