Type Parameters
-
FirstIterable extends IsomorphicIterable
Parameters
-
iterableFirst: FirstIterable
Returns (<SecondIterable>(iterableSecond) => FirstIterable extends IsomorphicIterable<FirstItem>
? SecondIterable extends IsomorphicIterable<SecondItem>
? FirstIterable extends {
[asyncIterator]() => AsyncIterator<FirstItem, any, undefined>;
}
? {
[asyncIterator]() => AsyncIterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
return?(value?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
throw?(e?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
}
: SecondIterable extends {
[asyncIterator]() => AsyncIterator<SecondItem, any, undefined>;
}
? {
[asyncIterator]() => AsyncIterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
return?(value?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
throw?(e?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
}
: {
[iterator]() => IterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => IteratorResult<readonly [FirstItem, SecondItem], any>;
return?(value?) => IteratorResult<readonly [FirstItem, SecondItem], any>;
throw?(e?) => IteratorResult<readonly [FirstItem, SecondItem], any>;
}
: never
: never)
Curried function with iterableFirst
in context.
-
- <SecondIterable>(iterableSecond): FirstIterable extends IsomorphicIterable<FirstItem>
? SecondIterable extends IsomorphicIterable<SecondItem>
? FirstIterable extends {
[asyncIterator]() => AsyncIterator<FirstItem, any, undefined>;
}
? {
[asyncIterator]() => AsyncIterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
return?(value?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
throw?(e?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
}
: SecondIterable extends {
[asyncIterator]() => AsyncIterator<SecondItem, any, undefined>;
}
? {
[asyncIterator]() => AsyncIterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
return?(value?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
throw?(e?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
}
: {
[iterator]() => IterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => IteratorResult<readonly [FirstItem, SecondItem], any>;
return?(value?) => IteratorResult<readonly [FirstItem, SecondItem], any>;
throw?(e?) => IteratorResult<readonly [FirstItem, SecondItem], any>;
}
: never
: never
-
Type Parameters
-
SecondIterable extends IsomorphicIterable
Parameters
-
iterableSecond: SecondIterable
Returns FirstIterable extends IsomorphicIterable<FirstItem>
? SecondIterable extends IsomorphicIterable<SecondItem>
? FirstIterable extends {
[asyncIterator]() => AsyncIterator<FirstItem, any, undefined>;
}
? {
[asyncIterator]() => AsyncIterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
return?(value?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
throw?(e?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
}
: SecondIterable extends {
[asyncIterator]() => AsyncIterator<SecondItem, any, undefined>;
}
? {
[asyncIterator]() => AsyncIterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
return?(value?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
throw?(e?) => Promise<IteratorResult<readonly [FirstItem, SecondItem], any>>;
}
: {
[iterator]() => IterableIterator<readonly [FirstItem, SecondItem]>;
next(...args) => IteratorResult<readonly [FirstItem, SecondItem], any>;
return?(value?) => IteratorResult<readonly [FirstItem, SecondItem], any>;
throw?(e?) => IteratorResult<readonly [FirstItem, SecondItem], any>;
}
: never
: never
Takes two iterables or asynchronous iterable and returns a new iterable or asynchronous iterable with the length of the shortest iterable with tuples containing the items from both.
Example