aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/store-query/src/main/java/tools/refinery/store/query/view/RelationView.java
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/store-query/src/main/java/tools/refinery/store/query/view/RelationView.java')
-rw-r--r--subprojects/store-query/src/main/java/tools/refinery/store/query/view/RelationView.java22
1 files changed, 6 insertions, 16 deletions
diff --git a/subprojects/store-query/src/main/java/tools/refinery/store/query/view/RelationView.java b/subprojects/store-query/src/main/java/tools/refinery/store/query/view/RelationView.java
index ea9fd5e2..d7164b3b 100644
--- a/subprojects/store-query/src/main/java/tools/refinery/store/query/view/RelationView.java
+++ b/subprojects/store-query/src/main/java/tools/refinery/store/query/view/RelationView.java
@@ -1,14 +1,10 @@
1package tools.refinery.store.query.view; 1package tools.refinery.store.query.view;
2 2
3import tools.refinery.store.query.Variable;
4import tools.refinery.store.map.CursorAsIterator; 3import tools.refinery.store.map.CursorAsIterator;
5import tools.refinery.store.model.Model; 4import tools.refinery.store.model.Model;
6import tools.refinery.store.query.literal.CallPolarity;
7import tools.refinery.store.query.literal.RelationViewLiteral;
8import tools.refinery.store.representation.Symbol; 5import tools.refinery.store.representation.Symbol;
9import tools.refinery.store.tuple.Tuple; 6import tools.refinery.store.tuple.Tuple;
10 7
11import java.util.List;
12import java.util.Objects; 8import java.util.Objects;
13import java.util.UUID; 9import java.util.UUID;
14 10
@@ -56,20 +52,14 @@ public abstract non-sealed class RelationView<T> implements AnyRelationView {
56 return (() -> new CursorAsIterator<>(model.getInterpretation(symbol).getAll(), this::forwardMap, this::filter)); 52 return (() -> new CursorAsIterator<>(model.getInterpretation(symbol).getAll(), this::forwardMap, this::filter));
57 } 53 }
58 54
59 public RelationViewLiteral call(CallPolarity polarity, List<Variable> arguments) { 55 @Override
60 return new RelationViewLiteral(polarity, this, arguments); 56 public String toString() {
61 } 57 return name();
62
63 public RelationViewLiteral call(CallPolarity polarity, Variable... arguments) {
64 return call(polarity, List.of(arguments));
65 }
66
67 public RelationViewLiteral call(Variable... arguments) {
68 return call(CallPolarity.POSITIVE, arguments);
69 } 58 }
70 59
71 public RelationViewLiteral callTransitive(Variable left, Variable right) { 60 @Override
72 return call(CallPolarity.TRANSITIVE, List.of(left, right)); 61 public String toReferenceString() {
62 return "@RelationView(\"%s\") %s".formatted(viewName, symbol.name());
73 } 63 }
74 64
75 @Override 65 @Override