[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/libraries/vendor/doctrine/inflector/lib/Doctrine/Inflector/ -> InflectorFactory.php (source)

   1  <?php
   2  
   3  declare(strict_types=1);
   4  
   5  namespace Doctrine\Inflector;
   6  
   7  use Doctrine\Inflector\Rules\English;
   8  use Doctrine\Inflector\Rules\French;
   9  use Doctrine\Inflector\Rules\NorwegianBokmal;
  10  use Doctrine\Inflector\Rules\Portuguese;
  11  use Doctrine\Inflector\Rules\Spanish;
  12  use Doctrine\Inflector\Rules\Turkish;
  13  use InvalidArgumentException;
  14  
  15  use function sprintf;
  16  
  17  final class InflectorFactory
  18  {
  19      public static function create(): LanguageInflectorFactory
  20      {
  21          return self::createForLanguage(Language::ENGLISH);
  22      }
  23  
  24      public static function createForLanguage(string $language): LanguageInflectorFactory
  25      {
  26          switch ($language) {
  27              case Language::ENGLISH:
  28                  return new English\InflectorFactory();
  29  
  30              case Language::FRENCH:
  31                  return new French\InflectorFactory();
  32  
  33              case Language::NORWEGIAN_BOKMAL:
  34                  return new NorwegianBokmal\InflectorFactory();
  35  
  36              case Language::PORTUGUESE:
  37                  return new Portuguese\InflectorFactory();
  38  
  39              case Language::SPANISH:
  40                  return new Spanish\InflectorFactory();
  41  
  42              case Language::TURKISH:
  43                  return new Turkish\InflectorFactory();
  44  
  45              default:
  46                  throw new InvalidArgumentException(sprintf(
  47                      'Language "%s" is not supported.',
  48                      $language
  49                  ));
  50          }
  51      }
  52  }


Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer