6
6
* @subpackage Sniffs
7
7
*/
8
8
9
+ namespace DWS \Sniffs \Arrays ;
10
+
11
+ use DWS \Helpers ;
12
+ use PHP_CodeSniffer \Sniffs \Sniff ;
13
+ use PHP_CodeSniffer \Files \File ;
14
+ use PHP_CodeSniffer \Util \Tokens ;
15
+
9
16
/**
10
17
* A test to ensure that trailing commas are included for multi-line arrays only.
11
18
*
12
19
* @package DWS
13
20
* @subpackage Sniffs
14
21
*/
15
- final class DWS_Sniffs_Arrays_TrailingCommaSniff implements PHP_CodeSniffer_Sniff
22
+ final class TrailingCommaSniff implements Sniff
16
23
{
17
24
/**
18
25
* Returns an array of tokens this test wants to listen for.
@@ -27,30 +34,30 @@ public function register()
27
34
/**
28
35
* Processes this sniff, when one of its tokens is encountered.
29
36
*
30
- * @param PHP_CodeSniffer_File $phpcsFile The current file being checked.
37
+ * @param PHP_CodeSniffer\Files\File $phpcsFile The current file being checked.
31
38
* @param int $stackPtr The position of the current token in the stack passed in $tokens.
32
39
*
33
40
* @return void
34
41
*/
35
- public function process (PHP_CodeSniffer_File $ phpcsFile , $ stackPtr )
42
+ public function process (File $ phpcsFile , $ stackPtr )
36
43
{
37
44
$ tokens = $ phpcsFile ->getTokens ();
38
- $ arrayStart = DWS_Helpers_Bracket ::bracketStart ($ phpcsFile , $ stackPtr );
39
- $ arrayEnd = DWS_Helpers_Bracket ::bracketEnd ($ phpcsFile , $ stackPtr );
45
+ $ arrayStart = Helpers \Bracket ::bracketStart ($ phpcsFile , $ stackPtr );
46
+ $ arrayEnd = Helpers \Bracket ::bracketEnd ($ phpcsFile , $ stackPtr );
40
47
41
48
$ isSingleLine = $ tokens [$ arrayStart ]['line ' ] === $ tokens [$ arrayEnd ]['line ' ];
42
49
43
- $ commas = DWS_Helpers_Array ::commaPositions ($ phpcsFile , $ arrayStart );
50
+ $ commas = Helpers \Arrays ::commaPositions ($ phpcsFile , $ arrayStart );
44
51
45
52
$ lastComma = array_pop ($ commas );
46
- $ trailingComma = $ phpcsFile ->findNext (PHP_CodeSniffer_Tokens ::$ emptyTokens , $ lastComma + 1 , $ arrayEnd , true ) === false ;
53
+ $ trailingComma = $ phpcsFile ->findNext (Tokens ::$ emptyTokens , $ lastComma + 1 , $ arrayEnd , true ) === false ;
47
54
48
55
if ($ isSingleLine ) {
49
56
if ($ trailingComma ) {
50
57
$ phpcsFile ->addError ('No trailing comma allowed on single-line arrays ' , $ lastComma , 'SingleLineTrailingComma ' );
51
58
}
52
59
} elseif (!$ trailingComma ) {
53
- $ previousItem = $ phpcsFile ->findPrevious (PHP_CodeSniffer_Tokens ::$ emptyTokens , $ arrayEnd - 1 , $ arrayStart , true );
60
+ $ previousItem = $ phpcsFile ->findPrevious (Tokens ::$ emptyTokens , $ arrayEnd - 1 , $ arrayStart , true );
54
61
$ phpcsFile ->addError ('Trailing comma required for multi-line arrays ' , $ previousItem , 'MultiLineTrailingComma ' );
55
62
}
56
63
}
0 commit comments