ACIL FM
Dark
Refresh
Current DIR:
/opt/cpanel/ea-wappspector/vendor/nikic/php-parser/lib/PhpParser
/
opt
cpanel
ea-wappspector
vendor
nikic
php-parser
lib
PhpParser
Upload
Zip Selected
Delete Selected
Pilih semua
Nama
Ukuran
Permission
Aksi
Builder
-
chmod
Open
Rename
Delete
Comment
-
chmod
Open
Rename
Delete
ErrorHandler
-
chmod
Open
Rename
Delete
Internal
-
chmod
Open
Rename
Delete
Lexer
-
chmod
Open
Rename
Delete
Node
-
chmod
Open
Rename
Delete
NodeVisitor
-
chmod
Open
Rename
Delete
Parser
-
chmod
Open
Rename
Delete
PrettyPrinter
-
chmod
Open
Rename
Delete
Builder.php
202 B
chmod
View
DL
Edit
Rename
Delete
BuilderFactory.php
10.3 MB
chmod
View
DL
Edit
Rename
Delete
BuilderHelpers.php
9.73 MB
chmod
View
DL
Edit
Rename
Delete
Comment.php
6.75 MB
chmod
View
DL
Edit
Rename
Delete
compatibility_tokens.php
2.46 MB
chmod
View
DL
Edit
Rename
Delete
ConstExprEvaluationException.php
112 B
chmod
View
DL
Edit
Rename
Delete
ConstExprEvaluator.php
9.33 MB
chmod
View
DL
Edit
Rename
Delete
Error.php
4.84 MB
chmod
View
DL
Edit
Rename
Delete
ErrorHandler.php
300 B
chmod
View
DL
Edit
Rename
Delete
JsonDecoder.php
3.44 MB
chmod
View
DL
Edit
Rename
Delete
Lexer.php
4.26 MB
chmod
View
DL
Edit
Rename
Delete
Modifiers.php
2.71 MB
chmod
View
DL
Edit
Rename
Delete
NameContext.php
9.82 MB
chmod
View
DL
Edit
Rename
Delete
Node.php
4.03 MB
chmod
View
DL
Edit
Rename
Delete
NodeAbstract.php
5.24 MB
chmod
View
DL
Edit
Rename
Delete
NodeDumper.php
10.24 MB
chmod
View
DL
Edit
Rename
Delete
NodeFinder.php
2.55 MB
chmod
View
DL
Edit
Rename
Delete
NodeTraverser.php
10.09 MB
chmod
View
DL
Edit
Rename
Delete
NodeTraverserInterface.php
598 B
chmod
View
DL
Edit
Rename
Delete
NodeVisitor.php
4.08 MB
chmod
View
DL
Edit
Rename
Delete
NodeVisitorAbstract.php
447 B
chmod
View
DL
Edit
Rename
Delete
Parser.php
765 B
chmod
View
DL
Edit
Rename
Delete
ParserAbstract.php
50.88 MB
chmod
View
DL
Edit
Rename
Delete
ParserFactory.php
1.41 MB
chmod
View
DL
Edit
Rename
Delete
PhpVersion.php
4.62 MB
chmod
View
DL
Edit
Rename
Delete
PrettyPrinter.php
1.66 MB
chmod
View
DL
Edit
Rename
Delete
PrettyPrinterAbstract.php
70.75 MB
chmod
View
DL
Edit
Rename
Delete
Token.php
487 B
chmod
View
DL
Edit
Rename
Delete
Edit file: /opt/cpanel/ea-wappspector/vendor/nikic/php-parser/lib/PhpParser/NodeTraverser.php
<?php declare(strict_types=1); namespace PhpParser; class NodeTraverser implements NodeTraverserInterface { /** * @deprecated Use NodeVisitor::DONT_TRAVERSE_CHILDREN instead. */ public const DONT_TRAVERSE_CHILDREN = NodeVisitor::DONT_TRAVERSE_CHILDREN; /** * @deprecated Use NodeVisitor::STOP_TRAVERSAL instead. */ public const STOP_TRAVERSAL = NodeVisitor::STOP_TRAVERSAL; /** * @deprecated Use NodeVisitor::REMOVE_NODE instead. */ public const REMOVE_NODE = NodeVisitor::REMOVE_NODE; /** * @deprecated Use NodeVisitor::DONT_TRAVERSE_CURRENT_AND_CHILDREN instead. */ public const DONT_TRAVERSE_CURRENT_AND_CHILDREN = NodeVisitor::DONT_TRAVERSE_CURRENT_AND_CHILDREN; /** @var list<NodeVisitor> Visitors */ protected array $visitors = []; /** @var bool Whether traversal should be stopped */ protected bool $stopTraversal; /** * Create a traverser with the given visitors. * * @param NodeVisitor ...$visitors Node visitors */ public function __construct(NodeVisitor ...$visitors) { $this->visitors = $visitors; } /** * Adds a visitor. * * @param NodeVisitor $visitor Visitor to add */ public function addVisitor(NodeVisitor $visitor): void { $this->visitors[] = $visitor; } /** * Removes an added visitor. */ public function removeVisitor(NodeVisitor $visitor): void { $index = array_search($visitor, $this->visitors); if ($index !== false) { array_splice($this->visitors, $index, 1, []); } } /** * Traverses an array of nodes using the registered visitors. * * @param Node[] $nodes Array of nodes * * @return Node[] Traversed array of nodes */ public function traverse(array $nodes): array { $this->stopTraversal = false; foreach ($this->visitors as $visitor) { if (null !== $return = $visitor->beforeTraverse($nodes)) { $nodes = $return; } } $nodes = $this->traverseArray($nodes); for ($i = \count($this->visitors) - 1; $i >= 0; --$i) { $visitor = $this->visitors[$i]; if (null !== $return = $visitor->afterTraverse($nodes)) { $nodes = $return; } } return $nodes; } /** * Recursively traverse a node. * * @param Node $node Node to traverse. */ protected function traverseNode(Node $node): void { foreach ($node->getSubNodeNames() as $name) { $subNode = $node->$name; if (\is_array($subNode)) { $node->$name = $this->traverseArray($subNode); if ($this->stopTraversal) { break; } continue; } if (!$subNode instanceof Node) { continue; } $traverseChildren = true; $visitorIndex = -1; foreach ($this->visitors as $visitorIndex => $visitor) { $return = $visitor->enterNode($subNode); if (null !== $return) { if ($return instanceof Node) { $this->ensureReplacementReasonable($subNode, $return); $subNode = $node->$name = $return; } elseif (NodeVisitor::DONT_TRAVERSE_CHILDREN === $return) { $traverseChildren = false; } elseif (NodeVisitor::DONT_TRAVERSE_CURRENT_AND_CHILDREN === $return) { $traverseChildren = false; break; } elseif (NodeVisitor::STOP_TRAVERSAL === $return) { $this->stopTraversal = true; break 2; } elseif (NodeVisitor::REPLACE_WITH_NULL === $return) { $node->$name = null; continue 2; } else { throw new \LogicException( 'enterNode() returned invalid value of type ' . gettype($return) ); } } } if ($traverseChildren) { $this->traverseNode($subNode); if ($this->stopTraversal) { break; } } for (; $visitorIndex >= 0; --$visitorIndex) { $visitor = $this->visitors[$visitorIndex]; $return = $visitor->leaveNode($subNode); if (null !== $return) { if ($return instanceof Node) { $this->ensureReplacementReasonable($subNode, $return); $subNode = $node->$name = $return; } elseif (NodeVisitor::STOP_TRAVERSAL === $return) { $this->stopTraversal = true; break 2; } elseif (NodeVisitor::REPLACE_WITH_NULL === $return) { $node->$name = null; break; } elseif (\is_array($return)) { throw new \LogicException( 'leaveNode() may only return an array ' . 'if the parent structure is an array' ); } else { throw new \LogicException( 'leaveNode() returned invalid value of type ' . gettype($return) ); } } } } } /** * Recursively traverse array (usually of nodes). * * @param array $nodes Array to traverse * * @return array Result of traversal (may be original array or changed one) */ protected function traverseArray(array $nodes): array { $doNodes = []; foreach ($nodes as $i => $node) { if (!$node instanceof Node) { if (\is_array($node)) { throw new \LogicException('Invalid node structure: Contains nested arrays'); } continue; } $traverseChildren = true; $visitorIndex = -1; foreach ($this->visitors as $visitorIndex => $visitor) { $return = $visitor->enterNode($node); if (null !== $return) { if ($return instanceof Node) { $this->ensureReplacementReasonable($node, $return); $nodes[$i] = $node = $return; } elseif (\is_array($return)) { $doNodes[] = [$i, $return]; continue 2; } elseif (NodeVisitor::REMOVE_NODE === $return) { $doNodes[] = [$i, []]; continue 2; } elseif (NodeVisitor::DONT_TRAVERSE_CHILDREN === $return) { $traverseChildren = false; } elseif (NodeVisitor::DONT_TRAVERSE_CURRENT_AND_CHILDREN === $return) { $traverseChildren = false; break; } elseif (NodeVisitor::STOP_TRAVERSAL === $return) { $this->stopTraversal = true; break 2; } elseif (NodeVisitor::REPLACE_WITH_NULL === $return) { throw new \LogicException( 'REPLACE_WITH_NULL can not be used if the parent structure is an array'); } else { throw new \LogicException( 'enterNode() returned invalid value of type ' . gettype($return) ); } } } if ($traverseChildren) { $this->traverseNode($node); if ($this->stopTraversal) { break; } } for (; $visitorIndex >= 0; --$visitorIndex) { $visitor = $this->visitors[$visitorIndex]; $return = $visitor->leaveNode($node); if (null !== $return) { if ($return instanceof Node) { $this->ensureReplacementReasonable($node, $return); $nodes[$i] = $node = $return; } elseif (\is_array($return)) { $doNodes[] = [$i, $return]; break; } elseif (NodeVisitor::REMOVE_NODE === $return) { $doNodes[] = [$i, []]; break; } elseif (NodeVisitor::STOP_TRAVERSAL === $return) { $this->stopTraversal = true; break 2; } elseif (NodeVisitor::REPLACE_WITH_NULL === $return) { throw new \LogicException( 'REPLACE_WITH_NULL can not be used if the parent structure is an array'); } else { throw new \LogicException( 'leaveNode() returned invalid value of type ' . gettype($return) ); } } } } if (!empty($doNodes)) { while (list($i, $replace) = array_pop($doNodes)) { array_splice($nodes, $i, 1, $replace); } } return $nodes; } private function ensureReplacementReasonable(Node $old, Node $new): void { if ($old instanceof Node\Stmt && $new instanceof Node\Expr) { throw new \LogicException( "Trying to replace statement ({$old->getType()}) " . "with expression ({$new->getType()}). Are you missing a " . "Stmt_Expression wrapper?" ); } if ($old instanceof Node\Expr && $new instanceof Node\Stmt) { throw new \LogicException( "Trying to replace expression ({$old->getType()}) " . "with statement ({$new->getType()})" ); } } }
Simpan
Batal
Isi Zip:
Unzip
Create
Buat Folder
Buat File
Terminal / Execute
Run
Chmod Bulk
All File
All Folder
All File dan Folder
Apply