Skip to content

Commit 0a86c8b

Browse files
committed
C#: Remove visitStatement from VisitLambda to match Java
Lambda implements Statement only for JavaTemplate substitution reasons (added in 0517175, May 2021). The Java visitLambda intentionally only calls visitExpression. Align the C# visitor accordingly.
1 parent a056143 commit 0a86c8b

1 file changed

Lines changed: 2 additions & 5 deletions

File tree

rewrite-csharp/csharp/OpenRewrite/Java/JavaVisitor.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1031,7 +1031,7 @@ public virtual J VisitArrayDimension(ArrayDimension dimension, P p)
10311031
}
10321032

10331033
// -----------------------------------------------------------------------
1034-
// Lambda : Expression, Statement
1034+
// Lambda : Expression (also implements Statement for JavaTemplate reasons)
10351035
// -----------------------------------------------------------------------
10361036
public virtual J VisitLambda(Lambda lambda, P p)
10371037
{
@@ -1040,10 +1040,7 @@ public virtual J VisitLambda(Lambda lambda, P p)
10401040
.WithMarkers(VisitMarkers(lambda.Markers, p));
10411041

10421042
var exprResult = VisitExpression(lambda, p);
1043-
if (exprResult is not Lambda e1) return exprResult;
1044-
1045-
var stmtResult = VisitStatement(e1, p);
1046-
if (stmtResult is not Lambda node) return stmtResult;
1043+
if (exprResult is not Lambda node) return exprResult;
10471044

10481045
return node
10491046
.WithParams((Lambda.Parameters)Visit(node.Params, p)!)

0 commit comments

Comments
 (0)