From 8a7cb643ac9b0e895123c176803af15b75f90cf1 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 14 Nov 2015 14:30:50 +0000 Subject: Parse while loops --- .../org/zwobble/couscous/interpreter/Executor.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'src/main/java/org/zwobble/couscous/interpreter/Executor.java') diff --git a/src/main/java/org/zwobble/couscous/interpreter/Executor.java b/src/main/java/org/zwobble/couscous/interpreter/Executor.java index 6f33b4d..9e34c42 100644 --- a/src/main/java/org/zwobble/couscous/interpreter/Executor.java +++ b/src/main/java/org/zwobble/couscous/interpreter/Executor.java @@ -4,13 +4,7 @@ import java.util.List; import java.util.Optional; import java.util.stream.Stream; -import org.zwobble.couscous.ast.CallableNode; -import org.zwobble.couscous.ast.ExpressionStatementNode; -import org.zwobble.couscous.ast.IfStatementNode; -import org.zwobble.couscous.ast.LocalVariableDeclarationNode; -import org.zwobble.couscous.ast.ReturnNode; -import org.zwobble.couscous.ast.StatementNode; -import org.zwobble.couscous.ast.VariableNode; +import org.zwobble.couscous.ast.*; import org.zwobble.couscous.ast.visitors.StatementNodeMapper; import org.zwobble.couscous.interpreter.values.BooleanInterpreterValue; import org.zwobble.couscous.interpreter.values.InterpreterValue; @@ -61,6 +55,12 @@ public class Executor implements StatementNodeMapper> // TODO: Handle declarations in branches return Stream.empty(); } + + @Override + public Stream visit(WhileNode whileLoop) { + // TODO: Handle declarations in branches + return Stream.empty(); + } })); } @@ -100,6 +100,11 @@ public class Executor implements StatementNodeMapper> return Optional.empty(); } + @Override + public Optional visit(WhileNode whileLoop) { + throw new UnsupportedOperationException(); + } + private Optional exec(List statements) { for (StatementNode statement : statements) { Optional result = exec(environment, statement); -- cgit v1.2.3