for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace Doctrine\Inflector;
use Doctrine\Inflector\Rules\Ruleset;
use Doctrine\Inflector\Rules\Singular;
use Doctrine\Inflector\Rules\Uninflected;
use function array_flip;
use function array_merge;
class Singularizer extends Converse
{
/** @var Pluralizer */
private $pluralizer;
public function __construct(Uninflected $uninflected, Pluralizer $pluralizer)
$this->pluralizer = $pluralizer;
parent::__construct($uninflected);
}
public function getRuleset() : Ruleset
return new Ruleset(Singular::RULES, Singular::UNINFLECTED, Singular::IRREGULAR);
protected function initializeIrregular() : void
if (isset($this->rules['merged']['irregular'])) {
return;
$this->rules['merged']['irregular'] = array_merge(
$this->rules['irregular'],
array_flip($this->pluralizer->getRuleset()->getIrregular())
);