You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
1. Let _iter_ be Completion(GetIteratorFlattenable(_value_, ~iterate-strings~)).
103
-
1. IfAbruptCloseIterators(_iter_, _openIters_).
100
+
1. IfAbruptCloseIterators(_iter_, _iters_).
104
101
1. Append _iter_ to _iters_.
105
-
1. Append _iter_ to _openIters_.
106
102
1. Let _iterCount_ be the number of elements in _iters_.
107
103
1. If _mode_ is ~longest~, then
108
104
1. If _paddingOption_ is *undefined*, then
@@ -111,22 +107,21 @@ copyright: false
111
107
1. Else,
112
108
1. For each element _key_ of _keys_, do
113
109
1. Let _value_ be Completion(Get(_paddingOption_, _key_)).
114
-
1. IfAbruptCloseIterators(_value_, _openIters_).
110
+
1. IfAbruptCloseIterators(_value_, _iters_).
115
111
1. Append _value_ to _padding_.
116
112
1. Let _finishResults_ be a new Abstract Closure with parameters (_results_) that captures _keys_ and _iterCount_ and performs the following steps when called:
117
113
1. Let _obj_ be OrdinaryObjectCreate(*null*).
118
114
1. For each integer _i_ such that 0 ≤ _i_ < _iterCount_, do
_mode_: either ~shortest~, ~longest~, or ~strict~,
131
126
_padding_: a List of ECMAScript language values,
132
127
_finishResults_: an Abstract Closure that takes a List of ECMAScript values and returns an ECMAScript value,
@@ -138,10 +133,12 @@ copyright: false
138
133
</dl>
139
134
<emu-alg>
140
135
1. Let _iterCount_ be the number of elements in _iters_.
136
+
1. Let _openIters_ be a copy of _iters_.
141
137
1. Let _closure_ be a new Abstract Closure with no parameters that captures _iters_, _iterCount_, _openIters_, _mode_, _padding_, and _finishResults_, and performs the following steps when called:
142
138
1. If _iterCount_ = 0, return *undefined*.
143
139
1. Repeat,
144
140
1. Let _results_ be a new empty List.
141
+
1. Assert: _openIters_ is not empty.
145
142
1. For each integer _i_ such that 0 ≤ _i_ < _iterCount_, in ascending order, do
146
143
1. If _iters_[_i_] is *null*, then
147
144
1. Let _result_ be _padding_[_i_].
@@ -159,6 +156,7 @@ copyright: false
159
156
1. If _i_ ≠ 0, then
160
157
1. Return ? IteratorCloseAll(_openIters_, ThrowCompletion(a newly created *TypeError* object)).
161
158
1. For each integer _k_ such that 1 ≤ _k_ < _iterCount_, in ascending order, do
159
+
1. Assert: _iters_[_k_] is not *null*.
162
160
1. Let _open_ be Completion(IteratorStep(_iters_[_k_])).
0 commit comments