ACIL FM
Dark
Refresh
Current DIR:
/opt/cpanel/ea-wappspector/vendor/rector/rector/src/PhpAttribute/NodeFactory
/
opt
cpanel
ea-wappspector
vendor
rector
rector
src
PhpAttribute
NodeFactory
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
AnnotationToAttributeIntegerValueCaster.php
3.37 MB
chmod
View
DL
Edit
Rename
Delete
AttributeNameFactory.php
2.36 MB
chmod
View
DL
Edit
Rename
Delete
NamedArgsFactory.php
2.51 MB
chmod
View
DL
Edit
Rename
Delete
PhpAttributeGroupFactory.php
6.02 MB
chmod
View
DL
Edit
Rename
Delete
PhpNestedAttributeGroupFactory.php
10.65 MB
chmod
View
DL
Edit
Rename
Delete
Edit file: /opt/cpanel/ea-wappspector/vendor/rector/rector/src/PhpAttribute/NodeFactory/NamedArgsFactory.php
<?php declare (strict_types=1); namespace Rector\PhpAttribute\NodeFactory; use RectorPrefix202411\Nette\Utils\Strings; use PhpParser\BuilderHelpers; use PhpParser\Node\Arg; use PhpParser\Node\Expr; use PhpParser\Node\Expr\Array_; use PhpParser\Node\Expr\ArrayItem; use PhpParser\Node\Expr\ClassConstFetch; use PhpParser\Node\Identifier; use PhpParser\Node\Name; use PhpParser\Node\Scalar\String_; use Rector\NodeTypeResolver\Node\AttributeKey; final class NamedArgsFactory { /** * @see https://regex101.com/r/1bJR0J/1 * @var string */ private const CLASS_CONST_REGEX = '#(?<class>\\w+)::(?<constant>\\w+)#'; /** * @param array<string|int, mixed|Expr> $values * @return Arg[] */ public function createFromValues(array $values) : array { $args = []; foreach ($values as $key => $argValue) { $expr = BuilderHelpers::normalizeValue($argValue); $this->normalizeArrayWithConstFetchKey($expr); $name = null; // for named arguments if (\is_string($key)) { $name = new Identifier($key); } $this->normalizeStringDoubleQuote($expr); $args[] = new Arg($expr, \false, \false, [], $name); } return $args; } private function normalizeStringDoubleQuote(Expr $expr) : void { if (!$expr instanceof String_) { return; } // avoid escaping quotes + preserve newlines if (\strpos($expr->value, "'") === \false) { return; } if (\strpos($expr->value, "\n") !== \false) { return; } $expr->setAttribute(AttributeKey::KIND, String_::KIND_DOUBLE_QUOTED); } private function normalizeArrayWithConstFetchKey(Expr $expr) : void { if (!$expr instanceof Array_) { return; } foreach ($expr->items as $arrayItem) { if (!$arrayItem instanceof ArrayItem) { continue; } if (!$arrayItem->key instanceof String_) { continue; } $string = $arrayItem->key; $match = Strings::match($string->value, self::CLASS_CONST_REGEX); if ($match === null) { continue; } /** @var string $class */ $class = $match['class']; /** @var string $constant */ $constant = $match['constant']; $arrayItem->key = new ClassConstFetch(new Name($class), $constant); } } }
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply