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; } }