diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-02-06 13:20:24 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-02-06 13:20:24 +0000 |
| commit | 72b1f97f94a5a1a716e1b7ce9fcef660bc07bb72 (patch) | |
| tree | c4e960c869221240dcf66f18b39de57ddc9c0663 /src/main | |
| parent | 84acb51efceeaac756c5ddc830d298f16055be21 (diff) | |
Enable all method tests for C# backend
Diffstat (limited to 'src/main')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/ast/LiteralNode.java | 2 | ||||
| -rw-r--r-- | src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/LiteralNode.java b/src/main/java/org/zwobble/couscous/ast/LiteralNode.java index 923bb2f..a76ca80 100644 --- a/src/main/java/org/zwobble/couscous/ast/LiteralNode.java +++ b/src/main/java/org/zwobble/couscous/ast/LiteralNode.java @@ -7,6 +7,8 @@ import org.zwobble.couscous.values.*; import static org.zwobble.couscous.values.PrimitiveValues.value; public class LiteralNode implements ExpressionNode { + public static final ExpressionNode UNIT = literal(PrimitiveValues.UNIT); + public static LiteralNode literal(PrimitiveValue value) { return new LiteralNode(value, value.getType()); } 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 0292320..e47b732 100644 --- a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java +++ b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java @@ -4,6 +4,7 @@ import org.zwobble.couscous.ast.*; import org.zwobble.couscous.ast.visitors.NodeVisitor; import org.zwobble.couscous.backends.SourceCodeWriter; import org.zwobble.couscous.values.PrimitiveValueVisitor; +import org.zwobble.couscous.values.UnitValue; import java.util.List; @@ -176,8 +177,10 @@ public class CsharpSerializer implements NodeVisitor { public void visit(ReturnNode returnNode) { writer.writeStatement(() -> { writer.writeKeyword("return"); - writer.writeSpace(); - write(returnNode.getValue()); + if (!returnNode.getValue().getType().equals(UnitValue.REF)) { + writer.writeSpace(); + write(returnNode.getValue()); + } writer.writeSymbol(";"); }); } |
