diff options
Diffstat (limited to 'subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/actions/PartialActionLiterals.java')
-rw-r--r-- | subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/actions/PartialActionLiterals.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/actions/PartialActionLiterals.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/actions/PartialActionLiterals.java new file mode 100644 index 00000000..f36fde44 --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/actions/PartialActionLiterals.java | |||
@@ -0,0 +1,42 @@ | |||
1 | /* | ||
2 | * SPDX-FileCopyrightText: 2023 The Refinery Authors <https://refinery.tools/> | ||
3 | * | ||
4 | * SPDX-License-Identifier: EPL-2.0 | ||
5 | */ | ||
6 | package tools.refinery.store.reasoning.actions; | ||
7 | |||
8 | import tools.refinery.store.query.term.NodeVariable; | ||
9 | import tools.refinery.store.reasoning.representation.PartialRelation; | ||
10 | import tools.refinery.store.reasoning.representation.PartialSymbol; | ||
11 | import tools.refinery.store.representation.TruthValue; | ||
12 | |||
13 | import java.util.List; | ||
14 | |||
15 | public final class PartialActionLiterals { | ||
16 | private PartialActionLiterals() { | ||
17 | throw new IllegalStateException("This is a static utility class and should not be instantiated directly"); | ||
18 | } | ||
19 | |||
20 | public static <A, C> MergeActionLiteral<A, C> merge(PartialSymbol<A, C> partialSymbol, A value, | ||
21 | NodeVariable... parameters) { | ||
22 | return new MergeActionLiteral<>(partialSymbol, value, List.of(parameters)); | ||
23 | } | ||
24 | |||
25 | public static MergeActionLiteral<TruthValue, Boolean> add(PartialRelation partialRelation, | ||
26 | NodeVariable... parameters) { | ||
27 | return merge(partialRelation, TruthValue.TRUE, parameters); | ||
28 | } | ||
29 | |||
30 | public static MergeActionLiteral<TruthValue, Boolean> remove(PartialRelation partialRelation, | ||
31 | NodeVariable... parameters) { | ||
32 | return merge(partialRelation, TruthValue.FALSE, parameters); | ||
33 | } | ||
34 | |||
35 | public static FocusActionLiteral focus(NodeVariable parent, NodeVariable child) { | ||
36 | return new FocusActionLiteral(parent, child); | ||
37 | } | ||
38 | |||
39 | public static CleanupActionLiteral cleanup(NodeVariable node) { | ||
40 | return new CleanupActionLiteral(node); | ||
41 | } | ||
42 | } | ||