PhpCsFixer\Fixer\Basic\BracesFixer::fixCommentBeforeBrace PHP Method

fixCommentBeforeBrace() private method

private fixCommentBeforeBrace ( Tokens $tokens )
$tokens PhpCsFixer\Tokenizer\Tokens
    private function fixCommentBeforeBrace(Tokens $tokens)
    {
        $tokensAnalyzer = new TokensAnalyzer($tokens);
        $controlTokens = $this->getControlTokens();
        for ($index = $tokens->count() - 1; 0 <= $index; --$index) {
            $token = $tokens[$index];
            if ($token->isGivenKind($controlTokens)) {
                $prevIndex = $this->findParenthesisEnd($tokens, $index);
            } elseif ($token->isGivenKind(T_FUNCTION) && $tokensAnalyzer->isLambda($index) || $token->isGivenKind(T_CLASS) && $tokensAnalyzer->isAnonymousClass($index)) {
                $prevIndex = $tokens->getNextTokenOfKind($index, array('{'));
                $prevIndex = $tokens->getPrevMeaningfulToken($prevIndex);
            } else {
                continue;
            }
            $commentIndex = $tokens->getNextNonWhitespace($prevIndex);
            $commentToken = $tokens[$commentIndex];
            if (!$commentToken->isGivenKind(T_COMMENT) || '/*' === substr($commentToken->getContent(), 0, 2)) {
                continue;
            }
            $braceIndex = $tokens->getNextMeaningfulToken($commentIndex);
            $braceToken = $tokens[$braceIndex];
            if (!$braceToken->equals('{')) {
                continue;
            }
            $tokenTmp = $tokens[$braceIndex];
            $trimIndex = $tokens->getPrevNonWhitespace($braceIndex);
            $tokens[$trimIndex]->setContent(rtrim($tokens[$trimIndex]->getContent()));
            $newBraceIndex = $prevIndex + 1;
            for ($i = $braceIndex; $i > $newBraceIndex; --$i) {
                $tokens[$i] = $tokens[$i - 1];
            }
            $tokens[$newBraceIndex] = $tokenTmp;
            if ($tokens[$braceIndex]->isWhitespace()) {
                $tokens[$braceIndex]->clear();
            }
        }
    }