diff options
Diffstat (limited to 'src/main/java/org/zwobble/couscous/JavaProject.java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/JavaProject.java | 15 |
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(); + } } |
