From a7e17cb70e9306f8887bd2b5ca1a37edcbe3ea0f Mon Sep 17 00:00:00 2001 From: Stefan Suhren Date: Mon, 11 May 2015 15:02:33 +0200 Subject: Let composer manage its own files --- .../Component/Translation/MessageSelector.php | 90 ---------------------- 1 file changed, 90 deletions(-) delete mode 100644 Aufgabe06/vendor/symfony/translation/Symfony/Component/Translation/MessageSelector.php (limited to 'Aufgabe06/vendor/symfony/translation/Symfony/Component/Translation/MessageSelector.php') diff --git a/Aufgabe06/vendor/symfony/translation/Symfony/Component/Translation/MessageSelector.php b/Aufgabe06/vendor/symfony/translation/Symfony/Component/Translation/MessageSelector.php deleted file mode 100644 index 9f5430c..0000000 --- a/Aufgabe06/vendor/symfony/translation/Symfony/Component/Translation/MessageSelector.php +++ /dev/null @@ -1,90 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Translation; - -/** - * MessageSelector. - * - * @author Fabien Potencier - * @author Bernhard Schussek - * - * @api - */ -class MessageSelector -{ - /** - * Given a message with different plural translations separated by a - * pipe (|), this method returns the correct portion of the message based - * on the given number, locale and the pluralization rules in the message - * itself. - * - * The message supports two different types of pluralization rules: - * - * interval: {0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples - * indexed: There is one apple|There are %count% apples - * - * The indexed solution can also contain labels (e.g. one: There is one apple). - * This is purely for making the translations more clear - it does not - * affect the functionality. - * - * The two methods can also be mixed: - * {0} There are no apples|one: There is one apple|more: There are %count% apples - * - * @param string $message The message being translated - * @param int $number The number of items represented for the message - * @param string $locale The locale to use for choosing - * - * @return string - * - * @throws \InvalidArgumentException - * - * @api - */ - public function choose($message, $number, $locale) - { - $parts = explode('|', $message); - $explicitRules = array(); - $standardRules = array(); - foreach ($parts as $part) { - $part = trim($part); - - if (preg_match('/^(?P'.Interval::getIntervalRegexp().')\s*(?P.*?)$/x', $part, $matches)) { - $explicitRules[$matches['interval']] = $matches['message']; - } elseif (preg_match('/^\w+\:\s*(.*?)$/', $part, $matches)) { - $standardRules[] = $matches[1]; - } else { - $standardRules[] = $part; - } - } - - // try to match an explicit rule, then fallback to the standard ones - foreach ($explicitRules as $interval => $m) { - if (Interval::test($number, $interval)) { - return $m; - } - } - - $position = PluralizationRules::get($number, $locale); - - if (!isset($standardRules[$position])) { - // when there's exactly one rule given, and that rule is a standard - // rule, use this rule - if (1 === count($parts) && isset($standardRules[0])) { - return $standardRules[0]; - } - - throw new \InvalidArgumentException(sprintf('Unable to choose a translation for "%s" with locale "%s" for value "%d". Double check that this translation has the correct plural options (e.g. "There is one apple|There are %%count%% apples").', $message, $locale, $number)); - } - - return $standardRules[$position]; - } -} -- cgit v1.2.3-70-g09d2