aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/interpreter/Executor.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/couscous/interpreter/Executor.java')
-rw-r--r--src/main/java/org/zwobble/couscous/interpreter/Executor.java10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/main/java/org/zwobble/couscous/interpreter/Executor.java b/src/main/java/org/zwobble/couscous/interpreter/Executor.java
index 75ace0a..f6c1c3a 100644
--- a/src/main/java/org/zwobble/couscous/interpreter/Executor.java
+++ b/src/main/java/org/zwobble/couscous/interpreter/Executor.java
@@ -20,7 +20,7 @@ public class Executor implements StatementNodeMapper<Optional<InterpreterValue>>
Environment environment,
MethodNode method,
Optional<InterpreterValue> thisValue,
- PositionalArguments actualArguments)
+ Arguments actualArguments)
{
List<StatementNode> body = method.getBody().orElseThrow(() -> new RuntimeException("Cannot call abstract method"));
return callMethod(environment, method.getArguments(), body, thisValue, actualArguments);
@@ -30,7 +30,7 @@ public class Executor implements StatementNodeMapper<Optional<InterpreterValue>>
Environment environment,
ConstructorNode constructor,
InterpreterValue thisValue,
- PositionalArguments actualArguments)
+ Arguments actualArguments)
{
return callMethod(environment, constructor.getArguments(), constructor.getBody(), Optional.of(thisValue), actualArguments);
}
@@ -40,7 +40,7 @@ public class Executor implements StatementNodeMapper<Optional<InterpreterValue>>
List<FormalArgumentNode> formalArguments,
List<StatementNode> statements,
Optional<InterpreterValue> thisValue,
- PositionalArguments actualArguments)
+ Arguments actualArguments)
{
Environment innerEnvironment = buildEnvironment(environment, formalArguments, statements, thisValue, actualArguments);
return exec(innerEnvironment, statements)
@@ -52,10 +52,10 @@ public class Executor implements StatementNodeMapper<Optional<InterpreterValue>>
List<FormalArgumentNode> formalArguments,
List<StatementNode> statements,
Optional<InterpreterValue> thisValue,
- PositionalArguments arguments)
+ Arguments arguments)
{
StackFrameBuilder stackFrame = new StackFrameBuilder();
- forEach(formalArguments, arguments, stackFrame::declare);
+ forEach(formalArguments, arguments.getValues(), stackFrame::declare);
findDeclarations(statements).forEach(declaration -> stackFrame.declare(declaration));
return environment.withStackFrame(thisValue, stackFrame.build());
}