diff options
author | Björn Schäpers <bjoern@hazardy.de> | 2022-03-13 23:07:01 +0300 |
---|---|---|
committer | Björn Schäpers <bjoern@hazardy.de> | 2022-03-14 14:44:47 +0300 |
commit | b7494a1d72c16a4d1f9cc8d4b3eba36934c35664 (patch) | |
tree | 31716e78e2996d590d229e13929a3835d2a69d8c /clang | |
parent | acd17a2be81a33abf4350e31ae1747dcb0f12332 (diff) |
[clang-format][NFC] Left renamed to OpeningBrace...
in TokenAnnotator::parseBrace. Left is misleading, because we have a
loop and Left does not move.
Also return early.
Differential Revision: https://reviews.llvm.org/D121558
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/Format/TokenAnnotator.cpp | 105 |
1 files changed, 54 insertions, 51 deletions
diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp index a918c0e7ab4d..8f433d78b7f7 100644 --- a/clang/lib/Format/TokenAnnotator.cpp +++ b/clang/lib/Format/TokenAnnotator.cpp @@ -774,63 +774,66 @@ private: } bool parseBrace() { - if (CurrentToken) { - FormatToken *Left = CurrentToken->Previous; - Left->ParentBracket = Contexts.back().ContextKind; + if (!CurrentToken) + return true; - if (Contexts.back().CaretFound) - Left->setType(TT_ObjCBlockLBrace); - Contexts.back().CaretFound = false; + assert(CurrentToken->Previous); + FormatToken &OpeningBrace = *CurrentToken->Previous; + assert(OpeningBrace.is(tok::l_brace)); + OpeningBrace.ParentBracket = Contexts.back().ContextKind; - ScopedContextCreator ContextCreator(*this, tok::l_brace, 1); - Contexts.back().ColonIsDictLiteral = true; - if (Left->is(BK_BracedInit)) - Contexts.back().IsExpression = true; - if (Style.isJavaScript() && Left->Previous && - Left->Previous->is(TT_JsTypeColon)) - Contexts.back().IsExpression = false; + if (Contexts.back().CaretFound) + OpeningBrace.setType(TT_ObjCBlockLBrace); + Contexts.back().CaretFound = false; - unsigned CommaCount = 0; - while (CurrentToken) { - if (CurrentToken->is(tok::r_brace)) { - assert(Left->Optional == CurrentToken->Optional); - Left->MatchingParen = CurrentToken; - CurrentToken->MatchingParen = Left; - if (Style.AlignArrayOfStructures != FormatStyle::AIAS_None) { - if (Left->ParentBracket == tok::l_brace && - couldBeInStructArrayInitializer() && CommaCount > 0) - Contexts.back().InStructArrayInitializer = true; - } - next(); - return true; - } - if (CurrentToken->isOneOf(tok::r_paren, tok::r_square)) - return false; - updateParameterCount(Left, CurrentToken); - if (CurrentToken->isOneOf(tok::colon, tok::l_brace, tok::less)) { - FormatToken *Previous = CurrentToken->getPreviousNonComment(); - if (Previous->is(TT_JsTypeOptionalQuestion)) - Previous = Previous->getPreviousNonComment(); - if ((CurrentToken->is(tok::colon) && - (!Contexts.back().ColonIsDictLiteral || !Style.isCpp())) || - Style.Language == FormatStyle::LK_Proto || - Style.Language == FormatStyle::LK_TextProto) { - Left->setType(TT_DictLiteral); - if (Previous->Tok.getIdentifierInfo() || - Previous->is(tok::string_literal)) - Previous->setType(TT_SelectorName); - } - if (CurrentToken->is(tok::colon) || Style.isJavaScript()) - Left->setType(TT_DictLiteral); + ScopedContextCreator ContextCreator(*this, tok::l_brace, 1); + Contexts.back().ColonIsDictLiteral = true; + if (OpeningBrace.is(BK_BracedInit)) + Contexts.back().IsExpression = true; + if (Style.isJavaScript() && OpeningBrace.Previous && + OpeningBrace.Previous->is(TT_JsTypeColon)) + Contexts.back().IsExpression = false; + + unsigned CommaCount = 0; + while (CurrentToken) { + if (CurrentToken->is(tok::r_brace)) { + assert(OpeningBrace.Optional == CurrentToken->Optional); + OpeningBrace.MatchingParen = CurrentToken; + CurrentToken->MatchingParen = &OpeningBrace; + if (Style.AlignArrayOfStructures != FormatStyle::AIAS_None) { + if (OpeningBrace.ParentBracket == tok::l_brace && + couldBeInStructArrayInitializer() && CommaCount > 0) + Contexts.back().InStructArrayInitializer = true; } - if (CurrentToken->is(tok::comma)) { - if (Style.isJavaScript()) - Left->overwriteFixedType(TT_DictLiteral); - ++CommaCount; + next(); + return true; + } + if (CurrentToken->isOneOf(tok::r_paren, tok::r_square)) + return false; + updateParameterCount(&OpeningBrace, CurrentToken); + if (CurrentToken->isOneOf(tok::colon, tok::l_brace, tok::less)) { + FormatToken *Previous = CurrentToken->getPreviousNonComment(); + if (Previous->is(TT_JsTypeOptionalQuestion)) + Previous = Previous->getPreviousNonComment(); + if ((CurrentToken->is(tok::colon) && + (!Contexts.back().ColonIsDictLiteral || !Style.isCpp())) || + Style.Language == FormatStyle::LK_Proto || + Style.Language == FormatStyle::LK_TextProto) { + OpeningBrace.setType(TT_DictLiteral); + if (Previous->Tok.getIdentifierInfo() || + Previous->is(tok::string_literal)) + Previous->setType(TT_SelectorName); } - if (!consumeToken()) - return false; + if (CurrentToken->is(tok::colon) || Style.isJavaScript()) + OpeningBrace.setType(TT_DictLiteral); } + if (CurrentToken->is(tok::comma)) { + if (Style.isJavaScript()) + OpeningBrace.overwriteFixedType(TT_DictLiteral); + ++CommaCount; + } + if (!consumeToken()) + return false; } return true; } |