mirror of
https://github.com/rectorphp/rector.git
synced 2025-02-15 21:38:24 +01:00
32 lines
722 B
PHP
32 lines
722 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Rector\Privatization\Naming;
|
|
|
|
use PhpParser\Node\Stmt\PropertyProperty;
|
|
use Rector\NodeNameResolver\NodeNameResolver;
|
|
use Stringy\Stringy;
|
|
|
|
final class ConstantNaming
|
|
{
|
|
/**
|
|
* @var NodeNameResolver
|
|
*/
|
|
private $nodeNameResolver;
|
|
|
|
public function __construct(NodeNameResolver $nodeNameResolver)
|
|
{
|
|
$this->nodeNameResolver = $nodeNameResolver;
|
|
}
|
|
|
|
public function createFromProperty(PropertyProperty $propertyProperty): string
|
|
{
|
|
$propertyName = $this->nodeNameResolver->getName($propertyProperty);
|
|
|
|
$stringy = new Stringy($propertyName);
|
|
return (string) $stringy->underscored()
|
|
->toUpperCase();
|
|
}
|
|
}
|