opt
/
cpanel
/
ea-wappspector
/
vendor
/
rector
/
rector
/
rules
/
CodeQuality
/
NodeFactory
➕ New
📤 Upload
✎ Editing:
MissingPropertiesFactory.php
← Back
<?php declare (strict_types=1); namespace Rector\CodeQuality\NodeFactory; use PhpParser\Node\Stmt\Class_; use PhpParser\Node\Stmt\Property; use PhpParser\Node\Stmt\PropertyProperty; use PHPStan\Type\Type; final class MissingPropertiesFactory { /** * @readonly * @var \Rector\CodeQuality\NodeFactory\PropertyTypeDecorator */ private $propertyTypeDecorator; public function __construct(\Rector\CodeQuality\NodeFactory\PropertyTypeDecorator $propertyTypeDecorator) { $this->propertyTypeDecorator = $propertyTypeDecorator; } /** * @param array<string, Type> $fetchedLocalPropertyNameToTypes * @param string[] $propertyNamesToComplete * @return Property[] */ public function create(array $fetchedLocalPropertyNameToTypes, array $propertyNamesToComplete) : array { $newProperties = []; foreach ($fetchedLocalPropertyNameToTypes as $propertyName => $propertyType) { if (!\in_array($propertyName, $propertyNamesToComplete, \true)) { continue; } $property = new Property(Class_::MODIFIER_PUBLIC, [new PropertyProperty($propertyName)]); $this->propertyTypeDecorator->decorateProperty($property, $propertyType); $newProperties[] = $property; } return $newProperties; } }
💾 Save Changes
Cancel
📤 Upload File
×
Select File
Upload
Cancel
➕ Create New
×
Type
📄 File
📁 Folder
Name
Create
Cancel
✎ Rename Item
×
Current Name
New Name
Rename
Cancel
🔐 Change Permissions
×
Target File
Permission (e.g., 0755, 0644)
0755
0644
0777
Apply
Cancel