From bc06840e00425db342bc5a021c0900d9e63b71f0 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 15 Jul 2016 14:23:47 +0100 Subject: Split switch handling off to desugar step --- .../org/zwobble/couscous/backends/python/PythonCodeGenerator.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/main/java/org/zwobble/couscous/backends/python') diff --git a/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java b/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java index 7b016bf..949506a 100644 --- a/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java +++ b/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java @@ -9,6 +9,8 @@ import org.zwobble.couscous.ast.structure.NodeStructure; import org.zwobble.couscous.ast.visitors.DynamicNodeMapper; import org.zwobble.couscous.backends.naming.Names; import org.zwobble.couscous.backends.python.ast.*; +import org.zwobble.couscous.frontends.java.Scope; +import org.zwobble.couscous.transforms.DesugarSwitchToIfElse; import org.zwobble.couscous.types.ScalarType; import org.zwobble.couscous.types.Type; import org.zwobble.couscous.types.Types; @@ -56,7 +58,9 @@ import static org.zwobble.couscous.util.ExtraIterables.*; import static org.zwobble.couscous.util.ExtraLists.*; public class PythonCodeGenerator { - public static PythonModuleNode generateCode(TypeNode typeNode) { + public static PythonModuleNode generateCode(TypeNode sugaredTypeNode) { + TypeNode typeNode = sugaredTypeNode.transform(DesugarSwitchToIfElse.transformer(Scope.create())); + Iterator imports = generateImports(typeNode).iterator(); PythonImportNode internalsImport = pythonImport( -- cgit v1.2.3