function AssignmentInConditionSniff::processCondition
1 call to AssignmentInConditionSniff::processCondition()
- AssignmentInConditionSniff::process in vendor/
slevomat/ coding-standard/ SlevomatCodingStandard/ Sniffs/ ControlStructures/ AssignmentInConditionSniff.php - * @phpcsSuppress SlevomatCodingStandard.TypeHints.ParameterTypeHint.MissingNativeTypeHint *
File
-
vendor/
slevomat/ coding-standard/ SlevomatCodingStandard/ Sniffs/ ControlStructures/ AssignmentInConditionSniff.php, line 68
Class
Namespace
SlevomatCodingStandard\Sniffs\ControlStructuresCode
private function processCondition(File $phpcsFile, int $parenthesisOpener, int $parenthesisCloser, string $conditionType) : void {
$equalsTokenPointers = TokenHelper::findNextAll($phpcsFile, T_EQUAL, $parenthesisOpener + 1, $parenthesisCloser);
if ($equalsTokenPointers === []) {
return;
}
if (!$this->ignoreAssignmentsInsideFunctionCalls) {
$this->error($phpcsFile, $conditionType, $equalsTokenPointers[0]);
return;
}
$tokens = $phpcsFile->getTokens();
foreach ($equalsTokenPointers as $equalsTokenPointer) {
$parenthesisStarts = array_keys($tokens[$equalsTokenPointer]['nested_parenthesis']);
/** @var int $insideParenthesis */
$insideParenthesis = max($parenthesisStarts);
if ($insideParenthesis === $parenthesisOpener) {
$this->error($phpcsFile, $conditionType, $equalsTokenPointer);
continue;
}
$functionCall = TokenHelper::findPrevious($phpcsFile, TokenHelper::getOnlyNameTokenCodes(), $insideParenthesis, $parenthesisOpener);
if ($functionCall !== null) {
continue;
}
$this->error($phpcsFile, $conditionType, $equalsTokenPointer);
}
}