Skip to content

Commit 5731124

Browse files
minor implementation cleanups
1 parent 8104939 commit 5731124

File tree

1 file changed

+4
-9
lines changed

1 file changed

+4
-9
lines changed

src/index.ts

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
function concatImpl(): Iterator<never>
2-
function concatImpl<A>(...iterables: Array<Iterable<A>>): Iterator<A>
3-
function concatImpl<A>(iterableA: Iterable<A>): Iterator<A>
4-
function concatImpl<A, B>(iterableA: Iterable<A>, iterableB: Iterable<B>): Iterator<A | B>
5-
function concatImpl<A, B, C>(iterableA: Iterable<A>, iterableB: Iterable<B>, iterableC: Iterable<C>): Iterator<A | B | C>
6-
function concatImpl<A, B, C, D>(iterableA: Iterable<A>, iterableB: Iterable<B>, iterableC: Iterable<C>, iterableD: Iterable<D>): Iterator<A | B | C | D>
7-
function concatImpl<A, B, C, D, E>(iterableA: Iterable<A>, iterableB: Iterable<B>, iterableC: Iterable<C>, iterableD: Iterable<D>, iterableE: Iterable<E>): Iterator<A | B | C | D | E>
2+
function concatImpl<T extends Iterable<unknown>[]>(...iterables: T): Iterator<T[number] extends Iterable<infer U> ? U : never, undefined, void>;
83
function concatImpl(...iterables: Array<Iterable<unknown>>): Iterator<unknown>
94
function concatImpl(...iterables: Array<unknown>): Iterator<unknown> {
105
const openMethods: Array<{ openMethod: () => Iterator<unknown>, iterable: Iterable<unknown>}> = [];
@@ -21,8 +16,8 @@ function concatImpl(...iterables: Array<unknown>): Iterator<unknown> {
2116
return Iterator.from({
2217
next() {
2318
while (!done) {
24-
if (iterator != null && nextMethod != null) {
25-
let iterResult = nextMethod.call(iterator);
19+
if (iterator != null) {
20+
let iterResult = nextMethod!.call(iterator);
2621
if (!iterResult.done) {
2722
return iterResult;
2823
}
@@ -48,7 +43,7 @@ function concatImpl(...iterables: Array<unknown>): Iterator<unknown> {
4843
}
4944
done = true;
5045
}
51-
return { done: true, value: void 0, };
46+
return { done: true, value: void 0 };
5247
},
5348
});
5449
}

0 commit comments

Comments
 (0)