From 5094eec3a5ab03b8ad04df8d29d5246e611df788 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 5 Oct 2015 17:26:10 +0100 Subject: Remove duplication of statement writing --- .../zwobble/couscous/backends/python/PythonWriter.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'src/main/java/org/zwobble/couscous/backends/python/PythonWriter.java') diff --git a/src/main/java/org/zwobble/couscous/backends/python/PythonWriter.java b/src/main/java/org/zwobble/couscous/backends/python/PythonWriter.java index 2551700..781db71 100644 --- a/src/main/java/org/zwobble/couscous/backends/python/PythonWriter.java +++ b/src/main/java/org/zwobble/couscous/backends/python/PythonWriter.java @@ -47,14 +47,23 @@ public class PythonWriter { depth--; } - public void startStatement() { + public void writeStatement(Action action) { + startStatement(); + action.run(); + endStatement(); + } + + private void startStatement() { builder.append(Strings.repeat(" ", depth * SPACES_PER_INDENT)); } - public void endStatement() { + private void endStatement() { if (builder.charAt(builder.length() - 1) != '\n') { builder.append("\n"); } } - + + interface Action { + void run(); + } } -- cgit v1.2.3