aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/JavaProject.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-10-06 11:52:26 +0100
committerMichael Williamson <mike@zwobble.org>2015-10-06 11:52:26 +0100
commitf8824d99ce826ebf83498dbce2bbf1d98472a9e3 (patch)
treec60d08a20db43fda9de9b41451407e3e651ee847 /src/main/java/org/zwobble/couscous/JavaProject.java
parentfda9d33c0d630906baad5c60e75db5cd8502bfe8 (diff)
Support user-defined static methods in Python backend
Diffstat (limited to 'src/main/java/org/zwobble/couscous/JavaProject.java')
-rw-r--r--src/main/java/org/zwobble/couscous/JavaProject.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/JavaProject.java b/src/main/java/org/zwobble/couscous/JavaProject.java
index 04ed53d..d54bd9c 100644
--- a/src/main/java/org/zwobble/couscous/JavaProject.java
+++ b/src/main/java/org/zwobble/couscous/JavaProject.java
@@ -1,10 +1,25 @@
package org.zwobble.couscous;
+import java.util.List;
+
+import org.zwobble.couscous.ast.ClassNode;
+import org.zwobble.couscous.interpreter.values.ConcreteType;
import org.zwobble.couscous.interpreter.values.IntegerInterpreterValue;
+import com.google.common.collect.Iterables;
+
+import lombok.val;
+
public class JavaProject {
public static MapBackedProject.Builder builder() {
return MapBackedProject.builder()
.addClass(IntegerInterpreterValue.TYPE);
}
+
+ public static Project of(List<ClassNode> classNodes) {
+ val concreteTypes = (Iterable)Iterables.transform(classNodes, ConcreteType::fromNode);
+ return builder()
+ .addClasses(concreteTypes)
+ .build();
+ }
}