Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 0 additions & 11 deletions Rewrite/src/Rewrite.Java/Tree/SwitchExpression.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,6 @@ partial interface J
{
partial class SwitchExpression
{
public JavaType? Type
{
get
{
StrongBox<JavaType> type = new();
new SwitchExpressionJavaVisitor().Visit(this, type);
return type.Value;
}
}

public SwitchExpression WithType(JavaType? type) => this;

class SwitchExpressionJavaVisitor : JavaVisitor<StrongBox<JavaType>>
{
Expand Down
19 changes: 13 additions & 6 deletions Rewrite/src/Rewrite.Java/Tree/SwitchExpression.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ public partial class SwitchExpression(
Space prefix,
Markers markers,
J.ControlParentheses<Expression> selector,
Block cases
Block cases,
JavaType? type
) : J, Expression, TypedTree, Expression<SwitchExpression>, TypedTree<SwitchExpression>, J<SwitchExpression>, MutableTree<SwitchExpression>
{
public J? AcceptJava<P>(JavaVisitor<P> v, P p)
Expand All @@ -43,31 +44,37 @@ Block cases

public SwitchExpression WithId(Guid newId)
{
return newId == id ? this : new SwitchExpression(newId, prefix, markers, selector, cases);
return newId == id ? this : new SwitchExpression(newId, prefix, markers, selector, cases, type);
}
public Space Prefix => prefix;

public SwitchExpression WithPrefix(Space newPrefix)
{
return newPrefix == prefix ? this : new SwitchExpression(id, newPrefix, markers, selector, cases);
return newPrefix == prefix ? this : new SwitchExpression(id, newPrefix, markers, selector, cases, type);
}
public Markers Markers => markers;

public SwitchExpression WithMarkers(Markers newMarkers)
{
return ReferenceEquals(newMarkers, markers) ? this : new SwitchExpression(id, prefix, newMarkers, selector, cases);
return ReferenceEquals(newMarkers, markers) ? this : new SwitchExpression(id, prefix, newMarkers, selector, cases, type);
}
public J.ControlParentheses<Expression> Selector => selector;

public SwitchExpression WithSelector(J.ControlParentheses<Expression> newSelector)
{
return ReferenceEquals(newSelector, selector) ? this : new SwitchExpression(id, prefix, markers, newSelector, cases);
return ReferenceEquals(newSelector, selector) ? this : new SwitchExpression(id, prefix, markers, newSelector, cases, type);
}
public J.Block Cases => cases;

public SwitchExpression WithCases(J.Block newCases)
{
return ReferenceEquals(newCases, cases) ? this : new SwitchExpression(id, prefix, markers, selector, newCases);
return ReferenceEquals(newCases, cases) ? this : new SwitchExpression(id, prefix, markers, selector, newCases, type);
}
public JavaType? Type => type;

public SwitchExpression WithType(JavaType? newType)
{
return newType == type ? this : new SwitchExpression(id, prefix, markers, selector, cases, newType);
}
#if DEBUG_VISITOR
[DebuggerStepThrough]
Expand Down
4 changes: 3 additions & 1 deletion Rewrite/src/Rewrite.Remote.Codec/CSharp/CSharpReceiver.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1708,6 +1708,7 @@ public override J VisitSwitchExpression(J.SwitchExpression switchExpression, Rec
switchExpression = switchExpression.WithMarkers(ctx.ReceiveNode(switchExpression.Markers, ctx.ReceiveMarkers)!);
switchExpression = switchExpression.WithSelector(ctx.ReceiveNode(switchExpression.Selector, ReceiveControlParentheses)!);
switchExpression = switchExpression.WithCases(ctx.ReceiveNode(switchExpression.Cases, ctx.ReceiveTree)!);
switchExpression = switchExpression.WithType(ctx.ReceiveValue(switchExpression.Type));
return switchExpression;
}

Expand Down Expand Up @@ -3733,7 +3734,8 @@ public Rewrite.Core.Tree Create<T>(string type, ReceiverContext ctx) where T : R
ctx.ReceiveNode(default(Space), ReceiveSpace)!,
ctx.ReceiveNode(default(Markers), ctx.ReceiveMarkers)!,
ctx.ReceiveNode(default(J.ControlParentheses<Expression>), ReceiveControlParentheses)!,
ctx.ReceiveNode(default(J.Block), ctx.ReceiveTree)!
ctx.ReceiveNode(default(J.Block), ctx.ReceiveTree)!,
ctx.ReceiveValue(default(JavaType?))!
);
}

Expand Down
1 change: 1 addition & 0 deletions Rewrite/src/Rewrite.Remote.Codec/CSharp/CSharpSender.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1713,6 +1713,7 @@ public override J VisitSwitchExpression(J.SwitchExpression switchExpression, Sen
ctx.SendNode(switchExpression, v => v.Markers, ctx.SendMarkers);
ctx.SendNode(switchExpression, v => v.Selector, ctx.SendTree);
ctx.SendNode(switchExpression, v => v.Cases, ctx.SendTree);
ctx.SendTypedValue(switchExpression, v => v.Type);
return switchExpression;
}

Expand Down
4 changes: 3 additions & 1 deletion Rewrite/src/Rewrite.Remote.Codec/Java/JavaReceiver.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -605,6 +605,7 @@ public override J VisitSwitchExpression(J.SwitchExpression switchExpression, Rec
switchExpression = switchExpression.WithMarkers(ctx.ReceiveNode(switchExpression.Markers, ctx.ReceiveMarkers)!);
switchExpression = switchExpression.WithSelector(ctx.ReceiveNode(switchExpression.Selector, ReceiveControlParentheses)!);
switchExpression = switchExpression.WithCases(ctx.ReceiveNode(switchExpression.Cases, ctx.ReceiveTree)!);
switchExpression = switchExpression.WithType(ctx.ReceiveValue(switchExpression.Type));
return switchExpression;
}

Expand Down Expand Up @@ -1423,7 +1424,8 @@ public Rewrite.Core.Tree Create<T>(string type, ReceiverContext ctx) where T : R
ctx.ReceiveNode(default(Space), ReceiveSpace)!,
ctx.ReceiveNode(default(Markers), ctx.ReceiveMarkers)!,
ctx.ReceiveNode(default(J.ControlParentheses<Expression>), ReceiveControlParentheses)!,
ctx.ReceiveNode(default(J.Block), ctx.ReceiveTree)!
ctx.ReceiveNode(default(J.Block), ctx.ReceiveTree)!,
ctx.ReceiveValue(default(JavaType?))!
);
}

