mirror of
https://github.com/InsanusMokrassar/MicroUtils.git
synced 2026-11-10 14:04:01 +00:00
Small performance optimization of MutableMap.applyDiff
This commit is contained in:
1 parent
39415550f5
commit
5f93706d91
2 files changed
+5
-4
No files matched your search
@@ -2,6 +2,9 @@
|
|||||||
|
|
||||||
## 0.25.5
|
## 0.25.5
|
||||||
|
|
||||||
|
* `Common`:
|
||||||
|
* Small performance optimization of `MutableMap.applyDiff`
|
||||||
|
|
||||||
## 0.25.4
|
## 0.25.4
|
||||||
|
|
||||||
* `Versions`:
|
* `Versions`:
|
||||||
|
|||||||
@@ -82,13 +82,11 @@ fun <K, V> MutableMap<K, V>.applyDiff(
|
|||||||
mapDiff: MapDiff<K, V>
|
mapDiff: MapDiff<K, V>
|
||||||
) {
|
) {
|
||||||
mapDiff.apply {
|
mapDiff.apply {
|
||||||
removed.keys.forEach { remove(it) }
|
keys.removeAll(removed.keys)
|
||||||
changed.forEach { (k, oldNew) ->
|
changed.forEach { (k, oldNew) ->
|
||||||
put(k, oldNew.second)
|
put(k, oldNew.second)
|
||||||
}
|
}
|
||||||
added.forEach { (k, new) ->
|
putAll(added)
|
||||||
put(k, new)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user