From a014f22d8c8c5c15aa08500a02da0d0717d62b64 Mon Sep 17 00:00:00 2001 From: Marcin Chrzanowski Date: Wed, 13 Nov 2019 21:06:46 +0100 Subject: Pass interpreter tests --- .../pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java') diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java b/src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java index ada8f93..b77858b 100644 --- a/src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java +++ b/src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java @@ -24,6 +24,9 @@ package pl.edu.mimuw.cloudatlas.interpreter; +import java.util.ArrayList; +import java.util.List; + import pl.edu.mimuw.cloudatlas.model.Type; import pl.edu.mimuw.cloudatlas.model.Value; import pl.edu.mimuw.cloudatlas.model.ValueBoolean; @@ -41,6 +44,17 @@ class ResultSingle extends Result { return new ResultSingle(operation.perform(value, right.value)); } + @Override + protected ResultColumn binaryOperationTyped(BinaryOperation operation, ResultColumn right) { + List results = new ArrayList(); + + for (Value value : right.getColumn()) { + results.add(operation.perform(this.value, value)); + } + + return new ResultColumn(results); + } + @Override public ResultSingle unaryOperation(UnaryOperation operation) { return new ResultSingle(operation.perform(value)); -- cgit v1.2.3