function ArrayHelper::getValueEndPointer
1 call to ArrayHelper::getValueEndPointer()
- ArrayHelper::parse in vendor/
slevomat/ coding-standard/ SlevomatCodingStandard/ Helpers/ ArrayHelper.php - *
File
-
vendor/
slevomat/ coding-standard/ SlevomatCodingStandard/ Helpers/ ArrayHelper.php, line 198
Class
- ArrayHelper
- @internal
Namespace
SlevomatCodingStandard\HelpersCode
private static function getValueEndPointer(File $phpcsFile, int $endPointer, int $arrayCloserPointer, string $indentation) : int {
$tokens = $phpcsFile->getTokens();
$nextEffectivePointer = TokenHelper::findNextEffective($phpcsFile, $endPointer + 1, $arrayCloserPointer + 1);
if ($tokens[$nextEffectivePointer]['line'] === $tokens[$endPointer]['line']) {
return $nextEffectivePointer - 1;
}
for ($i = $endPointer + 1; $i < $nextEffectivePointer; $i++) {
if ($tokens[$i]['line'] === $tokens[$endPointer]['line']) {
$endPointer = $i;
continue;
}
$nextNonWhitespacePointer = TokenHelper::findNextNonWhitespace($phpcsFile, $i);
if (!in_array($tokens[$nextNonWhitespacePointer]['code'], TokenHelper::$inlineCommentTokenCodes, true)) {
break;
}
if ($indentation === IndentationHelper::getIndentation($phpcsFile, $nextNonWhitespacePointer)) {
$endPointer = $i - 1;
break;
}
$i = TokenHelper::findLastTokenOnLine($phpcsFile, $i);
$endPointer = $i;
}
return $endPointer;
}