diff options
author | OszkarSemerath <semerath@mit.bme.hu> | 2021-08-10 01:13:57 +0200 |
---|---|---|
committer | OszkarSemerath <semerath@mit.bme.hu> | 2021-08-10 01:13:57 +0200 |
commit | d4adeca01946a0debd67dc831df9282f013f02f5 (patch) | |
tree | 2d44c468c4b58103b3e076ca3510ae30970ef05b /model-data/src/main/java | |
parent | Simple collective cursors for models (diff) | |
download | refinery-d4adeca01946a0debd67dc831df9282f013f02f5.tar.gz refinery-d4adeca01946a0debd67dc831df9282f013f02f5.tar.zst refinery-d4adeca01946a0debd67dc831df9282f013f02f5.zip |
Diffcursor dependency update
Diffstat (limited to 'model-data/src/main/java')
4 files changed, 15 insertions, 7 deletions
diff --git a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/Cursor.java b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/Cursor.java index 95e59ee2..e45b1f20 100644 --- a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/Cursor.java +++ b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/Cursor.java | |||
@@ -9,5 +9,6 @@ public interface Cursor<K,V> { | |||
9 | public boolean move(); | 9 | public boolean move(); |
10 | public boolean isDirty(); | 10 | public boolean isDirty(); |
11 | 11 | ||
12 | public List<VersionedMap<K,V>> getDependingMaps(); | 12 | @SuppressWarnings("squid:S1452") |
13 | public List<VersionedMap<?,?>> getDependingMaps(); | ||
13 | } | 14 | } |
diff --git a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/DiffCursor.java b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/DiffCursor.java index 7042f7c9..f0af1436 100644 --- a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/DiffCursor.java +++ b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/DiffCursor.java | |||
@@ -1,5 +1,6 @@ | |||
1 | package org.eclipse.viatra.solver.data.map; | 1 | package org.eclipse.viatra.solver.data.map; |
2 | 2 | ||
3 | public interface DiffCursor<K, V> extends Cursor<K,V> { | 3 | public interface DiffCursor<K, V> extends Cursor<K,V> { |
4 | 4 | public V getFromValue(); | |
5 | public V getToValue(); | ||
5 | } \ No newline at end of file | 6 | } \ No newline at end of file |
diff --git a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapCursor.java b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapCursor.java index 97fbcd8f..cc5a3982 100644 --- a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapCursor.java +++ b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapCursor.java | |||
@@ -83,7 +83,7 @@ public class MapCursor<K,V> implements Cursor<K,V> { | |||
83 | return this.map.hashCode() != this.creationHash; | 83 | return this.map.hashCode() != this.creationHash; |
84 | } | 84 | } |
85 | @Override | 85 | @Override |
86 | public List<VersionedMap<K, V>> getDependingMaps() { | 86 | public List<VersionedMap<?, ?>> getDependingMaps() { |
87 | return List.of(this.map); | 87 | return List.of(this.map); |
88 | } | 88 | } |
89 | 89 | ||
@@ -103,7 +103,7 @@ public class MapCursor<K,V> implements Cursor<K,V> { | |||
103 | * @param <V> | 103 | * @param <V> |
104 | * @param cursor1 | 104 | * @param cursor1 |
105 | * @param cursor2 | 105 | * @param cursor2 |
106 | * @returnv Positive number if cursor 1 is behind, negative number if cursor 2 is behind, and 0 if they are at the same position. | 106 | * @return Positive number if cursor 1 is behind, negative number if cursor 2 is behind, and 0 if they are at the same position. |
107 | */ | 107 | */ |
108 | public static <K,V> int compare(MapCursor<K,V> cursor1, MapCursor<K,V> cursor2) { | 108 | public static <K,V> int compare(MapCursor<K,V> cursor1, MapCursor<K,V> cursor2) { |
109 | // two cursors are equally deep | 109 | // two cursors are equally deep |
diff --git a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapDiffCursor.java b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapDiffCursor.java index 9e3a47ab..e97e4aa1 100644 --- a/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapDiffCursor.java +++ b/model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapDiffCursor.java | |||
@@ -51,13 +51,15 @@ public class MapDiffCursor<K,V> implements DiffCursor<K, V>, Cursor<K,V>{ | |||
51 | this.cursor1 = (MapCursor<K, V>) cursor1; | 51 | this.cursor1 = (MapCursor<K, V>) cursor1; |
52 | this.cursor2 = (MapCursor<K, V>) cursor2; | 52 | this.cursor2 = (MapCursor<K, V>) cursor2; |
53 | } | 53 | } |
54 | 54 | @Override | |
55 | public K getKey() { | 55 | public K getKey() { |
56 | return key; | 56 | return key; |
57 | } | 57 | } |
58 | @Override | ||
58 | public V getFromValue() { | 59 | public V getFromValue() { |
59 | return fromValue; | 60 | return fromValue; |
60 | } | 61 | } |
62 | @Override | ||
61 | public V getToValue() { | 63 | public V getToValue() { |
62 | return toValue; | 64 | return toValue; |
63 | } | 65 | } |
@@ -73,7 +75,7 @@ public class MapDiffCursor<K,V> implements DiffCursor<K, V>, Cursor<K,V>{ | |||
73 | return this.cursor1.isDirty() || this.cursor2.isDirty(); | 75 | return this.cursor1.isDirty() || this.cursor2.isDirty(); |
74 | } | 76 | } |
75 | @Override | 77 | @Override |
76 | public List<VersionedMap<K, V>> getDependingMaps() { | 78 | public List<VersionedMap<?, ?>> getDependingMaps() { |
77 | return Stream.concat( | 79 | return Stream.concat( |
78 | cursor1.getDependingMaps().stream(), | 80 | cursor1.getDependingMaps().stream(), |
79 | cursor2.getDependingMaps().stream() | 81 | cursor2.getDependingMaps().stream() |
@@ -142,7 +144,11 @@ public class MapDiffCursor<K,V> implements DiffCursor<K, V>, Cursor<K,V>{ | |||
142 | 144 | ||
143 | 145 | ||
144 | protected boolean sameValues() { | 146 | protected boolean sameValues() { |
145 | return this.fromValue == this.toValue; | 147 | if(this.fromValue == null) { |
148 | return this.toValue == null; | ||
149 | } else { | ||
150 | return this.fromValue.equals(this.toValue); | ||
151 | } | ||
146 | } | 152 | } |
147 | protected boolean moveOne() { | 153 | protected boolean moveOne() { |
148 | if(isTerminated()) { | 154 | if(isTerminated()) { |