diff options
Diffstat (limited to 'ext/webidl/00_webidl.js')
-rw-r--r-- | ext/webidl/00_webidl.js | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/ext/webidl/00_webidl.js b/ext/webidl/00_webidl.js index f38618f13..4f51edfed 100644 --- a/ext/webidl/00_webidl.js +++ b/ext/webidl/00_webidl.js @@ -60,7 +60,6 @@ ReflectHas, ReflectOwnKeys, RegExpPrototypeTest, - SafeArrayIterator, Set, // TODO(lucacasonato): add SharedArrayBuffer to primordials // SharedArrayBuffer, @@ -633,8 +632,10 @@ function createDictionaryConverter(name, ...dictionaries) { let hasRequiredKey = false; const allMembers = []; - for (const members of new SafeArrayIterator(dictionaries)) { - for (const member of new SafeArrayIterator(members)) { + for (let i = 0; i < dictionaries.length; ++i) { + const members = dictionaries[i]; + for (let j = 0; j < members.length; ++j) { + const member = members[j]; if (member.required) { hasRequiredKey = true; } @@ -649,7 +650,8 @@ }); const defaultValues = {}; - for (const member of new SafeArrayIterator(allMembers)) { + for (let i = 0; i < allMembers.length; ++i) { + const member = allMembers[i]; if (ReflectHas(member, "defaultValue")) { const idlMemberValue = member.defaultValue; const imvType = typeof idlMemberValue; @@ -695,7 +697,8 @@ return idlDict; } - for (const member of new SafeArrayIterator(allMembers)) { + for (let i = 0; i < allMembers.length; ++i) { + const member = allMembers[i]; const key = member.key; let esMemberValue; @@ -821,7 +824,8 @@ } // Slow path if Proxy (e.g: in WPT tests) const keys = ReflectOwnKeys(V); - for (const key of new SafeArrayIterator(keys)) { + for (let i = 0; i < keys.length; ++i) { + const key = keys[i]; const desc = ObjectGetOwnPropertyDescriptor(V, key); if (desc !== undefined && desc.enumerable === true) { const typedKey = keyConverter(key, opts); @@ -891,7 +895,9 @@ } function define(target, source) { - for (const key of new SafeArrayIterator(ReflectOwnKeys(source))) { + const keys = ReflectOwnKeys(source); + for (let i = 0; i < keys.length; ++i) { + const key = keys[i]; const descriptor = ReflectGetOwnPropertyDescriptor(source, key); if (descriptor && !ReflectDefineProperty(target, key, descriptor)) { throw new TypeError(`Cannot redefine property: ${String(key)}`); |