private function clearIncludies(Tokens $tokens, array $includies) { foreach (array_reverse($includies) as $includy) { if ($includy['end']) { $tokens->removeLeadingWhitespace($includy['end']); } $braces = $includy['braces']; if ($braces) { $nextToken = $tokens[$tokens->getNextMeaningfulToken($braces['close'])]; if ($nextToken->equals(';')) { $tokens->removeLeadingWhitespace($braces['open']); $tokens->removeTrailingWhitespace($braces['open']); $tokens->removeLeadingWhitespace($braces['close']); $tokens->removeTrailingWhitespace($braces['close']); $tokens[$braces['open']] = new Token(array(T_WHITESPACE, ' ')); $tokens[$braces['close']]->clear(); } } $nextIndex = $includy['begin'] + 1; $nextToken = $tokens[$nextIndex]; while ($nextToken->isEmpty()) { $nextToken = $tokens[++$nextIndex]; } if ($nextToken->isWhitespace()) { $nextToken->setContent(' '); } elseif ($braces || $tokens[$nextIndex]->isGivenKind(array(T_VARIABLE, T_CONSTANT_ENCAPSED_STRING, T_COMMENT))) { $tokens->insertAt($includy['begin'] + 1, new Token(array(T_WHITESPACE, ' '))); } } }
/** * {@inheritdoc} */ public function fix(\SplFileInfo $file, Tokens $tokens) { $count = $tokens->count(); for ($index = 0; $index < $count; ++$index) { if (!$tokens[$index]->isGivenKind(T_DECLARE)) { continue; } while (!$tokens[++$index]->equals('=')) { } $tokens->removeLeadingWhitespace($index); $tokens->removeTrailingWhitespace($index); } }
/** * {@inheritdoc} */ public function fix(\SplFileInfo $file, Tokens $tokens) { $tokensAnalyzer = new TokensAnalyzer($tokens); for ($index = $tokens->count() - 1; $index >= 0; --$index) { if ($tokensAnalyzer->isUnarySuccessorOperator($index)) { $tokens->removeLeadingWhitespace($index); continue; } if ($tokensAnalyzer->isUnaryPredecessorOperator($index)) { $tokens->removeTrailingWhitespace($index); continue; } } }
/** * {@inheritdoc} */ public function fix(\SplFileInfo $file, Tokens $tokens) { foreach ($tokens as $index => $token) { if (!$token->equals('.')) { continue; } if (!$tokens[$tokens->getPrevNonWhitespace($index)]->isGivenKind(T_LNUMBER)) { $tokens->removeLeadingWhitespace($index, " \t"); } if (!$tokens[$tokens->getNextNonWhitespace($index)]->isGivenKind(T_LNUMBER)) { $tokens->removeTrailingWhitespace($index, " \t"); } } }
private function fixArray(Tokens $tokens, $index) { $tokensAnalyzer = new TokensAnalyzer($tokens); if ($tokensAnalyzer->isArrayMultiLine($index)) { return; } $startIndex = $index; if ($tokens[$startIndex]->isGivenKind(T_ARRAY)) { $startIndex = $tokens->getNextTokenOfKind($startIndex, array('(')); $endIndex = $tokens->findBlockEnd(Tokens::BLOCK_TYPE_PARENTHESIS_BRACE, $startIndex); } else { $endIndex = $tokens->findBlockEnd(Tokens::BLOCK_TYPE_ARRAY_SQUARE_BRACE, $startIndex); } $beforeEndIndex = $tokens->getPrevMeaningfulToken($endIndex); $beforeEndToken = $tokens[$beforeEndIndex]; if ($beforeEndToken->equals(',')) { $tokens->removeTrailingWhitespace($beforeEndIndex); $beforeEndToken->clear(); } }
/** * @param Tokens $tokens * @param int $index */ private function fixDeclareStatement(Tokens $tokens, $index) { $tokens->removeTrailingWhitespace($index); $startParenthesisIndex = $tokens->getNextTokenOfKind($index, array('(')); $endParenthesisIndex = $tokens->findBlockEnd(Tokens::BLOCK_TYPE_PARENTHESIS_BRACE, $startParenthesisIndex); $startBraceIndex = $tokens->getNextTokenOfKind($endParenthesisIndex, array(';', '{')); $startBraceToken = $tokens[$startBraceIndex]; if ($startBraceToken->equals('{')) { $this->fixSingleLineWhitespaceForDeclare($tokens, $startBraceIndex); } $this->removeWhitespaceInParenthesis($tokens, $startParenthesisIndex, $endParenthesisIndex); }
/** * @param Tokens $tokens * @param int $index index of concatenation '.' token */ private function fixConcatenationToNoSpace(Tokens $tokens, $index) { if (!$tokens[$tokens->getPrevNonWhitespace($index)]->isGivenKind(T_LNUMBER)) { $tokens->removeLeadingWhitespace($index, " \t"); } if (!$tokens[$tokens->getNextNonWhitespace($index)]->isGivenKind(array(T_LNUMBER, T_COMMENT, T_DOC_COMMENT))) { $tokens->removeTrailingWhitespace($index, " \t"); } }