diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-01-16 14:55:39 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-01-16 14:55:39 +0000 |
| commit | 966dbe9601b6b1b177c2771474947d66990e240a (patch) | |
| tree | d95416e49b5fb44838aa5ad3b0ea42f0302e5a22 /src/main/java | |
| parent | 911afd790bea9a84cce520ea765c2203ba50c188 (diff) | |
Don't pass indentation to writer actions
Diffstat (limited to 'src/main/java')
3 files changed, 7 insertions, 10 deletions
diff --git a/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java b/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java index 27a8ede..3f135de 100644 --- a/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java +++ b/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java @@ -5,7 +5,7 @@ import org.zwobble.couscous.util.Action; public class SourceCodeWriter { public interface WriterAction { - void run(SourceCodeWriter writer, int indentation); + void run(SourceCodeWriter writer); } private static final int SPACES_PER_INDENT = 4; @@ -83,6 +83,6 @@ public class SourceCodeWriter { } private void runAction(WriterAction action) { - action.run(this, depth * SPACES_PER_INDENT); + action.run(this); } } 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 43e6611..72160d3 100644 --- a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java +++ b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpSerializer.java @@ -1,6 +1,5 @@ package org.zwobble.couscous.backends.csharp; -import com.google.common.base.Strings; import org.zwobble.couscous.ast.*; import org.zwobble.couscous.ast.visitors.NodeVisitor; import org.zwobble.couscous.backends.SourceCodeWriter; @@ -9,14 +8,12 @@ import org.zwobble.couscous.values.PrimitiveValueVisitor; public class CsharpSerializer implements NodeVisitor { public static String serialize(Node node, String namespace) { SourceCodeWriter writer = new SourceCodeWriter( - (writer2, indentation) -> { + (writer2) -> { writer2.writeSpace(); writer2.writeSymbol("{"); }, - (writer2, indentation) -> { - writer2.writeSymbol(Strings.repeat(" ", indentation)); - writer2.writeSymbol("}"); - writer2.writeSymbol("\n"); + (writer2) -> { + writer2.writeStatement(() -> writer2.writeSymbol("}")); } ); CsharpSerializer serializer = new CsharpSerializer(writer, namespace); diff --git a/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java b/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java index 779c1c4..fa71656 100644 --- a/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java +++ b/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java @@ -13,8 +13,8 @@ import static com.google.common.collect.Iterables.skip; public class PythonSerializer implements PythonNodeVisitor { public static String serialize(PythonNode node) { SourceCodeWriter writer = new SourceCodeWriter( - (writer2, indentation) -> writer2.writeSymbol(":"), - (writer2, indentation) -> {} + (writer2) -> writer2.writeSymbol(":"), + (writer2) -> {} ); PythonSerializer serializer = new PythonSerializer(writer); serializer.write(node); |
