/** * {@inheritdoc} */ public function getMatches(array $tokens, array $info = array()) { $input = $this->getInput($tokens); return array_filter($this->commands, function ($command) use($input) { return AbstractMatcher::startsWith($input, $command); }); }
/** * {@inheritdoc} */ public function getMatches(array $tokens, array $info = array()) { $input = $this->getInput($tokens); $firstToken = array_pop($tokens); if (self::tokenIs($firstToken, self::T_STRING)) { // second token is the object operator array_pop($tokens); } $objectToken = array_pop($tokens); $objectName = str_replace('$', '', $objectToken[1]); try { $object = $this->getVariable($objectName); } catch (InvalidArgumentException $e) { return array(); } return array_filter(array_keys(get_class_vars(get_class($object))), function ($var) use($input) { return AbstractMatcher::startsWith($input, $var); }); }