aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/interpreter/Interpreter.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-02-06 17:38:26 +0000
committerMichael Williamson <mike@zwobble.org>2016-02-06 17:38:26 +0000
commit2e7d1bb669e3ee26efe060ca5ea92ef73cebff83 (patch)
tree204c038ed8dff909f3bed79145144749b266d107 /src/main/java/org/zwobble/couscous/interpreter/Interpreter.java
parenta063cdcec0ecfe449a22f0134dc559a40583fc09 (diff)
Add return type to MethodSignature
Diffstat (limited to 'src/main/java/org/zwobble/couscous/interpreter/Interpreter.java')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/Interpreter.java12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/Interpreter.java b/src/main/java/org/zwobble/couscous/interpreter/Interpreter.java
index da84de0..5493e52 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/Interpreter.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/Interpreter.java
@@ -1,14 +1,13 @@
package org.zwobble.couscous.interpreter;
-import java.util.List;
-import java.util.Optional;
-
+import com.google.common.collect.ImmutableMap;
import org.zwobble.couscous.ast.MethodSignature;
import org.zwobble.couscous.ast.TypeName;
import org.zwobble.couscous.interpreter.values.ConcreteType;
import org.zwobble.couscous.interpreter.values.InterpreterValue;
-import com.google.common.collect.ImmutableMap;
+import java.util.List;
+import java.util.Optional;
import static org.zwobble.couscous.util.ExtraLists.eagerMap;
@@ -19,7 +18,7 @@ public class Interpreter {
this.project = project;
}
- public InterpreterValue run(TypeName className, String methodName, List<InterpreterValue> arguments) {
+ public InterpreterValue run(TypeName className, String methodName, List<InterpreterValue> arguments, TypeName returnType) {
final Environment environment = new Environment(
project,
Optional.empty(),
@@ -28,7 +27,8 @@ public class Interpreter {
ConcreteType clazz = environment.findClass(className);
MethodSignature signature = new MethodSignature(
methodName,
- eagerMap(arguments, argument -> argument.getType().getName()));
+ eagerMap(arguments, argument -> argument.getType().getName()),
+ returnType);
return clazz.callStaticMethod(environment, signature, arguments);
}
} \ No newline at end of file