Mercurial > hg > isophonics-drupal-site
annotate vendor/symfony/translation/IdentityTranslator.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 129ea1e6d783 |
children |
rev | line source |
---|---|
Chris@0 | 1 <?php |
Chris@0 | 2 |
Chris@0 | 3 /* |
Chris@0 | 4 * This file is part of the Symfony package. |
Chris@0 | 5 * |
Chris@0 | 6 * (c) Fabien Potencier <fabien@symfony.com> |
Chris@0 | 7 * |
Chris@0 | 8 * For the full copyright and license information, please view the LICENSE |
Chris@0 | 9 * file that was distributed with this source code. |
Chris@0 | 10 */ |
Chris@0 | 11 |
Chris@0 | 12 namespace Symfony\Component\Translation; |
Chris@0 | 13 |
Chris@0 | 14 /** |
Chris@0 | 15 * IdentityTranslator does not translate anything. |
Chris@0 | 16 * |
Chris@0 | 17 * @author Fabien Potencier <fabien@symfony.com> |
Chris@0 | 18 */ |
Chris@0 | 19 class IdentityTranslator implements TranslatorInterface |
Chris@0 | 20 { |
Chris@0 | 21 private $selector; |
Chris@0 | 22 private $locale; |
Chris@0 | 23 |
Chris@0 | 24 /** |
Chris@0 | 25 * @param MessageSelector|null $selector The message selector for pluralization |
Chris@0 | 26 */ |
Chris@0 | 27 public function __construct(MessageSelector $selector = null) |
Chris@0 | 28 { |
Chris@0 | 29 $this->selector = $selector ?: new MessageSelector(); |
Chris@0 | 30 } |
Chris@0 | 31 |
Chris@0 | 32 /** |
Chris@0 | 33 * {@inheritdoc} |
Chris@0 | 34 */ |
Chris@0 | 35 public function setLocale($locale) |
Chris@0 | 36 { |
Chris@0 | 37 $this->locale = $locale; |
Chris@0 | 38 } |
Chris@0 | 39 |
Chris@0 | 40 /** |
Chris@0 | 41 * {@inheritdoc} |
Chris@0 | 42 */ |
Chris@0 | 43 public function getLocale() |
Chris@0 | 44 { |
Chris@0 | 45 return $this->locale ?: \Locale::getDefault(); |
Chris@0 | 46 } |
Chris@0 | 47 |
Chris@0 | 48 /** |
Chris@0 | 49 * {@inheritdoc} |
Chris@0 | 50 */ |
Chris@17 | 51 public function trans($id, array $parameters = [], $domain = null, $locale = null) |
Chris@0 | 52 { |
Chris@0 | 53 return strtr((string) $id, $parameters); |
Chris@0 | 54 } |
Chris@0 | 55 |
Chris@0 | 56 /** |
Chris@0 | 57 * {@inheritdoc} |
Chris@0 | 58 */ |
Chris@17 | 59 public function transChoice($id, $number, array $parameters = [], $domain = null, $locale = null) |
Chris@0 | 60 { |
Chris@0 | 61 return strtr($this->selector->choose((string) $id, (int) $number, $locale ?: $this->getLocale()), $parameters); |
Chris@0 | 62 } |
Chris@0 | 63 } |