aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/viatra/internal/pquery/RawPatternMatcher.java
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/viatra/internal/pquery/RawPatternMatcher.java')
-rw-r--r--subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/viatra/internal/pquery/RawPatternMatcher.java10
1 files changed, 5 insertions, 5 deletions
diff --git a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/viatra/internal/pquery/RawPatternMatcher.java b/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/viatra/internal/pquery/RawPatternMatcher.java
index 8f56586e..5924ff15 100644
--- a/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/viatra/internal/pquery/RawPatternMatcher.java
+++ b/subprojects/store-query-viatra/src/main/java/tools/refinery/store/query/viatra/internal/pquery/RawPatternMatcher.java
@@ -9,13 +9,13 @@ import org.eclipse.viatra.query.runtime.matchers.tuple.TupleMask;
9import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; 9import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples;
10import org.eclipse.viatra.query.runtime.rete.index.Indexer; 10import org.eclipse.viatra.query.runtime.rete.index.Indexer;
11import org.eclipse.viatra.query.runtime.rete.matcher.RetePatternMatcher; 11import org.eclipse.viatra.query.runtime.rete.matcher.RetePatternMatcher;
12import tools.refinery.store.map.Cursor;
13import tools.refinery.store.map.Cursors;
12import tools.refinery.store.query.ResultSet; 14import tools.refinery.store.query.ResultSet;
13import tools.refinery.store.query.viatra.ViatraTupleLike; 15import tools.refinery.store.query.viatra.ViatraTupleLike;
14import tools.refinery.store.tuple.Tuple; 16import tools.refinery.store.tuple.Tuple;
15import tools.refinery.store.tuple.TupleLike; 17import tools.refinery.store.tuple.TupleLike;
16 18
17import java.util.stream.Stream;
18
19/** 19/**
20 * Directly access the tuples inside a VIATRA pattern matcher.<p> 20 * Directly access the tuples inside a VIATRA pattern matcher.<p>
21 * This class neglects calling 21 * This class neglects calling
@@ -64,12 +64,12 @@ public class RawPatternMatcher extends GenericPatternMatcher implements ResultSe
64 } 64 }
65 65
66 @Override 66 @Override
67 public Stream<TupleLike> allResults() { 67 public Cursor<TupleLike, Boolean> allResults() {
68 if (emptyMaskIndexer == null) { 68 if (emptyMaskIndexer == null) {
69 return backend.getAllMatches(empty).map(ViatraTupleLike::new); 69 return new ResultSetCursor(backend.getAllMatches(empty).iterator());
70 } 70 }
71 var matches = emptyMaskIndexer.get(Tuples.staticArityFlatTupleOf()); 71 var matches = emptyMaskIndexer.get(Tuples.staticArityFlatTupleOf());
72 return matches == null ? Stream.of() : matches.stream().map(ViatraTupleLike::new); 72 return matches == null ? Cursors.empty() : new ResultSetCursor(matches.stream().iterator());
73 } 73 }
74 74
75 @Override 75 @Override