diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-01-16 15:51:06 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-01-16 15:51:06 +0000 |
| commit | 11627e103110f1abfe6de7f391f6c90475ca888c (patch) | |
| tree | fd661e497518fcd3e259a04d0fd9c94d8feeb3fc /src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java | |
| parent | d2c8f4478ad23e7a2a01773bdd5a6333f8d56c7d (diff) | |
Implement non-dynamic return types in C# backend
Diffstat (limited to 'src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java | 11 |
1 files changed, 7 insertions, 4 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 ef13854..1d05081 100644 --- a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java +++ b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java @@ -4,15 +4,18 @@ import com.google.common.collect.ImmutableMap; import org.zwobble.couscous.ast.*; import org.zwobble.couscous.ast.visitors.NodeVisitor; import org.zwobble.couscous.backends.SourceCodeWriter; -import org.zwobble.couscous.values.IntegerValue; -import org.zwobble.couscous.values.PrimitiveValueVisitor; +import org.zwobble.couscous.values.*; import java.util.List; import java.util.Map; public class CsharpSerializer implements NodeVisitor { private final static Map<TypeName, String> PRIMITIVES = ImmutableMap.of( - IntegerValue.REF, "int"); + IntegerValue.REF, "int", + StringValue.REF, "string", + BooleanValue.REF, "bool", + ObjectValues.CLASS, "System.Type", + UnitValue.REF, "void"); public static String serialize(Node node, String namespace) { SourceCodeWriter writer = new SourceCodeWriter( @@ -202,7 +205,7 @@ public class CsharpSerializer implements NodeVisitor { writer.writeKeyword("static"); writer.writeSpace(); } - writer.writeKeyword("dynamic"); + writeTypeReference(method.getReturnType()); writer.writeSpace(); writer.writeIdentifier(method.getName()); writer.writeSymbol("("); |