Expand Down
1 change: 1 addition & 0 deletions Rewrite/src/Rewrite.Remote.Codec/Java/JavaSender.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -610,6 +610,7 @@ public override J VisitSwitchExpression(J.SwitchExpression switchExpression, Sen
ctx.SendNode(switchExpression, v => v.Markers, ctx.SendMarkers);
ctx.SendNode(switchExpression, v => v.Selector, ctx.SendTree);
ctx.SendNode(switchExpression, v => v.Cases, ctx.SendTree);
ctx.SendTypedValue(switchExpression, v => v.Type);
return switchExpression;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1724,6 +1724,7 @@ public J.SwitchExpression visitSwitchExpression(J.SwitchExpression switchExpress
switchExpression = switchExpression.withMarkers(ctx.receiveNonNullNode(switchExpression.getMarkers(), ctx::receiveMarkers));
switchExpression = switchExpression.withSelector(ctx.receiveNonNullNode(switchExpression.getSelector(), ctx::receiveTree));
switchExpression = switchExpression.withCases(ctx.receiveNonNullNode(switchExpression.getCases(), ctx::receiveTree));
switchExpression = switchExpression.withType(ctx.receiveValue(switchExpression.getType(), JavaType.class));
return switchExpression;
}

Expand Down Expand Up @@ -3768,7 +3769,8 @@ private static J.SwitchExpression createJSwitchExpression(ReceiverContext ctx) {
ctx.receiveNonNullNode(null, CSharpReceiver::receiveSpace),
ctx.receiveNonNullNode(null, ctx::receiveMarkers),
ctx.receiveNonNullNode(null, ctx::receiveTree),
ctx.receiveNonNullNode(null, ctx::receiveTree)
ctx.receiveNonNullNode(null, ctx::receiveTree),
ctx.receiveValue(null, JavaType.class)
);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1727,6 +1727,7 @@ public J.SwitchExpression visitSwitchExpression(J.SwitchExpression switchExpress
ctx.sendNode(switchExpression, J.SwitchExpression::getMarkers, ctx::sendMarkers);
ctx.sendNode(switchExpression, J.SwitchExpression::getSelector, ctx::sendTree);
ctx.sendNode(switchExpression, J.SwitchExpression::getCases, ctx::sendTree);
ctx.sendTypedValue(switchExpression, J.SwitchExpression::getType);
return switchExpression;
}

Expand Down
Loading