for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace GraphQL\Doctrine\Factory;
/**
* A factory to create unique but predictable names for aliases and parameters
*/
final class UniqueNameFactory
{
* @var int[]
private $aliasCount = [];
* @var int
private $parameterCount = 1;
public function createParameterName(): string
return 'filter' . $this->parameterCount++;
}
public function createAliasName($className): string
$alias = lcfirst(preg_replace('~^.*\\\\~', '', $className));
if (!isset($this->aliasCount[$alias])) {
$this->aliasCount[$alias] = 1;
return $alias . $this->aliasCount[$alias]++;