Lines Matching refs:Current

48 static bool startsNextParameter(const FormatToken &Current,  in startsNextParameter()  argument
50 const FormatToken &Previous = *Current.Previous; in startsNextParameter()
51 if (Current.is(TT_CtorInitializerComma) && in startsNextParameter()
54 return Previous.is(tok::comma) && !Current.isTrailingComment() && in startsNextParameter()
93 const FormatToken &Current = *State.NextToken; in canBreak() local
94 const FormatToken &Previous = *Current.Previous; in canBreak()
95 assert(&Previous == Current.Previous); in canBreak()
96 if (!Current.CanBreakBefore && in canBreak()
98 Current.closesBlockTypeList(Style))) in canBreak()
102 if (!Current.MustBreakBefore && Previous.is(tok::l_brace) && in canBreak()
114 State.LowestLevelOnLine < Current.NestingLevel) in canBreak()
116 if (Current.isMemberAccess() && State.Stack.back().ContainsUnwrappedBuilder) in canBreak()
128 if (Current.is(TT_FunctionDeclarationName) && in canBreak()
137 const FormatToken &Current = *State.NextToken; in mustBreak() local
138 const FormatToken &Previous = *Current.Previous; in mustBreak()
139 if (Current.MustBreakBefore || Current.is(TT_InlineASMColon)) in mustBreak()
142 Current.closesBlockTypeList(Style)) in mustBreak()
146 if ((startsNextParameter(Current, Style) || Previous.is(tok::semi) || in mustBreak()
147 (Style.BreakBeforeTernaryOperators && Current.is(TT_ConditionalExpr) && in mustBreak()
151 State.Stack.back().BreakBeforeParameter && !Current.isTrailingComment() && in mustBreak()
152 !Current.isOneOf(tok::r_paren, tok::r_brace)) in mustBreak()
160 if (Current.is(TT_CtorInitializerColon) && in mustBreak()
164 if (Current.is(TT_SelectorName) && State.Stack.back().ObjCSelectorNameFound && in mustBreak()
174 Previous.is(tok::comma) || Current.NestingLevel < 2) && in mustBreak()
183 if (Previous.is(TT_BinaryOperator) && Current.CanBreakBefore) { in mustBreak()
199 if ((!IsComparison || LHSIsBinaryExpr) && !Current.isTrailingComment() && in mustBreak()
203 } else if (Current.is(TT_BinaryOperator) && Current.CanBreakBefore && in mustBreak()
209 if (Current.is(tok::lessless) && Current.isNot(TT_OverloadedOperator) && in mustBreak()
214 if (Current.NestingLevel == 0 && !Current.isTrailingComment()) { in mustBreak()
222 if (Previous.is(TT_LeadingJavaAnnotation) && Current.isNot(tok::l_paren) && in mustBreak()
223 Current.isNot(TT_LeadingJavaAnnotation)) in mustBreak()
228 if (Current.isOneOf(TT_FunctionDeclarationName, tok::kw_operator) && in mustBreak()
232 if (startsSegmentOfBuilderTypeCall(Current) && in mustBreak()
241 Previous.is(tok::l_brace) && !Current.isOneOf(tok::r_brace, tok::comment)) in mustBreak()
244 if (Current.is(tok::lessless) && Previous.is(tok::identifier) && in mustBreak()
254 const FormatToken &Current = *State.NextToken; in addTokenToState() local
257 if ((Current.is(TT_ImplicitStringLiteral) && in addTokenToState()
258 (Current.Previous->Tok.getIdentifierInfo() == nullptr || in addTokenToState()
259 Current.Previous->Tok.getIdentifierInfo()->getPPKeywordID() == in addTokenToState()
262 SourceMgr.getSpellingColumnNumber(Current.WhitespaceRange.getEnd()); in addTokenToState()
263 if (Current.LastNewlineOffset != 0) { in addTokenToState()
269 SourceMgr.getSpellingColumnNumber(Current.WhitespaceRange.getBegin()); in addTokenToState()
288 FormatToken &Current = *State.NextToken; in addTokenOnCurrentLine() local
290 if (Current.is(tok::equal) && in addTokenOnCurrentLine()
291 (State.Line->First->is(tok::kw_for) || Current.NestingLevel == 0) && in addTokenOnCurrentLine()
306 unsigned Spaces = Current.SpacesRequiredBefore + ExtraSpaces; in addTokenOnCurrentLine()
309 Whitespaces.replaceWhitespace(Current, /*Newlines=*/0, /*IndentLevel=*/0, in addTokenOnCurrentLine()
312 if (Current.is(TT_SelectorName) && in addTokenOnCurrentLine()
314 if (Current.LongestObjCSelectorName == 0) in addTokenOnCurrentLine()
316 else if (State.Stack.back().Indent + Current.LongestObjCSelectorName > in addTokenOnCurrentLine()
317 State.Column + Spaces + Current.ColumnWidth) in addTokenOnCurrentLine()
321 Current.LongestObjCSelectorName; in addTokenOnCurrentLine()
323 State.Stack.back().ColonPos = State.Column + Spaces + Current.ColumnWidth; in addTokenOnCurrentLine()
328 (Current.isNot(TT_LineComment) || Previous.BlockKind == BK_BracedInit)) in addTokenOnCurrentLine()
330 if (State.Stack.back().AvoidBinPacking && startsNextParameter(Current, Style)) in addTokenOnCurrentLine()
332 if (startsSegmentOfBuilderTypeCall(Current) && in addTokenOnCurrentLine()
336 if (Current.is(TT_LambdaArrow) && Style.Language == FormatStyle::LK_Java) in addTokenOnCurrentLine()
338 if (Current.isMemberAccess() && Previous.is(tok::r_paren) && in addTokenOnCurrentLine()
351 if (Current.isNot(tok::comment) && Previous.is(tok::l_paren) && in addTokenOnCurrentLine()
358 } else if (!Current.isOneOf(tok::comment, tok::caret) && in addTokenOnCurrentLine()
367 Current.StartsBinaryExpression)) { in addTokenOnCurrentLine()
394 FormatToken &Current = *State.NextToken; in addTokenOnNewLine() local
401 const FormatToken *PreviousNonComment = Current.getPreviousNonComment(); in addTokenOnNewLine()
404 NextNonComment = &Current; in addTokenOnNewLine()
434 Current.NestingLevel != 0 || !PreviousNonComment->is(tok::equal) || in addTokenOnNewLine()
435 !Current.is(Keywords.kw_function)) in addTokenOnNewLine()
479 Current.NestingLevel == 0) in addTokenOnNewLine()
484 if (Current.is(TT_BinaryOperator) && Current.CanBreakBefore) in addTokenOnNewLine()
489 1u, std::min(Current.NewlinesBefore, Style.MaxEmptyLinesToKeep + 1)); in addTokenOnNewLine()
490 Whitespaces.replaceWhitespace(Current, Newlines, in addTokenOnNewLine()
495 if (!Current.isTrailingComment()) in addTokenOnNewLine()
497 State.StartOfLineLevel = Current.NestingLevel; in addTokenOnNewLine()
498 State.LowestLevelOnLine = Current.NestingLevel; in addTokenOnNewLine()
503 Current.is(tok::r_brace) && State.Stack.size() > 1 && in addTokenOnNewLine()
512 Current.NestingLevel != 0) && in addTokenOnNewLine()
516 Current.isNot(TT_BinaryOperator) && !PreviousNonComment->opensScope()) in addTokenOnNewLine()
542 FormatToken &Current = *State.NextToken; in getNewLineColumn() local
543 const FormatToken &Previous = *Current.Previous; in getNewLineColumn()
548 const FormatToken *PreviousNonComment = Current.getPreviousNonComment(); in getNewLineColumn()
551 NextNonComment = &Current; in getNewLineColumn()
555 Current.isOneOf(Keywords.kw_implements, Keywords.kw_extends)) in getNewLineColumn()
560 return Current.NestingLevel == 0 ? State.FirstIndent in getNewLineColumn()
562 if (Current.isOneOf(tok::r_brace, tok::r_square) && State.Stack.size() > 1) { in getNewLineColumn()
563 if (Current.closesBlockTypeList(Style)) in getNewLineColumn()
565 if (Current.MatchingParen && in getNewLineColumn()
566 Current.MatchingParen->BlockKind == BK_BracedInit) in getNewLineColumn()
570 if (Current.is(tok::identifier) && Current.Next && in getNewLineColumn()
571 Current.Next->is(TT_DictLiteral)) in getNewLineColumn()
640 if (Previous.is(tok::r_paren) && !Current.isBinaryOperator() && in getNewLineColumn()
641 !Current.isOneOf(tok::colon, tok::comment)) in getNewLineColumn()
654 const FormatToken &Current = *State.NextToken; in moveStateToNextToken() local
656 if (Current.is(TT_InheritanceColon)) in moveStateToNextToken()
658 if (Current.is(tok::lessless) && Current.isNot(TT_OverloadedOperator)) { in moveStateToNextToken()
664 if ((Current.is(TT_BinaryOperator) && Current.isNot(tok::lessless)) || in moveStateToNextToken()
665 Current.is(TT_ConditionalExpr)) in moveStateToNextToken()
667 if (Current.is(TT_ArraySubscriptLSquare) && in moveStateToNextToken()
670 if ((Current.is(tok::question) && Style.BreakBeforeTernaryOperators) || in moveStateToNextToken()
671 (Current.getPreviousNonComment() && Current.isNot(tok::colon) && in moveStateToNextToken()
672 Current.getPreviousNonComment()->is(tok::question) && in moveStateToNextToken()
675 if (!Current.opensScope() && !Current.closesScope()) in moveStateToNextToken()
677 std::min(State.LowestLevelOnLine, Current.NestingLevel); in moveStateToNextToken()
678 if (Current.isMemberAccess()) in moveStateToNextToken()
680 Current.LastOperator ? 0 : State.Column; in moveStateToNextToken()
681 if (Current.is(TT_SelectorName)) in moveStateToNextToken()
683 if (Current.is(TT_CtorInitializerColon)) { in moveStateToNextToken()
696 if (Current.isOneOf(TT_BinaryOperator, TT_ConditionalExpr) && Newline) in moveStateToNextToken()
698 State.Column + Current.ColumnWidth + 1; in moveStateToNextToken()
701 const FormatToken *Previous = Current.getPreviousNonComment(); in moveStateToNextToken()
709 if (Current.isNot(tok::comment) && Previous && in moveStateToNextToken()
730 if (Current.isStringLiteral() && State.StartOfStringLiteral == 0) in moveStateToNextToken()
732 if (Current.is(TT_ObjCStringLiteral) && State.StartOfStringLiteral == 0) in moveStateToNextToken()
734 else if (!Current.isOneOf(tok::comment, tok::identifier, tok::hash) && in moveStateToNextToken()
735 !Current.isStringLiteral()) in moveStateToNextToken()
738 State.Column += Current.ColumnWidth; in moveStateToNextToken()
740 unsigned Penalty = breakProtrudingToken(Current, State, DryRun); in moveStateToNextToken()
746 if (Current.Role) in moveStateToNextToken()
747 Current.Role->formatFromToken(State, this, DryRun); in moveStateToNextToken()
761 const FormatToken &Current = *State.NextToken; in moveStatePastFakeLParens() local
762 const FormatToken *Previous = Current.getPreviousNonComment(); in moveStatePastFakeLParens()
774 I = Current.FakeLParens.rbegin(), in moveStatePastFakeLParens()
775 E = Current.FakeLParens.rend(); in moveStatePastFakeLParens()
783 if (!Current.isTrailingComment() && in moveStatePastFakeLParens()
788 Current.NestingLevel == 0)) in moveStatePastFakeLParens()
819 if (*I != prec::Conditional && !Current.is(TT_UnaryOperator)) in moveStatePastFakeLParens()
828 !Current.isTrailingComment())) in moveStatePastFakeLParens()
851 const FormatToken &Current = *State.NextToken; in moveStatePastScopeOpener() local
852 if (!Current.opensScope()) in moveStatePastScopeOpener()
855 if (Current.MatchingParen && Current.BlockKind == BK_Block) { in moveStatePastScopeOpener()
867 if (Current.isOneOf(tok::l_brace, TT_ArrayInitializerLSquare)) { in moveStatePastScopeOpener()
868 if (Current.opensBlockTypeList(Style)) { in moveStatePastScopeOpener()
875 const FormatToken *NextNoComment = Current.getNextNonComment(); in moveStatePastScopeOpener()
877 Current.isOneOf(TT_ArrayInitializerLSquare, TT_DictLiteral) || in moveStatePastScopeOpener()
880 if (Current.ParameterCount > 1) in moveStatePastScopeOpener()
892 if (Current.Tok.getKind() == tok::less && in moveStatePastScopeOpener()
893 Current.ParentBracket == tok::l_paren) { in moveStatePastScopeOpener()
902 (Current.PackingKind == PPK_OnePerLine || in moveStatePastScopeOpener()
904 Current.PackingKind == PPK_Inconclusive))); in moveStatePastScopeOpener()
905 if (Current.is(TT_ObjCMethodExpr) && Current.MatchingParen) { in moveStatePastScopeOpener()
909 if (getLengthToMatchingParen(Current) + State.Column > in moveStatePastScopeOpener()
915 for (const FormatToken *Tok = &Current; in moveStatePastScopeOpener()
916 Tok && Tok != Current.MatchingParen; Tok = Tok->Next) { in moveStatePastScopeOpener()
927 (Current.is(TT_TemplateOpener) && in moveStatePastScopeOpener()
933 State.Stack.back().HasMultipleNestedBlocks = Current.BlockParameterCount > 1; in moveStatePastScopeOpener()
937 const FormatToken &Current = *State.NextToken; in moveStatePastScopeCloser() local
938 if (!Current.closesScope()) in moveStatePastScopeCloser()
944 (Current.isOneOf(tok::r_paren, tok::r_square) || in moveStatePastScopeCloser()
945 (Current.is(tok::r_brace) && State.NextToken != State.Line->First) || in moveStatePastScopeCloser()
949 if (Current.is(tok::r_square)) { in moveStatePastScopeCloser()
951 const FormatToken *NextNonComment = Current.getNextNonComment(); in moveStatePastScopeCloser()
972 unsigned ContinuationIndenter::addMultilineToken(const FormatToken &Current, in addMultilineToken() argument
981 State.Column = Current.LastLineColumnWidth; in addMultilineToken()
988 unsigned ContinuationIndenter::breakProtrudingToken(const FormatToken &Current, in breakProtrudingToken() argument
993 if (Current.isNot(TT_BlockComment) && Current.IsMultiline) in breakProtrudingToken()
994 return addMultilineToken(Current, State); in breakProtrudingToken()
997 if (Current.is(TT_ImplicitStringLiteral) || in breakProtrudingToken()
1001 if (!Current.isStringLiteral() && !Current.is(tok::comment)) in breakProtrudingToken()
1005 unsigned StartColumn = State.Column - Current.ColumnWidth; in breakProtrudingToken()
1008 if (Current.isStringLiteral()) { in breakProtrudingToken()
1024 if (Current.IsUnterminatedLiteral) in breakProtrudingToken()
1027 StringRef Text = Current.TokenText; in breakProtrudingToken()
1035 if (Text.startswith("\"") && Current.Previous && in breakProtrudingToken()
1036 Current.Previous->is(tok::at)) { in breakProtrudingToken()
1047 Current, State.Line->Level, StartColumn, Prefix, Postfix, in breakProtrudingToken()
1052 } else if (Current.is(TT_BlockComment) && Current.isTrailingComment()) { in breakProtrudingToken()
1053 if (CommentPragmasRegex.match(Current.TokenText.substr(2))) in breakProtrudingToken()
1056 Current, State.Line->Level, StartColumn, Current.OriginalColumn, in breakProtrudingToken()
1057 !Current.Previous, State.Line->InPPDirective, Encoding, Style)); in breakProtrudingToken()
1058 } else if (Current.is(TT_LineComment) && in breakProtrudingToken()
1059 (Current.Previous == nullptr || in breakProtrudingToken()
1060 Current.Previous->isNot(TT_ImplicitStringLiteral))) { in breakProtrudingToken()
1061 if (CommentPragmasRegex.match(Current.TokenText.substr(2))) in breakProtrudingToken()
1063 Token.reset(new BreakableLineComment(Current, State.Line->Level, in breakProtrudingToken()
1071 if (Current.UnbreakableTailLength >= ColumnLimit) in breakProtrudingToken()
1074 unsigned RemainingSpace = ColumnLimit - Current.UnbreakableTailLength; in breakProtrudingToken()
1116 Penalty += Current.SplitPenalty; in breakProtrudingToken()
1134 if (Current.isNot(TT_LineComment)) { in breakProtrudingToken()
1139 Penalty += Current.isStringLiteral() ? Style.PenaltyBreakString in breakProtrudingToken()
1153 const FormatToken &Current = *State.NextToken; in nextIsMultilineString() local
1154 if (!Current.isStringLiteral() || Current.is(TT_ImplicitStringLiteral)) in nextIsMultilineString()
1159 if (Current.TokenText.startswith("R\"")) in nextIsMultilineString()
1161 if (Current.IsMultiline) in nextIsMultilineString()
1163 if (Current.getNextNonComment() && in nextIsMultilineString()
1164 Current.getNextNonComment()->isStringLiteral()) in nextIsMultilineString()
1167 State.Column + Current.ColumnWidth + Current.UnbreakableTailLength > in nextIsMultilineString()