Generators
defer
▸ defer<T
>(sourceFactory
): Seq
<T
>
Generates a sequence that delays the generation of sources until the actual enumeration is performed.
const result1 = defer(() => [Math.floor(Math.random() * 100)]).pipe(repeat(3)).toArray();
//result1: [72,14,91]
//Math.random() is executed every time.
const result2 = from([Math.floor(Math.random() * 100)]).pipe(repeat(3)).toArray();
//result2: [33,33,33]
//Math.random() has only been executed once.
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
sourceFactory | () => Iterable <T > | Function to generate source. |
Returns
Seq
<T
>
A sequence in which the generation of sources is delayed until the actual enumeration begins.
Defined in
deferValue
▸ deferValue<T
>(sourceFactory
): Seq
<T
>
Generates a sequence that delays the generation of the source until the actual enumeration is performed. the source in deferValue consists of a single value.
const result1 = deferValue(() => Math.floor(Math.random() * 100)).pipe(repeat(3)).toArray();
//result1: [72,14,91]
//Math.random() is executed every time.
const result2 = from(Math.floor(Math.random() * 100)).pipe(repeat(3)).toArray();
//result2: [33,33,33]
//Math.random() has only been executed once.
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
sourceFactory | () => T | Function to generate a single value. |
Returns
Seq
<T
>
A sequence in which the generation of sources is delayed until the actual enumeration begins.
Defined in
from
▸ from<T
>(source
): Seq
<T
>
Generates a sequence from an iterable object.
const result = from([1,2,3]).toArray();
//result: [1,2,3]
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
source | Iterable <T > | Enumerable source. |
Returns
Seq
<T
>
Sequence.
Defined in
fromConcat
▸ fromConcat<T
>(...args
): Seq
<T
>
Generates a concatenated sequence of multiple iterable objects.
const result = fromConcat([1,2],[3,4,5]).toArray();
//result: [1,2,3,4,5]
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
...args | Iterable <T >[] | Enumerable sources. |
Returns
Seq
<T
>
Sequence.
Defined in
fromValue
▸ fromValue<T
>(element
): Seq
<T
>
Generates a sequence from a single value.
const result = fromValue(1).toArray();
//result: [1]
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type |
---|---|
element | T |
Returns
Seq
<T
>
Sequence.
Defined in
range
▸ range(start
, count
): Seq
<number
>
Generates a sequential number sequence.
const result = range(5,10).toArray();
//result: [5,6,7,8,9,10,11,12,13,14]
Parameters
Name | Type | Description |
---|---|---|
start | number | Starting number of sequential numbers. |
count | number | Number of pieces to be generated. |
Returns
Seq
<number
>
Sequence.
Defined in
zip
▸ zip<T1
, T2
, T3
, T4
, T5
>(source1
, source2
, source3
, source4
, source5
): Seq
<[T1
, T2
, T3
, T4
, T5
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = zip([1,2,3],['a','b']).toArray();
//result1: [[1,'a'],[2,'b']]
const result2 = zip([1,2,3],['a','b'],[true,false,true]).toArray();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
T3 | Third element type. |
T4 | Fourth element type. |
T5 | Fifth element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | Iterable <T1 > | First iterable. |
source2 | Iterable <T2 > | Second iterable. |
source3 | Iterable <T3 > | Third iterable. |
source4 | Iterable <T4 > | Fourth iterable. |
source5 | Iterable <T5 > | Fifth iterable. |
Returns
Seq
<[T1
, T2
, T3
, T4
, T5
]>
[T1,T2,T3,T4,T5] sequence.
Defined in
▸ zip<T1
, T2
, T3
, T4
>(source1
, source2
, source3
, source4
): Seq
<[T1
, T2
, T3
, T4
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = zip([1,2,3],['a','b']).toArray();
//result1: [[1,'a'],[2,'b']]
const result2 = zip([1,2,3],['a','b'],[true,false,true]).toArray();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
T3 | Third element type. |
T4 | Fourth element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | Iterable <T1 > | First iterable. |
source2 | Iterable <T2 > | Second iterable. |
source3 | Iterable <T3 > | Third iterable. |
source4 | Iterable <T4 > | Fourth iterable. |
Returns
Seq
<[T1
, T2
, T3
, T4
]>
[T1,T2,T3,T4] sequence.
Defined in
▸ zip<T1
, T2
, T3
>(source1
, source2
, source3
): Seq
<[T1
, T2
, T3
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = zip([1,2,3],['a','b']).toArray();
//result1: [[1,'a'],[2,'b']]
const result2 = zip([1,2,3],['a','b'],[true,false,true]).toArray();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
T3 | Third element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | Iterable <T1 > | First iterable. |
source2 | Iterable <T2 > | Second iterable. |
source3 | Iterable <T3 > | Third iterable. |
Returns
Seq
<[T1
, T2
, T3
]>
[T1,T2,T3] sequence.
Defined in
▸ zip<T1
, T2
>(source1
, source2
): Seq
<[T1
, T2
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = zip([1,2,3],['a','b']).toArray();
//result1: [[1,'a'],[2,'b']]
const result2 = zip([1,2,3],['a','b'],[true,false,true]).toArray();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | Iterable <T1 > | First iterable. |
source2 | Iterable <T2 > | Second iterable. |
Returns
Seq
<[T1
, T2
]>
[T1,T2] sequence.
Defined in
▸ zip<T
>(...sources
): Seq
<T
[]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = zip([1,2,3],['a','b']).toArray();
//result1: [[1,'a'],[2,'b']]
const result2 = zip([1,2,3],['a','b'],[true,false,true]).toArray();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T | Element type. |
Parameters
Name | Type | Description |
---|---|---|
...sources | Iterable <T >[] | Sequences. |
Returns
Seq
<T
[]>
[T] sequence.
Defined in
Async Generators
deferAsAsync
▸ deferAsAsync<T
>(sourceFactory
): AsyncSeq
<T
>
Generates a sequence that delays the generation of sources until the actual enumeration is performed.
const result1 = await deferAsAsync(() => [Math.floor(Math.random() * 100)]).pipe(repeatAsync(3)).toArrayAsync();
//result1: [72,14,91]
//Math.random() is executed every time.
const result2 = await fromAsAsync([Math.floor(Math.random() * 100)]).pipe(repeatAsync(3)).toArrayAsync();
//result2: [33,33,33]
//Math.random() has only been executed once.
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
sourceFactory | () => AllIterables <T > | Function to generate source. |
Returns
AsyncSeq
<T
>
A sequence in which the generation of sources is delayed until the actual enumeration begins.
Defined in
deferFromPromise
▸ deferFromPromise<T
>(sourceFactory
): AsyncSeq
<T
>
Generates a sequence whose values are the result of sequential execution of a single Promise or multiple Promises; Promise execution is delayed until the sequence is enumerated.
const sleepAndRandom = (ms: number) => new Promise(resolve => setTimeout(() => resolve(Math.floor(Math.random() * 100)),ms));
const result1 = await deferFromPromise(async () => await sleepAndRandom(1000)).pipe(repeatAsync(3)).toArrayAsync();
//3 seconds later...result1: [72,14,91]
//sleepAndRandom is executed every time.
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
sourceFactory | () => Promise <T > | AllIterables <Promise <T >> | Function that returns Promise or multiple enumerable Promises. |
Returns
AsyncSeq
<T
>
A sequence in which the generation of sources is delayed until the actual enumeration begins.
Defined in
deferValueAsAsync
▸ deferValueAsAsync<T
>(sourceFactory
): AsyncSeq
<T
>
Generates a sequence that delays the generation of the source until the actual enumeration is performed. the source in deferValue consists of a single value.
const result = await deferValueAsAsync(() => Math.floor(Math.random() * 100)).pipe(repeatAsync(3)).toArrayAsync();
//result: [72,14,91]
//Math.random() is executed every time.
const result = await fromValueAsAsync(Math.floor(Math.random() * 100)).pipe(repeatAsync(3)).toArrayAsync();
//result: [33,33,33]
//Math.random() has only been executed once.
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
sourceFactory | () => T | Function to generate a single value. |
Returns
AsyncSeq
<T
>
A sequence in which the generation of sources is delayed until the actual enumeration begins.
Defined in
fromAsAsync
▸ fromAsAsync<T
>(source
): AsyncSeq
<T
>
Generates a sequence from an iterable/async iterable object.
const result = await fromAsAsync([1,2,3]).toArrayAsync();
//result: [1,2,3]
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
source | AllIterables <T > | Enumerable source. |
Returns
AsyncSeq
<T
>
Sequence.
Defined in
fromConcatAsAsync
▸ fromConcatAsAsync<T
>(...args
): AsyncSeq
<T
>
Generates a concatenated sequence of multiple iterable/async iterable objects.
const result = await fromConcatAsAsync([1,2],[3,4,5]).toArrayAsync();
//result: [1,2,3,4,5]
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type | Description |
---|---|---|
...args | AllIterables <T >[] | Enumerable sources. |
Returns
AsyncSeq
<T
>
Sequence.
Defined in
fromValueAsAsync
▸ fromValueAsAsync<T
>(element
): AsyncSeq
<T
>
Generates a sequence from a single value.
const result = await fromValueAsAsync(1).toArrayAsync();
//result: [1]
Type parameters
Name | Description |
---|---|
T | Source element type. |
Parameters
Name | Type |
---|---|
element | T |
Returns
AsyncSeq
<T
>
Sequence.
Defined in
rangeAsAsync
▸ rangeAsAsync(start
, count
): AsyncSeq
<number
>
Generates a sequential number sequence.
const result = await rangeAsAsync(5,10).toArrayAsync();
//result: [5,6,7,8,9,10,11,12,13,14]
Parameters
Name | Type | Description |
---|---|---|
start | number | Starting number of sequential numbers. |
count | number | Number of pieces to be generated. |
Returns
AsyncSeq
<number
>
Sequence.
Defined in
zipAsAsync
▸ zipAsAsync<T1
, T2
, T3
, T4
, T5
>(source1
, source2
, source3
, source4
, source5
): AsyncSeq
<[T1
, T2
, T3
, T4
, T5
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = await zipAsAsync([1,2,3],['a','b']).toArrayAsync();
//result1: [[1,'a'],[2,'b']]
const result2 = await zipAsAsync([1,2,3],['a','b'],[true,false,true]).toArrayAsync();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
T3 | Third element type. |
T4 | Fourth element type. |
T5 | Fifth element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | AllIterables <T1 > | First iterable. |
source2 | AllIterables <T2 > | Second iterable. |
source3 | AllIterables <T3 > | Third iterable. |
source4 | AllIterables <T4 > | Fourth iterable. |
source5 | AllIterables <T5 > | Fifth iterable. |
Returns
AsyncSeq
<[T1
, T2
, T3
, T4
, T5
]>
[T1,T2,T3,T4,T5] sequence.
Defined in
▸ zipAsAsync<T1
, T2
, T3
, T4
>(source1
, source2
, source3
, source4
): AsyncSeq
<[T1
, T2
, T3
, T4
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = await zipAsAsync([1,2,3],['a','b']).toArrayAsync();
//result1: [[1,'a'],[2,'b']]
const result2 = await zipAsAsync([1,2,3],['a','b'],[true,false,true]).toArrayAsync();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
T3 | Third element type. |
T4 | Fourth element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | AllIterables <T1 > | First iterable. |
source2 | AllIterables <T2 > | Second iterable. |
source3 | AllIterables <T3 > | Third iterable. |
source4 | AllIterables <T4 > | Fourth iterable. |
Returns
AsyncSeq
<[T1
, T2
, T3
, T4
]>
[T1,T2,T3,T4] sequence.
Defined in
▸ zipAsAsync<T1
, T2
, T3
>(source1
, source2
, source3
): AsyncSeq
<[T1
, T2
, T3
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = await zipAsAsync([1,2,3],['a','b']).toArrayAsync();
//result1: [[1,'a'],[2,'b']]
const result2 = await zipAsAsync([1,2,3],['a','b'],[true,false,true]).toArrayAsync();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
T3 | Third element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | AllIterables <T1 > | First iterable. |
source2 | AllIterables <T2 > | Second iterable. |
source3 | AllIterables <T3 > | Third iterable. |
Returns
AsyncSeq
<[T1
, T2
, T3
]>
[T1,T2,T3] sequence.
Defined in
▸ zipAsAsync<T1
, T2
>(source1
, source2
): AsyncSeq
<[T1
, T2
]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = await zipAsAsync([1,2,3],['a','b']).toArrayAsync();
//result1: [[1,'a'],[2,'b']]
const result2 = await zipAsAsync([1,2,3],['a','b'],[true,false,true]).toArrayAsync();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T1 | First element type. |
T2 | Second element type. |
Parameters
Name | Type | Description |
---|---|---|
source1 | AllIterables <T1 > | First iterable. |
source2 | AllIterables <T2 > | Second iterable. |
Returns
AsyncSeq
<[T1
, T2
]>
[T1,T2] sequence.
Defined in
▸ zipAsAsync<T
>(...sources
): AsyncSeq
<T
[]>
Generates a sequence of arrays made by concatenating the elements of multiple sequences one at a time.
const result1 = await zipAsAsync([1,2,3],['a','b']).toArrayAsync();
//result1: [[1,'a'],[2,'b']]
const result2 = await zipAsAsync([1,2,3],['a','b'],[true,false,true]).toArrayAsync();
//result2: [[1,'a',true],[2,'b',false]]
Type parameters
Name | Description |
---|---|
T | Element type. |
Parameters
Name | Type | Description |
---|---|---|
...sources | AllIterables <T >[] | Sequences. |
Returns
AsyncSeq
<T
[]>
[T] sequence.