Skip to content

Commit e00d32a

Browse files
authored
[clang-format][NFC] Delete TT_LambdaArrow (#70519)
It's one type of TT_TrailingReturnArrow.
1 parent b1554fe commit e00d32a

File tree

5 files changed

+29
-30
lines changed

5 files changed

+29
-30
lines changed

clang/lib/Format/ContinuationIndenter.cpp

+5-3
Original file line numberDiff line numberDiff line change
@@ -813,8 +813,10 @@ void ContinuationIndenter::addTokenOnCurrentLine(LineState &State, bool DryRun,
813813
CurrentState.ContainsUnwrappedBuilder = true;
814814
}
815815

816-
if (Current.is(TT_LambdaArrow) && Style.Language == FormatStyle::LK_Java)
816+
if (Current.is(TT_TrailingReturnArrow) &&
817+
Style.Language == FormatStyle::LK_Java) {
817818
CurrentState.NoLineBreak = true;
819+
}
818820
if (Current.isMemberAccess() && Previous.is(tok::r_paren) &&
819821
(Previous.MatchingParen &&
820822
(Previous.TotalLength - Previous.MatchingParen->TotalLength > 10))) {
@@ -969,7 +971,7 @@ unsigned ContinuationIndenter::addTokenOnNewLine(LineState &State,
969971
//
970972
// is common and should be formatted like a free-standing function. The same
971973
// goes for wrapping before the lambda return type arrow.
972-
if (Current.isNot(TT_LambdaArrow) &&
974+
if (Current.isNot(TT_TrailingReturnArrow) &&
973975
(!Style.isJavaScript() || Current.NestingLevel != 0 ||
974976
!PreviousNonComment || PreviousNonComment->isNot(tok::equal) ||
975977
!Current.isOneOf(Keywords.kw_async, Keywords.kw_function))) {
@@ -1548,7 +1550,7 @@ unsigned ContinuationIndenter::moveStateToNextToken(LineState &State,
15481550
}
15491551
if (Current.isOneOf(TT_BinaryOperator, TT_ConditionalExpr) && Newline)
15501552
CurrentState.NestedBlockIndent = State.Column + Current.ColumnWidth + 1;
1551-
if (Current.isOneOf(TT_LambdaLSquare, TT_LambdaArrow))
1553+
if (Current.isOneOf(TT_LambdaLSquare, TT_TrailingReturnArrow))
15521554
CurrentState.LastSpace = State.Column;
15531555
if (Current.is(TT_RequiresExpression) &&
15541556
Style.RequiresExpressionIndentation == FormatStyle::REI_Keyword) {

clang/lib/Format/FormatToken.h

+1-2
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@ namespace format {
100100
TYPE(JsTypeColon) \
101101
TYPE(JsTypeOperator) \
102102
TYPE(JsTypeOptionalQuestion) \
103-
TYPE(LambdaArrow) \
104103
TYPE(LambdaLBrace) \
105104
TYPE(LambdaLSquare) \
106105
TYPE(LeadingJavaAnnotation) \
@@ -690,7 +689,7 @@ struct FormatToken {
690689
bool isMemberAccess() const {
691690
return isOneOf(tok::arrow, tok::period, tok::arrowstar) &&
692691
!isOneOf(TT_DesignatedInitializerPeriod, TT_TrailingReturnArrow,
693-
TT_LambdaArrow, TT_LeadingJavaAnnotation);
692+
TT_LeadingJavaAnnotation);
694693
}
695694

696695
bool isUnaryOperator() const {

clang/lib/Format/TokenAnnotator.cpp

+16-18
Original file line numberDiff line numberDiff line change
@@ -766,7 +766,8 @@ class AnnotatingParser {
766766
}
767767
// An arrow after an ObjC method expression is not a lambda arrow.
768768
if (CurrentToken->getType() == TT_ObjCMethodExpr &&
769-
CurrentToken->Next && CurrentToken->Next->is(TT_LambdaArrow)) {
769+
CurrentToken->Next &&
770+
CurrentToken->Next->is(TT_TrailingReturnArrow)) {
770771
CurrentToken->Next->overwriteFixedType(TT_Unknown);
771772
}
772773
Left->MatchingParen = CurrentToken;
@@ -1409,10 +1410,8 @@ class AnnotatingParser {
14091410
}
14101411
break;
14111412
case tok::arrow:
1412-
if (Tok->isNot(TT_LambdaArrow) && Tok->Previous &&
1413-
Tok->Previous->is(tok::kw_noexcept)) {
1413+
if (Tok->Previous && Tok->Previous->is(tok::kw_noexcept))
14141414
Tok->setType(TT_TrailingReturnArrow);
1415-
}
14161415
break;
14171416
default:
14181417
break;
@@ -1689,11 +1688,11 @@ class AnnotatingParser {
16891688
TT_LambdaLSquare, TT_LambdaLBrace, TT_AttributeMacro, TT_IfMacro,
16901689
TT_ForEachMacro, TT_TypenameMacro, TT_FunctionLBrace,
16911690
TT_ImplicitStringLiteral, TT_InlineASMBrace, TT_FatArrow,
1692-
TT_LambdaArrow, TT_NamespaceMacro, TT_OverloadedOperator,
1693-
TT_RegexLiteral, TT_TemplateString, TT_ObjCStringLiteral,
1694-
TT_UntouchableMacroFunc, TT_StatementAttributeLikeMacro,
1695-
TT_FunctionLikeOrFreestandingMacro, TT_ClassLBrace, TT_EnumLBrace,
1696-
TT_RecordLBrace, TT_StructLBrace, TT_UnionLBrace, TT_RequiresClause,
1691+
TT_NamespaceMacro, TT_OverloadedOperator, TT_RegexLiteral,
1692+
TT_TemplateString, TT_ObjCStringLiteral, TT_UntouchableMacroFunc,
1693+
TT_StatementAttributeLikeMacro, TT_FunctionLikeOrFreestandingMacro,
1694+
TT_ClassLBrace, TT_EnumLBrace, TT_RecordLBrace, TT_StructLBrace,
1695+
TT_UnionLBrace, TT_RequiresClause,
16971696
TT_RequiresClauseInARequiresExpression, TT_RequiresExpression,
16981697
TT_RequiresExpressionLParen, TT_RequiresExpressionLBrace,
16991698
TT_BracedListLBrace)) {
@@ -1876,7 +1875,7 @@ class AnnotatingParser {
18761875
Contexts.back().IsExpression = true;
18771876
} else if (Current.is(TT_TrailingReturnArrow)) {
18781877
Contexts.back().IsExpression = false;
1879-
} else if (Current.is(TT_LambdaArrow) || Current.is(Keywords.kw_assert)) {
1878+
} else if (Current.is(Keywords.kw_assert)) {
18801879
Contexts.back().IsExpression = Style.Language == FormatStyle::LK_Java;
18811880
} else if (Current.Previous &&
18821881
Current.Previous->is(TT_CtorInitializerColon)) {
@@ -2010,7 +2009,7 @@ class AnnotatingParser {
20102009
AutoFound = true;
20112010
} else if (Current.is(tok::arrow) &&
20122011
Style.Language == FormatStyle::LK_Java) {
2013-
Current.setType(TT_LambdaArrow);
2012+
Current.setType(TT_TrailingReturnArrow);
20142013
} else if (Current.is(tok::arrow) && AutoFound &&
20152014
Line.MightBeFunctionDecl && Current.NestingLevel == 0 &&
20162015
!Current.Previous->isOneOf(tok::kw_operator, tok::identifier)) {
@@ -2857,7 +2856,7 @@ class ExpressionParser {
28572856
}
28582857
if (Current->is(TT_JsComputedPropertyName))
28592858
return prec::Assignment;
2860-
if (Current->is(TT_LambdaArrow))
2859+
if (Current->is(TT_TrailingReturnArrow))
28612860
return prec::Comma;
28622861
if (Current->is(TT_FatArrow))
28632862
return prec::Assignment;
@@ -3742,7 +3741,7 @@ unsigned TokenAnnotator::splitPenalty(const AnnotatedLine &Line,
37423741
}
37433742
if (Right.is(TT_PointerOrReference))
37443743
return 190;
3745-
if (Right.is(TT_LambdaArrow))
3744+
if (Right.is(TT_TrailingReturnArrow))
37463745
return 110;
37473746
if (Left.is(tok::equal) && Right.is(tok::l_brace))
37483747
return 160;
@@ -4744,10 +4743,9 @@ bool TokenAnnotator::spaceRequiredBefore(const AnnotatedLine &Line,
47444743
return false;
47454744
}
47464745

4747-
if (Right.isOneOf(TT_TrailingReturnArrow, TT_LambdaArrow) ||
4748-
Left.isOneOf(TT_TrailingReturnArrow, TT_LambdaArrow)) {
4746+
if (Right.is(TT_TrailingReturnArrow) || Left.is(TT_TrailingReturnArrow))
47494747
return true;
4750-
}
4748+
47514749
if (Left.is(tok::comma) && Right.isNot(TT_OverloadedOperatorLParen) &&
47524750
// In an unexpanded macro call we only find the parentheses and commas
47534751
// in a line; the commas and closing parenthesis do not require a space.
@@ -5724,8 +5722,8 @@ bool TokenAnnotator::canBreakBefore(const AnnotatedLine &Line,
57245722
return Left.isOneOf(tok::comma, tok::coloncolon, tok::semi, tok::l_brace,
57255723
tok::kw_class, tok::kw_struct, tok::comment) ||
57265724
Right.isMemberAccess() ||
5727-
Right.isOneOf(TT_TrailingReturnArrow, TT_LambdaArrow, tok::lessless,
5728-
tok::colon, tok::l_square, tok::at) ||
5725+
Right.isOneOf(TT_TrailingReturnArrow, tok::lessless, tok::colon,
5726+
tok::l_square, tok::at) ||
57295727
(Left.is(tok::r_paren) &&
57305728
Right.isOneOf(tok::identifier, tok::kw_const)) ||
57315729
(Left.is(tok::l_paren) && Right.isNot(tok::r_paren)) ||

clang/lib/Format/UnwrappedLineParser.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -2256,7 +2256,7 @@ bool UnwrappedLineParser::tryToParseLambda() {
22562256
// This might or might not actually be a lambda arrow (this could be an
22572257
// ObjC method invocation followed by a dereferencing arrow). We might
22582258
// reset this back to TT_Unknown in TokenAnnotator.
2259-
FormatTok->setFinalizedType(TT_LambdaArrow);
2259+
FormatTok->setFinalizedType(TT_TrailingReturnArrow);
22602260
SeenArrow = true;
22612261
nextToken();
22622262
break;

clang/unittests/Format/TokenAnnotatorTest.cpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -1438,19 +1438,19 @@ TEST_F(TokenAnnotatorTest, UnderstandsLambdas) {
14381438
Tokens = annotate("[]() -> auto {}");
14391439
ASSERT_EQ(Tokens.size(), 9u) << Tokens;
14401440
EXPECT_TOKEN(Tokens[0], tok::l_square, TT_LambdaLSquare);
1441-
EXPECT_TOKEN(Tokens[4], tok::arrow, TT_LambdaArrow);
1441+
EXPECT_TOKEN(Tokens[4], tok::arrow, TT_TrailingReturnArrow);
14421442
EXPECT_TOKEN(Tokens[6], tok::l_brace, TT_LambdaLBrace);
14431443

14441444
Tokens = annotate("[]() -> auto & {}");
14451445
ASSERT_EQ(Tokens.size(), 10u) << Tokens;
14461446
EXPECT_TOKEN(Tokens[0], tok::l_square, TT_LambdaLSquare);
1447-
EXPECT_TOKEN(Tokens[4], tok::arrow, TT_LambdaArrow);
1447+
EXPECT_TOKEN(Tokens[4], tok::arrow, TT_TrailingReturnArrow);
14481448
EXPECT_TOKEN(Tokens[7], tok::l_brace, TT_LambdaLBrace);
14491449

14501450
Tokens = annotate("[]() -> auto * {}");
14511451
ASSERT_EQ(Tokens.size(), 10u) << Tokens;
14521452
EXPECT_TOKEN(Tokens[0], tok::l_square, TT_LambdaLSquare);
1453-
EXPECT_TOKEN(Tokens[4], tok::arrow, TT_LambdaArrow);
1453+
EXPECT_TOKEN(Tokens[4], tok::arrow, TT_TrailingReturnArrow);
14541454
EXPECT_TOKEN(Tokens[7], tok::l_brace, TT_LambdaLBrace);
14551455

14561456
Tokens = annotate("[] {}");
@@ -1466,7 +1466,7 @@ TEST_F(TokenAnnotatorTest, UnderstandsLambdas) {
14661466
Tokens = annotate("[] -> auto {}");
14671467
ASSERT_EQ(Tokens.size(), 7u) << Tokens;
14681468
EXPECT_TOKEN(Tokens[0], tok::l_square, TT_LambdaLSquare);
1469-
EXPECT_TOKEN(Tokens[2], tok::arrow, TT_LambdaArrow);
1469+
EXPECT_TOKEN(Tokens[2], tok::arrow, TT_TrailingReturnArrow);
14701470
EXPECT_TOKEN(Tokens[4], tok::l_brace, TT_LambdaLBrace);
14711471

14721472
Tokens = annotate("[] <typename T> () {}");
@@ -1547,7 +1547,7 @@ TEST_F(TokenAnnotatorTest, UnderstandsLambdas) {
15471547
ASSERT_EQ(Tokens.size(), 20u) << Tokens;
15481548
EXPECT_TOKEN(Tokens[0], tok::l_square, TT_LambdaLSquare);
15491549
EXPECT_TOKEN(Tokens[2], tok::less, TT_TemplateOpener);
1550-
EXPECT_TOKEN(Tokens[10], tok::arrow, TT_LambdaArrow);
1550+
EXPECT_TOKEN(Tokens[10], tok::arrow, TT_TrailingReturnArrow);
15511551
EXPECT_TOKEN(Tokens[12], tok::kw_requires, TT_RequiresClause);
15521552
EXPECT_TRUE(Tokens[16]->ClosesRequiresClause);
15531553
EXPECT_TOKEN(Tokens[17], tok::l_brace, TT_LambdaLBrace);
@@ -1608,7 +1608,7 @@ TEST_F(TokenAnnotatorTest, UnderstandsLambdas) {
16081608
EXPECT_TOKEN(Tokens[2], tok::less, TT_TemplateOpener);
16091609
EXPECT_TOKEN(Tokens[6], tok::kw_requires, TT_RequiresClause);
16101610
EXPECT_TRUE(Tokens[10]->ClosesRequiresClause);
1611-
EXPECT_TOKEN(Tokens[11], tok::arrow, TT_LambdaArrow);
1611+
EXPECT_TOKEN(Tokens[11], tok::arrow, TT_TrailingReturnArrow);
16121612
EXPECT_TOKEN(Tokens[13], tok::l_brace, TT_LambdaLBrace);
16131613

16141614
Tokens = annotate("[] <typename T> requires Foo<T> (T t) requires Bar<T> {}");

0 commit comments

Comments
 (0)