File Manager Lite
Dir:
/home/codewavebd/public_html/vendor/psy/psysh/src/Completion/Source
Upload
[..]
CatalogSource.php (1.97 KB)
Edit
Rename
Del
ClassConstantSource.php (1.42 KB)
Edit
Rename
Del
CommandArgumentSource.php (1.56 KB)
Edit
Rename
Del
CommandSource.php (1.51 KB)
Edit
Rename
Del
HistorySource.php (1.14 KB)
Edit
Rename
Del
KeywordSource.php (1.32 KB)
Edit
Rename
Del
MagicPropertySource.php (1.53 KB)
Edit
Rename
Del
MatcherAdapterSource.php (5.48 KB)
Edit
Rename
Del
MethodSource.php (1.48 KB)
Edit
Rename
Del
NamespaceSource.php (1.41 KB)
Edit
Rename
Del
ObjectPropertySource.php (1.59 KB)
Edit
Rename
Del
PropertySource.php (1.5 KB)
Edit
Rename
Del
SourceInterface.php (1.74 KB)
Edit
Rename
Del
StaticPropertySource.php (1.81 KB)
Edit
Rename
Del
VariableSource.php (1.08 KB)
Edit
Rename
Del
Edit: MethodSource.php
<?php /* * This file is part of Psy Shell. * * (c) 2012-2026 Justin Hileman * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Psy\Completion\Source; use Psy\Completion\AnalysisResult; use Psy\Completion\CompletionKind; /** * A completion source for object methods. * * Provides method completions when completing after `->` operator. */ class MethodSource implements SourceInterface { /** * {@inheritdoc} */ public function appliesToKind(int $kinds): bool { return ($kinds & CompletionKind::OBJECT_METHOD) !== 0; } /** * {@inheritdoc} */ public function getCompletions(AnalysisResult $analysis): array { if (empty($analysis->leftSideTypes)) { return []; } $allCompletions = []; foreach ($analysis->leftSideTypes as $type) { try { $reflection = new \ReflectionClass($type); } catch (\ReflectionException $e) { continue; } $methods = $reflection->getMethods(\ReflectionMethod::IS_PUBLIC); foreach ($methods as $method) { $allCompletions[] = $method->getName(); } } // Return all methods (fuzzy matching in CompletionEngine will filter) $allCompletions = \array_unique($allCompletions); \sort($allCompletions); return $allCompletions; } }
Simpan