annotate vendor/symfony/translation/IdentityTranslator.php @ 4:a9cd425dd02b
Update, including to Drupal core 8.6.10
author |
Chris Cannam |
date |
Thu, 28 Feb 2019 13:11:55 +0000 |
parents |
c75dbcec494b |
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@4
|
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@4
|
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 }
|