diff options
author | Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com> | 2019-11-13 21:06:46 +0100 |
---|---|---|
committer | Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com> | 2019-11-13 21:06:46 +0100 |
commit | a014f22d8c8c5c15aa08500a02da0d0717d62b64 (patch) | |
tree | 129e978cb4675ffb4cb9c2b5e2d0c3a3981cb20c /src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java | |
parent | 530be09d2cf8e50ca4b3e172c847b361b2d710ad (diff) |
Pass interpreter tests
Diffstat (limited to 'src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java')
-rw-r--r-- | src/main/java/pl/edu/mimuw/cloudatlas/interpreter/ResultSingle.java | 14 |
1 files changed, 14 insertions, 0 deletions
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<Value> results = new ArrayList<Value>(); + + 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)); |