aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/interpreter
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/couscous/interpreter')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/JavaProject.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java b/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
index 42f0d83..88c29a6 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
@@ -2,6 +2,7 @@ package org.zwobble.couscous.interpreter;
import com.google.common.collect.Iterables;
import org.zwobble.couscous.ast.TypeNode;
+import org.zwobble.couscous.ast.visitors.NodeTransformer;
import org.zwobble.couscous.frontends.java.Scope;
import org.zwobble.couscous.interpreter.types.InterpreterType;
import org.zwobble.couscous.interpreter.types.IntrinsicInterpreterType;
@@ -24,9 +25,10 @@ public class JavaProject {
}
public static Project of(List<TypeNode> classNodes) {
+ NodeTransformer transformer = DesugarSwitchToIfElse.transformer(Scope.create());
Iterable<InterpreterType> concreteTypes = Iterables.transform(
classNodes,
- classNode -> new UserDefinedInterpreterType(classNode.transform(DesugarSwitchToIfElse.transformer(Scope.create())))
+ classNode -> new UserDefinedInterpreterType(transformer.transformTypeDeclaration(classNode))
);
return builder()
.addClasses(concreteTypes)