aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-01-16 16:04:53 +0000
committerMichael Williamson <mike@zwobble.org>2016-01-16 16:04:53 +0000
commite129dc3abbdca3c4532ee888f301f74847b0ceba (patch)
tree8ddf13365bbf9eca8a85a244ccee629851237710 /src
parente116533d5feed866cc80d62f81d13653695d2a2a (diff)
Use statement writing for return statement in C# backend
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java14
-rw-r--r--src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java2
2 files changed, 8 insertions, 8 deletions
diff --git a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java
index c9df2ac..c7d6db1 100644
--- a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java
+++ b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java
@@ -160,10 +160,12 @@ public class CsharpSerializer implements NodeVisitor {
@Override
public void visit(ReturnNode returnNode) {
- writer.writeKeyword("return");
- writer.writeSpace();
- write(returnNode.getValue());
- writer.writeSymbol(";");
+ writer.writeStatement(() -> {
+ writer.writeKeyword("return");
+ writer.writeSpace();
+ write(returnNode.getValue());
+ writer.writeSymbol(";");
+ });
}
@Override
@@ -220,9 +222,7 @@ public class CsharpSerializer implements NodeVisitor {
() -> writer.writeSymbol(", "));
writer.writeSymbol(")");
writer.startBlock();
- for (StatementNode statement : method.getBody()) {
- writer.writeStatement(() -> write(statement));
- }
+ writeAll(method.getBody());
writer.endBlock();
});
}
diff --git a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java
index 5375ac1..c617f65 100644
--- a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java
@@ -124,7 +124,7 @@ public class CsharpSerializerTests {
@Test
public void returnStatementUsesReturnStatement() {
String output = serialize(returns(literal(true)));
- assertEquals("return true;", output);
+ assertEquals("return true;\n", output);
}
@Test