2017-06-22 02:03:54 +02:00
|
|
|
<?php
|
|
|
|
|
2017-10-09 15:23:27 +02:00
|
|
|
namespace dipl\Translation;
|
2017-06-22 02:03:54 +02:00
|
|
|
|
|
|
|
class WrapTranslator implements TranslatorInterface
|
|
|
|
{
|
|
|
|
/** @var callable */
|
|
|
|
private $callback;
|
|
|
|
|
|
|
|
/** @var TranslatorInterface */
|
|
|
|
private $wrapped;
|
|
|
|
|
|
|
|
public function __construct(TranslatorInterface $wrapped, callable $callback)
|
|
|
|
{
|
|
|
|
$this->wrapped = $wrapped;
|
|
|
|
$this->callback = $callback;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function translate($string)
|
|
|
|
{
|
|
|
|
return call_user_func_array(
|
|
|
|
$this->callback,
|
|
|
|
[$this->wrapped->translate($string)]
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|