aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-07-31 19:13:45 +0100
committerMichael Williamson <mike@zwobble.org>2016-07-31 19:13:45 +0100
commit4189eb24789bd5d1d9ef4ecea567f4119cbb325c (patch)
treee6e3812215edcfb68225df2eb715b38c8705ee91 /src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
parent157aa4fbc6447900c33f668ccaf6de46632e6b5c (diff)
Implement for loops using desugar
Diffstat (limited to 'src/main/java/org/zwobble/couscous/interpreter/JavaProject.java')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/JavaProject.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java b/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
index 7b5a0bc..3e4b182 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
@@ -8,6 +8,7 @@ import org.zwobble.couscous.interpreter.types.IntrinsicInterpreterType;
import org.zwobble.couscous.interpreter.types.UserDefinedInterpreterType;
import org.zwobble.couscous.interpreter.values.BoxedIntegerInterpreterValue;
import org.zwobble.couscous.interpreter.values.InternalCouscousInterpreterValue;
+import org.zwobble.couscous.transforms.DesugarForToWhile;
import org.zwobble.couscous.transforms.DesugarSwitchToIfElse;
import java.util.List;
@@ -24,10 +25,11 @@ public class JavaProject {
}
public static Project of(List<TypeNode> classNodes) {
- NodeTransformer transformer = DesugarSwitchToIfElse.transformer();
+ NodeTransformer switchTransformer = DesugarSwitchToIfElse.transformer();
+ NodeTransformer forTransformer = DesugarForToWhile.transformer();
Iterable<InterpreterType> concreteTypes = Iterables.transform(
classNodes,
- classNode -> new UserDefinedInterpreterType(transformer.transformTypeDeclaration(classNode))
+ classNode -> new UserDefinedInterpreterType(forTransformer.transformTypeDeclaration(switchTransformer.transformTypeDeclaration(classNode)))
);
return builder()
.addClasses(concreteTypes)