Chris@0: getNamespaceAndClass($tokens); Chris@0: Chris@0: try { Chris@0: $reflection = new \ReflectionClass($class); Chris@0: } catch (\ReflectionException $e) { Chris@0: // In this case the class apparently does not exist, so we can do nothing Chris@0: return array(); Chris@0: } Chris@0: Chris@0: $methods = $reflection->getMethods(\ReflectionMethod::IS_STATIC); Chris@0: Chris@0: foreach ($methods as $method) { Chris@0: if ($method->getName() === $functionName[1]) { Chris@0: return $this->getDefaultParameterCompletion($method->getParameters()); Chris@0: } Chris@0: } Chris@0: Chris@0: return array(); Chris@0: } Chris@0: Chris@0: public function hasMatched(array $tokens) Chris@0: { Chris@0: $openBracket = array_pop($tokens); Chris@0: Chris@0: if ($openBracket !== '(') { Chris@0: return false; Chris@0: } Chris@0: Chris@0: $functionName = array_pop($tokens); Chris@0: Chris@0: if (!self::tokenIs($functionName, self::T_STRING)) { Chris@0: return false; Chris@0: } Chris@0: Chris@0: $operator = array_pop($tokens); Chris@0: Chris@0: if (!self::tokenIs($operator, self::T_DOUBLE_COLON)) { Chris@0: return false; Chris@0: } Chris@0: Chris@0: return true; Chris@0: } Chris@0: }