
| Current Path : /var/www/html/c12park/vendor/psy/psysh/src/Completion/Source/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/html/c12park/vendor/psy/psysh/src/Completion/Source/VariableSource.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;
use Psy\Context;
/**
* Variable completion source.
*
* Provides completions for variables in the current scope.
*/
class VariableSource implements SourceInterface
{
private Context $context;
public function __construct(Context $context)
{
$this->context = $context;
}
/**
* {@inheritdoc}
*/
public function appliesToKind(int $kinds): bool
{
return ($kinds & CompletionKind::VARIABLE) !== 0;
}
/**
* {@inheritdoc}
*/
public function getCompletions(AnalysisResult $analysis): array
{
// Always return all variables (typically small set, fuzzy matching will handle filtering)
$variables = \array_keys($this->context->getAll());
\sort($variables);
return $variables;
}
}