Skip to content

Commit f5393db

Browse files
committed
add BuiltinIterator and switch existing IterableIterator uses to that
1 parent 30d9bc2 commit f5393db

7 files changed

+101
-97
lines changed

src/lib/dom.iterable.d.ts

+23-23
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
11
/// <reference lib="dom" />
22

33
interface DOMTokenList {
4-
[Symbol.iterator](): IterableIterator<string>;
4+
[Symbol.iterator](): BuiltinIterator<string>;
55
}
66

77
interface Headers {
8-
[Symbol.iterator](): IterableIterator<[string, string]>;
8+
[Symbol.iterator](): BuiltinIterator<[string, string]>;
99
/**
1010
* Returns an iterator allowing to go through all key/value pairs contained in this object.
1111
*/
12-
entries(): IterableIterator<[string, string]>;
12+
entries(): BuiltinIterator<[string, string]>;
1313
/**
1414
* Returns an iterator allowing to go through all keys f the key/value pairs contained in this object.
1515
*/
16-
keys(): IterableIterator<string>;
16+
keys(): BuiltinIterator<string>;
1717
/**
1818
* Returns an iterator allowing to go through all values of the key/value pairs contained in this object.
1919
*/
20-
values(): IterableIterator<string>;
20+
values(): BuiltinIterator<string>;
2121
}
2222

2323
interface NodeList {
2424
/**
2525
* Returns an array of key, value pairs for every entry in the list
2626
*/
27-
entries(): IterableIterator<[number, Node]>;
27+
entries(): BuiltinIterator<[number, Node]>;
2828
/**
2929
* Performs the specified action for each node in an list.
3030
* @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list.
@@ -34,21 +34,21 @@ interface NodeList {
3434
/**
3535
* Returns an list of keys in the list
3636
*/
37-
keys(): IterableIterator<number>;
37+
keys(): BuiltinIterator<number>;
3838

3939
/**
4040
* Returns an list of values in the list
4141
*/
42-
values(): IterableIterator<Node>;
42+
values(): BuiltinIterator<Node>;
4343

44-
[Symbol.iterator](): IterableIterator<Node>;
44+
[Symbol.iterator](): BuiltinIterator<Node>;
4545
}
4646

4747
interface NodeListOf<TNode extends Node> {
4848
/**
4949
* Returns an array of key, value pairs for every entry in the list
5050
*/
51-
entries(): IterableIterator<[number, TNode]>;
51+
entries(): BuiltinIterator<[number, TNode]>;
5252

5353
/**
5454
* Performs the specified action for each node in an list.
@@ -59,55 +59,55 @@ interface NodeListOf<TNode extends Node> {
5959
/**
6060
* Returns an list of keys in the list
6161
*/
62-
keys(): IterableIterator<number>;
62+
keys(): BuiltinIterator<number>;
6363
/**
6464
* Returns an list of values in the list
6565
*/
66-
values(): IterableIterator<TNode>;
66+
values(): BuiltinIterator<TNode>;
6767

68-
[Symbol.iterator](): IterableIterator<TNode>;
68+
[Symbol.iterator](): BuiltinIterator<TNode>;
6969
}
7070

7171
interface HTMLCollectionBase {
72-
[Symbol.iterator](): IterableIterator<Element>;
72+
[Symbol.iterator](): BuiltinIterator<Element>;
7373
}
7474

7575
interface HTMLCollectionOf<T extends Element> {
76-
[Symbol.iterator](): IterableIterator<T>;
76+
[Symbol.iterator](): BuiltinIterator<T>;
7777
}
7878

7979
interface FormData {
8080
/**
8181
* Returns an array of key, value pairs for every entry in the list
8282
*/
83-
entries(): IterableIterator<[string, string | File]>;
83+
entries(): BuiltinIterator<[string, string | File]>;
8484
/**
8585
* Returns a list of keys in the list
8686
*/
87-
keys(): IterableIterator<string>;
87+
keys(): BuiltinIterator<string>;
8888
/**
8989
* Returns a list of values in the list
9090
*/
91-
values(): IterableIterator<string | File>;
91+
values(): BuiltinIterator<string | File>;
9292

93-
[Symbol.iterator](): IterableIterator<string | File>;
93+
[Symbol.iterator](): BuiltinIterator<string | File>;
9494
}
9595

9696
interface URLSearchParams {
9797
/**
9898
* Returns an array of key, value pairs for every entry in the search params
9999
*/
100-
entries(): IterableIterator<[string, string]>;
100+
entries(): BuiltinIterator<[string, string]>;
101101
/**
102102
* Returns a list of keys in the search params
103103
*/
104-
keys(): IterableIterator<string>;
104+
keys(): BuiltinIterator<string>;
105105
/**
106106
* Returns a list of values in the search params
107107
*/
108-
values(): IterableIterator<string>;
108+
values(): BuiltinIterator<string>;
109109
/**
110110
* iterate over key/value pairs
111111
*/
112-
[Symbol.iterator](): IterableIterator<[string, string]>;
112+
[Symbol.iterator](): BuiltinIterator<[string, string]>;
113113
}

src/lib/es2015.generator.d.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/// <reference lib="es2015.iterable" />
22

3-
interface Generator<T = unknown, TReturn = any, TNext = unknown> extends Iterator<T, TReturn, TNext> {
3+
interface Generator<T = unknown, TReturn = any, TNext = unknown> extends BuiltinIterator<T, TReturn, TNext> {
44
// NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.
55
next(...args: [] | [TNext]): IteratorResult<T, TReturn>;
66
return(value: TReturn): IteratorResult<T, TReturn>;

0 commit comments

Comments
 (0)