diff options
Diffstat (limited to 'model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapDiffCursor.java')
-rw-r--r-- | model-data/src/main/java/org/eclipse/viatra/solver/data/map/internal/MapDiffCursor.java | 12 |
1 files changed, 9 insertions, 3 deletions
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()) { |