From 72b1f97f94a5a1a716e1b7ce9fcef660bc07bb72 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 6 Feb 2016 13:20:24 +0000 Subject: Enable all method tests for C# backend --- src/main/java/org/zwobble/couscous/ast/LiteralNode.java | 2 ++ .../org/zwobble/couscous/backends/csharp/CsharpSerializer.java | 7 +++++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'src/main') 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(";"); }); } -- cgit v1.2.3