8000 Perf tests for constructing Map from array and List · powercoder23/immutable-js@d08d5ad · GitHub
[go: up one dir, main page]

Skip to content

Commit d08d5ad

Browse files
committed
Perf tests for constructing Map from array and List
1 parent 6d95d88 commit d08d5ad

File tree

4 files changed

+169
-30
lines changed

4 files changed

+169
-30
lines changed

dist/immutable.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1039,14 +1039,16 @@
10391039
return this._iter.toSeq();
10401040
};
10411041

1042-
FromEntriesSequence.prototype.__iterate = function(fn, reverse) {var this$0 = this;
1042+
FromEntriesSequence.prototype.__iterate = function(fn, reverse) {
10431043
return this._iter.__iterate(function(entry ) {
10441044
// Check if entry exists first so array access doesn't throw for holes
10451045
// in the parent iteration.
10461046
if (entry) {
10471047
validateEntry(entry);
1048-
var seq = Seq(entry);
1049-
return fn(seq.get(1), seq.get(0), this$0);
1048+
var iterable = !Array.isArray(entry) && isIterable(entry);
1049+
var k = iterable ? entry.get(0) : entry[0];
1050+
var v = iterable ? entry.get(1) : entry[1];
1051+
return fn(v, k, this);
10501052
}
10511053
}, reverse);
10521054
};
@@ -1064,9 +1066,11 @@
10641066
// in the parent iteration.
10651067
if (entry) {
10661068
validateEntry(entry);
1067-
var seq = Seq(entry);
1069+
var iterable = !Array.isArray(entry) && isIterable(entry);
1070+
var k = iterable ? entry.get(0) : entry[0];
1071+
var v = iterable ? entry.get(1) : entry[1];
10681072
return type === ITERATE_ENTRIES ? step :
1069-
iteratorValue(type, seq.get(0), seq.get(1), step);
1073+
iteratorValue(type, k, v, step);
10701074
}
10711075
}
10721076
});

0 commit comments

Comments
 (0)
0