aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2023-02-02 18:59:17 +0100
committerLibravatar Kristóf Marussy <kristof@marussy.com>2023-02-02 18:59:17 +0100
commit2fd21e8d8d47fe948d191f3e5366b510b0f4d1dd (patch)
treec39ef49584dba282092613b2056a43339fcbee07
parentfeat: track uncommitted Model changes (diff)
downloadrefinery-2fd21e8d8d47fe948d191f3e5366b510b0f4d1dd.tar.gz
refinery-2fd21e8d8d47fe948d191f3e5366b510b0f4d1dd.tar.zst
refinery-2fd21e8d8d47fe948d191f3e5366b510b0f4d1dd.zip
refactor: do not allow Symbol in CallAtom
-rw-r--r--subprojects/store/src/main/java/tools/refinery/store/query/DNF.java3
-rw-r--r--subprojects/store/src/main/java/tools/refinery/store/query/RelationLike.java (renamed from subprojects/store/src/main/java/tools/refinery/store/representation/SymbolLike.java)4
-rw-r--r--subprojects/store/src/main/java/tools/refinery/store/query/atom/CallAtom.java4
-rw-r--r--subprojects/store/src/main/java/tools/refinery/store/query/view/AnyRelationView.java4
-rw-r--r--subprojects/store/src/main/java/tools/refinery/store/representation/AnySymbol.java6
5 files changed, 12 insertions, 9 deletions
diff --git a/subprojects/store/src/main/java/tools/refinery/store/query/DNF.java b/subprojects/store/src/main/java/tools/refinery/store/query/DNF.java
index 3ce4eed9..95c5d787 100644
--- a/subprojects/store/src/main/java/tools/refinery/store/query/DNF.java
+++ b/subprojects/store/src/main/java/tools/refinery/store/query/DNF.java
@@ -1,11 +1,10 @@
1package tools.refinery.store.query; 1package tools.refinery.store.query;
2 2
3import tools.refinery.store.representation.SymbolLike;
4import tools.refinery.store.query.atom.DNFAtom; 3import tools.refinery.store.query.atom.DNFAtom;
5 4
6import java.util.*; 5import java.util.*;
7 6
8public final class DNF implements SymbolLike { 7public final class DNF implements RelationLike {
9 private final String name; 8 private final String name;
10 9
11 private final String uniqueName; 10 private final String uniqueName;
diff --git a/subprojects/store/src/main/java/tools/refinery/store/representation/SymbolLike.java b/subprojects/store/src/main/java/tools/refinery/store/query/RelationLike.java
index 30a892ae..8c784d8b 100644
--- a/subprojects/store/src/main/java/tools/refinery/store/representation/SymbolLike.java
+++ b/subprojects/store/src/main/java/tools/refinery/store/query/RelationLike.java
@@ -1,6 +1,6 @@
1package tools.refinery.store.representation; 1package tools.refinery.store.query;
2 2
3public interface SymbolLike { 3public interface RelationLike {
4 String name(); 4 String name();
5 5
6 int arity(); 6 int arity();
diff --git a/subprojects/store/src/main/java/tools/refinery/store/query/atom/CallAtom.java b/subprojects/store/src/main/java/tools/refinery/store/query/atom/CallAtom.java
index 6de5cd08..47121870 100644
--- a/subprojects/store/src/main/java/tools/refinery/store/query/atom/CallAtom.java
+++ b/subprojects/store/src/main/java/tools/refinery/store/query/atom/CallAtom.java
@@ -1,13 +1,13 @@
1package tools.refinery.store.query.atom; 1package tools.refinery.store.query.atom;
2 2
3import tools.refinery.store.query.Variable; 3import tools.refinery.store.query.Variable;
4import tools.refinery.store.representation.SymbolLike; 4import tools.refinery.store.query.RelationLike;
5 5
6import java.util.List; 6import java.util.List;
7import java.util.Objects; 7import java.util.Objects;
8import java.util.Set; 8import java.util.Set;
9 9
10public abstract class CallAtom<T extends SymbolLike> implements DNFAtom { 10public abstract class CallAtom<T extends RelationLike> implements DNFAtom {
11 private final CallPolarity polarity; 11 private final CallPolarity polarity;
12 private final T target; 12 private final T target;
13 private final List<Variable> substitution; 13 private final List<Variable> substitution;
diff --git a/subprojects/store/src/main/java/tools/refinery/store/query/view/AnyRelationView.java b/subprojects/store/src/main/java/tools/refinery/store/query/view/AnyRelationView.java
index eb64b589..328cde3a 100644
--- a/subprojects/store/src/main/java/tools/refinery/store/query/view/AnyRelationView.java
+++ b/subprojects/store/src/main/java/tools/refinery/store/query/view/AnyRelationView.java
@@ -3,11 +3,11 @@ package tools.refinery.store.query.view;
3import tools.refinery.store.model.Model; 3import tools.refinery.store.model.Model;
4import tools.refinery.store.query.FunctionalDependency; 4import tools.refinery.store.query.FunctionalDependency;
5import tools.refinery.store.representation.AnySymbol; 5import tools.refinery.store.representation.AnySymbol;
6import tools.refinery.store.representation.SymbolLike; 6import tools.refinery.store.query.RelationLike;
7 7
8import java.util.Set; 8import java.util.Set;
9 9
10public sealed interface AnyRelationView extends SymbolLike permits RelationView { 10public sealed interface AnyRelationView extends RelationLike permits RelationView {
11 AnySymbol getSymbol(); 11 AnySymbol getSymbol();
12 12
13 default Set<FunctionalDependency<Integer>> getFunctionalDependencies() { 13 default Set<FunctionalDependency<Integer>> getFunctionalDependencies() {
diff --git a/subprojects/store/src/main/java/tools/refinery/store/representation/AnySymbol.java b/subprojects/store/src/main/java/tools/refinery/store/representation/AnySymbol.java
index 12a45bed..20b9eead 100644
--- a/subprojects/store/src/main/java/tools/refinery/store/representation/AnySymbol.java
+++ b/subprojects/store/src/main/java/tools/refinery/store/representation/AnySymbol.java
@@ -1,5 +1,9 @@
1package tools.refinery.store.representation; 1package tools.refinery.store.representation;
2 2
3public sealed interface AnySymbol extends SymbolLike permits Symbol { 3public sealed interface AnySymbol permits Symbol {
4 String name();
5
6 int arity();
7
4 Class<?> valueType(); 8 Class<?> valueType();
5} 9}