Exemplo n.º 1
0
 /**
  * @param \PHP_CodeSniffer_File $phpcsFile
  * @param integer $usePointer
  * @return boolean
  */
 public static function isAnonymousFunctionUse(PHP_CodeSniffer_File $phpcsFile, $usePointer)
 {
     $tokens = $phpcsFile->getTokens();
     $nextPointer = TokenHelper::findNextNonWhitespace($phpcsFile, $usePointer + 1);
     $nextToken = $tokens[$nextPointer];
     return $nextToken['code'] === T_OPEN_PARENTHESIS;
 }
Exemplo n.º 2
0
 /**
  * @param \PHP_CodeSniffer_File $phpcsFile
  * @param integer $anyPointer any pointer type where the search begins from (backwards)
  * @return string|null
  */
 public static function findCurrentNamespaceName(PHP_CodeSniffer_File $phpcsFile, $anyPointer)
 {
     $namespacePointer = $phpcsFile->findPrevious(T_NAMESPACE, $anyPointer);
     if ($namespacePointer === false) {
         return null;
     }
     $namespaceNameStartPointer = TokenHelper::findNextNonWhitespace($phpcsFile, $namespacePointer + 1);
     $namespaceNameEndPointer = TokenHelper::findNextExcluding($phpcsFile, TokenHelper::$nameTokenCodes, $namespaceNameStartPointer + 1);
     return TokenHelper::getContent($phpcsFile, $namespaceNameStartPointer, $namespaceNameEndPointer);
 }
 /**
  * @param \PHP_CodeSniffer_File $phpcsFile
  * @param integer $usePointer
  */
 public function process(PHP_CodeSniffer_File $phpcsFile, $usePointer)
 {
     if (UseStatementHelper::isAnonymousFunctionUse($phpcsFile, $usePointer) || UseStatementHelper::isTraitUse($phpcsFile, $usePointer)) {
         return;
     }
     $tokens = $phpcsFile->getTokens();
     $nextTokenPointer = TokenHelper::findNextNonWhitespace($phpcsFile, $usePointer + 1);
     $nextToken = $tokens[$nextTokenPointer];
     if ($nextToken['code'] === T_NS_SEPARATOR) {
         $phpcsFile->addError('Use statement cannot start with a backslash', $nextTokenPointer, self::CODE_STARTS_WITH_BACKSLASH);
     }
 }
 /**
  * @param PHP_CodeSniffer_File $phpcsFile
  * @param mixed[] $tokens
  * @param mixed[] $classToken
  * @return integer[] string(name) => pointer
  */
 private function getMethods(PHP_CodeSniffer_File $phpcsFile, array $tokens, array $classToken)
 {
     $reportedMethods = [];
     $findMethodsStartTokenPointer = $classToken['scope_opener'] + 1;
     while (($methodTokenPointer = $phpcsFile->findNext(T_FUNCTION, $findMethodsStartTokenPointer, $classToken['scope_closer'])) !== false) {
         $visibilityModifier = $this->findVisibilityModifier($phpcsFile, $tokens, $methodTokenPointer);
         if ($visibilityModifier === null || $visibilityModifier !== T_PRIVATE) {
             $findMethodsStartTokenPointer = $methodTokenPointer + 1;
             continue;
         }
         $namePointer = TokenHelper::findNextNonWhitespace($phpcsFile, $methodTokenPointer + 1);
         if ($namePointer === null) {
             $findMethodsStartTokenPointer = $methodTokenPointer + 1;
             continue;
         }
         $methodName = $tokens[$namePointer]['content'];
         if ($methodName !== '__construct') {
             $reportedMethods[$methodName] = $methodTokenPointer;
         }
         $findMethodsStartTokenPointer = $methodTokenPointer + 1;
     }
     return $reportedMethods;
 }