diff options
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java | 20 |
1 files changed, 19 insertions, 1 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 3cfcd33..81c5b78 100644 --- a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java +++ b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java @@ -326,7 +326,25 @@ public class CsharpSerializer implements NodeVisitor { @Override public void visit(InterfaceNode interfaceNode) { - throw new UnsupportedOperationException(); + // TODO: factor out duplication with visit(ClassNode) + writer.writeStatement(() -> { + writer.writeKeyword("namespace"); + writer.writeSpace(); + writer.writeIdentifier(interfaceNode.getName().getPackage().get()); + writer.startBlock(); + writer.writeStatement(() -> { + writer.writeKeyword("internal"); + writer.writeSpace(); + writer.writeKeyword("interface"); + writer.writeSpace(); + writer.writeIdentifier(interfaceNode.getName().getSimpleName()); + writer.startBlock(); + writeAll(interfaceNode.getMethods()); + writer.endBlock(); + }); + + writer.endBlock(); + }); } private void writeStaticConstructor(ClassNode classNode) { |
