ewallet/src/Adapters/Twig/Application/Templating/TwigTemplateEngine.php
<?php declare(strict_types=1);
/**
* PHP version 7.4
*
* This source file is subject to the license that is bundled with this package in the file LICENSE.
*/
namespace Adapters\Twig\Application\Templating;
use Application\Templating\TemplateEngine;
use Twig\Environment as Twig;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Error\SyntaxError;
final class TwigTemplateEngine implements TemplateEngine
{
private Twig $twig;
public function __construct(Twig $twig)
{
$this->twig = $twig;
}
/**
* @param mixed[] $values
* @throws LoaderError
* @throws RuntimeError
* @throws SyntaxError
*/
public function render(string $template, array $values): string
{
return $this->twig->render("{$template}.twig", $values);
}
}