Rules.php 874 B

12345678910111213141516171819202122232425262728293031
  1. <?php
  2. declare(strict_types=1);
  3. namespace Doctrine\Inflector\Rules\English;
  4. use Doctrine\Inflector\Rules\Patterns;
  5. use Doctrine\Inflector\Rules\Ruleset;
  6. use Doctrine\Inflector\Rules\Substitutions;
  7. use Doctrine\Inflector\Rules\Transformations;
  8. final class Rules
  9. {
  10. public static function getSingularRuleset(): Ruleset
  11. {
  12. return new Ruleset(
  13. new Transformations(...Inflectible::getSingular()),
  14. new Patterns(...Uninflected::getSingular()),
  15. (new Substitutions(...Inflectible::getIrregular()))->getFlippedSubstitutions()
  16. );
  17. }
  18. public static function getPluralRuleset(): Ruleset
  19. {
  20. return new Ruleset(
  21. new Transformations(...Inflectible::getPlural()),
  22. new Patterns(...Uninflected::getPlural()),
  23. new Substitutions(...Inflectible::getIrregular())
  24. );
  25. }
  26. }