aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-08-29 16:20:06 +0100
committerMichael Williamson <mike@zwobble.org>2016-08-29 16:20:06 +0100
commitc0fc10f59a858a417dd5efc61db339671f97c968 (patch)
tree20bbd829d13981ce41b30b26fb926151fe9d794c /src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
parent1a39bb268c68bc2c2452263ca539297d9905de8c (diff)
Desugar all types at once
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 3e4b182..f813faf 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/JavaProject.java
@@ -13,6 +13,8 @@ import org.zwobble.couscous.transforms.DesugarSwitchToIfElse;
import java.util.List;
+import static org.zwobble.couscous.util.ExtraLists.list;
+
public class JavaProject {
private static final InterpreterType OBJECT_TYPE = IntrinsicInterpreterType.classBuilder("java.lang.Object")
.build();
@@ -28,8 +30,8 @@ public class JavaProject {
NodeTransformer switchTransformer = DesugarSwitchToIfElse.transformer();
NodeTransformer forTransformer = DesugarForToWhile.transformer();
Iterable<InterpreterType> concreteTypes = Iterables.transform(
- classNodes,
- classNode -> new UserDefinedInterpreterType(forTransformer.transformTypeDeclaration(switchTransformer.transformTypeDeclaration(classNode)))
+ NodeTransformer.applyAll(list(switchTransformer, forTransformer), classNodes),
+ UserDefinedInterpreterType::new
);
return builder()
.addClasses(concreteTypes)