Preserve ordering in incremental diffs.

This commit is contained in:
Matthew Chen 2018-11-05 09:01:56 -05:00
parent aa5e6b456e
commit 2ca32fddcc
1 changed files with 1 additions and 0 deletions

View File

@ -654,6 +654,7 @@ static const int kYapDatabaseRangeMinLength = 0;
NSSet<NSString *> *newItemIdSet = [NSSet setWithArray:newItemIdList];
// We use sets and dictionaries here to ensure perf.
// We use NSMutableOrderedSet to preserve item ordering.
NSMutableOrderedSet<NSString *> *deletedItemIdSet = [NSMutableOrderedSet orderedSetWithArray:oldItemIdList];
[deletedItemIdSet minusSet:newItemIdSet];
NSMutableOrderedSet<NSString *> *insertedItemIdSet = [NSMutableOrderedSet orderedSetWithArray:newItemIdList];