@@ -81,7 +81,8 @@ public static function getProperties(File $phpcsFile, $stackPtr)
81
81
$ tokens = $ phpcsFile ->getTokens ();
82
82
$ arrowOpenClose = self ::getArrowFunctionOpenClose ($ phpcsFile , $ stackPtr );
83
83
84
- if (isset ($ tokens [$ stackPtr ]) === false
84
+ if (
85
+ isset ($ tokens [$ stackPtr ]) === false
85
86
|| ($ tokens [$ stackPtr ]['code ' ] !== \T_FUNCTION
86
87
&& $ tokens [$ stackPtr ]['code ' ] !== \T_CLOSURE
87
88
&& $ arrowOpenClose === false )
@@ -169,7 +170,8 @@ public static function getProperties(File $phpcsFile, $stackPtr)
169
170
break ;
170
171
}
171
172
172
- if ($ tokens [$ i ]['type ' ] === 'T_NULLABLE '
173
+ if (
174
+ $ tokens [$ i ]['type ' ] === 'T_NULLABLE '
173
175
// Handle nullable tokens in PHPCS < 2.8.0.
174
176
|| (\defined ('T_NULLABLE ' ) === false && $ tokens [$ i ]['code ' ] === \T_INLINE_THEN )
175
177
// Handle nullable tokens with arrow functions in PHPCS 2.8.0 - 2.9.0.
@@ -242,14 +244,16 @@ public static function getArrowFunctionOpenClose(File $phpcsFile, $stackPtr)
242
244
{
243
245
$ tokens = $ phpcsFile ->getTokens ();
244
246
245
- if (isset ($ tokens [$ stackPtr ]) === false
247
+ if (
248
+ isset ($ tokens [$ stackPtr ]) === false
246
249
|| isset (Collections::arrowFunctionTokensBC ()[$ tokens [$ stackPtr ]['code ' ]]) === false
247
250
|| \strtolower ($ tokens [$ stackPtr ]['content ' ]) !== 'fn '
248
251
) {
249
252
return false ;
250
253
}
251
254
252
- if ($ tokens [$ stackPtr ]['type ' ] === 'T_FN '
255
+ if (
256
+ $ tokens [$ stackPtr ]['type ' ] === 'T_FN '
253
257
&& isset ($ tokens [$ stackPtr ]['scope_closer ' ]) === true
254
258
&& \version_compare (Helper::getVersion (), '3.5.4 ' , '> ' ) === true
255
259
) {
@@ -304,7 +308,8 @@ public static function getArrowFunctionOpenClose(File $phpcsFile, $stackPtr)
304
308
true
305
309
);
306
310
307
- if ($ arrow === false
311
+ if (
312
+ $ arrow === false
308
313
|| ($ tokens [$ arrow ]['code ' ] !== \T_DOUBLE_ARROW && $ tokens [$ arrow ]['type ' ] !== 'T_FN_ARROW ' )
309
314
) {
310
315
return false ;
@@ -315,11 +320,13 @@ public static function getArrowFunctionOpenClose(File $phpcsFile, $stackPtr)
315
320
$ lastEndToken = null ;
316
321
317
322
for ($ scopeCloser = ($ arrow + 1 ); $ scopeCloser < $ phpcsFile ->numTokens ; $ scopeCloser ++) {
318
- if (isset (self ::$ arrowFunctionEndTokens [$ tokens [$ scopeCloser ]['code ' ]]) === true
323
+ if (
324
+ isset (self ::$ arrowFunctionEndTokens [$ tokens [$ scopeCloser ]['code ' ]]) === true
319
325
// BC for misidentified ternary else in some PHPCS versions.
320
326
&& ($ tokens [$ scopeCloser ]['code ' ] !== \T_COLON || $ inTernary === false )
321
327
) {
322
- if ($ lastEndToken !== null
328
+ if (
329
+ $ lastEndToken !== null
323
330
&& $ tokens [$ scopeCloser ]['code ' ] === \T_CLOSE_PARENTHESIS
324
331
&& $ tokens [$ scopeCloser ]['parenthesis_opener ' ] < $ arrow
325
332
) {
@@ -338,7 +345,8 @@ public static function getArrowFunctionOpenClose(File $phpcsFile, $stackPtr)
338
345
}
339
346
}
340
347
341
- if (isset ($ tokens [$ scopeCloser ]['scope_closer ' ]) === true
348
+ if (
349
+ isset ($ tokens [$ scopeCloser ]['scope_closer ' ]) === true
342
350
&& $ tokens [$ scopeCloser ]['code ' ] !== \T_INLINE_ELSE
343
351
&& $ tokens [$ scopeCloser ]['code ' ] !== \T_END_HEREDOC
344
352
&& $ tokens [$ scopeCloser ]['code ' ] !== \T_END_NOWDOC
@@ -488,7 +496,8 @@ public static function getParameters(File $phpcsFile, $stackPtr)
488
496
$ tokens = $ phpcsFile ->getTokens ();
489
497
$ arrowOpenClose = self ::getArrowFunctionOpenClose ($ phpcsFile , $ stackPtr );
490
498
491
- if (isset ($ tokens [$ stackPtr ]) === false
499
+ if (
500
+ isset ($ tokens [$ stackPtr ]) === false
492
501
|| ($ tokens [$ stackPtr ]['code ' ] !== \T_FUNCTION
493
502
&& $ tokens [$ stackPtr ]['code ' ] !== \T_CLOSURE
494
503
&& $ tokens [$ stackPtr ]['code ' ] !== \T_USE
@@ -500,7 +509,8 @@ public static function getParameters(File $phpcsFile, $stackPtr)
500
509
if ($ tokens [$ stackPtr ]['code ' ] === \T_USE ) {
501
510
// This will work PHPCS 3.x/4.x cross-version without much overhead.
502
511
$ opener = $ phpcsFile ->findNext (Tokens::$ emptyTokens , ($ stackPtr + 1 ), null , true );
503
- if ($ opener === false
512
+ if (
513
+ $ opener === false
504
514
|| $ tokens [$ opener ]['code ' ] !== \T_OPEN_PARENTHESIS
505
515
|| UseStatements::isClosureUse ($ phpcsFile , $ stackPtr ) === false
506
516
) {
@@ -732,13 +742,15 @@ public static function isArrowFunction(File $phpcsFile, $stackPtr)
732
742
return false ;
733
743
}
734
744
735
- if ($ tokens [$ stackPtr ]['type ' ] === 'T_FN '
745
+ if (
746
+ $ tokens [$ stackPtr ]['type ' ] === 'T_FN '
736
747
&& isset ($ tokens [$ stackPtr ]['scope_closer ' ]) === true
737
748
) {
738
749
return true ;
739
750
}
740
751
741
- if (isset (Collections::arrowFunctionTokensBC ()[$ tokens [$ stackPtr ]['code ' ]]) === false
752
+ if (
753
+ isset (Collections::arrowFunctionTokensBC ()[$ tokens [$ stackPtr ]['code ' ]]) === false
742
754
|| \strtolower ($ tokens [$ stackPtr ]['content ' ]) !== 'fn '
743
755
) {
744
756
return false ;
0 commit comments