comparison vendor/drupal/coder/coder_sniffer/Drupal/Sniffs/ControlStructures/ElseIfSniff.php @ 17:129ea1e6d783

Update, including to Drupal core 8.6.10
author Chris Cannam
date Thu, 28 Feb 2019 13:21:36 +0000
parents 4c8ae668cc8c
children
comparison
equal deleted inserted replaced
16:c2387f117808 17:129ea1e6d783
5 * @category PHP 5 * @category PHP
6 * @package PHP_CodeSniffer 6 * @package PHP_CodeSniffer
7 * @link http://pear.php.net/package/PHP_CodeSniffer 7 * @link http://pear.php.net/package/PHP_CodeSniffer
8 */ 8 */
9 9
10 namespace Drupal\Sniffs\ControlStructures;
11
12 use PHP_CodeSniffer\Files\File;
13 use PHP_CodeSniffer\Sniffs\Sniff;
14
10 /** 15 /**
11 * Checks that "elseif" is used instead of "else if". 16 * Checks that "elseif" is used instead of "else if".
12 * 17 *
13 * @category PHP 18 * @category PHP
14 * @package PHP_CodeSniffer 19 * @package PHP_CodeSniffer
15 * @link http://pear.php.net/package/PHP_CodeSniffer 20 * @link http://pear.php.net/package/PHP_CodeSniffer
16 */ 21 */
17 class Drupal_Sniffs_ControlStructures_ElseIfSniff implements PHP_CodeSniffer_Sniff 22 class ElseIfSniff implements Sniff
18 { 23 {
19 24
20 25
21 /** 26 /**
22 * Returns an array of tokens this test wants to listen for. 27 * Returns an array of tokens this test wants to listen for.
31 36
32 37
33 /** 38 /**
34 * Processes this test, when one of its tokens is encountered. 39 * Processes this test, when one of its tokens is encountered.
35 * 40 *
36 * @param PHP_CodeSniffer_File $phpcsFile The file being scanned. 41 * @param \PHP_CodeSniffer\Files\File $phpcsFile The file being scanned.
37 * @param int $stackPtr The position of the current token in the 42 * @param int $stackPtr The position of the current token in the
38 * stack passed in $tokens. 43 * stack passed in $tokens.
39 * 44 *
40 * @return void 45 * @return void
41 */ 46 */
42 public function process(PHP_CodeSniffer_File $phpcsFile, $stackPtr) 47 public function process(File $phpcsFile, $stackPtr)
43 { 48 {
44 49
45 $tokens = $phpcsFile->getTokens(); 50 $tokens = $phpcsFile->getTokens();
46 51
47 $nextNonWhiteSpace = $phpcsFile->findNext( 52 $nextNonWhiteSpace = $phpcsFile->findNext(
52 null, 57 null,
53 true 58 true
54 ); 59 );
55 60
56 if ($tokens[$nextNonWhiteSpace]['code'] === T_IF) { 61 if ($tokens[$nextNonWhiteSpace]['code'] === T_IF) {
57 $fix = $phpcsFile->addFixableError('Use "elseif" in place of "else if"', $nextNonWhiteSpace); 62 $fix = $phpcsFile->addFixableError('Use "elseif" in place of "else if"', $nextNonWhiteSpace, 'ElseIfDeclaration');
58 if ($fix === true) { 63 if ($fix === true) {
59 $phpcsFile->fixer->beginChangeset(); 64 $phpcsFile->fixer->beginChangeset();
60 $phpcsFile->fixer->replaceToken($stackPtr, 'elseif'); 65 $phpcsFile->fixer->replaceToken($stackPtr, 'elseif');
61 for ($i = ($stackPtr + 1); $i < $nextNonWhiteSpace; $i++) { 66 for ($i = ($stackPtr + 1); $i < $nextNonWhiteSpace; $i++) {
62 if ($tokens[$i]['code'] === T_WHITESPACE) { 67 if ($tokens[$i]['code'] === T_WHITESPACE) {