Returns false
and terminates this generator if the predicate is false for any of the generator's
yielded values.
If the generator terminates without having failed the predicate, true
is returned.
predicate to apply to each yielded value.
Optional value to supply as context (this
) for the predicate
Return a new EnhancedGenerator that yields only the values that satisfy the predicate f.
f receives the value and a sequential index.
Optional context to be passed as this
to the predicate.
Flatten the values yielded by this generator to level depth. Produces a generator that yields the individual values at each level in depth-first order. Any iterable (including Array) or iterator will be traversed and its values yielded.
The return type is currently over-broad
(default = 1)
Flatten the values yielded by applying the function to the values yielded by the generator to level depth. Produces a generator that yields the individual values at each level in depth-first order. Any iterable (including Array) or iterator will be traversed and its values yielded.
The return type is currently over-broad
Operate on each value produced by this generator. f is called with two values, the value yielded by this generator and a sequential index.
Value to be supplied as context this
for function f.
Trivial, but handy, same as Array.prototype.join.
(default = ',').
See also EnhancedGenerator.join
Limit the number of values that can be generated. A RangeError
is thrown if this limit is
exceeded. See EnhancedGenerator.slice if you want to truncate.
Apply the function to each value yielded by this generator. It is called with two arguments, the value yielded, and a sequential index. The return value is a generator that yields the values produced by the function.
Optional value to be supplied as context this
for function f.
Like Array.prototype.reduce
, but the 3rd argument to the reducing function ("array") is omitted
because there is no array.
Like Array.prototype.reduce
, but the 3rd argument to the reducing function ("array") is omitted
because there is no array.
Return a new EnhancedGenerator that only yields the indicated values, skipping start initial values and continuing until the end.
Returns true
and terminates the generator if the predicate is true for any of the generator's
yielded values.
If the generator terminates without having satisfied the predicate, false
is returned.
predicate to apply to each yielded value.
Optional value to supply as context (this
) for the predicate
Combines this generator with additional ones, returning a generator that produces a tuple with each of their results, with this generator's result first.
Terminates when any generator terminates. To get other behaviors, use with EnhancedGenerator.repeat or EnhancedGenerator.repeatLast.
Generated using TypeDoc
Return all of the values from this generator as an array. You do not want to call this on an infinite generator (for obvious reasons); consider using EnhancedGenerator.slice or EnhancedGenerator.limit to limit the size before calling this.