summaryrefslogtreecommitdiffstats
path: root/js/src/builtin/Iterator.js
diff options
context:
space:
mode:
authorMoonchild <moonchild@palemoon.org>2019-11-10 13:33:18 +0100
committerGitHub <noreply@github.com>2019-11-10 13:33:18 +0100
commitffd99743369997aea555d76867d90b3c601e9ed4 (patch)
tree0a1162b528b0801096d27eeed1e891a29437bd6c /js/src/builtin/Iterator.js
parent736d25cbec4541186ed46c935c117ce4d1c7f3bb (diff)
parent406326715dfb8342617df1e8985a296d0cd1b97c (diff)
downloadUXP-ffd99743369997aea555d76867d90b3c601e9ed4.tar
UXP-ffd99743369997aea555d76867d90b3c601e9ed4.tar.gz
UXP-ffd99743369997aea555d76867d90b3c601e9ed4.tar.lz
UXP-ffd99743369997aea555d76867d90b3c601e9ed4.tar.xz
UXP-ffd99743369997aea555d76867d90b3c601e9ed4.zip
Merge pull request #1278 from MoonchildProductions/js-modules
Partial solution for JS modules
Diffstat (limited to 'js/src/builtin/Iterator.js')
-rw-r--r--js/src/builtin/Iterator.js41
1 files changed, 0 insertions, 41 deletions
diff --git a/js/src/builtin/Iterator.js b/js/src/builtin/Iterator.js
index 735eec7a0..e25b76156 100644
--- a/js/src/builtin/Iterator.js
+++ b/js/src/builtin/Iterator.js
@@ -84,44 +84,3 @@ function LegacyIteratorShim() {
function LegacyGeneratorIteratorShim() {
return NewLegacyIterator(ToObject(this), LegacyGeneratorIterator);
}
-
-// 7.4.8 CreateListIterator()
-function CreateListIterator(array) {
- let iterator = NewListIterator();
- UnsafeSetReservedSlot(iterator, ITERATOR_SLOT_TARGET, array);
- UnsafeSetReservedSlot(iterator, ITERATOR_SLOT_NEXT_INDEX, 0);
-
- // 7.4.8.1 ListIterator next()
- // The spec requires that we use a new next function per iterator object.
- let next = function() {
- if (!IsObject(this) || !IsListIterator(this))
- return callFunction(CallListIteratorMethodIfWrapped, this, "ListIteratorNext");
-
- if (ActiveFunction() !== UnsafeGetReservedSlot(this, ITERATOR_SLOT_NEXT_METHOD))
- ThrowTypeError(JSMSG_INCOMPATIBLE_METHOD, "next", "method", ToString(this));
-
- let array = UnsafeGetObjectFromReservedSlot(this, ITERATOR_SLOT_TARGET);
- let index = UnsafeGetReservedSlot(this, ITERATOR_SLOT_NEXT_INDEX);
-
- if (index >= ToLength(array.length)) {
- UnsafeSetReservedSlot(this, ITERATOR_SLOT_NEXT_INDEX, 1/0);
- return { value: undefined, done: true };
- }
-
- UnsafeSetReservedSlot(this, ITERATOR_SLOT_NEXT_INDEX, index + 1);
- return { value: array[index], done: false };
- };
-
- UnsafeSetReservedSlot(iterator, ITERATOR_SLOT_NEXT_METHOD, next);
- iterator.next = next;
-
- iterator[std_iterator] = ListIteratorIdentity;
- return iterator;
-}
-
-function ListIteratorIdentity() {
- if (!IsObject(this) || !IsListIterator(this))
- return callFunction(CallListIteratorMethodIfWrapped, this, "ListIteratorIdentity");
-
- return this;
-}